рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ Ansible рдЯреЙрд╡рд░ рдПрдХреАрдХрд░рдг

Red Hat рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ Red Hat Ansible рд╕реНрд╡рдЪрд╛рд▓рди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛? рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6.3 рд╕реЗ рд╢реБрд░реВ рдХрд░рдХреЗ, рдЙрдиреНрд╣реЗрдВ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдЕрдиреНрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдореЗрдВ рдбрд╛рдпрдирд╛рдорд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рд╣реЛрд╕реНрдЯ рд╕реВрдЪреА рдЦреАрдВрдЪ рд▓реЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрд░рдПрдЪрдИрдПрд▓ рд╣реЛрд╕реНрдЯреНрд╕ рдХреЛ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ (рдЕрд░реНрде рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдВрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЛ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдирдП рдореЗрдЬрдмрд╛рдиреЛрдВ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПред



рдЗрд╕ рдкреЛрд╕реНрдЯ рдореЗрдВ, рд╣рдо рдпрд╣ рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдПрдВрдЬрд╝рд┐рдмрд▓ рдЯреЙрд╡рд░ рдореЗрдВ рдбрд╛рдпрдиреЗрдорд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдХреЛ рдХреИрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдП рддрд╛рдХрд┐ рдпрд╣ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЛ рдКрдкрд░ рдЦреАрдВрдЪреЗ, рдФрд░ рд╣рдо рджрд┐рдЦрд╛рдПрдВрдЧреЗ рдХрд┐ рдЗрд╕реЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдПрдВрдЧреЗ рдХрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рдПрдХ рдирдП рд╣реЛрд╕реНрдЯ рдХреЛ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд Ansible рдЯреЙрд╡рд░ рдХреЙрд▓ рдХреЛ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред

1. Inventory. Satellite, Dynamic Inventory Ansible Tower


рдореЗрдЬрдмрд╛рди, рдореЗрдЬрдмрд╛рди рд╕рдореВрд╣реЛрдВ рдФрд░ рдЕрдиреНрдп рд╕рдВрдмрдВрдзрд┐рдд рд╕реВрдЪрдирд╛рдУрдВ рдХреА рд╕реВрдЪреА рддрдХ рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП рдЕрдиреНрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рдПрдХ рдЦрд╛рддреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдиреНрдпреВрдирддрдо рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рдПрдХ рдирдИ рднреВрдорд┐рдХрд╛ рдмрдирд╛рдПрдВрдЧреЗ, рдЗрд╕реЗ рдХреЗрд╡рд▓ рдПрдВрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЕрдиреБрдорддрд┐рдпрд╛рдБ рджреЗрдВ, рдФрд░ рдлрд┐рд░ рдПрдХ рдирдпрд╛ рдЦрд╛рддрд╛ рдмрдирд╛рдПрдБ рдФрд░ рдЗрд╕ рднреВрдорд┐рдХрд╛ рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред

рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6.6 рдФрд░ рдмрд╛рдж рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдВрдЬрд╝рд┐рдмрд▓ рдЯреЙрд╡рд░ рдЗрдиреНрд╡реЗрдВрдЯрд░реА рд░реАрдбрд░ рднреВрдорд┐рдХрд╛ рддреИрдпрд╛рд░ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рднреВрдорд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд░рдгреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6.3-6.5 рдореЗрдВ, рднреВрдорд┐рдХрд╛ рдХреЛ рд╣рд╛рде рд╕реЗ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░ рдЬрд╛рдПрдВ, рдПрдбрдорд┐рди рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ, рд░реЛрд▓реНрд╕ рдЪреБрдиреЗрдВ рдФрд░ рдХреНрд░рд┐рдПрдЯ рд░реЛрд▓ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рд╣рдо рдЗрд╕ рднреВрдорд┐рдХрд╛ рдХреЛ ansible_tower_integration_role рдирд╛рдо рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рди рдФрд░ рд╕рдВрдЧрдарди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ :



рднреВрдорд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдЙрд╕рдХреЗ рдмрд╛рдж, рдЙрд╕рдХреЗ рдирд╛рдо рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВред рд╣рд░реЗ рдирдП рдлрд╝рд┐рд▓реНрдЯрд░ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдирд┐рдореНрди рдлрд╝рд┐рд▓реНрдЯрд░ рдЬреЛрдбрд╝реЗрдВ, рдПрдХ рд╕рдордп рдореЗрдВ:

рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдХрд╛рд░: рд╣реЛрд╕реНрдЯ , рдЕрдиреБрдорддрд┐: view_hosts
рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдХрд╛рд░: рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ , рдЕрдиреБрдорддрд┐: view_hostgroups
рд╕рдВрд╕рд╛рдзрди рдкреНрд░рдХрд╛рд░: рддрдереНрдп рдорд╛рди , рдЕрдиреБрдорддрд┐: view_factor

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдирд┐рдореНрди рдлрд╝рд┐рд▓реНрдЯрд░ рдХреА рднреВрдорд┐рдХрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:



рдЗрд╕рд▓рд┐рдП, рд╣рдордиреЗ рдПрдХ рднреВрдорд┐рдХрд╛ рдмрдирд╛рдИ рд╣реИред рдЕрдм рд╣рдо рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рдПрдХ рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдПрдбрдорд┐рди рдореЗрдиреВ рдкрд░ рдЬрд╛рдПрдБ , рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдБ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ред рд╣рдо рдЗрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ ansible_integration рдХрд╛ рдирд╛рдо рджреЗрддреЗ рд╣реИрдВ , рдЕрдзрд┐рдХреГрдд рджреНрд╡рд╛рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ INTERNAL рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд░, рд╕реНрдерд╛рди рдФрд░ рд╕рдВрдЧрдарди рдЯреИрдм рдкрд░, рдЙрдкрдпреБрдХреНрдд рд╕реНрдерд╛рдиреЛрдВ / рд╕рдВрдЧрдардиреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред рдЕрдВрдд рдореЗрдВ, рд░реЛрд▓реНрд╕ рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдЗрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдирдП рдмрдирд╛рдП рдЧрдП ansible_tower_integration_role рднреВрдорд┐рдХрд╛ (рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6.3 - 6.5 рд╣реИ) рдпрд╛ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЕрдВрд╕рдмрд▓ рдЯреЙрд╡рд░ рдЗрдиреНрд╡реЗрдВрдЯрд░реА рд░реАрдбрд░ рднреВрдорд┐рдХрд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ(рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6.6 рдФрд░ рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ)ред рдЕрдВрдд рдореЗрдВ, рдЗрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦрд╛рддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рдЕрдиреБрдХреВрд▓рд┐рдд рдЯреЙрд╡рд░ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВ


рдЕрдм Ansible рдЯреЙрд╡рд░ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ ред рдПрдХ рдирдпрд╛ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░реЗ + (рдЬреЛрдбрд╝реЗрдВ) рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ред рд╣рдо рдЗрд╕реЗ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ_рдЗрдВрдЯрд░рдЧреНрд░реЗрд╢рди рдХрд╣рддреЗ рд╣реИрдВ , рдФрд░ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдЯрд╛рдЗрдк рдореЗрдВ рд╣рдо Red Hat рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6 рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ ред рдлрд┐рд░ URL рджрд░реНрдЬ рдХрд░реЗрдВ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ 6), рд╕рд╛рде рд╣реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, ansible_integration ), рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╡рд╣ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдКрдкрд░ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ:



рдлрд┐рд░ Save рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ред

рдЕрдм рдЗрдиреНрд╡реЗрдВрдЯрд░реА рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ , рд╣рд░реЗ + (рдЬреЛрдбрд╝реЗрдВ) рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдЗрдиреНрд╡реЗрдВрдЯрд░реА рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ ред рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ satellite_inventory рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдФрд░ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Save рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ред рдЙрд╕рдХреЗ рдмрд╛рдж, рдирдП рдмрдирд╛рдП рдЧрдП рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдХреЗ рд╕реНрд░реЛрдд рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд╣рд░реЗ + (рдЬреЛрдбрд╝реЗрдВ) рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ред рд╣рдо рдЙрдкрдЧреНрд░рд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрд░реЛрдд рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВ , рдФрд░ рд╕реНрд░реЛрдд рдкреНрд░рдХрд╛рд░ рдХреЛ Red Hat Satellite 6 рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ ред рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдлрд╝реАрд▓реНрдб рдореЗрдВ, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ_рдЗрдирдЧреНрд░реЗрд╢рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ , рдЬреЛ рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдУрд╡рд░рд░рд╛рдЗрдЯ рдЪреЗрдХрдмреЙрдХреНрд╕ рдЪрд╛рд▓реВ рдХрд░реЗрдВ ,рдЕрдкрдбреЗрдЯ рд╡рд┐рдХрд▓реНрдк рдирд┐рдпрдВрддреНрд░рдг рд╕рдореВрд╣ рдореЗрдВ рд▓реЙрдиреНрдЪ рдкрд░ рдЪрд░ рдФрд░ рдЕрджреНрдпрддрди рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░реЗрдВ (рдЖрдк рджрд╛рдИрдВ рдУрд░ рдкреНрд░рд╢реНрди рдЪрд┐рд╣реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреИрд╢ рдЯрд╛рдЗрдордЖрдЙрдЯ (рд╕реЗрдХрдВрдб) рдлрд╝реАрд▓реНрдб рдореЗрдВ, 90 рджрд░реНрдЬ рдХрд░реЗрдВ рдФрд░ рд╕рд╣реЗрдЬреЗрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ред



рдЕрдм, рд╕реНрд░реЛрдд рдЯреИрдм рдХреЛ рдЫреЛрдбрд╝реЗ рдмрд┐рдирд╛ , рд╕реНрдЯрд╛рд░реНрдЯ рд╕рд┐рдВрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЖрдЗрдХрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ :



рд╣рдо рдЗрдВрддрдЬрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рдЖрдЗрдХрди рд╣рд░рд╛ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ - рдпрд╣ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд╕рдлрд▓ рд╕рдорд╛рдкрди рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИред

рдЕрдм рдЖрдк Hosts рдЯреИрдм рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рдЦреАрдВрдЪреЗ рдЧрдП рд╣реИрдВ:



рдЖрдк рд╕рдореВрд╣ рдЯреИрдм рдХреЛ рднреА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рддреБрд▓реНрдпрдХрд╛рд▓рди рдиреЗ рди рдХреЗрд╡рд▓ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рд╣реЛрд╕реНрдЯ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рдЦреАрдВрдЪ рд▓рд┐рдпрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ, рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣реЛрдВ, рдЬреАрд╡рди рдЪрдХреНрд░ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг, рд╕реНрдерд╛рдиреЛрдВ рдФрд░ рд╕рдВрдЧрдардиреЛрдВ рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рд╕рд╛рдордЧреНрд░реА рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдиреНрд╣реЗрдВ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рдЧреНрд░реБрдкрд┐рдВрдЧ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдЯрд╛рд░рдЧреЗрдЯ рд╣реЛрд╕реНрдЯреНрд╕ рдкрд░ рдПрдиреНрд╕рд┐рдмрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдХреЛ рдЯрд╛рд░реНрдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЪреАрдЬ рд╣реИред

рдпрджрд┐ рдЖрдк рд╣реЛрд╕реНрдЯреНрд╕ рдЯреИрдм рдкрд░ рдПрдХ рд╣реЛрд╕реНрдЯ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ рдЕрдиреНрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЗ рдмреАрдЪ рд╣реЛрд╕реНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕реА рд╕рд╣рд╛рдпрдХ рдЬрд╛рдирдХрд╛рд░реА рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рд╣реИ, рдЬреЛ рдХрд┐ рдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЬрд╛рддреА рд╣реИред рдЗрди рдЪрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдЕрдВрд╕рд╛рд░реА рд▓рд┐рдкрд┐рдпреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:



рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЛ рдмрд╛рдВрдзрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд╢реАрд▓ рдЗрдиреНрд╡реЗрдВрдЯрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


рдЗрд╕рд▓рд┐рдП, рд╣рдордиреЗ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ рдЕрдиреНрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рд╣реИред рдЕрдм рд╣рдо рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдЗрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред

рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ Ansible рдЯреЙрд╡рд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ satellite_inventory рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдпрджрд┐ рд╣реЛрд╕реНрдЯ: рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рднреА рд╡рд┐рдХрд▓реНрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВ , рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рднреА рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╣реЛрд╕реНрдЯ рдкрд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╡рд┐рдХрд▓реНрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЧрдП рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рдореВрд╣реЛрдВ (рд╡реЗ рдХреИрд╕реЗ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ - рдКрдкрд░ рджреЗрдЦреЗрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ, рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рд╣реЛрд╕реНрдЯ рд▓рд╛рдЗрди рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдЬрд╣рд╛рдВ рд╕реНрдХреНрд░реАрди рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ:

---
- name: Install screen package
  hosts: "foreman_hostgroup_rhel6"
  tasks:
  - yum:
      name: screen
      state: installed

рдпрд╣рд╛рдБ рд╣рдордиреЗ рдореЗрдЬрдмрд╛рди рджрд░реНрдЬ рдХрд┐рдпрд╛ рд╣реИ: foreman_hostgroup_rhel6 , рдЬрд┐рд╕рд╕реЗ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ rhel6 рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ рдмрдирд╛рдиреЗ рд╡рд╛рд▓реЗ рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреА рд╕реВрдЪреА рдХрд╛ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИред рддрджрдиреБрд╕рд╛рд░, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреЗрд╡рд▓ рдЗрди рд╣реЛрд╕реНрдЯ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рдЖрдк рдореЗрдЬрдмрд╛рди рд▓рд╛рдЗрди рдореЗрдВ рдЙрди рдЪрд░реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдПрдВрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЛ рдорд┐рд▓рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

---
- name: Install screen package
  hosts: "{{ hosts_var }}"
  tasks:
  - yum:
      name: screen
      state: installed

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдо рдлреНрд▓рд╛рдИ рдкрд░ Ansible рдЯреЙрд╡рд░ рдореЗрдВ рдиреМрдХрд░реА рдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдмрджрд▓рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ, рдПрдХ рдмрд╛рд╣рд░реА рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВред



рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗрд╡рд▓ рдЙрди рд╣реЛрд╕реНрдЯ рдкрд░ рдЪрд▓реЗрдЧрд╛ рдЬреЛ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ rhel7 рд╕рдореВрд╣ рдХреЗ рд╕рджрд╕реНрдп рд╣реИрдВ ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдиреМрдХрд░реА рдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдпрдЬрдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП ___ рдЪрд░ рдХрд╛ рдореВрд▓реНрдп рдкреВрдЫреЗрдЧрд╛ (рдФрд░ рдЙрд╕реА рд╕рдордп рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рдореВрд╣реЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧрд╛):



рдКрдкрд░ рдХреА рд╕реНрдХреНрд░реАрди рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИ рдЬрдм, рдЯреЗрдореНрдкрд▓реЗрдЯ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рдореВрд╣ рдХрд╛ рдирд╛рдо рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╣реЛрд╕реНрдЯ рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рдЦреАрдВрдЪреЗ рдЧрдП рд╣реЛрд╕реНрдЯ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдРрд╕реА рджрд┐рдЦрддреА рд╣реИ, рдЬреЛ рдЗрди рдЪрд░реЛрдВ рдХреЛ рдХреИрд╕реЗ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреА рд╣реИ:

---
- name: Show Satellite variables
  hosts: all
  tasks:
  - name: Show subscription_status
    debug:
      msg: >
        Subscription Status: {{ foreman.subscription_status_label }}
  - name: Show Errata Counts
    debug:
      msg: >
        Bug fixes: {{ foreman.content_facet_attributes.errata_counts.bugfix }},
        Security: {{ foreman.content_facet_attributes.errata_counts.security }},
        Enhancement: {{ foreman.content_facet_attributes.errata_counts.enhancement }},
        Total: {{ foreman.content_facet_attributes.errata_counts.total }}

рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ Ansible рдЯреЙрд╡рд░ рдореЗрдВ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЪрд░ рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛:



рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЗрди рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд╢рд░реНрдд рдирд┐рд░реНрдорд╛рдгреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рдХрд┐ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╣реЛрд╕реНрдЯ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рдкреИрдЪ рдирд╣реАрдВ рд╣реИ, рдпрд╛ рдЬрдм рд╣реЛрд╕реНрдЯ рд╕рджрд╕реНрдпрддрд╛ рдЕрдорд╛рдиреНрдп рд╣реИред

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ


Red Hat рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ Red Hat Ansible рд╕реНрд╡рдпрдВ рдмрд╣реБрдд рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдХрд░рдг рд╣реИрдВ, рдФрд░ рдЙрдирдХрд╛ рдПрдХреАрдХрд░рдг рдореВрд░реНрдд рддрд╛рд▓рдореЗрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдКрдкрд░, рд╣рдордиреЗ рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЛ рдбрд╛рдпрдиреЗрдорд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдПрдХ рдбрд╛рдЯрд╛ рд╕реНрд░реЛрдд рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
тАГ

рднрд╛рдЧ 2. рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдХреЙрд▓рдмреИрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирдП рдореЗрдЬрдмрд╛рдиреЛрдВ рдХрд╛ рд╕реНрд╡рддрдГ-рд╕рдВрдЪрдп


рдХрдИ рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ, рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд░рдиреЗ рдореЗрдВ рднреА рд╕рдХреНрд╖рдо рд╣реИред рдмрджрд▓реЗ рдореЗрдВ, Ansible рдЯреЙрд╡рд░, рдореЗрдЬрдмрд╛рди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХреАрдХрд░рдг рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдирдпрд╛ рдЖрд░рдПрдЪрдИрдПрд▓ рд╣реЛрд╕реНрдЯ рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж, Ansible рдЯреЙрд╡рд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рд╣реЛрд╕реНрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрдЧрд╛ рдФрд░ рдЙрд╕ рдкрд░ рд╕рдВрдмрдВрдзрд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПрдЧрд╛ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреА рдпреЛрдЬрдирд╛ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛рддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдиреНрд╣реЗрдВ рд╕рдВрдЧрдарди рдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рддреЗрдЬрд╝реА рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓рддреА рд╣реИред

рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рдпреЛрдЬрдирд╛ рдХреЗрд╡рд▓ рддрднреА рдХрд╛рдо рдХрд░рддреА рд╣реИ рдЬрдм рдХрдИ рд╢рд░реНрддреЗрдВ рдкреВрд░реА рд╣реЛрддреА рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЛ рдПрдВрд╢рд┐рдмрд▓ рдЯреЙрд╡рд░ рдореЗрдВ рдбрд╛рдпрдирд╛рдорд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рднрд╛рдЧ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдХрд╡рд░ рдХрд┐рдпрд╛ рд╣реИ)ред рджреВрд╕рд░реЗ, рдореЗрдЬрдмрд╛рди рдЖрд░рдВрднреАрдХрд░рдг рди рдХреЗрд╡рд▓ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдмрд▓реНрдХрд┐ рдореЗрдЬрдмрд╛рди рд╕рдореВрд╣ рддрдВрддреНрд░ (рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рд╛рд╡рдзрд╛рди рдЧрд╛рдЗрдб рджреЗрдЦреЗрдВ ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ред

рдиреАрдЪреЗ рд╣рдо рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ рдПрдВрдЬрд╝рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХреЛ рдХреИрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдП рддрд╛рдХрд┐ рд╣реЛрд╕реНрдЯ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдЕрдкрдиреЗ рдЖрдк рд╣реА рдРрдиреНрд╕рд┐рдмрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПрдЧрд╛ред

рдЕрд╡рд▓реЛрдХрди


рдЖрдИрдЯреА рдСрдЯреЛрдореЗрд╢рди рдЯреВрд▓, рдЬреИрд╕реЗ рдХрд┐ рдЕрдиреНрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░, рдЖрдорддреМрд░ рдкрд░ рджреЛ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдЖрддреЗ рд╣реИрдВ: рдкреБрд╢ рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рдХреБрдЫ рдХрд╛рдо, рдЕрдиреНрдп рдкреБрд▓ рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ред рдкреБрд╢ рд╕рд┐рд╕реНрдЯрдо рдЬрд┐рд╕рдореЗрдВ рдЕрдВрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рд╣реИ, рдореЗрдВ рдСрдЯреЛрдореЗрд╢рди рд╕рд░реНрд╡рд░ рд╣реЛрд╕реНрдЯ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред рдкреБрд▓ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ, рд╕рд░реНрдЬрдХ рдореЗрдЬрдмрд╛рди рд╣реИ, рдЬреЛ рд╕реНрд╡рдпрдВ рд╕реНрд╡рдЪрд╛рд▓рди рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИред

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирдП рдореЗрдЬрдмрд╛рдиреЛрдВ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рдХреЗ рд╕рд╛рде, рдПрдХ рдорд┐рд╢реНрд░рд┐рдд рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдирд╡ рдЖрд░рдВрднрд┐рдХ рд╣реЛрд╕реНрдЯ рд╣реЛрд╕реНрдЯ рдСрдЯреЛрдореЗрд╢рди рд╕рд░реНрд╡рд░ рд╕реЗ "рдХреЙрд▓ рдмреИрдХ" рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рд╕рдВрдкрд░реНрдХ рдХрд░рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╕реНрд╡рдЪрд╛рд▓рди рд╕рд░реНрд╡рд░ рдЗрд╕ рд╣реЛрд╕реНрдЯ рд╕реЗ рдЬреБрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдЙрд╕ рдкрд░ рд╣реЛрд╕реНрдЯ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░реЛрдзрд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, Ansible рдЯреЙрд╡рд░ рдореЗрдВ рдЗрд╕ рддрдВрддреНрд░ рдХреЛ рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдХреЙрд▓рдмреИрдХ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ "рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЙрд▓рдмреИрдХ" рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреЙрд▓рдмреИрдХ рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд░рдирд╛ рдХреНрдпреЛрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдирд┐рдореНрди рд╕реНрдерд┐рддрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ: рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рд░реЛрдЬ рдЖрдзреА рд░рд╛рдд рдХреЛ рдЪрд▓рддреА рд╣реИред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╕реБрдмрд╣ 8 рдмрдЬреЗ рд╣рдо рдХрдИ рдирдП рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЗ рдЬрд░рд┐рдП рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕реА рд╕рдордп, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЯреЙрд╡рд░ рдореЗрдВ рдбрд╛рдпрдирд╛рдорд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмрдирд╛рдП рдЧрдП рд╣реЛрд╕реНрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ Ansible рдореЗрдВ рдЖрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕реНрд╡рдЪрд╛рд▓рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЕрдЧрд▓рд╛ рд▓реЙрдиреНрдЪ рдХреЗрд╡рд▓ рдЖрдзреА рд░рд╛рдд рдХреЛ рд╣реЛрдЧрд╛, рдпрд╛рдиреА 16 рдШрдВрдЯреЗ рдХреЗ рдмрд╛рджред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдЖрджрд░реНрд╢ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ, рдФрд░ рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдирдИ рдореЗрдЬрд╝рдмрд╛рди рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓реЗред рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдХреЙрд▓рдмреИрдХ рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рд╕реЛрдЪрд╛ рдЧрдпрд╛ рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХреЙрд▓рдмреИрдХ рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд░рдирд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

  1. Ansible Tower credential root, Satellite . Tower , .
  2. Job Template Ansible Tower provisioning callback. URL Host Config Key, Ansible.
  3. Satellite , provisioning callback Ansible Tower, : URL- Ansible Tower, Host Config Key Ansible.
  4. Satellite /etc/systemd/system/ansible-callback.service ( RHEL 7 8; RHEL 6 ). provisioning callback Ansible Tower, , (URL-, Host Config Key ).
  5. Ansible Tower Host Config Key. , Tower , root, Job Template. , .

Ansible Tower Provisioning Callback


рдЖрдЗрдП, Ansible рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдХрд░ рд╢реБрд░реВ рдХрд░реЗрдВ рдЬреЛ / etc / motd рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдмрджрд▓рддрд╛ рд╣реИ, рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рдлрд┐рд░ рд╣рдо рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирдП рд╣реЛрд╕реНрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдХрд░реЗрдВрдЧреЗред

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдореЗрдВ, рд╕реНрд╡рдЪрд╛рд▓рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреБрдЫ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рд╕реАрдзреЗ рдЕрдВрд╕рд╛рд░реА рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ рдкрд░ рдЭреВрда рдмреЛрд▓рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╣рдо SSH рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ Ansible рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ / var / lib / awx / рдкреНрд░реЛрдЬреЗрдХреНрдЯ / рдкреНрд░рд╛рд╡рдзрд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ:

# mkdir /var/lib/awx/projects/provision

рдлрд┐рд░ рд╣рдо рдЗрд╕ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдкреНрд░реЛрд╡рд┐рдЬрди рдХрд╣рддреЗ рд╣реИрдВред рд╢реНрдпрд╛рдо рдФрд░ рдЙрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдВрдЯреЗрдВрдЯ рд▓рд┐рдЦреЗрдВ:

---

- name: Provision new host

  hosts: all

  tasks:

  - name: Set content in /etc/motd 

    copy:

      content: Authorized use only!

      dest: /etc/motd

      mode: 644

      owner: root

      group: root


  - name: Create brian user account

    user:

      name: brian

      uid: 10000

      state: present


  - name: Install tmux package

    yum:

      name: tmux

      state: present


рдЕрдм рдЯреЙрд╡рд░ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВред рд╣рдо рдПрдХ рдирдпрд╛ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреНрд░реАрди рдкреНрд▓рд╕ рд╕рд╛рдЗрди рдХреЗ рд╕рд╛рде рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ_рд░реЛрдЯ рдирд╛рдо рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рдорд╢реАрди рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдЯрд╛рдЗрдк рднреА рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдлрд╝реАрд▓реНрдб рдореЗрдВ, рд░реВрдЯ рд▓рд┐рдЦреЗрдВ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдлрд╝реАрд▓реНрдб рдореЗрдВ, рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ рдХреЗ рдирдП рд╣реЛрд╕реНрдЯ рдкрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрд╛рд╕рд╡рд░реНрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ (рдЗрд╕рдХрд╛ рдирд╛рдо рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЯреИрдм рдкрд░ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рдЗрд╕ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, Ansible рдЯреЙрд╡рд░ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрд░рдВрднреАрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдП рдЧрдП рдирдП рд╣реЛрд╕реНрдЯ рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред



рдЙрд╕рдХреЗ рдмрд╛рдж, Ansible рдЯреЙрд╡рд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░реЗ рд░рдВрдЧ рдХреЗ рдкреНрд▓рд╕ рдЪрд┐рд╣реНрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдЗрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ рдкреНрд░рд╛рд╡рдзрд╛рди, SCM рдкреНрд░рдХрд╛рд░ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рдореЗрдВ рдмрджрд▓реЗрдВ, рдФрд░ Playbook рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╛рд╡рдзрд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ:



рдлрд┐рд░, Ansible рдЯреЙрд╡рд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ, рдирдпрд╛ рдЬреЙрдм рдЯреЗрдореНрдкрд▓реЗрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░реЗ рд░рдВрдЧ рдХреЗ рдкреНрд▓рд╕ рдЪрд┐рд╣реНрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рд╣рдо рдЗрд╕реЗ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд╣реЗрдВрдЧреЗ, рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣рдо рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлреАрд▓реНрдб рдореЗрдВ - рдкреНрд░рд╛рд╡рдзрд╛рди, рдкреНрд▓реЗрдмреБрдХ рдлреАрд▓реНрдб рдореЗрдВ - рдкреНрд░реЛрд╡рд┐рдЬрди.рдорд╛рдпрд▓, рдФрд░ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдлреАрд▓реНрдб рдореЗрдВ - рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ_рд░реЛрдЯ рд▓рд┐рдЦреЗрдВрдЧреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдХреЙрд▓рдмреИрдХ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдФрд░ рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд┐рдЧ рдХреБрдВрдЬреА рдлрд╝реАрд▓реНрдб рдХреЗ рджрд╛рдИрдВ рдУрд░ рдЬрд╛рджреВ рдХреА рдЫрдбрд╝реА рдЖрдЗрдХрди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдХ рдкреНрд░рд╛рд╡рдзрд╛рди рдХреЙрд▓рдмреИрдХ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдХреБрдВрдЬреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рд╡рд╣ рд╡реНрдпрдХреНрддрд┐ рдЬреЛ рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреБрдВрдЬреА рдЬрд╛рдирддрд╛ рд╣реИред рд╕рд╣реА рдХреБрдВрдЬреА рдХреЗ рдмрд┐рдирд╛, Ansible рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ рдмрд╕ рдЕрдиреБрд░реЛрдз рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗрдЧрд╛ред



рдЕрдм рд╣рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреБрдВрдЬреА рдФрд░ рд╕рд╛рде рд╣реА рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдИрдбреА рдХрд╛ рдорд╛рди рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдЗрд╕ рдЬреЙрдм рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ URL рд╕реЗ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ:

https://tower.example.com/#/templates/job_template/11

рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЖрдИрдбреА 11 рд╣реИред

рдХреЙрд▓рдмреИрдХ рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛


рдЕрдм рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рдЬрд╛рдПрдВ, рдХрдВрдлрд┐рдЧрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд╣реЛрд╕реНрдЯ рдЧреНрд░реБрдк рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рд╣рдо рдореМрдЬреВрджрд╛ рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирдП рд╣реЛрд╕реНрдЯреНрд╕ рдХреЛ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдпрд╣ RHEL рд╣реИред

рд╣реЛрд╕реНрдЯ рдЧреНрд░реБрдк рдПрдбрд┐рдЯрд┐рдВрдЧ рд╕реНрдХреНрд░реАрди рдкрд░, Parameters рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВ рдФрд░ 4 рдирдП рдкреИрд░рд╛рдореАрдЯрд░ рдмрдирд╛рдПрдВ:

ansible_host_config_key - рдпрд╣рд╛рдВ рд╣рдо рдЕрдкрдиреЗ Ansible рдЯреЙрд╡рд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реЗ Host config Key рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВред
ansible_job_template_id - рдпрд╣рд╛рдВ рд╣рдо рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдИрдбреА рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдкрд╣рд▓реЗ рдЯреЗрдореНрдкреНрд▓реЗрдЯ URL рд╕реЗ рдкрддрд╛ рдХрд┐рдпрд╛ рдерд╛ред
ansible_tower_fqdn, Ansible рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдпреЛрдЧреНрдп рдбреЛрдореЗрди рдирд╛рдо рд╣реИред
ansible_tower_provisioning - рд╕рдЪ рд╕реЗрдЯ рдХрд░реЗрдВред



рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ


рдЕрдм рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕реЗ рдирдП рд╣реЛрд╕реНрдЯ рдХреЛ рдЖрд░рдВрдн рдХрд░реЗрдВ рдФрд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдХреЙрд▓рдмреИрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрд╕ рд╣реЛрд╕реНрдЯ рдкрд░ рд╣рдорд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддрд╛ рд╣реИред

рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ, рд╣реЛрд╕реНрдЯ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ, рд╣реЛрд╕реНрдЯ рдмрдирд╛рдПрдВ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЬрд┐рд╕ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд╣рдордиреЗ рд╕рд┐рд░реНрдл 4 рдирдП рдкреИрд░рд╛рдореАрдЯрд░ рдмрдирд╛рдП рд╣реИрдВ, рд╡рд╣ рд╣реИ, RHEL 8 рд╕рдореВрд╣ред



рд╣реЛрд╕реНрдЯ рдХреА рдЖрд░рдВрднреАрдХрд░рдг рдкреВрд░реНрдг рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЙрд╕ рдкрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Ansible рдЯреЙрд╡рд░ рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ, рд╕реВрдЪреА рдореЗрдВ рд╣рдорд╛рд░реЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд╕реВрдЪрдХ рдХрд╛ рд╕рдмрд╕реЗ рдирд┐рдЪрд▓рд╛ рд╡рд░реНрдЧ рд╣рд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ:



рд▓реЙрдиреНрдЪ рд╡рд┐рд╡рд░рдг рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдЗрд╕ рд╣рд░реЗ рдмреЙрдХреНрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдлрд▓ рд░рд╣рд╛ред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдп рдХреА рдПрдХ рд╕реАрдорд╛ (рд╕реАрдорд╛) рд╣реИ - рдХреЗрд╡рд▓ рдирдП рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреА рд╢реБрд░реВрдЖрдд рдЬреЛ рдкреНрд░рд╛рд░рдВрдн рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдП рдЧрдП рд╣реИрдВред рдЦреИрд░, рдпрд╣ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рд╛рд╡рдзрд╛рди рдХреЙрд▓рдмреИрдХ рддрдВрддреНрд░ рдХреЗрд╡рд▓ рдЙрди рд╣реЛрд╕реНрдЯ рдкрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрд▓рд╛рддрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВред



рдЕрдм рдЖрдЗрдП, рдирдП рдмрдирд╛рдП рдЧрдП рд╣реЛрд╕реНрдЯ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдпрд╣ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ:

[root@provision-test-rhel8 ~]# rpm -qa | grep tmux
tmux-2.7-1.el8.x86_64

[root@provision-test-rhel8 ~]# id brian
uid=10000(brian) gid=10000(brian) groups=10000(brian)

[root@provision-test-rhel8 ~]# cat /etc/motd
Authorized use only!

рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг


рдпрджрд┐ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рдХрд┐рдП рдЧрдП рдирдП рд╣реЛрд╕реНрдЯ рдкрд░ Ansible рдЯреЙрд╡рд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЪреАрдЬреЗрдВ рд╣реИрдВред

рдкрд╣рд▓рд╛ рдХрджрдо рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ Ansible рдЯреЙрд╡рд░ рдХреЛ рдПрдХ рдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдХреЙрд▓рдмреИрдХ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдорд┐рд▓рд╛, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреИрд╕реЗ рдЧрдИ рдФрд░ рдпрджрд┐ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╢реБрд░реВ рд╣реБрдИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЯреЙрд╡рд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдирд╛рдо рдХреЗ рдЖрдЧреЗ рд╕рдВрдХреЗрддрдХ рдХреЗ рд░рдВрдЧ рдХреЛ рджреЗрдЦреЗрдВ: рд╣рд░рд╛ - рд▓реЙрдиреНрдЪ рд╕рдлрд▓ рд░рд╣рд╛, рд▓рд╛рд▓ - рд▓реЙрдиреНрдЪ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред



рдпрджрд┐ рдмреЙрдХреНрд╕ рд▓рд╛рд▓ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреА рддрд▓рд╛рд╢ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд▓реЙрдиреНрдЪ рд╡рд┐рдлрд▓ рдХреНрдпреЛрдВ рд╣реБрдЖ (рдпреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рджреЛрдиреЛрдВ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ)ред

рдпрджрд┐ рдмреЙрдХреНрд╕ рд╣рд░рд╛ рд╣реИ, рддреЛ рд╣рдо рд╡реИрд╕реЗ рднреА рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХрд╛рд░реНрдп рд╕рдлрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдорд╛рд░реЗ рдореЗрдЬрдмрд╛рди рдкрд░ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╣реЛрд╕реНрдЯ рд▓рд╛рдЗрди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрд╕реНрдЯ рдФрд░ рд╕рдореВрд╣реЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рд╛рд░рдВрдн рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдП рдЧрдП рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рддреЛ рдХрд╛рд░реНрдп рд╕рдлрд▓рддрд╛ рдХреА рд╕реВрдЪрдирд╛ рджреЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХрд╣реЗрдВрдЧреЗ "рд╕реНрдХрд┐рдкрд┐рдВрдЧ: рдХреЛрдИ рд╣реЛрд╕реНрдЯ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛"ред

рдпрджрд┐ рд╕рдВрдХреЗрддрдХ рд╡рд░реНрдЧ рди рддреЛ рд╣рд░рд╛ рд╣реИ рдФрд░ рди рд╣реА рд▓рд╛рд▓ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдореЗрдВ рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ Ansible рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ URL, рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд┐рдЧ рдХреБрдВрдЬреА рдФрд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдИрдбреА рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╡рд╣рд╛рдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВред

рдЗрд╕рдХреЗ рдмрд╛рдж, рдирдП рдЖрд░рдВрднрд┐рдХ рд╣реЛрд╕реНрдЯ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдЬрд╛рдВрдЪ рд▓реЗрдВ рдХрд┐ рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ /etc/systemd/system/ansible-callback.service (RHEL 7 рдпрд╛ 8 рд╕рд┐рд╕реНрдЯрдо рдкрд░) рд╣реИ рдпрд╛ рдлрд╝рд╛рдЗрд▓ /root/ansible_probleing_call.sh (RHEL 6) рд╣реИред

рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рддреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ рдХрд┐ ansible_tower_provisioning рдкреИрд░рд╛рдореАрдЯрд░ рдЗрд╕ рд╣реЛрд╕реНрдЯ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реИ, рдФрд░ рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдЖрд░рдВрднреАрдХрд░рдг рдкреИрдЯрд░реНрди рдирд╣реАрдВ рдмрджрд▓рд╛ рдЧрдпрд╛ рд╣реИред
рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ /etc/systemd/system/ansible-callback.service рд╣реЛрд╕реНрдЯ рдкрд░ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрд╕реЗ рдЦреЛрд▓реЗрдВ рдФрд░ рдЙрд╕ URL рдХреЛ рджреЗрдЦреЗрдВ рдЬрд╣рд╛рдБ рдкреНрд░рд╛рд╡рдзрд╛рди рдХреЙрд▓рдмреИрдХ рдЕрдиреБрд░реЛрдз рднреЗрдЬрд╛ рдЧрдпрд╛ рд╣реИ:

[root@provision-test-rhel8 ~]# cat /etc/systemd/system/ansible-callback.service
[Unit]
Description=Provisioning callback to Ansible Tower
Wants=network-online.target
After=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/curl -k -s --data "host_config_key=aa5ebe82-491c-4fbb-bd36-a6657549451e" https://tower.example.com/api/v2/job_templates/11/callback/
ExecStartPost=/usr/bin/systemctl disable ansible-callback

[Install]
WantedBy=multi-user.target

рдЖрдк рдХрд░реНрд▓ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдкреНрд░рд╛рд╡рдзрд╛рди рдХреЙрд▓рдмреИрдХ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрджреЗрд╢реЛрдВ рдХреА рдирдХрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

[root@provision-test-rhel8 ~]# /usr/bin/curl -k -s --data "host_config_key=aa5ebe82-491c-4fbb-bd36-a6657549451e" https://tower.example.com/api/v2/job_templates/11/callback/

рдпрджрд┐ рдХреЛрдИ рдЕрдорд╛рдиреНрдп рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреБрдВрдЬреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛:

[root@provision-test-rhel8 ~]# /usr/bin/curl -k -s --data "host_config_key=wrong-key-here" https://tower.example.com/api/v2/job_templates/11/callback/

{"detail":"You do not have permission to perform this action."}

рдпрджрд┐ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдИрдбреА рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ (рдпрд╣рд╛рдВ - 11 рдХреЗ рдмрдЬрд╛рдп 43), рддреЛ рдЙрддреНрддрд░ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛрдЧрд╛:

[root@provision-test-rhel8 ~]# /usr/bin/curl -k -s --data "host_config_key=wrong-key-here" https://tower.example.com/api/v2/job_templates/43/callback/

{"detail":"Not found."}

рдЖрдк рдХрд░реНрд▓ рдХрдорд╛рдВрдб рдореЗрдВ рд╕рд╛рдЗрд▓реЗрдВрдЯ (-s) рдореЛрдб рдХреЛ рднреА рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдпрд╣ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрд╕реНрдЯ рдирд╛рдо рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗ, рдЬрд╣рд╛рдВ рд╣рдордиреЗ рд╕рд╣реА рдирд╛рдо рдХреЛ рдЧрд▓рдд ansible-tower.example.com рдХреЗ рд╕рд╛рде ansible.example.com рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИред :

[root@provision-test-rhel8 ~]# /usr/bin/curl -k  --data "host_config_key=wrong-key-here" https://ansible-tower.example.com/api/v2/job_templates/11/callback/

curl: (6) Could not resolve host: ansible-tower.example.com

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬрдм рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рддреЛ Ansible рдЯреЙрд╡рд░ рд╕рд░реНрд╡рд░ рдкрд░ /var/log/tower/tower.log рдлрд╝рд╛рдЗрд▓ рдХрд╛рдо рдореЗрдВ рдЖ рд╕рдХрддреА рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдПрдХ рдЕрдорд╛рдиреНрдп рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рд░рд┐рдХреЙрд░реНрдб рдХрд░рддреА рд╣реИ:

2019-11-19 23:19:17,371 WARNING  awx.api.generics status 403 received by user AnonymousUser attempting to access /api/v2/job_templates/11/callback/ from 192.168.0.138

рдпрд╣ рдПрдХ рдЕрдорд╛рдиреНрдп рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдИрдбреА рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рднреА рдареАрдХ рдХрд░рддрд╛ рд╣реИ:

2019-11-19 23:19:49,093 WARNING  awx.api.generics status 404 received by user AnonymousUser attempting to access /api/v2/job_templates/43/callback/ from 192.168.0.138

2019-11-19 23:19:49,095 WARNING  django.request Not Found: /api/v2/job_templates/43/callback/

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ


рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдФрд░ Ansible рдЯреЙрд╡рд░ рдХрд╛ рдПрдХреАрдХрд░рдг рдирдП рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЗ рдЖрд░рдВрдн рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рдмрд╣реБрдд рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдиреНрд╣реЗрдВ рд╕рдВрдЧрдарди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рддреЗрдЬрд╝реА рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓рддреА рд╣реИред

24 рдорд╛рд░реНрдЪ рдХреЛ, 11:00 рдмрдЬреЗ рд╕реЗ 12:30 рдмрдЬреЗ рддрдХ Red Hat рдПрдХ рд╡реЗрдмрд┐рдирд╛рд░ рдЖрдпреЛрдЬрд┐рдд рдХрд░реЗрдЧрд╛ тАЬрдСрдЯреЛрдореЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдкрдХреЛ рдХреНрдпрд╛ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рд┐рдП: рдмреЗрд╕рд┐рдХ рдРрдиреНрд╕рд┐рдмрд▓ рд╕реНрдХрд┐рд▓реНрд╕тАЭ

рдСрдЯреЛрдореЗрд╢рди рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдореЗрдВ рдПрдХ рд╡рд┐рд╖рдп рд╣реИ рдФрд░ рдбрд┐рдЬрд┐рдЯрд▓ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред рд╣рдо рдЖрдкрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдПрдВрдЧреЗ - рд╕рд╛рде-рд╕рд╛рде Ansible рдФрд░ Ansible рдЯреЙрд╡рд░ - рдФрд░ рдпрд╣ рдореВрд▓ рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдЧреА рдЬреЛ рдЖрдкрдХреЛ рдШреЛрд╖рдгрд╛рддреНрдордХ рд╕реНрд╡рдЪрд╛рд▓рди рдЯреВрд▓ рдХреА рдмрд╣рд╛рджреБрд░ рдирдИ рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рджрд░рд╡рд╛рдЬрд╛ рдЦреЛрд▓реЗрдЧреАред
рдЗрд╕ рд╡реЗрдмрд┐рдирд╛рд░ рдХреЗ рдмрд╛рдж, рдЖрдк рдкреНрд▓реЗрдмреБрдХ, рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА, рдореЙрдбреНрдпреВрд▓ рдЬреИрд╕реЗ рдмреБрдирд┐рдпрд╛рджреА Ansible рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ рд╕рдордЭреЗрдВрдЧреЗред рдЖрдкрдХреЗ рд╕рд╛рде, рд╣рдо рдмреБрдирд┐рдпрд╛рджреА YAML рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рдЖрдк рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦ рд╕рдХреЗрдВред рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛рдиреЗ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдЧрд╛ред

рдирддреАрдЬрддрди, рдЖрдкрдХреЛ рдХреМрд╢рд▓ рдХрд╛ рдПрдХ рдореВрд▓ рд╕реЗрдЯ рдорд┐рд▓реЗрдЧрд╛ рдЬреЛ рдЖрдкрдХреЛ рдирд┐рд░рдВрддрд░ рдорд╣рд╕реВрд╕ рдХрд┐рдП рдмрд┐рдирд╛ рдкреНрд░рд▓реЗрдЦрди рдФрд░ рдЕрдиреНрдп рд╕рд╛рд╣рд┐рддреНрдп рдХрд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдХрд┐ рдЖрдк рдХреБрдЫ рдпрд╛рдж рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░реЛ рдФрд░ рдЖрдУ!

All Articles