рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

рдЖрдордЪреА рдХрдВрдкрдиреА SRE рдЯреАрдо рдСрдирдмреЛрд░реНрдб рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпреЗрдд рдЖрд╣реЗ. рдореА рд╡рд┐рдХрд╛рд╕рд╛рдЪреНрдпрд╛ рдмрд╛рдЬреВрдиреЗ рдпрд╛ рд╕рдВрдкреВрд░реНрдг рдХрдереЗрдд рдЖрд▓реЛ. рдкреНрд░рдХреНрд░рд┐рдпреЗрдд, рдореА рд╡рд┐рдЪрд╛рд░ рдЖрдгрд┐ рдЕрдВрддрд░реНрджреГрд╖реНрдЯреА рдШреЗрдКрди рдЖрд▓реЛ рдЬреЗ рдорд▓рд╛ рдЗрддрд░ рд╡рд┐рдХрд╕рдХрд╛рдВрд╕рд╣ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ. рдпрд╛ рдкреНрд░рддрд┐рдмрд┐рдВрдм рд▓реЗрдЦрд╛рдд рдореА рдХрд╛рдп рдШрдбрдд рдЖрд╣реЗ, рддреЗ рдХрд╕реЗ рдШрдбрдд рдЖрд╣реЗ рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХрдЬрдг рддреНрдпрд╛рдЪреНрдпрд╛рд╕рд╣ рдХрд╕реЗ рдЬрдЧреВ рд╢рдХрддреЛ рдпрд╛рдмрджреНрджрд▓ рдмреЛрд▓рдд рдЖрд╣реЗ.

рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

рдЖрдордЪреНрдпрд╛ рдЕрдВрддрд░реНрдЧрдд рдХрд╛рд░реНрдпрдХреНрд░рдорд╛рддреАрд▓ рднрд╛рд╖рдгрд╛рдВрд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд▓реЗрдЦрд╛рдВрдЪреА рдорд╛рд▓рд┐рдХрд╛ рд╕реБрд░реВ рдЖрд╣реЗ рджреЗрд╡рдлреЛрд░рдо:

1. рдмреЙрдХреНрд╕рд╢рд┐рд╡рд╛рдп рд╢реНрд░реЛрдбрд┐рдВрдЧрд░рдЪреА рдорд╛рдВрдЬрд░: рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓реАрдВрдордзреНрдпреЗ рдПрдХрдорддрд╛рдЪреА рд╕рдорд╕реНрдпрд╛.
2. рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛. (рддреБрдореНрд╣реА рдпреЗрдереЗ рдЖрд╣рд╛рдд)
3. C# рдореЙрдбреЗрд▓ рд╡рд╛рдкрд░реВрди рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯрдЪреА рдирд┐рд░реНрдорд┐рддреА. (рд╕реБрд░реВ рдЖрд╣реЗ...)
4. рд░рд╛рдлреНрдЯ рдХрдиреНрд╕реЗрдиреНрд╕рд╕ рдЕрд▓реНрдЧреЛрд░рд┐рджрдордЪрд╛ рдкрд░рд┐рдЪрдп. (рд╕реБрд░реВ рдЖрд╣реЗ...)
...

рдЖрдореНрд╣реА рдПрдХ SRE рдЯреАрдо рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛, рдХрд▓реНрдкрдирд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХреЗрд▓реА google sre. рддреНрдпрд╛рдВрдиреА рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдордзреВрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░рдЪреА рдирд┐рдпреБрдХреНрддреА рдХреЗрд▓реА рдЖрдгрд┐ рддреНрдпрд╛рдВрдирд╛ рдЕрдиреЗрдХ рдорд╣рд┐рдиреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рдгрд╛рд╕рд╛рдареА рдкрд╛рдард╡рд▓реЗ.

рд╕рдВрдШрд╛рдХрдбреЗ рдЦрд╛рд▓реАрд▓ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд╛рд░реНрдпреЗ рд╣реЛрддреА:

  • рдЖрдордЪреНрдпрд╛ рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдЪреЗ рд╡рд░реНрдгрди рдХрд░рд╛, рдЬреЗ рдмрд╣реБрддреЗрдХ Microsoft Azure рдордзреНрдпреЗ рдХреЛрдбрдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рдЖрд╣реЗ (рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдЖрдгрд┐ рдЖрдЬреВрдмрд╛рдЬреВрдЪреЗ рд╕рд░реНрд╡ рдХрд╛рд╣реА).
  • рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдирд╛ рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрд╕рд╣ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рд╛рдпрдЪреЗ рддреЗ рд╢рд┐рдХрд╡рд╛.
  • рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрдирд╛ рдХрд░реНрддрд╡реНрдпрд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдХрд░рд╛.

рдЖрдореНрд╣реА рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдЪреА рд╕рдВрдХрд▓реНрдкрдирд╛ рдорд╛рдВрдбрддреЛ

рдЬрдЧрд╛рдЪреНрдпрд╛ рдиреЗрд╣рдореАрдЪреНрдпрд╛ рдореЙрдбреЗрд▓рдордзреНрдпреЗ (рд╢рд╛рд╕реНрддреНрд░реАрдп рдкреНрд░рд╢рд╛рд╕рди), рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдЪреЗ рдЬреНрдЮрд╛рди рджреЛрди рдард┐рдХрд╛рдгреА рдЖрд╣реЗ:

  1. рдХрд┐рдВрд╡рд╛ рддрдЬреНрдЮрд╛рдВрдЪреНрдпрд╛ рдбреЛрдХреНрдпрд╛рдд рдЬреНрдЮрд╛рдирд╛рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд.рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп
  2. рдХрд┐рдВрд╡рд╛ рд╣реА рдорд╛рд╣рд┐рддреА рдХрд╛рд╣реА рдЯрд╛рдЗрдкрд░рд╛рдпрдЯрд░рд╡рд░ рдЖрд╣реЗ, рдЬреНрдпрд╛рдкреИрдХреА рдХрд╛рд╣реА рддрдЬреНрдЮрд╛рдВрдирд╛ рдорд╛рд╣рд┐рдд рдЖрд╣реЗрдд. рдкрд░рдВрддреБ рдмрд╛рд╣реЗрд░реАрд▓ рд╡реНрдпрдХреНрддреА (рдЖрдордЪреА рд╕рдВрдкреВрд░реНрдг рдЯреАрдо рдЕрдЪрд╛рдирдХ рдорд░рдг рдкрд╛рд╡рд▓реНрдпрд╛рд╕) рдХрд╛рдп рдХрд╛рд░реНрдп рдХрд░рддреЗ рдЖрдгрд┐ рддреЗ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реЗ рд╢реЛрдзрдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕реЗрд▓ рд╣реЗ рддрдереНрдп рдирд╛рд╣реА. рдорд╢реАрдирд╡рд░ рдмрд░реАрдЪ рдорд╛рд╣рд┐рддреА рдЕрд╕реВ рд╢рдХрддреЗ: рдЕреЕрдХреНрд╕реЗрд╕рд░реАрдЬ, рдХреНрд░реЛрдирдЬреЙрдмреНрд╕, рдШрд╛рдмрд░рд╡рд▓реЗрд▓реЗ (рдкрд╣рд╛. рдбрд┐рд╕реНрдХ рдорд╛рдЙрдВрдЯрд┐рдВрдЧ) рдбрд┐рд╕реНрдХ рдЖрдгрд┐ рдХрд╛рдп рд╣реЛрдК рд╢рдХрддреЗ рдпрд╛рдЪреА рдлрдХреНрдд рдЕрдВрддрд╣реАрди рдпрд╛рджреА. рдиреЗрдордХреЗ рдХрд╛рдп рдШрдбрдд рдЖрд╣реЗ рд╣реЗ рд╕рдордЬрдгреЗ рдХрдареАрдг рдЖрд╣реЗ.рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

рджреЛрдиреНрд╣реА рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ, рдЖрдореНрд╣реА рд╕реНрд╡рддрдГрд▓рд╛ рдкрд░рд╛рд╡рд▓рдВрдмреА рд╣реЛрдгреНрдпрд╛рдд рдЕрдбрдХрддреЛ:

  • рдХрд┐рдВрд╡рд╛ рдПрдЦрд╛рджреНрдпрд╛ рд╡реНрдпрдХреНрддреАрдХрдбреВрди рдЬреЛ рдирд╢реНрд╡рд░ рдЖрд╣реЗ, рдЖрдЬрд╛рд░рдкрдгрд╛рдЪреНрдпрд╛ рдЕрдзреАрди рдЖрд╣реЗ, рдкреНрд░реЗрдорд╛рдд рдкрдбрдгреЗ, рдордирдГрд╕реНрдерд┐рддреА рдмрджрд▓рдгреЗ рдЖрдгрд┐ рдлрдХреНрдд рд╕рд╛рдорд╛рдиреНрдп рдЯрд╛рд│реЗрдмрдВрджреА;
  • рдХрд┐рдВрд╡рд╛ рд╢рд╛рд░реАрд░рд┐рдХрд░рд┐рддреНрдпрд╛ рдХрд╛рд░реНрдпрд░рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдорд╢реАрдирдордзреВрди, рдЬреЗ рдкрдбрддреЗ, рдЪреЛрд░реАрд▓рд╛ рдЬрд╛рддреЗ рдЖрдгрд┐ рдЖрд╢реНрдЪрд░реНрдп рдЖрдгрд┐ рдЧреИрд░рд╕реЛрдп рджреЗрддреЗ.

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

рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рдХреЛрдб рдореНрд╣рдгреВрди рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ (Incfastructure as Code - IaC) рд╣реЗ рдХреЛрдбрдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рд╕рдВрдкреВрд░реНрдг рд╡рд┐рджреНрдпрдорд╛рди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдЪреЗ рд╡рд░реНрдгрди рдЖрд╣реЗ, рддрд╕реЗрдЪ рддреНрдпрд╛рд╕реЛрдмрдд рдХрд╛рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рддреНрдпрд╛рддреВрди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рдВрдмрдВрдзрд┐рдд рд╕рд╛рдзрдиреЗ рдЖрд╣реЗрдд.

рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯ рдХреЛрдбрдордзреНрдпреЗ рдХрд╛ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд░рд╛рдпрдЪреА?рд▓реЛрдХ рдорд╢реАрди рдирд╛рд╣реАрдд. рддреНрдпрд╛рдВрдирд╛ рд╕рд░реНрд╡ рдХрд╛рд╣реА рдЖрдард╡рдд рдирд╛рд╣реА. рдорд╛рдгрд╕рд╛рдЪреА рдЖрдгрд┐ рдпрдВрддреНрд░рд╛рдЪреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡реЗрдЧрд│реА рдЕрд╕рддреЗ. рдорд╛рдирд╡рд╛рдиреЗ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рдЧреЛрд╖реНрдЯреАрдкреЗрдХреНрд╖рд╛ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХреЛрдгрддреАрд╣реА рдЧреЛрд╖реНрдЯ рд╕рдВрднрд╛рд╡реНрдпрддрдГ рд╡реЗрдЧрд╡рд╛рди рдЕрд╕рддреЗ. рд╕рд░реНрд╡рд╛рдд рдорд╣рддреНрд╡рд╛рдЪреА рдЧреЛрд╖реНрдЯ рдореНрд╣рдгрдЬреЗ рд╕рддреНрдпрд╛рдЪрд╛ рдПрдХрдЪ рд╕реНрддреНрд░реЛрдд.

рдирд╡реАрди SRE рдЕрднрд┐рдпрдВрддреЗ рдХреЛрдареВрди рдпреЗрддрд╛рдд?рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА рдирд╡реАрди рдПрд╕рдЖрд░рдИ рдЕрднрд┐рдпрдВрддреЗ рдШреЗрдгреНрдпрд╛рдЪреЗ рдард░рд╡рд▓реЗ, рдкрд░рдВрддреБ рддреЗ рдХреБрдареВрди рдЖрдгрд╛рдпрдЪреЗ? рдпреЛрдЧреНрдп рдЙрддреНрддрд░рд╛рдВрд╕рд╣ рдмреБрдХ рдХрд░рд╛ (Google SRE рдмреБрдХ) рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдВрдЧрддреЗ: рд╡рд┐рдХрд╕рдХрд╛рдВрдХрдбреВрди. рд╢реЗрд╡рдЯреА, рддреЗ рдХреЛрдбрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдд рдЖрдгрд┐ рдЖрдкрдг рдЖрджрд░реНрд╢ рд╕реНрдерд┐рддреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛.

рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдХрдВрдкрдиреАрдЪреНрдпрд╛ рдмрд╛рд╣реЗрд░реАрд▓ рдХрд░реНрдордЪрд╛рд░реА рдмрд╛рдЬрд╛рд░рд╛рдд рддреНрдпрд╛рдВрдЪрд╛ рдмрд░рд╛рдЪ рдХрд╛рд│ рд╢реЛрдз рдШреЗрддрд▓рд╛. рдкрд░рдВрддреБ рдЖрдореНрд╣рд╛рд▓рд╛ рд╣реЗ рдорд╛рдиреНрдп рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧреЗрд▓ рдХреА рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреНрдпрд╛ рд╡рд┐рдирдВрддреАрд╕ рдЕрдиреБрдХреВрд▓ рдЕрд╕реЗ рдХреЛрдгреАрд╣реА рд╕рд╛рдкрдбрд▓реЗ рдирд╛рд╣реА. рдорд▓рд╛ рдорд╛рдЭреНрдпрд╛рдЪ рд▓реЛрдХрд╛рдВрдордзреНрдпреЗ рд╢реЛрдзрд╛рд╡реЗ рд▓рд╛рдЧрд▓реЗ.

рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдордзреНрдпреЗ рд╕рдорд╕реНрдпрд╛

рдЖрддрд╛ рдХреЛрдбрдордзреНрдпреЗ рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рдХрд╢рд╛ рд╣рд╛рд░реНрдбрдХреЛрдб рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдК рд╢рдХрддрд╛рдд рдпрд╛рдЪреА рдЙрджрд╛рд╣рд░рдгреЗ рдкрд╛рд╣реВ. рдЯрд┐рдкреНрдкрдгреНрдпрд╛ рдЖрдгрд┐ рдЗрдВрдбреЗрдВрдЯреЗрд╢рдирд╕рд╣ рдХреЛрдб рдЪрд╛рдВрдЧрд▓рд╛, рдЙрдЪреНрдЪ рджрд░реНрдЬрд╛рдЪрд╛ рдЖрд╣реЗ.

рдЯреЗрд░рд╛рдлреЙрд░реНрдорд╛ рдордзреАрд▓ рдЙрджрд╛рд╣рд░рдг рдХреЛрдб.

рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

Ansible рдордзреАрд▓ рдЙрджрд╛рд╣рд░рдг рдХреЛрдб.

рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

рд╕рдЬреНрдЬрдирд╛рдВрдиреЛ, рдЗрддрдХреЗ рд╕рд╛рдзреЗ рдЕрд╕рддреЗ рддрд░! рдЖрдореНрд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬрдЧрд╛рдд рдЖрд╣реЛрдд рдЖрдгрд┐ рддреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрд╢реНрдЪрд░реНрдп рдЖрдгрд┐ рд╕рдорд╕реНрдпрд╛рдВрд╕рд╣ рд╕рд╛рджрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдиреЗрд╣рдореАрдЪ рддрдпрд╛рд░ рдЖрд╣реЗ. рдпреЗрдереЗ рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╢рд┐рд╡рд╛рдп рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реА.

1. рдкрд╣рд┐рд▓реА рд╕рдорд╕реНрдпрд╛ рдЕрд╢реА рдЖрд╣реЗ рдХреА рдмрд╣реБрддреЗрдХ рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ IaC рд╣рд╛ рдХрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪрд╛ dsl рдЕрд╕рддреЛ.

рдЖрдгрд┐ рдбреАрдПрд╕рдПрд▓, рдпрд╛рдордзреВрди, рд╕рдВрд░рдЪрдиреЗрдЪреЗ рд╡рд░реНрдгрди рдЖрд╣реЗ. рдЕрдзрд┐рдХ рддрдВрддреЛрддрдВрдд, рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдХрд╛рдп рдЕрд╕рд╛рд╡реЗ: Json, Yaml, рдХрд╛рд╣реА рдореЛрдареНрдпрд╛ рдХрдВрдкрдиреНрдпрд╛рдВрдордзреАрд▓ рдмрджрд▓ рдЬреНрдпрд╛рдВрдиреА рддреНрдпрд╛рдВрдЪреЗ рд╕реНрд╡рддрдГрдЪреЗ dsl (HCL рдЯреЗрд░рд╛рдлреЙрд░реНрдордордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ).

рдЕрдбрдЪрдг рдЕрд╢реА рдЖрд╣реЗ рдХреА рддреНрдпрд╛рдд рд╕рд╣рдЬрдкрдгреЗ рдЕрд╢рд╛ рдкрд░рд┐рдЪрд┐рдд рдЧреЛрд╖реНрдЯреА рдЕрд╕реВ рд╢рдХрдд рдирд╛рд╣реАрдд рдЬрд╕реЗ:

  • рдЪрд▓;
  • рдкрд░рд┐рд╕реНрдерд┐рддреА;
  • рдХреБрдареЗрддрд░реА рдЯрд┐рдкреНрдкрдгреНрдпрд╛ рдирд╛рд╣реАрдд, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЬреЗрд╕рдирдордзреНрдпреЗ, рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рддреНрдпрд╛ рдкреНрд░рджрд╛рди рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдд рдирд╛рд╣реАрдд;
  • рдХрд╛рд░реНрдпреЗ;
  • рдЖрдгрд┐ рдореА рд╡рд░реНрдЧ, рд╡рд╛рд░рд╕рд╛ рдЖрдгрд┐ рдпрд╛ рд╕рд░реНрд╡ рд╕рд╛рд░рдЦреНрдпрд╛ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЧреЛрд╖реНрдЯреАрдВрдмрджреНрджрд▓ рдмреЛрд▓рдд рдирд╛рд╣реА.

2. рдЕрд╢рд╛ рдХреЛрдбрдЪреА рджреБрд╕рд░реА рд╕рдорд╕реНрдпрд╛ рд╣реА рдЖрд╣реЗ рдХреА рдмрд╣реБрддреЗрдХрджрд╛ рддреЗ рд╡рд┐рд╖рдо рд╡рд╛рддрд╛рд╡рд░рдг рдЕрд╕рддреЗ. рд╕рд╣рд╕рд╛ рддреБрдореНрд╣реА C# рд╕рд╣ рдмрд╕реВрди рдХрд╛рдо рдХрд░рддрд╛, рдореНрд╣рдгрдЬреЗ. рдПрдХ рднрд╛рд╖рд╛, рдПрдХ рд╕реНрдЯреЕрдХ, рдПрдХ рдЗрдХреЛрд╕рд┐рд╕реНрдЯрдо. рдЖрдгрд┐ рдЗрдереЗ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рддрдВрддреНрд░рдЬреНрдЮрд╛рдирд╛рдЪреА рдкреНрд░рдЪрдВрдб рд╡рд┐рд╡рд┐рдзрддрд╛ рдЖрд╣реЗ.

рд╣реА рдПрдХ рдЕрддрд┐рд╢рдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рд╕реНрдерд┐рддреА рдЖрд╣реЗ рдЬреЗрд╡реНрд╣рд╛ рдмреЕрд╢ рд╡рд┐рде рдкрд╛рдпрдерди рдХрд╛рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд░реВ рдХрд░рддреЗ рдЬреНрдпрд╛рдордзреНрдпреЗ Json рдШрд╛рддрд▓рд╛ рдЬрд╛рддреЛ. рддреБрдореНрд╣реА рддреНрдпрд╛рдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рд╛, рдирдВрддрд░ рдХрд╛рд╣реА рдЕрдиреНрдп рдЬрдирд░реЗрдЯрд░ рдЖрдгрдЦреА 30 рдлрд╛рдЗрд▓реНрд╕ рддрдпрд╛рд░ рдХрд░рддреЛ. рдпрд╛ рд╕рд░реНрд╡рд╛рдВрд╕рд╛рдареА, Azure Key Vault рдХрдбреВрди рдЗрдирдкреБрдЯ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛рдд, рдЬреЗ Go рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реНрдпрд╛ drone.io рд╕рд╛рдареА рдкреНрд▓рдЧрдЗрдирджреНрд╡рд╛рд░реЗ рдПрдХрддреНрд░рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд рдЖрдгрд┐ рд╣реЗ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕ yaml рдордзреВрди рдЬрд╛рддрд╛рдд, рдЬреЗ jsonnet рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрд┐рдирдЪреНрдпрд╛ рдирд┐рд░реНрдорд┐рддреАрдЪреНрдпрд╛ рдкрд░рд┐рдгрд╛рдореА рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ. рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдЗрддрдХреЗ рд╡реИрд╡рд┐рдзреНрдпрдкреВрд░реНрдг рд╡рд╛рддрд╛рд╡рд░рдг рдЕрд╕рддрд╛рдирд╛ рдХреЛрдбрдЪреЗ рдХрд╛рдЯреЗрдХреЛрд░рдкрдгреЗ рд╡рд░реНрдгрди рдХрд░рдгреЗ рдЦреВрдк рдЕрд╡рдШрдб рдЖрд╣реЗ.

рдПрдХрд╛ рдХрд╛рд░реНрдпрд╛рдЪреНрдпрд╛ рдЪреМрдХрдЯреАрдд рдкрд╛рд░рдВрдкрд╛рд░рд┐рдХ рд╡рд┐рдХрд╛рд╕ рдПрдХрд╛рдЪ рднрд╛рд╖реЗрд╕рд╣ рдпреЗрддреЛ. рдпреЗрдереЗ рдЖрдореНрд╣реА рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рднрд╛рд╖рд╛рдВрд╕рд╣ рдХрд╛рдо рдХрд░рддреЛ.

3. рддрд┐рд╕рд░реА рд╕рдорд╕реНрдпрд╛ рдЯреНрдпреВрдирд┐рдВрдЧ рдЖрд╣реЗ. рдЖрдореНрд╣рд╛рд▓рд╛ рдердВрдб рд╕рдВрдкрд╛рджрдХ (рдорд┐рд╕ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУ, рдЬреЗрдЯрдмреНрд░реЗрдиреНрд╕ рд░рд╛рдпрдбрд░) рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рд╕рд╡рдп рдЖрд╣реЗ рдЬреЗ рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рд╕рд░реНрд╡рдХрд╛рд╣реА рдХрд░рддрд╛рдд. рдЖрдгрд┐ рдЖрдкрдг рдореВрд░реНрдЦ рдЕрд╕рд▓реЛ рддрд░реА рддреЗ рдореНрд╣рдгрддреАрд▓ рдХреА рдЖрдкрдг рдЪреБрдХреАрдЪреЗ рдЖрд╣реЛрдд. рд╣реЗ рд╕рд╛рдорд╛рдиреНрдп рдЖрдгрд┐ рдиреИрд╕рд░реНрдЧрд┐рдХ рджрд┐рд╕рддреЗ.

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

рдпрд╛ рд▓реЗрдЦрдирд╛рдЪреНрдпрд╛ рд╡реЗрд│реА vscode-terraform рдкреНрд▓рдЧрдЗрди рдЖрд╡реГрддреНрддреА 0.12 рдЪреЗ рд╕рдорд░реНрдерди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЕрджреНрдпрд╛рдк рд░рд┐рд▓реАрдЭ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдирд╛рд╣реА, рдЬрд░реА рддреА 3 рдорд╣рд┐рдиреНрдпрд╛рдВрд╕рд╛рдареА рд░рд┐рд▓реАрдЬ рдЭрд╛рд▓реА рдЖрд╣реЗ.

рд╡рд┐рд╕рд░рдгреНрдпрд╛рдЪреА рд╡реЗрд│ рдЖрд▓реА рдЖрд╣реЗ...

  1. рдбреАрдмрдЧрд┐рдВрдЧ.
  2. рд░рд┐рдлреЕрдХреНрдЯрд░рд┐рдВрдЧ рдЯреВрд▓.
  3. рд╕реНрд╡рдпрдВ рдкреВрд░реНрдг.
  4. рд╕рдВрдХрд▓рдирд╛рджрд░рдореНрдпрд╛рди рддреНрд░реБрдЯреА рд╢реЛрдзрдгреЗ.

рд╣реЗ рдордЬреЗрджрд╛рд░ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдпрд╛рдореБрд│реЗ рд╡рд┐рдХрд╛рд╕рд╛рдЪрд╛ рд╡реЗрд│ рджреЗрдЦреАрд▓ рд╡рд╛рдврддреЛ рдЖрдгрд┐ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдпрдкрдгреЗ рдЙрджреНрднрд╡рдгрд╛рд░реНтАНрдпрд╛ рддреНрд░реБрдЯреАрдВрдЪреА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рдврддреЗ.

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

рдирд╡рд╢рд┐рдХреНрдпрд╛ рдореНрд╣рдгреВрди, рддреБрдореНрд╣реА рдЯреЗрд░рд╛рдлреЙрд░реНрдореНрд╕ рд╢рд┐рдХрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рдд рдЖрд╣рд╛рдд рдЖрдгрд┐ IDE рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрдЬрд┐рдмрд╛рдд рдорджрдд рдХрд░рдд рдирд╛рд╣реА. рдЬреЗрд╡реНрд╣рд╛ рдХрд╛рдЧрджрдкрддреНрд░реЗ рдЕрд╕рддреАрд▓ рддреЗрд╡реНрд╣рд╛ рдЖрдд рдЬрд╛ рдЖрдгрд┐ рдкрд╣рд╛. рдкрд░рдВрддреБ рдЬрд░ рддреБрдореНрд╣реА рдирд╡реАрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдХрд░рдд рдЕрд╕рд╛рд▓ рддрд░, IDE рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдВрдЧреЗрд▓ рдХреА рдЕрд╕рд╛ рдкреНрд░рдХрд╛рд░ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЕрд╕реЗ рдХрд╛рд╣реАрд╣реА рдирд╛рд╣реА. рдХрд┐рдорд╛рди int рдХрд┐рдВрд╡рд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реНрддрд░рд╛рд╡рд░. рд╣реЗ рдЕрдиреЗрдХрджрд╛ рдЙрдкрдпреБрдХреНрдд рдЖрд╣реЗ.

рдЪрд╛рдЪрдгреНрдпрд╛рдВрдЪреЗ рдХрд╛рдп?

рддреБрдореНрд╣реА рд╡рд┐рдЪрд╛рд░рддрд╛: "рдЪрд╛рдЪрдгреНрдпрд╛рдВрдмрджреНрджрд▓ рдХрд╛рдп, рд╕рдЬреНрдЬрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░?" рдЧрдВрднреАрд░ рд▓реЛрдХ рдЙрддреНрдкрд╛рджрдирд╛рд╡рд░ рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯреАрдЪреА рдЪрд╛рдЪрдгреА рдШреЗрддрд╛рдд рдЖрдгрд┐ рддреЗ рдХрдареАрдг рдЖрд╣реЗ. рдпреЗрдереЗ рд╡реЗрдмрд╕рд╛рдЗрдЯрд╡рд░реАрд▓ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рдореЙрдбреНрдпреВрд▓рд╕рд╛рдареА рдпреБрдирд┐рдЯ рдЪрд╛рдЪрдгреАрдЪреЗ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ рдорд╛рдпрдХреНрд░реЛрд╕реЙрдлреНрдЯ.

рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреЗ рдЪрд╛рдВрдЧрд▓реА рдХрд╛рдЧрджрдкрддреНрд░реЗ рдЖрд╣реЗрдд. рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рдЖрдгрд┐ рдкреНрд░рд╢рд┐рдХреНрд╖рдгрд╛рдЪреНрдпрд╛ рджреГрд╖реНрдЯреАрдХреЛрдирд╛рд╕рд╛рдареА рдорд▓рд╛ рдорд╛рдпрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдиреЗрд╣рдореАрдЪ рдЖрд╡рдбрддреЗ. рдкрд░рдВрддреБ рд╣рд╛ рдкрд░рд┐рдкреВрд░реНрдг рдХреЛрдб рдирд╛рд╣реА рд╣реЗ рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрдВрдХрд▓ рдмреЙрдм рдЕрд╕рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА. рдЙрдЬрд╡реАрдХрдбреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛.

рдпреБрдирд┐рдЯ рдЪрд╛рдЪрдгреАрдЪреА рд╕рдорд╕реНрдпрд╛ рдЕрд╢реА рдЖрд╣реЗ рдХреА рддреБрдореНрд╣реА рдЖрдгрд┐ рдореА Json рдЖрдЙрдЯрдкреБрдЯрдЪреА рд╢реБрджреНрдзрддрд╛ рддрдкрд╛рд╕реВ рд╢рдХрддреЛ. рдореА 5 рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдЯрд╛рдХрд▓реЗ рдЖрдгрд┐ рдорд▓рд╛ 2000 рдУрд│реАрдВрд╕рд╣ рдПрдХ Json рдлреВрдЯрдХреНрд▓реЙрде рджреЗрдгреНрдпрд╛рдд рдЖрд▓рд╛. рдореА рдпреЗрдереЗ рдХрд╛рдп рдЪрд╛рд▓рд▓реЗ рдЖрд╣реЗ рдпрд╛рдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реВ рд╢рдХрддреЛ, рдЪрд╛рдЪрдгреА рдирд┐рдХрд╛рд▓ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░реВ рд╢рдХрддреЛ...

рдЧреЛ рдордзреНрдпреЗ Json рдкрд╛рд░реНрд╕ рдХрд░рдгреЗ рдХрдареАрдг рдЖрд╣реЗ. рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдЧреЛ рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдХрд╛рд░рдг рддреБрдореНрд╣реА рдЬреНрдпрд╛ рднрд╛рд╖реЗрдд рд▓рд┐рд╣рд┐рддрд╛ рддреНрдпрд╛ рднрд╛рд╖реЗрдЪреНрдпрд╛ рдЪрд╛рдЪрдгреАрд╕рд╛рдареА рдЧреЛ рдордзреАрд▓ рдЯреЗрд░рд╛рдлреЙрд░реНрдо рд╣рд╛ рдПрдХ рдЪрд╛рдВрдЧрд▓рд╛ рд╕рд░рд╛рд╡ рдЖрд╣реЗ. рд╕рдВрд╣рд┐рддреЗрдЪреА рд╕рдВрдШрдЯрдирд╛ рд╕реНрд╡рддрдГрдЪ рдЦреВрдк рдХрдордХреБрд╡рдд рдЖрд╣реЗ. рддреНрдпрд╛рдЪ рд╡реЗрд│реА, рд╣реЗ рдЪрд╛рдЪрдгреАрд╕рд╛рдареА рд╕рд░реНрд╡реЛрддреНрддрдо рд▓рд╛рдпрдмреНрд░рд░реА рдЖрд╣реЗ.

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

рдХреЛрдб рдореНрд╣рдгреВрди рд╕рд░реНрд╡реЛрддреНрддрдо рдкрджреНрдзрддреА рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛

рдЪрд▓рд╛ рдкреБрдвреЗ рдЬрд╛рдКрдпрд╛. IaC рдордзреНрдпреЗ рдХреЛрдгрддреНрдпрд╛рд╣реА рдЪрд╛рдЪрдгреНрдпрд╛ рдирд╕рд▓реНрдпрд╛рд╕, IDE рдЖрдгрд┐ рдЯреНрдпреВрдирд┐рдВрдЧ рдЦрд░рд╛рдм рдЕрд╕рд▓реНрдпрд╛рд╕, рдХрд┐рдорд╛рди рд╕рд░реНрд╡реЛрддреНрддрдо рдкрджреНрдзрддреА рдЕрд╕рд╛рд╡реНрдпрд╛рдд. рдореА рдЖрддреНрддрд╛рдЪ Google Analytics рд╡рд░ рдЧреЗрд▓реЛ рдЖрдгрд┐ рджреЛрди рд╢реЛрдз рдкреНрд░рд╢реНрдирд╛рдВрдЪреА рддреБрд▓рдирд╛ рдХреЗрд▓реА: рдЯреЗрд░рд╛рдлреЙрд░реНрдо рд╕рд░реНрд╡реЛрддреНрддрдо рдкрджреНрдзрддреА рдЖрдгрд┐ c# рд╕рд░реНрд╡реЛрддреНрддрдо рдкрджреНрдзрддреА.

рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

рдЖрдореНрд╣реА рдХрд╛рдп рдкрд╛рд╣рддреЛ? рдирд┐рд░реНрджрдпреА рдЖрдХрдбреЗрд╡рд╛рд░реА рдЖрдордЪреНрдпрд╛ рдмрд╛рдЬреВрдиреЗ рдирд╛рд╣реА. рд╕рд╛рдордЧреНрд░реАрдЪреЗ рдкреНрд░рдорд╛рдг рд╕рдорд╛рди рдЖрд╣реЗ. C# рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯрдордзреНрдпреЗ, рдЖрдореНрд╣реА рдХреЗрд╡рд│ рд╕рд╛рдордЧреНрд░реАрдордзреНрдпреЗ рдЕрд╕реНрддрд╛рд╡реНрдпрд╕реНрдд рдЖрд╣реЛрдд, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЙрддреНрдХреГрд╖реНрдЯ-рдЙрддреНрддрдо рдкрджреНрдзрддреА рдЖрд╣реЗрдд, рддрдЬреНрдЮрд╛рдВрдиреА рд▓рд┐рд╣рд┐рд▓реЗрд▓реА рдкреБрд╕реНрддрдХреЗ рдЖрд╣реЗрдд рдЖрдгрд┐ рддреНрдпрд╛ рдкреБрд╕реНрддрдХрд╛рдВрд╡рд░ рдЯреАрдХрд╛ рдХрд░рдгрд╛рд░реНтАНрдпрд╛ рдЗрддрд░ рддрдЬреНрдЮрд╛рдВрдиреА рд▓рд┐рд╣рд┐рд▓реЗрд▓реА рдкреБрд╕реНрддрдХреЗ рджреЗрдЦреАрд▓ рдЖрд╣реЗрдд. рдЕрдзрд┐рдХреГрдд рдХрд╛рдЧрджрдкрддреНрд░реЗ, рд▓реЗрдЦ, рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдЕрднреНрдпрд╛рд╕рдХреНрд░рдо рдЖрдгрд┐ рдЖрддрд╛ рдореБрдХреНрдд рд╕реНрддреНрд░реЛрдд рд╡рд┐рдХрд╛рд╕рд╛рдЪрд╛ рд╕рдореБрджреНрд░.

IaC рд╡рд┐рдирдВрддреАрд╕рд╛рдареА: рдпреЗрдереЗ рддреБрдореНрд╣реА рд╣рд╛рдпрд▓реЛрдб рдХрд┐рдВрд╡рд╛ HashiConf рдЕрд╣рд╡рд╛рд▓, рдЕрдзрд┐рдХреГрдд рджрд╕реНрддрдРрд╡рдЬ рдЖрдгрд┐ Github рд╡рд░реАрд▓ рдЕрд╕рдВрдЦреНрдп рд╕рдорд╕реНрдпрд╛рдВрдордзреВрди рдорд╛рд╣рд┐рддреА рдЧреЛрд│рд╛ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рдд рдЖрд╣рд╛рдд. рдпрд╛ рдореЙрдбреНрдпреВрд▓реНрд╕рдЪреЗ рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ рд╡рд┐рддрд░рдг рдХрд╕реЗ рдХрд░рд╛рд╡реЗ, рддреНрдпрд╛рдВрдЪреЗ рдХрд╛рдп рдХрд░рд╛рд╡реЗ? рдЕрд╕реЗ рджрд┐рд╕рддреЗ рдХреА рд╣реА рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗ... рдПрдХ рд╕рдореБрджрд╛рдп рдЖрд╣реЗ, рд╕рдЬреНрдЬрдирд╛рдВрдиреЛ, рдЬрд┐рдереЗ рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рд╢реНрдирд╛рд╕рд╛рдареА рддреБрдореНрд╣рд╛рд▓рд╛ Github рд╡рд░ 10 рдЯрд┐рдкреНрдкрдгреНрдпрд╛ рджрд┐рд▓реНрдпрд╛ рдЬрд╛рддреАрд▓. рдкрдг рддреЗ рдирдХреНрдХреА рдирд╛рд╣реА.

рджреБрд░реНрджреИрд╡рд╛рдиреЗ, рдпрд╛ рдЯрдкреНрдкреНрдпрд╛рд╡рд░, рддрдЬреНрдЮ рдиреБрдХрддреЗрдЪ рдЙрджрдпрд╛рд╕ рдпреЗрдК рд▓рд╛рдЧрд▓реЗ рдЖрд╣реЗрдд. рддреНрдпрд╛рдкреИрдХреА рдЖрддрд╛рдкрд░реНрдпрдВрдд рдЦреВрдк рдХрдореА рдЖрд╣реЗрдд. рдЖрдгрд┐ рд╕рдорд╛рдЬ рд╕реНрд╡рддрдГрдЪ рдкреНрд░рд╛рдердорд┐рдХ рд╕реНрддрд░рд╛рд╡рд░ рд╣рдБрдЧ рдЖрдЙрдЯ рдХрд░рдд рдЖрд╣реЗ.

рд╣реЗ рд╕рд░реНрд╡ рдХреБрдареЗ рдЪрд╛рд▓рд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рдХрд╛рдп рдХрд░рд╛рд╡реЗ

рддреБрдореНрд╣реА рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕реЛрдбреВ рд╢рдХрддрд╛ рдЖрдгрд┐ C# рд╡рд░, рд░рд╛рдпрдбрд░рдЪреНрдпрд╛ рдЬрдЧрд╛рдд рдкрд░рдд рдЬрд╛рдК рд╢рдХрддрд╛. рдкрдг рдирд╛рд╣реА. рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рдЙрдкрд╛рдп рд╕рд╛рдкрдбрдд рдирд╕реЗрд▓ рддрд░ рддреБрдореНрд╣реА рд╣реЗ рдХрд░рдгреНрдпрд╛рдЪрд╛ рддреНрд░рд╛рд╕ рдХрд╛ рдШреНрдпрд╛рд▓. рдЦрд╛рд▓реА рдореА рдорд╛рдЭреЗ рд╡реНрдпрдХреНрддрд┐рдирд┐рд╖реНрда рдирд┐рд╖реНрдХрд░реНрд╖ рд╕рд╛рджрд░ рдХрд░рддреЛ. рдЖрдкрдг рдЯрд┐рдкреНрдкрдгреНрдпрд╛рдВрдордзреНрдпреЗ рдорд╛рдЭреНрдпрд╛рд╢реА рд╡рд╛рдж рдШрд╛рд▓реВ рд╢рдХрддрд╛, рддреЗ рдордиреЛрд░рдВрдЬрдХ рдЕрд╕реЗрд▓.

рд╡реИрдпрдХреНрддрд┐рдХрд░рд┐рддреНрдпрд╛, рдореА рдХрд╛рд╣реА рдЧреЛрд╖реНрдЯреАрдВрд╡рд░ рдкреИрдЬ рд▓рд╛рд╡рдд рдЖрд╣реЗ:

  1. рдпрд╛ рднрд╛рдЧрд╛рдд рд╡рд┐рдХрд╛рд╕ рд╡реЗрдЧрд╛рдиреЗ рд╣реЛрдд рдЖрд╣реЗ. рдпреЗрдереЗ DevOps рд╕рд╛рдареА рд╡рд┐рдирдВрддреНрдпрд╛рдВрдЪреЗ рд╡реЗрд│рд╛рдкрддреНрд░рдХ рдЖрд╣реЗ.

    рдХреЛрдб рдореНрд╣рдгреВрди рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛: рдкреНрд░рдердо рдкрд░рд┐рдЪрдп

    рд╡рд┐рд╖рдп рд╣рд╛рдпрдк рдЕрд╕реВ рд╢рдХрддреЛ, рдкрд░рдВрддреБ рдЧреЛрд▓рд╛рдХрд╛рд░ рд╡рд╛рдврдд рдЖрд╣реЗ рд╣реА рд╡рд╕реНрддреБрд╕реНрдерд┐рддреА рдереЛрдбреА рдЖрд╢рд╛ рджреЗрддреЗ.

    рдПрдЦрд╛рджреА рдЧреЛрд╖реНрдЯ рдПрд╡рдвреНрдпрд╛ рд▓рд╡рдХрд░ рд╡рд╛рдврд▓реА рддрд░ рд╣реБрд╢рд╛рд░ рд▓реЛрдХ рдирдХреНрдХреАрдЪ рджрд┐рд╕рддреАрд▓ рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рдп рдХрд░рд╛рд╡реЗ рдЖрдгрд┐ рдХрд╛рдп рдХрд░реВ рдирдпреЗ рд╣реЗ рд╕рд╛рдВрдЧрддреАрд▓. рд▓реЛрдХрдкреНрд░рд┐рдпрддреЗрдЪреНрдпрд╛ рд╡рд╛рдвреАрдореБрд│реЗ рдХрджрд╛рдЪрд┐рдд рдХреЛрдгрд╛рд▓рд╛рддрд░реА рд╢реЗрд╡рдЯреА vscode рд╕рд╛рдареА jsonnet рдкреНрд▓рдЧрдЗрди рдЬреЛрдбрдгреНрдпрд╛рд╕рд╛рдареА рд╡реЗрд│ рдорд┐рд│реЗрд▓, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ ctrl+shift+f рджреНрд╡рд╛рд░реЗ рд╢реЛрдзрдгреНрдпрд╛рдРрд╡рдЬреА рдлрдВрдХреНрд╢рдирдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреБрдвреЗ рдЬрд╛рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрдИрд▓. рдЧреЛрд╖реНрдЯреА рдЬрд╕рдЬрд╢рд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддрд╛рдд рддрд╕рддрд╕реЗ рдЕрдзрд┐рдХ рд╕рд╛рд╣рд┐рддреНрдп рджрд┐рд╕реВрди рдпреЗрддреЗ. Google рдХрдбреВрди SRE рдмрджреНрджрд▓рдЪреЗ рдкреБрд╕реНрддрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдгреЗ рд╣реЗ рддреНрдпрд╛рдЪреЗ рдЙрддреНрдХреГрд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ.

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

    рдПрдХ рдХреНрд╖реБрд▓реНрд▓рдХ рдЙрджрд╛рд╣рд░рдг: рдЬреЛрдбреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧрджреНрд╡рд╛рд░реЗ рд╕рд╣рдпреЛрдЧ. рддреЗ рд╢реЛрдзрдгреНрдпрд╛рдд рдЦреВрдк рдорджрдд рд╣реЛрддреЗ. рдЬреЗрд╡реНрд╣рд╛ рддреБрдордЪрд╛ рд╢реЗрдЬрд╛рд░реА рд╢реЗрдЬрд╛рд░реА рдЕрд╕реЗрд▓ рдЬреЛ рдХрд╛рд╣реАрддрд░реА рд╕рдордЬреВрди рдШреЗрдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░рдд рдЕрд╕реЗрд▓, рддреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрддреНрд░ рдЪрд╛рдВрдЧрд▓реЗ рд╕рдордЬреЗрд▓.

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

рдирд┐рд╖реНрдХрд░реНрд╖

рдорд╛рдЭреЗ рддрд░реНрдХ рдирд┐рд░рд╛рд╢рд╛рд╡рд╛рджреА рд╡рд╛рдЯрдд рдЕрд╕рд▓реЗ рддрд░реА, рдореА рдЖрд╢реЗрдиреЗ рднрд╡рд┐рд╖реНрдпрд╛рдХрдбреЗ рдкрд╛рд╣рддреЛ рдЖрдгрд┐ рдкреНрд░рд╛рдорд╛рдгрд┐рдХрдкрдгреЗ рдЖрд╢рд╛ рдХрд░рддреЛ рдХреА рд╕рд░реНрд╡рдХрд╛рд╣реА рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА (рдЖрдгрд┐ рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА) рдХрд╛рд░реНрдп рдХрд░реЗрд▓.

рд▓реЗрдЦрд╛рдЪрд╛ рджреБрд╕рд░рд╛ рднрд╛рдЧ рдкреБрдвреЗ рддрдпрд╛рд░ рд╣реЛрдд рдЖрд╣реЗ. рддреНрдпрд╛рдордзреНрдпреЗ, рдЖрдореНрд╣реА рдЖрдордЪреА рд╢рд┐рдХрдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрдзрд╛рд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЪрдкрд│ рд╡рд┐рдХрд╛рд╕ рдкрджреНрдзрддреА рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд╕рд╛ рдХреЗрд▓рд╛ рдпрд╛рдмрджреНрджрд▓ рдореА рдмреЛрд▓реЗрди.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛