рд╕рддрдд рдореЗрдШ рдЕрд╡рд╕рдВрд░рдЪрдирд╛

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


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

рддреЛ, рдЪрд▓рд┐рдП рдХреБрдЫ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд┐рд╖реНрдХрд░реНрд╖реЛрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╕рд░реНрд╡рд░ рдмреЗрдХрд╛рд░ рд╣реИ




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

рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЕрд╡рд╕рдВрд░рдЪрдирд╛


2013 рдореЗрдВ, рдЪрд╛рдб рдлрд╝реЙрдЗрд▓рд░ рдХреЗ рдмреНрд▓реЙрдЧ рдкрд░ "рдЖрдкрдХреЗ рд╕рд░реНрд╡рд░ рдлреЗрдВрдХреЛ рдФрд░ рдЕрдкрдирд╛ рдХреЛрдб рдЬрд▓рд╛рдУ: рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЕрд╡рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдбрд┐рд╕реНрдкреЛрдЬреЗрдмрд▓ рдШрдЯрдХ" (рдЪрд╛рдб рдлрд╝реЙрдЗрд▓рд░ "рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдЯреНрд░реИрд╢ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдЬрд▓рд╛рдПрдВ: рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЕрд╡рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдбрд┐рд╕реНрдкреЛрдЬреЗрдмрд▓ рдШрдЯрдХреЛрдВ рдХреЛ" )ред рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдмрд╛рддрдЪреАрдд рд╣реИ рдХрд┐ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИред рд╣рдордиреЗ рдЖрдзрд╛рд░рднреВрдд рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдИ рд╣реИ, рдФрд░ рдЕрдЧрд░ рд╣рдореЗрдВ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рдирдпрд╛ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдмрд╣реБрдд рдЖрдо рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣рд╛рдВ рдпрд╣ рддреЗрдЬ рдФрд░ рд╕рд╕реНрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рднреМрддрд┐рдХ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рд╣реИрдВ, рддреЛ рдпрд╣ рдереЛрдбрд╝рд╛ рдкреЗрдЪреАрджрд╛ рд╣реИред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЕрдЧрд░ рдЖрдк рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЪреАрдЬреЗрдВ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдЖрдк рдЕрднреА рднреА рд╣рд░ рдмрд╛рд░ рднреМрддрд┐рдХ рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХрд┐рд╕реА рдирдП рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред

рдбрд┐рд╕реНрдкреЛрдЬреЗрдмрд▓ рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░


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

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

рдореИрдВ рдПрдХ рдЙрдкрдорд╛ рджреВрдВрдЧрд╛ред рдЦреЗрдд рдХреА рдЧрд╛рдпреЛрдВ рдХреЛ рдЖрдорддреМрд░ рдкрд░ рдкрд╛рд▓рддреВ рдЬрд╛рдирд╡рд░ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред



рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдЦреЗрдд рдкрд░ рдорд╡реЗрд╢реА рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдПрдХ рдирдВрдмрд░ рдФрд░ рдПрдХ рдЯреИрдЧ рд╣реЛрддрд╛ рд╣реИред рддреЛ рдпрд╣ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ 2006 рдореЗрдВ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рд░реНрд╡рд░ рдмрдирд╛рдП рд╣реИрдВ, рддреЛ рдЙрдирдХреЗ рдкрд╛рд╕ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╛рдо рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "SQL рдбреЗрдЯрд╛рдмреЗрд╕ рдСрди рдкреНрд░реЛрдбрдХреНрд╢рди 01"ред рдФрд░ рдЙрдирдХрд╛ рдПрдХ рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрд░реНрде рд╣реИред рдФрд░ рдЕрдЧрд░ рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕реЗ рдПрдХ рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдирд░рдХ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред

рдпрджрд┐ рдЭреБрдВрдб рдореЗрдВ рдЬрд╛рдирд╡рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдорд░ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХрд┐рд╕рд╛рди рдмрд╕ рдПрдХ рдирдпрд╛ рдЦрд░реАрджрддрд╛ рд╣реИред рдпрд╣ "рд╡рди-рдЯрд╛рдЗрдо рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рд╣реИред"

рдирд┐рд░рдВрддрд░ рд╡рд┐рддрд░рдг


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

рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдирд┐рд░рдВрддрд░ рд╡рд┐рддрд░рдг рдФрд░ рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдорд╛рд░реНрдЯрд┐рди рдлрд╛рдЙрд▓рд░ рдиреЗ 2000 рдХреЗ рджрд╢рдХ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЕрдкрдиреЗ рдмреНрд▓реЙрдЧ рдкрд░ рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛ред Jez Humble рдиреЗ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдирд┐рд░рдВрддрд░ рд╡рд┐рддрд░рдг рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджрд┐рдпрд╛ рд╣реИред

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

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

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

рд╕рддрдд рд╡рд┐рддрд░рдг рд╕рд┐рджреНрдзрд╛рдВрдд рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░


рд╕рддрдд рд╡рд┐рддрд░рдг рдХреЗ рдХрдИ рд╕рд┐рджреНрдзрд╛рдВрдд рд╣реИрдВ:

  • рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд░рд┐рд▓реАрдЬрд╝ / рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рджреЛрд╣рд░рд╛рдиреЗ рдпреЛрдЧреНрдп рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рд╕рдм рдХреБрдЫ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд!
  • рдпрджрд┐ рдХреЛрдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрдард┐рди рдпрд╛ рджрд░реНрджрдирд╛рдХ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд░реЗрдВред
  • рд╕реНрд░реЛрдд рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╕рдм рдХреБрдЫ рд░рдЦреЗрдВред
  • рд╣реЛ рдЧрдпрд╛ - рдХрд╛ рдЕрд░реНрде рд╣реИ "рдЕрд╕рдВрдмрдВрдзрд┐рдд"ред
  • рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд╛рдо!
  • рд░рд┐рд╣рд╛рдИ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╣рд░ рдХреЛрдИ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред
  • рдирд┐рд░рдВрддрд░рддрд╛ рдмрдврд╝рд╛рдПрдВред

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

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

рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдкреБрд╕реНрддрдХ рдХреЛ рдирд┐рд░рдВрддрд░ рд╡рд┐рддрд░рдг рдкрдврд╝рд╛ рд╣реИ?



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

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



Terraform рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдкреНрд░рджрд╛рддрд╛ рдмрд╛рджрд▓, рд╕рд╛рд╕ рд╕реЗрд╡рд╛ рдЖрджрд┐ рд╣реИрдВред

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

рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдЧреНрд░рд╛рдл рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред



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



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

рдЕрднреНрдпрд╛рд╕


рдПрдХ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИред

рдореИрдВрдиреЗ рдкрд╣рд▓реЗ AMI (Amazon Machine Images) рдмрдирд╛рдИ рдереАред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЖрдкрдХреЛ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИред

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

рдЗрд╕рд▓рд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдПрдордЖрдИ рд╣реИ, рдЙрдирдХреЗ рдкрд╛рд╕ рдЖрдИрдбреА рд╣реИред рдЕрдореЗрдЬрд╝реЕрди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░ рдЬрд╛рдХрд░, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдПрдХ рдПрдПрдордЖрдИ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХ рдХреБрдЫ рдирд╣реАрдВ:



рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рдПрдПрдордЖрдИ рдореЗрдВ рдХреНрдпрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ JSON рдлрд╛рдЗрд▓ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╣реИ:

{ "variables": { "source_ami": "", "region": "", "version": "" }, "builders": [{ "type": "amazon-ebs", "region": "{{user 'region'}}", "source_ami": "{{user 'source_ami'}}", "ssh_pty": true, "instance_type": "t2.micro", "ssh_username": "ubuntu", "ssh_timeout": "5m", "associate_public_ip_address": true, "ami_virtualization_type": "hvm", "ami_name": "application_instance-{{isotime \"2006-01-02-1504\"}}", "tags": { "Version": "{{user 'version'}}" } }], "provisioners": [ { "type": "shell", "start_retry_timeout": "10m", "inline": [ "sudo apt-get update -y", "sudo apt-get install -y ntp nginx" ] }, { "type": "file", "source": "application-files/nginx.conf", "destination": "/tmp/nginx.conf" }, { "type": "file", "source": "application-files/index.html", "destination": "/tmp/index.html" }, { "type": "shell", "start_retry_timeout": "5m", "inline": [ "sudo mkdir -p /usr/share/nginx/html", "sudo mv /tmp/index.html /usr/share/nginx/html/index.html", "sudo mv /tmp/nginx.conf /etc/nginx/nginx.conf", "sudo systemctl enable nginx.service" ] } ] } 

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

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

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

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

make validate

рдореБрдЭреЗ рдЙрддреНрддрд░ рдорд┐рд▓рддрд╛ рд╣реИ рдХрд┐ рдкреИрдХрд░ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:



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

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдПрдПрдордЖрдИ рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдпрд╛ рд╣реИред



рдореИрдВ рдЖрдкрдХреЛ рдЕрдВрддрд░ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 1.0.0 рд╕реЗ 1.0.1 рддрдХ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдареАрдХ рдХрд░реВрдВрдЧрд╛:

 <html> <head> <tittle>Welcome to DevOops!</tittle> </head> <body> <h1>Welcome!</h1> <p>Welcome to DevOops!</p> <p>Version: 1.0.1</p> </body> </html> 

рдореИрдВ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ рд▓реМрдЯреВрдВрдЧрд╛ рдФрд░ рдПрдПрдордЖрдИ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ рдХрд░реВрдВрдЧрд╛ред
рдореИрдВ рдПрдХ рд╣реА рдЯреАрдо рдХреЛ рдЪрд▓рд╛рдирд╛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ред рдореБрдЭреЗ рдПрдПрдордЖрдИ рдлрд╛рд╕реНрдЯ рдмрдирд╛рдирд╛ рдкрд╕рдВрдж рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдореЗрдХрдлрд╛рдЗрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдЖрдЗрдП рдореЗрд░реЗ рд╢реНрд░реГрдВрдЧрд╛рд░ рдореЗрдВ cat рд╕рд╛рде рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:

cat Makefile




рдпрд╣ рдореЗрд░рд╛ рдореЗрдХрдЕрдк рд╣реИред рдореИрдВрдиреЗ рд╕рд╣рд╛рдпрддрд╛ рднреА рдкреНрд░рджрд╛рди рдХреА: рдореИрдВ рдЯреИрдм рдЯрд╛рдЗрдк рдФрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдпрд╣ рдореБрдЭреЗ рд╕рднреА рд▓рдХреНрд╖реНрдп рджрд┐рдЦрд╛рддрд╛ рд╣реИред



рдЗрд╕рд▓рд┐рдП, рд╣рдо рдПрдХ рдирдпрд╛ рдПрдПрдордЖрдИ рд╕рдВрд╕реНрдХрд░рдг 1.0.1 рдмрдирд╛рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

make ami




рд╡рд╛рдкрд╕ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдореЗрдВред

рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдЙрддреНрдкрд╛рджрди рдХреЛрдб рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╣реИред рдПрдХ рд╣реА рдХрд╛рдо рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рд╣реИрдВред

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

рдЕрдВрджрд░ рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ? рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЗрд╕рдХреА рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рдХреНрд▓рд╛рдЙрдб рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, VPC рдХреНрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╡рд┐рд╡рд░рдгреЛрдВ рдореЗрдВ рддрд▓реНрд▓реАрди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдХреЗрд╡рд▓ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдЬрд┐рдиреНрд╣реЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдЗрд╕реЗ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдПред




рдпрд╣рд╛рдБ рдореИрдВ AWS рд╕рдВрд╕рд╛рдзрди рдФрд░ VPC рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБред рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ? рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп cidr_block рд▓реЗрдВ рдФрд░ рддреАрди рдирд┐рдЬреА рд╕рдмрдиреЗрдЯ рдФрд░ рддреАрди рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕рдмрдиреЗрдЯ рдмрдирд╛рдПрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд acidity_zones рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИред рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпреЗ рдПрдХреНрд╕реЗрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдЬреЛрди рдХреНрдпрд╛ рд╣реИрдВред



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





рдлрд┐рд░ рд╣рдо рдПрдХ application_tier рдмрдирд╛рддреЗ application_tier , рдЬреЛ рдПрдХ рдСрдЯреЛ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рд╕рдореВрд╣ рд╣реИ - рдПрдХ рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░ред рдХреБрдЫ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди AMI-ID рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдФрд░ рдпрд╣ рдХрдИ рд╕рдмрдиреЗрдЯ рдФрд░ рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдФрд░ SSH рдХреБрдВрдЬреА рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдЖрдЗрдП рдПрдХ рд╕реЗрдХрдВрдб рдореЗрдВ рдЗрд╕ рдкрд░ рд╡рд╛рдкрд╕ рдЖрддреЗ рд╣реИрдВред

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

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

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



рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдкреИрдХрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирдпрд╛ рдПрдПрдордЖрдИ рд╣реИред
рдореИрдВ рдЕрдореЗрдЬрд╝реЕрди рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рддрд╛ рд╣реВрдВ, рдкреГрд╖реНрда рдХреЛ рддрд╛рдЬрд╝рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдПрдХ рджреВрд╕рд░рд╛ рдПрдПрдордЖрдИ рджреЗрдЦрддрд╛ рд╣реВрдВред



рд╡рд╛рдкрд╕ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдореЗрдВред

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



рдкреНрд░рджрд╛рддрд╛ рд▓реЛрдб рдХрд┐рдП рдЧрдПред рд╣рдо рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВред
рдЕрдЧрд▓рд╛ рд╣рдореЗрдВ terraform get рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд terraform get - рдЖрд╡рд╢реНрдпрдХ рдореЙрдбреНрдпреВрд▓ рд▓реЛрдб рдХрд░реЗрдВред рд╡реЗ рдЕрдм рдореЗрд░реА рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрд░ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП Terraform рдХреЛ рд╕реНрдерд╛рдиреАрдп рд╕реНрддрд░ рдкрд░ рд╕рднреА рдореЙрдбреНрдпреВрд▓ рдорд┐рд▓реЗрдВрдЧреЗред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореЙрдбреНрдпреВрд▓ GitHub рдпрд╛ рдЕрдиреНрдп рдЬрдЧрд╣реЛрдВ рдкрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╡реАрдкреАрд╕реА рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреАред рдЖрдк рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрдЯрд╡рд░реНрдХ рдЯреАрдо рдХреЛ рдПрдХреНрд╕реЗрд╕ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдпрд╣ рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рдЯреАрдо рдХреЗ рд▓рд┐рдП рдПрдкреАрдЖрдИ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реИред

рдЕрдЧрд▓рд╛ рдХрджрдо рдПрдХ рдЧреНрд░рд╛рдл рдмрдирд╛рдирд╛ рд╣реИред

рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ

terraform plan




Terraform рд╡рд░реНрддрдорд╛рди рд╕реНрдерд╛рдиреАрдп рд╕реНрдерд┐рддрд┐ рдХреЛ рд▓реЗ рдЬрд╛рдПрдЧрд╛ рдФрд░ AWS рдЦрд╛рддреЗ рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХрд░реЗрдЧрд╛, рдЬреЛ рдорддрднреЗрджреЛрдВ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрдЧрд╛ред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд╣ 35 рдирдП рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдПрдЧрд╛ред



рдЕрдм рд╣рдо рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:

terraform apply


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

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

рдЗрд╕рд▓рд┐рдП, рдореЗрд░реЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред



рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдПрдХ рдЧреНрд░рд╛рдл рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ:

terraform graph


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

рдЧреНрд░рд╛рдл рдПрдХ JSON рд╕реВрдЪреА рд╣реЛрдЧреА рдЬрд┐рд╕реЗ PNG рдпрд╛ DOC рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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



рдСрдЯреЛ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рд╕рдореВрд╣ рдХреА рдХреНрд╖рдорддрд╛ 3 рд╣реИред



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

рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рд╕реБрд╡рд┐рдзрд╛рдПрдВ рд╣реИрдВ:



рдореИрдВ рдЕрдкрдирд╛ рдмрд╣реБрдд рд╣реА рдЧреБрдкреНрдд рд╡реАрдкреАрдПрди рджрд░реНрдЬ рдХрд░рддрд╛ рд╣реВрдВ (рдЕрдкрдиреЗ рд╡реАрдкреАрдПрди рдХреЛ рдХреНрд░реИрдХ рди рдХрд░реЗрдВ)ред

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


рд╡реАрдкреАрдПрди рдХреЗ рдкреАрдЫреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдм рдХреБрдЫ рд╣реИ:



рдЕрдЧрд░ рдореИрдВ рдЗрд╕реЗ ( application-elb-1069500747.eu-west-1.elb.amazonaws.com ) рд▓реЗрддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рдПрдбреНрд░реЗрд╕ рдмрд╛рд░ рдореЗрдВ рдкреЗрд╕реНрдЯ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд┐рд▓рддреЗ рд╣реИрдВ:



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

 filter { name = "tag:Version" values = ["1.0.1"] } 

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

 filter { name = "tag:Version" values = ["1.0.6"] } 

рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд╕рдВрд╕реНрдХрд░рдг (1.0.1) рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред

terraform plan


рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдЕрдкрдбреЗрдЯ рд╕реНрдерд┐рддрд┐:





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

рдЗрд╕рд╕реЗ рд░рдирд┐рдВрдЧ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЖрдк рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдкрд╛рд▓рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдиреЛрдЯ: рдкреБрд░рд╛рдиреЗ рдХреЛ рдирд╖реНрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдПрдХ рдирдпрд╛ рд▓реЙрдиреНрдЪ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛, рдЕрдиреНрдпрдерд╛ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред

рдЖрдЗрдП рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ:

terraform apply


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



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

рдЪрд▓рд┐рдП рдкреНрд░рдпреЛрдЧреЛрдВ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред

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

рддреЛ, рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ:





рдЬрдм рдпрд╣ рдмрдиреНрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдСрдЯреЛ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рд╕рдореВрд╣ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдЗрд╕рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдПрдХ рдирдпрд╛ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред



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

рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдФрд░ рднреА рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реВрдВ, рд╕реАрдЖрдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдХреНрдпреЛрдВ рдирд╣реАрдВ, рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдирд╣реАрдВ? рдРрд╕реЗ рдЙрдкрдХрд░рдг рд╣реИрдВ рдЬреЛ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ GitHub рдкрд░ рдЙрддреНрдХреГрд╖реНрдЯ AWS-рд▓рд╛рдкрддрд╛-рдЙрдкрдХрд░рдгред



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

рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╣рд░ рд╕рд╛рдд рджрд┐рдиреЛрдВ рдореЗрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рдпрдВрддреНрд░рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдереА рдЬреЛ рдореЗрд░реЗ рдЦрд╛рддреЗ рдореЗрдВ рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдирд╖реНрдЯ рдХрд░ рджреЗрддреА рдереАред рдЗрд╕рд▓рд┐рдП рд╕рд░реНрд╡рд░ рд╕рд╛рдд рджрд┐рди рд╕реЗ рдЕрдзрд┐рдХ рдкреБрд░рд╛рдирд╛ рдирд╣реАрдВ рдерд╛ред рдПрдХ рдФрд░ рдмрд╛рдд (рдореЗрд░рд╛ рдкрд╕рдВрджреАрджрд╛) рдПрдХ рдмреЙрдХреНрд╕ рдореЗрдВ SSH рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд░реНрд╡рд░ рдХреЛ "рджрд╛рдЧрджрд╛рд░" рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рд╣реИ рдФрд░ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд░ рдШрдВрдЯреЗ рдЙрдиреНрд╣реЗрдВ рдирд╖реНрдЯ рдХрд░рдирд╛ рд╣реИ - рд╣рдо рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рдХрд┐ рд▓реЛрдЧ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдХрд░реЗрдВред

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

рдЖрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреЗрд╡рд▓ рдЪрд▓рд╛рдХрд░ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

aws-ha-relesae.sh -a my-scaling-group


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

рдЕрдореЗрдЬрд╝рди рдкрд░ рд╡рд╛рдкрд╕ред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдирдпрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ:



рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкреГрд╖реНрда рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЬрд╣рд╛рдБ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг 1.0.0 рджреЗрдЦрд╛ рдерд╛, рд╣рдореЗрдВ рдпрд╣ рдорд┐рд▓рддрд╛ рд╣реИ:



рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЪреВрдВрдХрд┐ рд╣рдордиреЗ рдПрдПрдордЖрдИ рдирд┐рд░реНрдорд╛рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдПрдПрдордЖрдИ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХреБрдЫ рдорд╣рд╛рди рдЙрдкрдХрд░рдг рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рд╕рд░реНрд╡рд░рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рд╕рд░реНрд╡рд░рдкреЗрдХред

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

 require 'spec_helper' describe package('nginx') do it { should be_installed } end describe service('nginx') do it { sould be_enabled } it { sould be_running } end describe port(80) do it { should be_listening } end 

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

рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рдмрдЬрд╛рдп


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

рдФрд░ рдЙрд╕рдиреЗ рд╕рд╡рд╛рд▓ рдкреВрдЫрд╛: рдЖрдкрдХреЗ рд╕рдВрдЧрдарди рдХреЛ рдХреЛрдб рдХреА рдПрдХ рдкрдВрдХреНрддрд┐ рд╕реЗ рдЬреБрдбрд╝реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧреЗрдЧрд╛? рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдФрд░ рджреЛрд╣рд░рд╛рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ?

рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ рдкреНрд░рд╢реНрди рд╣рдореЗрд╢рд╛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЛрдб рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛрддрд╛ рд╣реИред рдЙрддреНрдкрд╛рджрди рдореЗрдВ рддреИрдирд╛рдд рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧреЗрдЧрд╛? рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдкреНрд░рд╢реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

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

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


All Articles