рдЕрд╕рд░рджрд╛рд░ рднреВрдорд┐рдХрд╛рдУрдВ рдХрд╛ рдкреНрд░рднрд╛рд╡реА рд╡рд┐рдХрд╛рд╕ рдФрд░ рд░рдЦрд░рдЦрд╛рд╡

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

Ansible рдПрдХ рдЬрд╛рджреВ рдХреА рдЧреЛрд▓реА рдирд╣реАрдВ рд╣реИ , рдФрд░ рдХреЗрд╡рд▓ рдкрд╣рд▓реА рдмрд╛рд░ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдЬрдм рдХреЛрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдврд╝рддреА рд╣реИ, рддреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рднреВрдорд┐рдХрд╛рдУрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд░рдВрддрд░ рд╡рд┐рддрд░рдг рддрдВрддреНрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред

рдмрд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, DevOps Conf Russia рдореЗрдВ рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдЦрд╛рд░рдХреЗрд╡рд┐рдЪ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рдбрд┐рдХреЛрдбрд┐рдВрдЧред рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ: рд╕реАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреНрд╕рд┐рдмрд▓ рднреВрдорд┐рдХрд╛рдУрдВ рдХрд╛ рд╡рд┐рдХрд╛рд╕, рдирд┐рдЬреА рдЕрд╡рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рд░рди рдХреЗ рд╕рд╛рде рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднреВрдорд┐рдХрд╛рдУрдВ рдФрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ред рдФрд░ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдХреЛрдИ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд╣реАрдВ рдирд┐рдХрд▓рд╛ рд╣реИред



рд╕реНрдкреАрдХрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ : рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдЦрд╛рд░рдХреЗрд╡рд┐рдЪ ( рдЦрд╛рд░рдХреЗрд╡рд┐рдЪ ) EPAM рд╕рд┐рд╕реНрдЯрдореНрд╕ рдореЗрдВ рд╡рд░рд┐рд╖реНрда рд╕рд┐рд╕реНрдЯрдо рдЗрдВрдЬреАрдирд┐рдпрд░ред

рдЪрд▓реЛ рдПрдХ рддреНрд╡рд░рд┐рдд рдЕрд╡рд▓реЛрдХрди рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

рдЕрдиреНрд╕рд┐рдмрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


Ansible рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рд╣реИред рдпрд╣ рдкрд╛рдпрдерди рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреБрдиреЗрдЬрд╛ рджреНрд╡рд╛рд░рд╛ рдЯреЗрдореНрдкрд▓реЗрдЯреЗрдб рдФрд░ рдпрдореНрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреАрдПрд╕рдПрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдкреНрд░рдмрдВрдзрди рдФрд░ рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Ansible Tower - WebUI рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рддред

3 рд╕рд╛рд▓ рдмрд╛рдж рд░реЗрдбреА рд╣реИрдЯ рдХреЗ рдкреВрд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЦрд░реАрджрдиреЗ рдХреЗ рдмрд╛рдж, 2012 рдореЗрдВ рдПрдиреНрд╕рд┐рдмрд▓ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдФрд░ рджреЛ рд╕рд╛рд▓ рдмрд╛рдж рдПрдиреНрд╕рд┐рдмрд▓ рдЯреЙрд╡рд░ рдХрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдУрдкрди рд╕реЛрд░реНрд╕ рд╕рдВрд╕реНрдХрд░рдг AWX рдкреЗрд╢ рдХрд┐рдпрд╛ред

рд╕реНрдерд╛рдкрдирд╛


Ansible рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреЛ рд╕рд░рд▓ рдХрд╛рдо рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред

рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ, рд╕реНрдЯреИрдЯрд┐рдХ рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВред



рджреВрд╕рд░рд╛ рдкреНрд▓реЗрдмреБрдХ рд▓рд┐рдЦрдирд╛ рд╣реИ рдЬреЛ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓рд╛рдПрдЧрд╛ред



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

рднреВрдорд┐рдХрд╛


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



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



рд╣рдордиреЗ рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХрд▓реНрдкрдирд╛ рдХреИрд╕реЗ рдХреА


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


рд╣рдордиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рд╣рдо рд╕реБрдВрджрд░ рдФрд░ рд╕реНрдорд╛рд░реНрдЯ рднреВрдорд┐рдХрд╛рдПрдБ рд▓рд┐рдЦреЗрдВрдЧреЗ ...



рд▓реЗрдХрд┐рди рдЬреАрд╡рди рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛ рдЧрдпрд╛ред

рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ


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

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


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



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

  • рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВред
  • рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг, рд▓рд┐рдВрдЯ рд▓рд╛рдЧреВ рдХрд░реЗрдВред
  • рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ред
  • рдУрд╡рд░рдХреНрд▓реЙрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рд┐рд▓реАрдЬ рдкреНрд░рдмрдВрдзрди рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рд╣рдордиреЗ рдШрд░ рдкрд░ рдЕрднреНрдпрд╛рд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рддреБрд░рдВрдд рдЙрдкрдпреБрдХреНрдд рдЙрдкрдХрд░рдгреЛрдВ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдЪрд▓реЗ рдЧрдПред

рдЙрдкрдХрд░рдг


рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдФрд░ рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рджрд░реНрдЬрдиреЛрдВ рдЙрдкрд▓рдмреНрдз рд╕рдорд╛рдзрд╛рди рд╣реИрдВ, рдФрд░ рдПрдХ рд╢рд╛рдЦрд╛ рдкрд░реАрдХреНрд╖рдг рдЪрд┐рдбрд╝рд┐рдпрд╛рдШрд░ рд╣реИред



рд░рд┐рд▓реАрдЬрд╝ рдкреНрд░рдмрдВрдзрди рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, Ansible рдХреЗ рдкрд╛рд╕ рдХрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИрдВ: Git рдореЗрдВ рдЯреИрдЧ, Git рдореЗрдВ рдЯреИрдЧ рдпрд╛ рдЧреИрд▓реЗрдХреНрд╕реА рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВред

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

рд╣рдорд╛рд░реА рдЖрддреНрдорд╛ рдкрд╛рдпрдерди рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдЕрдиреНрд╕рд┐рдмрд▓ рдХреЛ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЭреВрда рдирд╣реАрдВ рдмреЛрд▓рддреА, рдФрд░ рд░реВрдмреА рджреБрдирд┐рдпрд╛ рд╕реЗ рдЙрдкрдХрд░рдг рдХреЛ рдорд┐рд▓рд╛рддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдкрд╛рдпрдерди рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдЧреИрд░-рджреЗрд╢реА рд╕рдм рдХреБрдЫ рдмрд╛рд╣рд░ рдлреЗрдВрдХрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд┐рддреНрд░ рдорд┐рд▓рд╛ред



рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:

  • рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП - рдЧрд┐рдЯрд╣рдм рдФрд░ рдЧрд┐рдЯрд▓реИрдмред GitLab рд╕реАрдзреЗ GitHub рдкрд░ рджреЗрдЦ рд░рд╣рд╛ рд╣реИред рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛, рдореИрдВ рдмрд╛рдж рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ред
  • CI рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдкрдмреНрд▓рд┐рдХ рдкрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдЯреНрд░реИрд╡рд┐рд╕ рдФрд░ рдкреНрд░рд╛рдЗрд╡реЗрдЯ рдкрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдЧрд┐рдЯрд▓реИрдм рд░рдирд░ рд▓рд┐рдпрд╛ред
  • рдкрд░реАрдХреНрд╖рдг рдЕрдгреБред
  • GitHub рдореЗрдВ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ рдФрд░ Ansible Galaxy рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред

рдЗрди рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░рд╛ рд╡рд┐рдХрд╛рд╕ рдЪрдХреНрд░ рдЕрдзрд┐рдХ рдордЬреЗрджрд╛рд░ рд╣реЛ рдЧрдпрд╛ рд╣реИред


рдЕрдгреБ


рдпрд╣ рдЙрдкрдХрд░рдг рдПрдХ рднреВрдорд┐рдХрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд░рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрд╕рдХреЗ рдкрд╛рд╕ рд╕рдм рдХреБрдЫ рд╣реИ:

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



рдЯреЗрд╕реНрдЯ рдореИрдЯреНрд░рд┐рдХреНрд╕


рдЪрд░рдгреЛрдВ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдореИрдЯреНрд░рд┐рдХреНрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдХреБрд▓ 11 рдЪрд░рдг рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╣реЛрдЧрд╛ред

рдирдВрдмрд░ 1. рд▓рд┐рдВрдЯ


рд╡реЗ YAML рд▓рд┐рдВрдЯ рдФрд░ рдЕрдиреНрд╕рд┐рдмрд▓ рд▓рд┐рдВрдЯ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдФрд░ рдХреБрдЫ рдкрд╛рддреЗ рд╣реИрдВред



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

рдирдВрдмрд░ 2. рдирд╖реНрдЯ


рдкрд┐рдЫрд▓реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдмрд╛рдж рдмрдиреА рд╣реБрдИ рдЪреАрдЬрд╝реЛрдВ рд╕реЗ рдЕрдгреБ рдореБрдХреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

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



рдирдВрдмрд░ 3. рдирд┐рд░реНрднрд░рддрд╛


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

--- - src: lean_delivery.java version: 1.4 

рдЕрдгреБ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реИ рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛:

  • рдЧреИрд▓реЗрдХреНрд╕реА рдпрд╛ рдЧрд┐рдЯ рдЬрд╛рддрд╛ рд╣реИ
  • рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ;
  • рдлрд┐рд░ рд╕реЗ рдЧреИрд▓реЗрдХреНрд╕реА рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ;
  • рдбрд╛рдЙрдирд▓реЛрдб;
  • рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реЛрдЧрд╛ред



рдирдВрдмрд░ 4. рд╕рд┐рдВрдЯреЗрдХреНрд╕


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

рд╕реНрд▓рд╛рдЗрдб рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ ansible рднреВрдорд┐рдХрд╛ рдХреЛ 'kibana' рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкрд░реАрдХреНрд╖рдг Playbook рдореЗрдВ, рдЗрд╕реЗ ansible-role-kibana рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд┐рд╕реНрдЯрдо рдХрд╣рддрд╛ рд╣реИ: "рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛрдЧрд╛ рдФрд░ рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдирд╛рдо рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ!"



рдирдВрдмрд░ 5. рдХреНрд░рд┐рдПрдЯ рдХрд░реЗрдВ


рдЗрд╕ рд╕реНрддрд░ рдкрд░, рд╣рдо рдЙрд╕ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд▓ рддреИрдирд╛рдд рд╣реИред рдкреНрд╡рд╛рдЗрдВрдЯ рдЧреВрдЧрд▓ - рдпрд╣ Google рдореЗрдШ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдорд╢реАрдиреЛрдВ рдХреЛ рдмрдврд╝рд╛рдПрдЧрд╛ред

рд╣рдо рдЕрдгреБ рдореЗрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдлрд╝рд╛рдЗрд▓ред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдбреЙрдХрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреИрд╕реЗ рджрд┐рдЦрддрд╛ рд╣реИред



  • рдореИрдВ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдбреЙрдХ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
  • рдореИрдВ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╕рдореВрд╣рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рддрд╛рдХрд┐ рдПрдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдлрд╝рд╛рдЗрд▓ рдмрди рдЬрд╛рдПред

рдореИрдВ рджреЛ рдбреЙрдХрдЯрд░ рдЪрд┐рддреНрд░ рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ: рдПрдХ рдЖрд░рдПрдЪрдИрдПрд▓-рдЬреИрд╕реЗ рдХреЗ рд▓рд┐рдП, рджреВрд╕рд░рд╛ рдбреЗрдмрд┐рдпрди-рдЬреИрд╕реЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЯреЗрд╕реНрдЯ рд░рди рдХреЗ рджреМрд░рд╛рди рдЖрд░рдПрдЪрдИрдПрд▓ рдФрд░ рдбреЗрдмрд┐рдпрди рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛрдЧрд╛ред

рдирдВрдмрд░ 6. рддреИрдпрд╛рд░ рдХрд░реЗрдВ


рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдирд┐рд╖реНрдкрд╛рджрди рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрднрд┐рдХ рддреИрдпрд╛рд░реА рдХрджрдо рд╣реИред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдмрдврд╝ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдбреЗрдмрд┐рдпрди рдпрд╛ рдЙрдмрдВрдЯреВ рдореЗрдВ рдПрдХ рдЙрдареЗ рд╣реБрдП рдбреЙрдХрд░ рдХреЗ рдЕрдВрджрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдПрдХ рджреВрд╕рд░рд╛ рдкрд╛рдпрдерди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдЕрдХреНрд╕рд░ рд╣реЛрддрд╛ рд╣реИред

рдирдВрдмрд░ 7. рдзрд░реНрдорд╛рдиреНрддрд░рд┐рдд


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



  • рдЕрдгреБ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред
  • рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд▓ рдкрд░ рддреИрдирд╛рдд рдХрд░рдиреЗ рдпреЛрдЧреНрдпред
  • рдпрд╣ рдЪрд▓рддрд╛ рд╣реИред
  • рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ!

рдирдВрдмрд░ 8. рдЗрдореНрдкреЛрдЯреЗрдВрд╕


рдЗрдореНрдкреЛрдЯреЗрдиреНрд╕реА рдЯреЗрд╕реНрдЯ рд╕рд░рд▓ рд╣реИ рдФрд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред



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

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдо рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реА рднреВрдорд┐рдХрд╛ рд╡рд┐рдирд╛рд╢рдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред

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



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

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



рдЬрдм рдпрд╣ рддрд░рдХреАрдм рднреА рдкрдХрдбрд╝реА рдЧрдИ, рддреЛ рддрд╕реНрд╡реАрд░ рдХреБрдЫ рдРрд╕реА рджрд┐рдЦрдиреЗ рд▓рдЧреАред



рдЕрдЪреНрдЫрд╛ - рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд╛рдо рдХреЗ рддрд╣рдд рдЪрд▓рддреА рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдЖрджрд░реНрд╢ рд╣реИред

рдирдВрдмрд░ 9. рд╕рд╛рдЗрдб_рдлреИрдХреНрдЯ


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

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

рд╕рдВрдЦреНрдпрд╛ 10. рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реЗрдВ


рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХрд╛ рдкрд░реАрдХреНрд╖рдгред



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

рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╢реБрднрд╛рд░рдВрдн рдХреЗ рдЗрд╕ рдЪрд░рдг рдореЗрдВ, рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

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



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

рдирдВрдмрд░ 11. рдирд╖реНрдЯ


рд╣рдордиреЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП, рдХрд┐рд╕реА рди рдХрд┐рд╕реА рд░реВрдк рдореЗрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд░рд┐рдкреЛрд░реНрдЯ рд╣реИ, рдФрд░ рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдкреАрдЫреЗ рдХреЗ рд╕рднреА рдХрдЪрд░реЗ рдХреЛ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВред

рд╕реНрд╡рдЪрд╛рд▓рди


рдЕрдгреБ рдПрдХ рдорд╣рд╛рди рдЙрдкрдХрд░рдг рд╣реИред рдЕрдм рд╕рдмрд╕реЗ рд╕рд░рд▓ рдмрд╛рдд рдмрдиреА рд╣реБрдИ рд╣реИ - рдЕрдкрдиреА рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЖрдирдВрдж рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рдЬреЛрдбрд╝рдирд╛, рдЬреЛ рд╣рдордиреЗ рдХрд┐рдпрд╛ред



рдХрд╣реАрдВ рдФрд░, рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВред

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

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

  • GitLab рдиреЗ рдЕрдкрдиреЗ рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд┐рдП CI рдХрд░рдирд╛ рд╕реАрдЦрд╛ред
  • рднреВрдорд┐рдХрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ GitHub рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ, рд╡рд╣реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ GitLab.com рдЗрд╕рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдордиреЗ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдерд╛: "рдкреНрд░рд┐рдп GitLab, рдмрд╛рд╣рд░реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд┐рдП CI рдПрдХрддреНрд░ рдХрд░реЗрдВ"ред
  • рдирд┐рдЬреА рдзрд╛рд╡рдХ рдПрдХ рдмрдВрдж рдкрд░рд┐рдзрд┐ рдореЗрдВ рдЧрд┐рдЯрд▓реИрдм рдХреА рдУрд░ рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╛рдЗрдирд░реА рддрдХ рдкрд╣реБрдВрдЪ рд╣реИ, рдЬрд┐рд╕реЗ рд╡реЗ рддреИрдирд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рднреВрдорд┐рдХрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд╣рд┐рдд рд╣реИ, рдбреЗрдЯрд╛ рднреА, рдФрд░ рд╣рдо рдХрд┐рд╕реА рдХреЛ рдзреЛрдЦрд╛ рдирд╣реАрдВ рджреЗ рд░рд╣реЗ рд╣реИрдВ - рд╣рдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддреЗ рд╣реИрдВред

рдЖрдЗрдП рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдХрд┐ рдЯреНрд░реИрд╡рд┐рд╕ рдореЗрдВ рдХреНрдпрд╛ рджрд┐рдЦрддрд╛ рд╣реИред

рдЯреНрд░реИрд╡рд┐рд╕




рдХрджрдо:

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

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕реАрдЖрдИ


рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ CI рдкреНрд░рд╛рдердорд┐рдХ рджрд┐рдЦрддрд╛ рд╣реИред



GitHub рд╕реЗ, Travis рдХрд╛ рдПрдХ рддреАрд░, рдЬрд┐рд╕рдХреЗ рдЕрдВрджрд░ Molecule рдФрд░ Docker рд░рд╣рддреЗ рд╣реИрдВред

рдирд┐рдЬреА рд╕реАрдЖрдИ


GitLab рдХреЗ рдирд┐рдЬреА рднрд╛рдЧ рдХреЗ рд▓рд┐рдП, рд╕рдм рдХреБрдЫ рд╕рдорд╛рди рд╣реИред



рдирд┐рдЬреА рдкрд░рд┐рдзрд┐ рдореЗрдВ, рд╣рдо рдПрдХ рдзрд╛рд╡рдХ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдФрд░ рддрд╕реНрд╡реАрд░ рдЕрдзрд┐рдХ рдордЬреЗрджрд╛рд░ рд▓рдЧрддреА рд╣реИред



рдХреЛрдб GitHub рд╕реЗ GitLab рддрдХ рдорд┐рд▓рддрд╛ рд╣реИ, рдХрд╣реАрдВ-рдХрд╣реАрдВ рдПрдХ рдирд┐рдЬреА рдзрд╛рд╡рдХ рдЪрд▓рд╛рддрд╛ рд╣реИ рдЬреЛ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЦреАрдВрдЪ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдореЗрдЬрд╝реЕрди рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЪрд▓рд╛рдПрдВред

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

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

рдЙрддреНрддрд░ рджреЗрдиреЗ рдпреЛрдЧреНрдп рдЖрдХрд╛рд╢рдЧрдВрдЧрд╛


рд╣рдо рд╕рдорд╛рдкрди рдкрд░ рдЖрдП, рд╣рдорд╛рд░реА рднреВрдорд┐рдХрд╛ рд╣рд░реА, рд╕реБрдВрджрд░ рд╣реИ, рд╣рдо рдЗрд╕реЗ рдЧреИрд▓реЗрдХреНрд╕реА рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВрдЧреЗред



рдпрд╣ рдПрдХ рд╕рд░рд▓ рдСрдкрд░реЗрд╢рди рд╣реИ:

  • рдЯреНрд░реИрд╡рд┐рд╕ рдореЗрдВ рд╣реИ рдХрд┐ webhook рдХреЙрд▓ред
  • рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЯреНрд░реИрд╡рд┐рд╕ рдЯреНрд░рд┐рдЧрд░ рд╣реЛрдЧрд╛, рд╕реАрдЖрдИ рдлрд┐рд░ рд╕реЗ рдЪрд▓реЗрдЧрд╛ред
  • Webhook рдХреЛ рдмреБрд▓рд╛рдУред
  • рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЧреИрд▓реЗрдХреНрд╕реА рдореЗрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрдврд╝реЗрдЧрд╛ред

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

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

рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕


рдореИрдВ рдПрдХ рдЫреЛрдЯреА рд╕реА рдЯреНрд░рд┐рдХ рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: рддрд╛рдХрд┐ рдирдИ рднреВрдорд┐рдХрд╛ рд▓рд┐рдЦрддреЗ рд╕рдордп рд╣рд░ рдмрд╛рд░ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рди рдХрд░реЗрдВ, рд╣рдордиреЗ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдмрдирд╛рдиреЗ рдФрд░ рдПрдХ рдЕрд▓рдЧ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЛ рд╕реНрдХреНрд░реИрдЪ рд╕реЗ рдЬрд▓реНрджреА рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд╛рд▓рддреЗ рд╣реИрдВред

рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ Ansible lint рдФрд░ GitHub issue_template рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИрдВред рд╕рдм рдХреБрдЫ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рд╕реБрдВрджрд░ рд░реВрдк рдореЗрдВ рдЬрд╛рд░реА рдХрд░рдирд╛ рднреА рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдпрд╛ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрдВрджрд░ рд░реВрдк рдореЗрдВ рдерд╛ред рд╣рдо Gitignore, Gitlab-ci рдФрд░ рдЙрд╕реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред



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

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ рддрд╛рдХрд┐ рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рд╕рдм рдХреБрдЫ рдХрд┐рдХ рдХрд░ рд╕рдХреЗрдВ рдФрд░ рд╢реБрд░реВ рдХрд░ рд╕рдХреЗрдВред

рдкрд░рд┐рдгрд╛рдо


рдХреЛрдИ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд╣реАрдВ рдирд┐рдХрд▓реЗрдЧрд╛, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдореЗрд░реЗ GitHub , My Galaxy рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ , GitHub Lean Delivery рдФрд░ Ansible Galaxy рдХреЗ рд▓рд┐рдВрдХ рд╣реИрдВ ред рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╕рднреА рдЙрджрд╛рд╣рд░рдг рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред

рдЕрдЧрд▓рд╛ DevOps рд╕рдореНрдореЗрд▓рди рдордИ рдореЗрдВ рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЬрдм рд╣рдо рдШрдЯрдирд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, YouTube рдЪреИрдирд▓ рдФрд░ рдиреНрдпреВрдЬрд╝рд▓реЗрдЯрд░ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВред рдЪреИрдирд▓ рдХреЛ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдХреЗ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд╕рд╛рде рдлрд┐рд░ рд╕реЗ рднрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪреА рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╕рд╛рдордЧреНрд░реА, рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдФрд░ DevOps рд╕рдорд╛рдЪрд╛рд░ рдХреЗ рдЪрдпрди рд╣реЛрдВрдЧреЗред

рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВ, рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ :)

Source: https://habr.com/ru/post/hi431542/


All Articles