
рдореИрдВ рдЕрдВрдд рдореЗрдВ рдСрдкрд░рди, рдЕрдВрд╕рд┐рдмрд▓ рдЗрдВрдЬрди рдХреЗ рд▓рд┐рдП рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреА рд╢реБрд░реБрдЖрдд рдХрд░рдХреЗ рдмрд╣реБрдд рдЦреБрд╢ рд╣реВрдВред рдСрдкреЗрд░реЙрди рдХреЛ рдмрдбрд╝реЗ рдкреНрд░рддрд┐рд╖реНрдард╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╕рджрд╕реНрдпрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдореМрдЬреВрджрд╛ рдкреНрд▓реЗрдмреБрдХ, рдореЙрдбреНрдпреВрд▓, рдкреНрд▓рдЧ-рдЗрди рдФрд░ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдВрд╢реЛрдзрди рдХреЗ рд▓реЙрдиреНрдЪ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдмреЗрд╣рддрд░ рдЗрдВрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдПрдХ рд░рди рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдиреЛрдбреНрд╕ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдк рд╕реЗ рд╡реГрджреНрдзрд┐ рдХрд░рддрд╛ рд╣реИ, рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд╣рд░ рдХреЙрд▓ рдХреЗ рд╕рд╛рде рдмрдЪрдд рдХреЗ рдШрдВрдЯреЗред
рдСрдкрд░рди рдХреЛ рдЕрд▓рдЧ рд╕реЗ рдФрд░ рдПрдХ рд╕рд╛рде Ansible Engine рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ : рдЖрдк рдзреАрд░реЗ-рдзреАрд░реЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЗрд╕рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдиреАрдЪреЗ SSO рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддреИрдирд╛рдд рдХрд┐рдП рдЧрдП DebOps 0.7.2 рд╕реЗ 416 рд╕рд╛рдорд╛рдиреНрдп.yml рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд░рди рдХрд╛ рдПрдХ рдЧреНрд░рд╛рдл рд╣реИ:

Ansible Operon рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рдпрд╣ рдкреНрд░рддрд┐ рдиреЛрдб рд░рди рд╕рдордп рдХреЛ рд▓рдЧрднрдЧ 60% рддрдХ рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд▓реЙрдиреНрдЪ рдХреЗ рд╕рд╛рде, рд▓рд╛рдн рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИред рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рдордп рдХреИрд╕реЗ рдмрдврд╝ рд░рд╣рд╛ рд╣реИ (рд╣рд╛рд░реНрдбрд╡реЗрдпрд░: 24 GB, 8-рдХреЛрд░ Xeon E5530, 18ms рдореЗрдВ SSH рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ Google рдХреНрд▓рд╛рдЙрдб рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрдиреЛрдВ рдкрд░ рддреИрдирд╛рдд) рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:

рдкреНрд░рддреНрдпреЗрдХ рд░рди рдХреЗ рд▓рд┐рдП, рд▓реВрдк рдЖрдЗрдЯрдо рд╕рд╣рд┐рдд рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ 416 рдХрд╛рд░реНрдп рдХрд┐рдП рдЧрдП рдереЗред 1024 рдиреЛрдбреНрд╕ рдХреЗ рдПрдХ рд░рди рдореЗрдВ, 54 рдорд┐рдирдЯ рдореЗрдВ 540 496 рдХрд╛рд░реНрдп рдкреВрд░реЗ рд╣реБрдП; рдФрд╕рдд рдереНрд░реВрдкреБрдЯ - 151 рдХрд╛рд░реНрдп / рд╕реЗрдХрдВрдбред рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рд╕реНрдкрд╖реНрдЯ рд╣реИ: рд▓рдЧрднрдЧ 4x, 256 рд╕реЗ 1024 рдиреЛрдбреНрд╕ рддрдХред
256-рдиреЛрдб рдЕрдВрд╕рд┐рдмрд▓ рд░рди рдХреЛ рд░рджреНрдж рдХрд░рдирд╛ рдкрдбрд╝рд╛: рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдпрд╣ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджреЗрддрд╛ рдерд╛, рдЗрд╕реЗ рдХрдИ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ 40 рд╕реЗ рдШрдЯрд╛рдХрд░ 10 рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рддрд╛рдХрд┐ рдЕрдВрд╕рд┐рдмрд▓ рдЕрдкрдиреЗ рд░реИрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рди рдХрд░реЗрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрд╕рдиреЗ 13 рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реЛ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЖрдЧреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рдирд╛ рдкрдбрд╝рд╛: рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдорд╢реАрди рдХреЗ 2 рджрд┐рди рдмрд┐рддрд╛рдПред
рдЕрдВрддрд┐рдо рд░рди рдХреЗ рд▓рд┐рдП, рд░рджреНрдж рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, Ansible рдиреЗ 6 рдШрдВрдЯреЗ рдФрд░ 13 рдорд┐рдирдЯ рдореЗрдВ 89% рдХрд╛рд░реНрдп рдкреВрд░реЗ рдХрд┐рдП:

рдУрдкреЗрд░реЙрди рдкреНрд░рддреНрдпреЗрдХ рд╕рдорд╛рдирд╛рдВрддрд░ рд░рди рдХреЗ рджреМрд░рд╛рди рд╕рднреА рдиреЛрдбреНрд╕ рдореЗрдВ рддреИрдирд╛рдд рд╣реИрдВред 8 рдХреЛрд░ рдкрд░ 1024 рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣ рднрд╛рд░ рдореЗрдВ рдмрдореБрд╢реНрдХрд┐рд▓ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╡реГрджреНрдзрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ 24 рдХреЛрд░ рдкрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ 6144 рдХреЗ рд░реВрдк рдореЗрдВ рдмрдврд╝рддреА рд╣реИред рдпрджрд┐ рд╣рдо рдиреЛрдбреНрд╕ рдХреА рдЙрд╕ рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд╕рдорд╛рди рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ, рдХреЗрд╡рд▓ 16 рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде, рд╣рдо рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рджреМрдбрд╝реЗрдВрдЧреЗ 54 рдорд┐рдирдЯ рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ 27 рдореЗрдВ рдкреВрд░рд╛ рд╣реБрдЖред
рдореЗрдореЛрд░реА рдЦрдкрдд рдмрд╣реБрдд рдЕрдиреБрдорд╛рдирд┐рдд рд╣реИ рдФрд░ рдХрд╛рдлреА рд╣рдж рддрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реЛ рдЧрдИ рд╣реИред 256 рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде, рдСрдкрд░рди 10 рдХреЗ рд╕рд╛рде Ansible рдЙрдкрднреЛрдЧ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЪрд╛рд░ рдЧреБрдирд╛ рдХрдо рдЦрдкрдд рдХрд░рддрд╛ рд╣реИ; рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рдкреНрд░реЛрд╕реЗрд╕рд░ рдХрдо рд╕реЗ рдХрдо 15 рдЧреБрдирд╛ рдХрдо рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рд╡рдХреНрд░ рдШрдЯрддрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдЕрдиреНрд╕рд┐рдмрд▓ 40 рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде 64 рдиреЛрдб рдкрд░ рдЪрд▓рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ 256 рдиреЛрдб рдкрд░ рдЪрд▓рддрд╛ рд╣реИред 10. рд╕реЗ рдЪрд▓рд╛рдП рдЬрд╛рдиреЗ рдпреЛрдЧреНрдп 256 рдиреЛрдб рдкрд░ 1.6 рд░рди / рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд▓рд┐рдпрд╛ рдЧрдпрд╛; рдЗрд╕рд▓рд┐рдП, рдЙрдкрд▓рдмреНрдз рд░реИрдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рдкреНрд░рд╛рдкреНрдд рд╕рдорд╛рдирддрд╛ рдкрд░ рдПрдХ рдЧрдВрднреАрд░ рдкреНрд░рддрд┐рдмрдВрдз рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдСрдкрд░реЗрд╢рдирди рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рдПрдХ рдирдпрд╛ рдХрджрдо рд╣реИ рдЬреЛ рдорд┐рд╕реНрдмреЛрдЬ рдХреЗ рд╕рд╛рде рдПрдВрд╕рд┐рдмрд▓ рдХреЗ рд▓рд┐рдП рд╢реБрд░реВ рд╣реБрдЖред рдпрд╣ рд╣рдЬрд╛рд░реЛрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╕реБрдзрд╛рд░реЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ:


рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╣реА рдирд╣реАрдВ
рдЙрддреНрдкрд╛рджрдХрддрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕, рд╕рдВрдЧрддрддрд╛ рдФрд░ рд▓рд╛рдЧрдд рдХреЗ рдЖрдВрддрд░рд┐рдХрдХрд░рдг рдХреА рдУрд░ рд╕рд╛рдВрд╕реНрдХреГрддрд┐рдХ рдмрджрд▓рд╛рд╡ рдХрд╛ рдПрдХ рдкрдХреНрд╖ рдкреНрд░рднрд╛рд╡ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рд▓рд┐рдП рдирдП рдЙрддреНрдкрд╛рдж рдХреЗ рд╕реНрд╡рд╛рдж рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрднрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдпрд╣ рдШреЛрд╖рдгрд╛ рдХрд░рддреЗ рд╣реБрдП рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпрдХреНрд╖ рд╕рдВрдЧрддрддрд╛ рдХреЗ рд╕рд╛рде рдкреНрд▓реЗрдмреБрдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЧрд╛рд░рдВрдЯреА рд╣реЛрдЧреА - рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдкреБрд░рд╛рдиреЗ Ansible Engine constructs рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ :
- include: "i-will-always-work.yml"
"рдЫреЛрд░реЛрдВ рдХреЗ рд╕рд╛рде"
- debug: msg={{item}} with_items: ["i", "will", "always", "work"]
"рд╕реНрдХреНрд╡реИрд╢ рдХреНрд░рд┐рдпрд╛рдПрдБ"
- apt: name: "{{item}}" with_items: ["i", "will", "always", "work"]
рд╕рдореВрд╣ рдирд╛рдореЛрдВ рдореЗрдВ рд╣рд╛рдЗрдлрд╝рди
$ cat hosts [i-will-always-work.us.mycorp.com] host1
рд╣реИрд╢ рдорд░реНрдЬ
# I will always work [defaults] hash_behaviour = merge
Ansible 2.9 рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдВрдЧрдд рдХреЗ рд╕рд╛рде рдСрдкреЗрд░реЙрди рд╢рд┐рдкрдореЗрдВрдЯ рдХреЛ рдирд┐рд░рдВрддрд░ рд╕рдорд░реНрдерди рдорд┐рд▓реЗрдЧрд╛ , рдФрд░ Ansible рдЗрдВрдЬрди рдореЗрдВ рдЕрдХреНрд╖рдо рд╕рд┐рдВрдЯреИрдХреНрд╕ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдСрдкреЗрд░реЙрди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЗрд╕ рддрд░рд╣ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдЙрдирдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХреЗ рдкреНрд░рддрд┐рд╖реНрдард╛рдиреЛрдВ рдХреЛ рдиреБрдХрд╕рд╛рди рдкрд╣реБрдВрдЪрд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рдЕрдкрдбреЗрдЯ рдХреЗ рджреМрд░рд╛рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд╛ рдореБрдЦреНрдп рд╕реНрд░реЛрдд рд╣реИрдВред
рд╕рдордп рдХреЗ рд╕рд╛рде, рдпрд╣ рдЧрд╛рд░рдВрдЯреА рдЗрдВрдЬрди рдФрд░ рдЙрд╕рд╕реЗ рдЖрдЧреЗ рдХреЗ рд╢рдмреНрджрд╛рд░реНрдереЛрдВ рддрдХ рдлреИрд▓реА рд╣реБрдИ рд╣реИред
рдХреИрд╕реЗ рдЬреБрдбрд╝реЗрдВ?
рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдСрдкреЗрд░реЙрди рдХреЛ рдиреЗрдЯрд╡рд░реНрдХ рдЬреАрдиреЛрдорд┐рдХреНрд╕ рдХреЗ рд╕рдорд░реНрдерди рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдпрд╣ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрднрд╡ рдФрд░ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдХрд╣реАрдВ рдФрд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рдЖрдкрдХреА рдЯреАрдо рддреИрдирд╛рддреА рдХреЗ рдЬрд╛рд▓ рдореЗрдВ рдлрдВрд╕ рдЧрдИ рд╣реИ рдпрд╛ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рд╕реЗ рдердХ рдЧрдИ рд╣реИ, рддреЛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рд▓рд┐рдП рдкреВрдЫрдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ , рдФрд░ рдмрд┐рдирд╛ рджреЗрд░реА рдХрд┐рдП, рдореБрдЭреЗ рдХрд┐рд╕реА рднреА рдкреНрд░рд╢реНрди рдФрд░ рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рдХреЗ рдмрд┐рдВрджреБ рдХреЗ рд▓рд┐рдП рдИ - рдореЗрд▓ рд▓рд┐рдЦреЗрдВ ред
рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░рд┐рд▓реАрдЬ рддрдм рд╣реЛрдЧреА рдЬрдм рд╣рдо рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрддрд░ рдХрд╛ рдореБрдлреНрдд рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред рднрд╡рд┐рд╖реНрдп рдХреЗ рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдиреНрдпреВрдЬрд╝рд▓реЗрдЯрд░ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВ ред
рдХреНрдпрд╛ рдСрдкрд░реЗрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛ рд╡рд┐рдВрдбреЛрдЬ рдкреНрд░рджрд░реНрд╢рди?
рд╣рд╛рдВред рдпрджрд┐ рдЖрдкрдХреЗ рд╡рд┐рдВрдбреЛрдЬ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рджреМрд░рд╛рди рдкреНрд░рджрд░реНрд╢рди рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рддреЛ рдЕрднреА рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд░рд╣реЗрдВред
рдХреНрдпрд╛ рдСрдкрд░рдЯрди рдиреЗрдЯрд╡рд░реНрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдЧрд╛?
рд╣рд╛рдВред рдСрдкреЗрд░реЙрди рдПрдХ рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рдирдпрд╛ рд╕реНрд╡рд░реВрдк рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкрд░рд┐рд╡рд╣рди рдкрд░рдд рд╕реЗ рдкрд░реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрдиреЗрдХреНрд╢рдиреЛрдВ рдкрд░ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред
рдХреНрдпрд╛ рдСрдкреЗрд░реЙрди рдПрдХ рдЕрд╕реНрдерд┐рд░ рдЕрдкрд░рд╛рдз рд╣реИ?
рдирд╣реАрдВред рдУрдкреЗрд░реЙрди рдЗрдВрдЬрди рдХрд╛ рдПрдХ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдкреБрдирд░реНрд▓реЗрдЦрди рд╣реИ, рдЬреЛ рдХреЛрдб рдХреЗ рд▓рдЧрднрдЧ 60k рд▓рд╛рдЗрдиреЛрдВ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рдШрдЯрдХ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рд▓рдЧрднрдЧ рдПрдХ рдЪреМрдерд╛рдИ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ Ansible рдХреА рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 715k рд▓рд╛рдЗрдиреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдСрдкрд░реЙрди рдХреА рддрд░рд╣, рд╡рд┐рд╢рд╛рд▓ Ansible рд╕рдореБрджрд╛рдп рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред
рдХреНрдпрд╛ рдСрдкрд░реЗрд╢рдирд▓ рдПрдВрд╕рд┐рдмрд▓ рдЗрдВрдЬрди рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛?
рд╣рд╛рдВред рдУрдкреЗрд░рд┐рдпрди рдЗрдВрдЬрди рдХреЗ рднреАрддрд░ рдСрдкреЗрд░реЙрди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕реБрдзрд╛рд░ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ рдПрдХ рд╢реЛрдзрди рд╣реИ, рдПрдХ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЛрддреНрд╕рд╛рд╣рди рд╣реИ, рдЬрд╣рд╛рдВ рдЖрд╡рд╢реНрдпрдХ рдХреЛрдб рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рдХреНрдпрд╛ рдСрдкрд░рди рдлреНрд░реАрд╡реЗрдпрд░ рд╣реИ?
рд╣рд╛рдВред рдУрдкреЗрд░рди рдХреЗ рд░реВрдк рдореЗрдВ рдУрдкреЗрд░рди рдХреЛ рдЙрд╕реА рдЬреАрдкреАрдПрд▓ рдХреЗ рддрд╣рдд рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рдХреЛрдб рдХрд╛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдХреНрдпрд╛ рдСрдкреЗрд░реЙрди рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ?
рдирд╣реАрдВред рдУрдкреЗрд░реЙрди рдореЙрдбреНрдпреВрд▓ рдХреЗ рдорд╛рдирдХ рд╕реЗрдЯ, рдкреНрд▓рдЧ-рдЗрди рдЗрдВрдЯрд░рдлреЗрд╕, рдпрд╛ рдЖрд╕рдкрд╛рд╕ рдХреЗ Ansible рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрддрддрд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИред рд╕рдВрдЧрддрддрд╛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╣реИ: рдЖрдкрдХреЛ рднрд╡рд┐рд╖реНрдп рдХреЗ рд╕реБрдзрд╛рд░реЛрдВ рд╕реЗ рдкреАрдЫреЗ рдирд╣реАрдВ рд╣рдЯрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╕рд╛рде рд╣реА рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрддрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рднреВрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ рдХрд┐ рдкреНрд▓реЗрдмреБрдХ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдмреЗрд╣рддрд░ рд╕реНрдерд┐рд░рддрд╛ред
рдЕрдЧрд░ рдореБрдЭреЗ рд╕рд┐рд░реНрдл рдПрдХ рдиреЛрдб рдХреА рдпреЛрдЬрдирд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рдореБрдЭреЗ рдСрдкрд░рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?
рдСрдкреЗрд░реЙрди рдЙрди рдХреМрд╢рд▓реЛрдВ рдХреА рдирд┐рд░рдВрддрд░ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдЧрд╛ рдЬрд┐рдирдореЗрдВ рдЖрдкрдиреЗ рдмрд╣реБрдд рдирд┐рд╡реЗрд╢ рдХрд┐рдпрд╛ рд╣реИред рдпрд╣ рдмрдврд╝рд╛ рд╣реБрдЖ рд▓рдЪреАрд▓рд╛рдкрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рдмрд╕ рдореМрдЬреВрдж рдирд╣реАрдВ рдерд╛: рдЗрдВрдЬрди рдЪреБрдирдиреЗ рдХреА рд╕реНрд╡рддрдВрддреНрд░рддрд╛ред рдСрдкрд░рди рдХреЗ рд╕рд╛рде, рдЖрдк рдЬреАрддрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдЖрдк рдЗрд╕реЗ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред