рд╣рдордиреЗ рдЯреЗрд░рд╛рдлрд╝реЙрд░реНрдо рдкрд░ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдкреНрд░рдмрдВрдзрди рдХреИрд╕реЗ рд░рдЦрд╛ - рдФрд░ рдЬреАрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛

рдЫрд╡рд┐
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 4 рдЕрдореЗрдЬрд╝реЕрди рдЦрд╛рддреЗ, 9 рд╡реАрдкреАрд╕реА рдФрд░ 30 рд╕рдмрд╕реЗ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг, рдЪрд░рдг, рдкреНрд░рддрд┐рдЧрдорди - рд╕рднреА рд░рдВрдЧреЛрдВ рдФрд░ рд░рдВрдЧреЛрдВ рдХреЗ 1000 рд╕реЗ рдЕрдзрд┐рдХ рдИрд╕реА 2 рдЙрджрд╛рд╣рд░рдг рд╣реИрдВред рдЬрдм рд╕реЗ рдореИрдВрдиреЗ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рдПрдХрддреНрд░ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИ, рдореБрдЭреЗ рдЕрдкрдиреЗ рд╢реМрдХ рдХреЛ рдЕрдВрдд рддрдХ рдЬрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рд╕реЛрдЪреЗрдВ рдХрд┐ рдпрд╣ рд╕рдм рдХреИрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред

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

рд▓реЗрдЦ рд▓рдВрдмрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкреЙрдкрдХреЙрд░реНрди рдЪрд╛рдп рдкрд░ рд╕реНрдЯреЙрдХ рдХрд░реЗрдВ рдФрд░ рдЬрд╛рдПрдВ!

рдФрд░ рдПрдХ рдФрд░ рдЕрддрд┐ рд╕реВрдХреНрд╖реНрдо рдЕрдВрддрд░ - рд▓реЗрдЦ 0.11 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рддрд╛рдЬрд╛ 0.12 рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЦреНрдп рдкреНрд░рдерд╛рдУрдВ рдФрд░ рдпреБрдХреНрддрд┐рдпрд╛рдВ рдЕрднреА рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИрдВред 0.11 рд╕реЗ 0.12 рддрдХ рдкреНрд░рд╡рд╛рд╕ рдХрд╛ рдореБрджреНрджрд╛ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдХрд╛ рд╣рдХрджрд╛рд░ рд╣реИ!

рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдХреНрдпрд╛ рд╣реИ


рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдПрдХ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИрд╢рд┐рдХреЙрд░реНрдк рдЯреВрд▓ рд╣реИ рдЬреЛ 2014 рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рдерд╛ред

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

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

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

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

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

рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдХрд┐рд╕ рдЪреАрдЬ рд╕реЗ рдмрдирд╛ рд╣реИ


рдкреНрд░рджрд╛рддрд╛ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╣реИрдВред рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ 100 рд╕реЗ рдЕрдзрд┐рдХ рдЧрд┐рдирд╛ред рдЗрдирдореЗрдВ Amazon, Google, DigitalOcean, VMware Vsphere, Docker рдХреЗ рдкреНрд░рджрд╛рддрд╛ рд╣реИрдВред рдореИрдВрдиреЗ рдЗрд╕ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕реВрдЪреА рдкрд░ рдПрдХ рдкреНрд░рджрд╛рддрд╛ рднреА рдкрд╛рдпрд╛ рдЬреЛ рдЖрдкрдХреЛ рд╕рд┐рд╕реНрдХреЛ рдПрдПрд╕рдП рдХреЗ рд▓рд┐рдП рдирд┐рдпрдореЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ!

рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • Grafana рдореЗрдВ рдбреИрд╢рдмреЛрд░реНрдб, рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдФрд░ рдЕрд▓рд░реНрдЯред
  • GitHub рдФрд░ GitLab рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВред
  • RabbitMQ ред
  • рдбреЗрдЯрд╛рдмреЗрд╕, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ MySQL рдореЗрдВ рдЕрдзрд┐рдХрд╛рд░ред

рдФрд░ рдпреЗ рдХреЗрд╡рд▓ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреНрд░рджрд╛рддрд╛ рд╣реИрдВ, рдФрд░ рднреА рдЕрдиреМрдкрдЪрд╛рд░рд┐рдХ рдкреНрд░рджрд╛рддрд╛ рд╣реИрдВред рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рджреМрд░рд╛рди, рдореИрдВ GitHub рдкрд░ рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рдореЗрдВ рдЖрдпрд╛ рдерд╛, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕реВрдЪреА рдкреНрд░рджрд╛рддрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдерд╛, рдЬреЛ рдХрд┐ GoDaddy рд╕реЗ DNS рдХреЗ рд╕рд╛рде-рд╕рд╛рде Proxmox рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рдерд╛ ред

рдПрдХ рдЯреЗрд░рд╛рдлрд╝реЙрд░реНрдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рднреАрддрд░, рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рджрд╛рддрд╛рдУрдВ рдФрд░, рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛рдУрдВ рдпрд╛ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк GoDaddy рд╕реЗ рдмрд╛рд╣рд░реА DNS рдХреЗ рд╕рд╛рде, AWS рдореЗрдВ рдЕрдкрдиреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдХрд▓, рдЖрдкрдХреА рдХрдВрдкрдиреА рдиреЗ рдПрдХ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдЦрд░реАрджрд╛, рдЬреЛ DO рдпрд╛ Azure рдореЗрдВ рд╣реЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рдЬрдм рдЖрдк рдЗрд╕реЗ AWS рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рддреЛ рдЖрдк рдЙрд╕реА рдЯреВрд▓ рдХреЗ рд╕рд╛рде рднреА рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ!

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

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

рд╣рдордиреЗ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдХреЛ рдХреНрдпреЛрдВ рдЪреБрдирд╛


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

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

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

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

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

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

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

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

Terraform рдмрдирд╛рдо CloudFormation


рдиреЗрдЯрд╡рд░реНрдХ рдЕрдХреНрд╕рд░ Terraform рдХреА рддреБрд▓рдирд╛ CloudFormation рд╕реЗ рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ рдЪреБрдирддреЗ рд╕рдордп рд╣рдордиреЗ рдпрд╣ рд╕рд╡рд╛рд▓ рднреА рдкреВрдЫрд╛ред рдФрд░ рдпрд╣рд╛рдБ рд╣рдорд╛рд░реА рддреБрд▓рдирд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИред

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

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

рдЯреЗрд░рд╛рдлреЙрд░реНрдо рд╕реЗ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ


рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рдЖрд░рдВрдн рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред рдпрд╣рд╛рдБ рдкрд╣рд▓реЗ рдЪрд░рдг рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╣реИрдВ:

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

рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░рд╛ рдЕрднреНрдпрд╛рд╕


рд╕реНрд░реЛрдд рдХреЛрдб


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

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

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

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

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

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

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

рдХрдо рдХреЛрдб - рдкрдврд╝рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди


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

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

рдХреЛрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХрд╛ рдЪрдпрди рдХрдИ рдЪрд░рдгреЛрдВ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред

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

resource "aws_subnet" "lab_pub1a" { vpc_id = "${aws_vpc.lab.id}" cidr_block = "10.10.10.0/24" Availability_zone = "us-east-1a" ... } output "sn_lab_pub1a-id" { value = "${aws_subnet.lab_pub1a.id}" } 

рдФрд░ рдлрд┐рд░ рд╣рдо рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЖрдИрдбреА рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рднреЗрдЬрддреЗ рд╣реИрдВред рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣рд╛рдБ рдХреНрдпрд╛ рдЪрд╛рд▓ рд╣реИ? рдЬрдм рдЖрдк рдХрд┐рд╕реА рдореВрд▓реНрдп рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ Terraform рдЕрд▓рдЧ рд╕реЗ tfstate рдХреЛрд░ рдореЗрдВ рд╕рд╣реЗрдЬрддрд╛ рд╣реИред рдФрд░ рдЬрдм рдЖрдк рдЙрд╕рдХреА рдУрд░ рдореБрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЙрд╕реЗ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ, рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА - рд╡рд╣ рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рддреБрд░рдВрдд рдЖрдкрдХреЛ рдЗрд╕ рд░рд╛рдЬреНрдп рд╕реЗ рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред рдЖрдЧреЗ, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ, рдЬреЛ рдЧреИрд░-рдХреЛрд░ рд╣реИ, рдЖрдк рджреВрд░рд╕реНрде рд░рд╛рдЬреНрдп рдХреЗ рд╕рд╛рде рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рдВрдмрдВрдз рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ: рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рджреВрд░рд╕реНрде рд░рд╛рдЬреНрдп рд╣реИ рдЬреИрд╕реЗ рдФрд░, рдпрд╣ рдПрд╕ 3-рдмрд╛рд▓реНрдЯреА рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдЬреИрд╕реЗ рдФрд░, рдЗрд╕ рддрд░рд╣ рдХреЗ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдХреБрдВрдЬреА рдФрд░ рдПрдХ рдХреНрд╖реЗрддреНрд░ред

рд╕реНрдЯреЗрдЬ 2 ред рдПрдХ рдЧреИрд░-рдХреЛрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╣рдо рдХреЛрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдмрдирд╛рддреЗ рд╣реИрдВ, рддрд╛рдХрд┐ рд╣рдо рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдП рдЧрдП рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд╕рдХреЗрдВред

 data "terraform_remote_state" "lab_core" { backend = "s3" config { bucket = "lab-core-terraform-state" key = "terraform.tfstate" region = "us-east-1" } } 

рд╕реНрдЯреЗрдЬ 3 ред рд╢реБрд░реВ рд╣реЛ рд░рд╣реА рд╣реИ! рдЬрдм рдореБрдЭреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдмрдиреЗрдЯ рдореЗрдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ: рдпрд╣рд╛рдВ рдбреЗрдЯрд╛ рджреВрд░рд╕реНрде рд╕реНрдерд┐рддрд┐ рд╣реИ, рдЗрд╕рдореЗрдВ рдЗрд╕ рд░рд╛рдЬреНрдп рдХрд╛ рдирд╛рдо рдвреВрдВрдвреЗрдВ, рдЗрд╕рдореЗрдВ рдпрд╣ рдкреИрд░рд╛рдореАрдЯрд░ рдвреВрдВрдвреЗрдВ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕ рдирд╛рдо рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред

 resource "aws_network_interface" "fwl01" { ... subnet_id = "${data.terraform_remote_state.lab_core.sn_lab_pub1a-id}" } 

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

рдореЙрдбреНрдпреВрд▓


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

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

 module "AAA" { source = "..." count = "3" count_offset = "0" host_name_prefix = "XXX-YYY-AAA" ami_id = "${data.terraform_remote_state.lab_core.ami-base-ami_XXXX-id}" subnet_ids = ["${data.terraform_remote_state.lab_core.sn_lab_pub1a-id}", "${data.terraform_remote_state.lab_core.sn_lab_pub1b-id}"] instance_type = "t2.large" sgs_ids = [ "${data.terraform_remote_state.lab_core.sg_ssh_lab-id}", "${aws_security_group.XXX_lab.id}" ] boot_device = {volume_size = "50" volume_type = "gp2"} root_device = {device_name = "/dev/sdb" volume_size = "50" volume_type = "gp2" encrypted = "true"} tags = "${var.gas_tags}" } 

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

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

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

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

рдХрд▓, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрд░реЗ рдкрд╛рд╕ рдЖрддреЗ рд╣реИрдВ рдФрд░ рдХрд╣рддреЗ рд╣реИрдВ: "рд╕реБрдиреЛ, рд╣рдо рд▓реЛрдб рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдЗрдирдореЗрдВ рд╕реЗ рджреЛ рдФрд░ рджреЗрдВред" рдореБрдЭреЗ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдореИрдВ рдПрдХ рдЕрдВрдХ рдХреЛ 5 рдореЗрдВ рдмрджрд▓рддрд╛ рд╣реВрдВред рдХреЛрдб рдХреА рдорд╛рддреНрд░рд╛ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рд╣реИред

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

  • рд╣рдо рд╕реНрд░реЛрдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдЗрд╕рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕реНрд░реЛрдд - рдореЙрдбреНрдпреВрд▓ рдХреЗ рдкрде рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
  • рд╣рдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ - рд╣рд╛рдВ, рдФрд░ "рдирд╡реАрдирддрдо рдФрд░ рдорд╣рд╛рдирддрдо" рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдСрдкрд░реЗрд╢рди рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред рдЖрдк рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╣рд░ рдмрд╛рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ? рд▓реЗрдХрд┐рди рдЙрд╕ рдкрд░ рдФрд░ рдмрд╛рдж рдореЗрдВред
  • рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рджреЗрддреЗ рд╣реИрдВред

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

рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдореЙрдбреНрдпреВрд▓ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИрдВред рдЙрдирдХреЗ рдкрд╛рд╕ рд╕рдВрд╕рд╛рдзрди рд╣реИрдВ, рдФрд░ рдЗрд╕рдореЗрдВ рдХрдВрдкрдиреА рдХреЗ рдорд╛рдирдХ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреИрдЧ, рдорд╛рдирдХ рдорд╛рдиреЛрдВ рдХреА рд╕реВрдЪреА, рд╕реНрд╡реАрдХреГрдд рдЪреВрдХ рдФрд░ рдЗрд╕реА рддрд░рд╣) рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

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

рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ

  1. рдпрджрд┐ рдЖрдк рд▓рд┐рдЦ рдирд╣реАрдВ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рддреИрдпрд╛рд░ рд▓реЛрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рддреЛ рди рд▓рд┐рдЦреЗрдВред рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рдирдП рд╣реИрдВред рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░реЗрдВ, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдпрд╣ рджреЗрдЦреЗрдВ рдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЖрдкрдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд┐рдпрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдкрдХреЛ рдЕрднреА рднреА рдЕрдкрдирд╛ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЛ рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ рдФрд░ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВред
  2. рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ рдЯреЗрд░рд╛рдлрд╝реЙрд░реНрдо рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ рдПрдХ рддреИрдпрд╛рд░-рдирд┐рд░реНрдорд┐рдд рд╕рдВрд╕рд╛рдзрди рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рд╣реИред
  3. рдпрджрд┐ рдЖрдк рдЕрдкрдирд╛ рдореЙрдбреНрдпреВрд▓ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдЫрд┐рдкрд╛рдПрдВред рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреНрдпрд╛ рдФрд░ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред
  4. рдЗрдирдкреБрдЯ рдореЙрдбреНрдпреВрд▓ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдорд╛рди рдХреЛ рдЕрдкрдиреЗ рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдХрд░реЗрдВред рдФрд░ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ рдЕрдЧрд░ рд╡реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВред рдЗрддрдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХред
  5. рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдореЙрдбреНрдпреВрд▓ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рднрдВрдбрд╛рд░ рдФрд░ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдВред рдмреЗрд╣рддрд░ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рднрдВрдбрд╛рд░ред
  6. рд╕реНрдерд╛рдиреАрдп рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ - рд╡реЗ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
  7. рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдкреНрд░рджрд╛рддрд╛ рд╡рд┐рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪреЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХрдиреЗрдХреНрд╢рди рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╡рд┐рднрд┐рдиреНрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреЛрдИ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХреЛрдИ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЙрдирдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдЧ рдмрддрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЙрдирдХреА рдЪрд╛рдмрд┐рдпрд╛рдБ рдФрд░ рд░рд╣рд╕реНрдп рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ рдЙрдЪреНрдЪ рд╕реНрддрд░ рдкрд░ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  8. рд╕реНрдерд╛рдиреАрдп рд╕рдВрдпреЛрдЬрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдХрд░реЗрдВред рдпрд╣ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрд╕ рдорд╢реАрди рдкрд░ рдЬрд┐рд╕ рдкрд░ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рдорд╛рд╣реМрд▓ рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рддрдХ рдЖрдк рдЗрд╕реЗ CI рдореЗрдВ рдПрдореНрдмреЗрдб рдирд╣реАрдВ рдХрд░рддреЗ, рддрдм рддрдХ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдореЗрдВ рдЖ рд╕рдХрддреЗ рд╣реИрдВ: рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рдирд┐рд╖реНрдкрд╛рджрди рдФрд░ рдЪрд▓ рдпреЛрдЧреНрдпред рдФрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдПрдХ рдЕрд▓рдЧ рд╡рд┐рддрд░рдг, рдПрдХ рдФрд░ рд╢реЗрд▓, рдПрдХ рдЕрд▓рдЧ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд┐рдВрдбреЛрдЬ рднреА рд╣реИред

рдПрдХ рдЕрдЪреНрдЫреЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рдВрдХреЗрдд (рдпрд╣рд╛рдВ рдереЛрдбрд╝рд╛ рдФрд░ рд╡рд┐рд╕реНрддреГрдд рд╣реИ ):

  • рдЕрдЪреНрдЫреЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдкреНрд░рд▓реЗрдЦрди рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВред рдпрджрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдПрдХ рдЕрд▓рдЧ рднрдВрдбрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред
  • рдЙрдирдХреЗ рдкрд╛рд╕ рд╣рд╛рд░реНрдбрдХреЛрдбреЗрдб рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдирд╣реАрдВ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, AWS рдХреНрд╖реЗрддреНрд░)ред
  • рдЙрдЪрд┐рдд рдЪреВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЪреВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ EC2 рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдЖрдкрдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк m5d.24xlarge рдХреА рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдирд╣реАрдВ рдмрдирд╛рдПрдЧрд╛, рдпрд╣ рдЗрд╕рдХреЗ рд▓рд┐рдП рдиреНрдпреВрдирддрдо t2 рдпрд╛ t3 рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
  • рдХреЛрдб "рд╕рд╛рдл" рд╣реИ - рд╕рдВрд░рдЪрд┐рдд, рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рднреНрд░рдорд┐рдд рдирд╣реАрдВ, рдЙрд╕реА рд╢реИрд▓реА рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ред
  • рдпрд╣ рдЕрддреНрдпрдзрд┐рдХ рд╡рд╛рдВрдЫрдиреАрдп рд╣реИ рдХрд┐ рдпрд╣ рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рд╕реБрд╕рдЬреНрдЬрд┐рдд рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╣рдо рдЕрднреА рддрдХ рдЗрд╕ рдкрд░ рдирд╣реАрдВ рдЖрдП рд╣реИрдВред

рдЯреИрдЧрд┐рдВрдЧ


рдЯреИрдЧ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред

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

рдЫрд╡рд┐

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

рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 variable "XXX_tags" { description = "The set of XXX tags." type = "map" default = { "TerminationDate" = "03.23.2018", "Environment" = "env_name_here", "Department" = "dev", "Subsystem" = "subsystem_name", "Component" = "XXX", "Type" = "application", "Team" = "team_name" } } 

рдРрд╕рд╛ рд╣реБрдЖ рдХрд┐ рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдореЗрдВ рд╣рдорд╛рд░реА рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЯреАрдо AWS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдЯреИрдЧ рдХреА рдХреБрдЫ рд╕реВрдЪреА рд╣реИред

  1. рдЯреАрдо - рдХреМрди рд╕реА рдЯреАрдо рдХрд┐рддрдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред
  2. рд╡рд┐рднрд╛рдЧ - рдПрдХ рд╡рд┐рднрд╛рдЧ рдХреЗ рд╕рдорд╛рдиред
  3. рдкрд░реНрдпрд╛рд╡рд░рдг - рд╕рдВрд╕рд╛рдзрди "рд╡рд╛рддрд╛рд╡рд░рдг" рдореЗрдВ рд╣рд░рд╛ рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдк, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдпрд╛ рдРрд╕рд╛ рдХреБрдЫ рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред
  4. рд╕рдмрд╕рд┐рд╕реНрдЯрдо - рд╡рд╣ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдЬреЛ рдШрдЯрдХ рдХрд╛ рд╣реИред рдЕрд╡рдпрд╡ рдПрдХ рдЙрдк-рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдпрд╣ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЗрдХрд╛рдЗрдпрд╛рдБ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рд▓рдЧреА рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрд╛рдлреА рдмрдврд╝ рдЧрдпрд╛ рд╣реИред рд╣рдореЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рдЬрд╛рдиреЗ рдФрд░ рдХрд╣рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ: тАЬрджреЛрд╕реНрддреЛрдВ, рдпрд╣ рдорд╣рдВрдЧрд╛ рд╣реИред рдмрдЬрдЯ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдХрд░реАрдм рд╣реИ, рдЖрдЗрдП рдХрд┐рд╕реА рддрд░рд╣ рддрд░реНрдХ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░реЗрдВред
  5. рдкреНрд░рдХрд╛рд░ - рдШрдЯрдХ рдХрд╛ рдкреНрд░рдХрд╛рд░: рдмреИрд▓реЗрдВрд╕рд░, рднрдВрдбрд╛рд░рдг, рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ред
  6. рдШрдЯрдХ - рдШрдЯрдХ рд╣реА, рдЖрдВрддрд░рд┐рдХ рд╕рдВрдХреЗрддрди рдореЗрдВ рдЗрд╕рдХрд╛ рдирд╛рдоред
  7. рд╕рдорд╛рдкреНрддрд┐ рддрд┐рдерд┐ - рд╡рд╣ рд╕рдордп рдЬрдм рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рддрд┐рдерд┐ рдкреНрд░рд╛рд░реВрдк рдореЗрдВред рдпрджрд┐ рдЗрд╕рдХреЗ рдирд┐рд╖реНрдХрд╛рд╕рди рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ, рддреЛ "рд╕реНрдерд╛рдпреА" рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред рд╣рдордиреЗ рдЗрд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреБрдЫ рдЪрд░рдг рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рддрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдг рдЪрд░рдг рд╣реИ рдЬреЛ рддрдирд╛рд╡ рд╕рддреНрд░реЛрдВ рдХреЗ рджреМрд░рд╛рди рдЙрдЧрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рд╣рдо рдЗрди рдорд╢реАрдиреЛрдВ рдХреЛ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВред рд╣рдо рдЙрд╕ рддрд╛рд░реАрдЦ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рд╕рдВрд╕рд╛рдзрди рдирд╖реНрдЯ рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рд▓реИрдореНрдмреНрдбрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЛ рддреЗрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреБрдЫ рдмрд╛рд╣рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЗрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд╖реНрдЯ рдХрд░ рджреЗрдЧрд╛ред

рдЕрдм - рдЯреИрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред

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

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

 locals { common_tags = {"TerminationDate" = "XX.XX.XXXX", "Environment" = "env_name", "Department" = "dev", "Team" = "team_name"} subsystem_1_tags = "${merge(local.common_tags, map("Subsystem", "subsystem_1_name"))}" subsystem_2_tags = "${merge(local.common_tags, map("Subsystem", "subsystem_2_name"))}" } 

рдЗрд╕рдореЗрдВ рдЖрдк рдПрдХ рд╕рдмрд╕реЗрдЯ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

 module "ZZZ02" { count = 1 count_offset = 1 name = "XXX-YYY-ZZZ" ... tags = "${merge(local.core_tags, map("Type", "application", "Component", "XXX"))}" } 

рдЫрд╡рд┐

рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг


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

 module "ZZZ02" { source = "./modules/srvroles/ZZZ" name = "XXX-YYY-ZZZ" } 

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЖрдП рдФрд░ рдХрд╣рд╛: "рддреЛ, рд╣рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреА рдПрдХ рдЗрдХрд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╣рдорд╛рд░реЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдореЗрдВред" рдЖрдкрдиреЗ рдЗрд╕реЗ рд▓рд┐рдЦрд╛, рдЗрд╕реЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ред рддреИрдирд╛рдд - рдЙрддреНрдХреГрд╖реНрдЯред рдЙрдиреНрд╣реЛрдВрдиреЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛, рдХрд╣рд╛: тАЬрдпрд╣ рд╣реЛрдЧрд╛! рдЙрддреНрдкрд╛рджрди рдореЗрдВред " рд╣рдо рдордВрдЪ рдкрд░ рдЖрддреЗ рд╣реИрдВ, рддрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдг, рдЙрддреНрдкрд╛рджрдиред рд╣рд░ рдмрд╛рд░ Ctrl-C, Ctrl-V; Ctrl-C, Ctrl-Vред рдЬрдм рд╣рдо рдмрд┐рдХреНрд░реА рдХреЗ рд▓рд┐рдП рдЖрдП, рддреЛ рд╣рдорд╛рд░реЗ рд╕рд╣рдпреЛрдЧреА рдиреЗ рдЗрд╕реЗ рд▓реЗ рд▓рд┐рдпрд╛, рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реЗ рдХреЛрдб рдХреА рдирдХрд▓ рдХреА, рдЗрд╕реЗ рджреВрд╕рд░реА рдЬрдЧрд╣ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рд╡рд╣рд╛рдВ рдмрджрд▓ рджрд┐рдпрд╛ред рдФрд░ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрд╕рдВрдЧрдд рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреЗ рд╕рд╛рде, рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдЬрд┐рддрдиреЗ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рд╡рд╛рддрд╛рд╡рд░рдг рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЖрджрдд рд╣реИред

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

 module "ZZZ" { source = "git::ssh://git@GIT_SERVER_FQDN/terraform/modules/general-vm/2-disks.git" host_name_prefix = "XXX-YYY-ZZZ" 

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

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

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

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

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

рдЫрд╡рд┐

рдЙрдкрд╢рд╛рдЦрд╛


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

рдЫрд╡рд┐

рдХрд╣рд╛рдБ tfstate рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП


рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд░рд╛рдЬреНрдп рдХреЛ рд╕реНрдерд╛рдиреАрдп рд╕реНрддрд░ рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд░рд╛рдЬреНрдп рдХреЛ рдЧрд┐рдЯ рдореЗрдВ рд╕реНрдЯреЛрд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

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

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

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

рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз


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

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

рдкрд╛рдЗрдкрд▓рд╛рдЗрди


рдЫрд╡рд┐

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

  • рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдкрд▓рд╛рдЗрди (рдорд╛рд╕реНрдЯрд░ рдкрд╛рдЗрдкрд▓рд╛рдЗрди)
  • рдЕрдиреНрдп рд╕рднреА рд╢рд╛рдЦрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдкрд▓рд╛рдЗрди (рд╢рд╛рдЦрд╛ рдкрд╛рдЗрдкрд▓рд╛рдЗрди)

рдмреНрд░рдВрдЪ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреНрдпрд╛ рдХрд░рддреА рд╣реИ? ( , ). . , merge-request, тАФ , . . .

рдЫрд╡рд┐

. , , . Terraform- , , . , merge-request . . . , , , .

рдЫрд╡рд┐

, . .

Terraform


. Terraform , , .

, ┬л┬╗ тАФ , .

, , count тАФ , , , , availability-. , , , . . , AZ . , count .

, 4 AZ 5 , AZ тАФ 4, , . : ┬л ┬╗. ! , . Terraform .

. тАФ . . - - If Else. , тАФ , .

. , , , , Terraform- , CI.

CI . , , , тАФ merge, . .

, . . , , Terraform , , tfstate Terraform : ┬л, , ┬╗. , , .

CI, , pipeline тАФ , .

, . , . , target , . , : ┬лTerraform apply target instance┬╗, -. - (, - ), .

, . . CI тАФ , Terraform , . , - . , , , . .

Terraform тАФ


:

  • Terraform , . , , . , , , . , , , .

    , тАФ Tfstate, , . . ┬л , ┬╗ тАФ .

    , -, , - тАФ . , . , тАФ .
  • Terraform , . Terraform . рдХреНрдпреЛрдВ? , . . , , AZ - -. , North Virginia, 6 . . , , : ┬л, ┬╗. тАФ . тАФ , , Terraform .
  • Terraform . , тАФ 200 , 198 , 5. . , API . рдЕрдлрд╕реЛрд╕ред
  • , . , S3 bucket. , тАФ , - . Terraform тАУ , , : ┬л, - ┬╗. . - , .

, Terraform тАФ , . , .

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


All Articles