ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Infrastructure as Code: ΠŸΠ»ΡŽΡΡ‹, ΠœΠΈΠ½ΡƒΡΡ‹ ΠΈ Π‘ΡƒΠ΄ΡƒΡ‰Π΅Π΅

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Infrastructure as Code β€” ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ элСмСнт Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивных ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹Ρ… сСтапов. Π’ΠΎ, ΠΊΠ°ΠΊ сСйчас DevOps-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Ρ‹ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ со своСй инфраструктурой β€” это нСсомнСнно большой скачок Π²ΠΏΠ΅Ρ€Π΅Π΄. Но Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ спорныС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ Π»ΡƒΡ‡ΡˆΠΈΠΌΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌΠΈ IaC Π΄ΠΎ сих ΠΏΠΎΡ€ Π΅ΡΡ‚ΡŒ. Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ стрСмится Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ IaC, Π΅Π³ΠΎ прСимущСства ΠΈ Π²Π°ΠΆΠ½Ρ‹Π΅ ограничСния.

Infrastructure as Code, ΠΈΠ»ΠΈ сокращСнно IaC, β€” это Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ сдвиг Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ops Π² Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ подходят ΠΊ ΠΏΡ€ΠΎΠ²ΠΈΠ·ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ инфраструктуры, Π½ΠΎ ΠΈ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π² Ρ†Π΅Π»ΠΎΠΌ. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π° послСдниС нСсколько Π»Π΅Ρ‚ IaC Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ Π·Π°Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» сСбя ΠΊΠ°ΠΊ отраслСвой стандарт, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΠΎ сих ΠΏΠΎΡ€ спорят ΠΎ Π΅Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ, Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Ρ… ΠΈ ограничСниях.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠ΅ΠΉ этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ инфраструктурС Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссов ΠΈ связанных с Π½ΠΈΠΌ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ. ΠœΡ‹ объясним, ΠΎΡ‚ΠΊΡƒΠ΄Π° появился IaC, пСрспСктивы Π΅Π³ΠΎ развития, Π΅Π³ΠΎ прСимущСства ΠΈ Π΅Π³ΠΎ Π³Π»Π°Π²Π½Ρ‹Π΅ ограничСния.

ΠžΡ‚ ΠΆΠ΅Π»Π΅Π·Π° ΠΊ ΠΎΠ±Π»Π°ΠΊΡƒ

Π•Ρ‰Π΅ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΆΠ΅Π»Π΅Π·Π½Ρ‹ΠΉ Π²Π΅ΠΊ IT, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ собствСнныС сСрвСры ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹? И я ΡƒΠΆΠ΅ Π½Π΅ помню. БСйчас каТСтся ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π±Π΅Π·ΡƒΠΌΠ½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ рост инфраструктуры ΠΌΠΎΠ³ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Ρ†ΠΈΠΊΠ»ΠΎΠΌ ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ оборудования. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ доставка Π½ΠΎΠ²ΠΎΠ³ΠΎ сСрвСра Π·Π°Π½ΠΈΠΌΠ°Π»Π° нСсколько нСдСль, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ быстрой установки ΠΈ настройки Π½Π° Π½Π΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Π½Π΅ стояла Ρ‚Π°ΠΊ остро. Π›ΡŽΠ΄ΠΈ просто вставляли диск Π² сСрвСр ΠΈ слСдовали ΠΏΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌ. Π§Π΅Ρ€Π΅Π· нСсколько Π΄Π½Π΅ΠΉ ΠΎΠ½ становился доступСн для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². ΠŸΡ€ΠΎΡΡ‚ΠΎ Π±Π΅Π·ΡƒΠΌΠΈΠ΅.

Π‘ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ запуском ΠΈ повсСмСстным Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ AWS EC2 ΠΈ Ruby on Rails 1.0 Π² 2006 Π³ΠΎΠ΄Ρƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Ρ‚Ρ€Π°Π½ΡΠ½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… организациях. ΠžΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ вычислСния ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π±Π΅Π· усилий Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ инстансы Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин принСсли ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π°ΠΌ ΠΈ прСдприятиям Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ Π²Ρ‹Π³ΠΎΠ΄Ρƒ, Π½ΠΎ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ…Π»ΠΎΠΏΠΎΡ‚Ρ‹. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠΌ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° обслуТиваСмыми сСрвСрами, число ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… постоянно росло.

ΠŸΠ»ΠΎΡ‰Π°Π΄ΡŒ инфраструктуры срСднСй ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ стала расти ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ нСбольшоС количСство Π±ΠΎΠ»ΡŒΡˆΠΈΡ… машин замСнялось большим количСством ΠΌΠ΅Π½ΡŒΡˆΠΈΡ…. Π’ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ стало Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ops Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ²ΠΈΠ·ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ, ΠΈ эта инфраструктура ΠΈΠΌΠ΅Π»Π° Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΡŽ Π±Ρ‹Ρ‚ΡŒ цикличСской. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с ​​пиковой Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Π΄Π½Π΅ΠΌ, Π° Π½ΠΎΡ‡ΡŒΡŽ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π±, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π° расходах, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ фиксированы. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ нСобходимости ΠΌΠΈΡ€ΠΈΡ‚ΡŒΡΡ с постоянным устарСваниСм нашСго оборудования, ΠΌΡ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ»Π°Ρ‚ΠΈΠΌ Π·Π° Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ рСсурсы почасово. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Ρ‹Π³ΠΎΠ΄Ρƒ ΠΏΡ€ΠΈ использовании ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠ³ΠΎ сСтапа, ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρƒ инфраструктуру, которая Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°.

Π§Ρ‚ΠΎΠ±Ρ‹ максимально эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ, Π½Π°ΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ новая ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ°. Π‘ΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ тысячу Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΎΠ² ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡƒΡ‚Ρ€ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ, ΠΈ Π΅Ρ‰Π΅ тысячу Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΎΠ² Π½ΠΎΡ‡ΡŒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ снова Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒΡΡ, ΠΏΡ€ΠΈ этом Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ всСм этим, ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, становится довольно слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос, ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот сСтап, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π±Ρ‹Π» Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ, устойчивым ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π» ошибки, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Π΅ чСловСчСским Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ?

Infrastructure as Code

Infrastructure as Code Π±Ρ‹Π» Ρ€ΠΎΠΆΠ΄Π΅Π½ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этих Π·Π°Π΄Π°Ρ‡ максимально систСматизированным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. IaC β€” это процСсс управлСния ΠΈ провизионирования Π΄Π°Ρ‚Π°Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ² ΠΈ сСрвСров с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ, созданный ΠΊΠ°ΠΊ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° физичСскому ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ оборудования ΠΈ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ инструмСнтам. Π’Π΅ΠΏΠ΅Ρ€ΡŒ, вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΡΠΎΡ‚Π½ΡŽ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, IaC позволяСт Π½Π°ΠΌ просто Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡƒΡ‚Ρ€ΠΎ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅Ρ‚ тысячу Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… машин, Π° Π²Π΅Ρ‡Π΅Ρ€ΠΎΠΌ автоматичСски сокращаСт инфраструктуру Π΄ΠΎ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ³ΠΎ Π²Π΅Ρ‡Π΅Ρ€Π½Π΅Π³ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π°.

Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° запуска AWS Cloudformation Π² 2009 Π³ΠΎΠ΄Ρƒ IaC быстро стал Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ DevOps, Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΠΎΠΉ Π² ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ конкурСнтоспособной доставки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Он позволяСт ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² быстро ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ Π²Π΅Ρ€ΡΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ инфраструктуру Ρ‚Π΅ΠΌ ΠΆΠ΅ способом, Ρ‡Ρ‚ΠΎ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΈ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ эти вСрсии Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ нСсогласованности ΠΌΠ΅ΠΆΠ΄Ρƒ срСдами. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ это ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΈ ΠΏΠΈΡˆΡƒΡ‚ инфраструктурныС спСцификации (infrastructure specs) Π½Π° спСцифичном для ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области языкС

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² API управлСния, мастСр-сСрвСр ΠΈΠ»ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠΎΠ΄Π°

Π—Π°Ρ‚Π΅ΠΌ инструмСнт IaC, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Pulumi, выполняСт всС дСйствия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½Ρ‹ для создания ΠΈ настройки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… рСсурсов

И вуаля, ваша инфраструктура Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° вас, Π° Π½Π΅ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚.

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ сущСствуСт Π΄Π²Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ IaC, Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ, ΠΈ Π΄Π²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, push ΠΈ pull. Π”Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ описываСт ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ†Π΅Π»ΡŒ ΠΈ опрСдСляСт Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ состояниС Π²Π°ΡˆΠΈΡ… рСсурсов. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° вопрос ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «МнС Π½ΡƒΠΆΠ½Ρ‹ Π΄Π²Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹Β». Π˜ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° вопрос ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ инфраструктуру для достиТСния ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выдавая ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄. Ansible playbooks β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ push ΠΈ pull Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ сСрвСрам сообщаСтся информация ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π’ pull Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСрвСр Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡƒΠ»ΠΈΡ‚ΡŒ свою ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈΠ· мастСр-сСрвСра, Π° Π² push Ρ€Π΅ΠΆΠΈΠΌΠ΅ мастСр-сСрвСр сам Ρ€Π°ΡΠΏΡƒΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΏΠΎ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ систСмС.

Π’ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ послСдних дСсяти Π»Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ инструмСнтов IaC постоянно ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π», ΠΈ, вСроятно, ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π°ΡΡŒ Π±Ρ‹ цСлая ΡΡ‚Π°Ρ‚ΡŒΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Ρ‚ΡŒ ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ всСх Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π² Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ инфраструктурС. Однако ΠΌΡ‹ составили ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ Ρ…Ρ€ΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡŽ основных инструмСнтов, пСрСчислСнных ΠΏΠΎ Π΄Π°Ρ‚Π΅ Ρ€Π΅Π»ΠΈΠ·Π°:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Infrastructure as Code: ΠΏΠ΅Ρ€Π²ΠΎΠ΅ знакомство

Π£ нас Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ΄Ρ‘Ρ‚ процСсс ΠΎΠ½Π±ΠΎΡ€Π΄ΠΈΠ½Π³Π° SRE-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π― Π·Π°ΡˆΡ‘Π» Π²ΠΎ всю эту ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ со стороны Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ процСссС Ρƒ мСня появились мысли ΠΈ инсайты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ я Ρ…ΠΎΡ‡Ρƒ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅-Ρ€Π°Π·ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΠΈ я Π³ΠΎΠ²ΠΎΡ€ΡŽ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ происходит, ΠΊΠ°ΠΊ происходит, ΠΈ ΠΊΠ°ΠΊ всСм дальшС с этим ΠΆΠΈΡ‚ΡŒ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ сСрии статСй, написанных ΠΏΠΎ ΠΌΠΎΡ‚ΠΈΠ²Π°ΠΌ выступлСний Π½Π° нашСм Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ мСроприятии DevForum:

ΠœΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ SRE, Π²ΠΎΠΏΠ»ΠΎΡ‚ΠΈΠ² ΠΈΠ΄Π΅ΠΈ google sre. Набрали программистов ΠΈΠ· своих ΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΈΡ… ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ Π½Π° нСсколько мСсяцСв.

ΠŸΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ стояли ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

Π’Π²ΠΎΠ΄ΠΈΠΌ понятиС Infrastructure as code

Π’ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΈΡ€Π° (классичСском администрировании) знания ΠΎΠ± инфраструктурС находятся Π² Π΄Π²ΡƒΡ… мСстах:

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ (Incfastructure as Code – IaC) – это описаниС всСй ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉΡΡ инфраструктуры Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ срСдства ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π½ΠΈΠΌ ΠΈ Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ΠΈΡŽ ΠΈΠ· Π½Π΅Π³ΠΎ ΠΆΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ инфраструктуры.

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Ρ… SRE-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ², Π½ΠΎ ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΈΡ… Π±Ρ€Π°Ρ‚ΡŒ? КниТка с ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌΠΈ (Google SRE Book) Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ Π½Π°ΠΌ: ΠΈΠ· Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π’Π΅Π΄ΡŒ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с ΠΊΠΎΠ΄ΠΎΠΌ, Π° Π²Ρ‹ достигаСтС идСального состояния.

ΠœΡ‹ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ Π΄ΠΎΠ»Π³ΠΎ искали ΠΈΡ… Π½Π° ΠΊΠ°Π΄Ρ€ΠΎΠ²ΠΎΠΌ Ρ€Ρ‹Π½ΠΊΠ΅ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ нашСй ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Но Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ нашли Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ наши запросы. ΠŸΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠΎΡˆΠ΅Ρ€ΡΡ‚ΠΈΡ‚ΡŒ срСди своих.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Infrastructure as code

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ инфраструктура ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΡˆΠΈΡ‚Π° Π² ΠΊΠΎΠ΄. Код Ρ…ΠΎΡ€ΠΎΡˆΠΎ написан, качСствСнно, с ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ отступами.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° ΠΈΠ· Terraforma.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° ΠΈΠ· Ansible.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Господа, Π½ΠΎ Ссли Π±Ρ‹ всё Π±Ρ‹Π»ΠΎ Ρ‚Π°ΠΊ просто! ΠœΡ‹ ΠΆΠ΅ с Π²Π°ΠΌΠΈ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΌΠΈΡ€Π΅, Π° ΠΎΠ½ всСгда Π³ΠΎΡ‚ΠΎΠ² ΡƒΠ΄ΠΈΠ²ΠΈΡ‚ΡŒ вас, прСподнСсти ΡΡŽΡ€ΠΏΡ€ΠΈΠ·Ρ‹, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. НС обходится Π±Π΅Π· Π½ΠΈΡ… ΠΈ здСсь.

1. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв IaC – это ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ dsl.

А DSL, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, – это описаниС структуры. Π’ΠΎΡ‡Π½Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρƒ тСбя Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ: Json, Yaml, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ свой dsl (Π² Ρ‚Π΅Ρ€Ρ€Π°Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ HCL).

Π‘Π΅Π΄Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Π½Ρ‘ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π»Π΅Π³ΠΊΠΎ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Ρ… Π½Π°ΠΌ Π²Π΅Ρ‰Π΅ΠΉ ΠΊΠ°ΠΊ:

Π’ΠΏΠΎΠ»Π½Π΅ Ρ€Π΅Π°Π»ΡŒΠ½Π°Ρ ситуация, ΠΊΠΎΠ³Π΄Π° баш с ΠΏΠΈΡ‚ΠΎΠ½ΠΎΠΌ запускаСт ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ процСсс, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ подсовываСтся Json. Π’Ρ‹ Π΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚Π΅, ΠΏΠΎΡ‚ΠΎΠΌ Π΅Ρ‰Π΅ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π΅Ρ‰Ρ‘ 30 Ρ„Π°ΠΉΠ»ΠΎΠ². Для всСго этого ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ· Azure Key Vault, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ стянуты ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ ΠΊ drone.io, написанным Π½Π° Go, ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ эти проходят Ρ‡Π΅Ρ€Π΅Π· yaml, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ получился Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ· ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° jsonnet. Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ слоТно ΠΈΠΌΠ΅Ρ‚ΡŒ строго Ρ…ΠΎΡ€ΠΎΡˆΠΎ описанный ΠΊΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° Ρƒ вас Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ разнообразная срСда.

Врадиционная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈΠ΄Π΅Ρ‚ с ΠΎΠ΄Π½ΠΈΠΌ языком. Π—Π΄Π΅ΡΡŒ ΠΆΠ΅ ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с большим количСством языков.

3. Π’Ρ€Π΅Ρ‚ΡŒΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° – это Ρ‚ΡƒΠ»ΠΈΠ½Π³. ΠœΡ‹ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΊ ΠΊΡ€ΡƒΡ‚Ρ‹ΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°ΠΌ (Ms Visual Studio, Jetbrains Rider), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ всС Π΄Π΅Π»Π°ΡŽΡ‚ Π·Π° нас. И Π΄Π°ΠΆΠ΅, Ссли ΠΌΡ‹ Π·Π°Ρ‚ΡƒΠΏΠΈΠ»ΠΈ, ΠΎΠ½ΠΈ скаТут, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ ΠΏΡ€Π°Π²Ρ‹. ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΈ СстСствСнно.

Но Π³Π΄Π΅-Ρ‚ΠΎ Ρ€ΡΠ΄Ρ‹ΡˆΠΊΠΎΠΌ Π΅ΡΡ‚ΡŒ VSCode, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ставятся, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠ»ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ. Π’Ρ‹ΡˆΠ»ΠΈ Π½ΠΎΠ²Ρ‹Π΅ вСрсии, ΠΈ ΠΈΡ… Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π»ΠΈ. Π‘Π°Π½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½Π° Π΅ΡΡ‚ΡŒ) становится слоТной ΠΈ Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Ρ€Π΅Π½Π΅ΠΉΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ – это рСплСйс Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΈΠ· дСсятка Ρ„Π°ΠΉΠ»ΠΎΠ². ΠŸΠΎΠ²Π΅Π·Ρ‘Ρ‚, Ссли ΠΎΠ½ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π°Π΄ΠΎ зарСплСйсит. Π•ΡΡ‚ΡŒ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΊΠΎΠ΅-Π³Π΄Π΅ подсвСтка, Π΅ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΊΠΎΠΌΠΏΠ»ΠΈΡˆΠ½, Π³Π΄Π΅-Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ½Π³ (ΠΏΡ€Π°Π²Π΄Π° Ρƒ мСня Π² Ρ‚Π΅Ρ€Ρ€Π°Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π° Π²ΠΈΠ½Π΄Π΅ Π½Π΅ завСлся).

На ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания ΡΡ‚Π°Ρ‚ΡŒΠΈ vscode-terraform plugin Π΅Ρ‰Π΅ Π½Π΅ выпустили для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ вСрсии 0.12, хотя ΠΎΠ½Π° Π·Π°Ρ€Π΅Π»ΠΈΠΆΠ΅Π½Π° ΡƒΠΆΠ΅ ΠΊΠ°ΠΊ 3 мСсяца.

ΠŸΡ€ΠΈΡˆΠ»ΠΎ врСмя Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΎ.

Π‘Π°ΠΌΠΎΠ΅ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½Π΅ ΠΎ Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ ΡΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ€Π°Π·Π»ΠΎΠΆΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΈΠΊΠΈ ΠΏΠΎ ΠΏΠ°ΠΏΠΎΡ‡ΠΊΠ°ΠΌ, Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌ, Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅ ΠΊΠΎΠ΄, Π° ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π±Ρ‹ ΠΌΠ½Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ я Π΅Ρ‘ ΠΊΠ°ΠΊ-Ρ‚ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ написал.

Как Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ Ρ‚Π΅Ρ€Ρ€Π°Ρ„ΠΎΡ€ΠΌ, Π° IDE Π²Π°ΠΌ Π² этом нисколько Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚. Когда Π΅ΡΡ‚ΡŒ докумСнтация – зашли, посмотрСли. Но Ссли Π±Ρ‹ Π²Ρ‹ въСзТали Π² Π½ΠΎΠ²Ρ‹ΠΉ язык программирования, Ρ‚ΠΎ IDE подсказала Π±Ρ‹, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ, Π° Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅Ρ‚. По ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ int ΠΈΠ»ΠΈ string. Π­Ρ‚ΠΎ часто Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ.

А ΠΊΠ°ΠΊ ΠΆΠ΅ тСсты?

Π’Ρ‹ спроситС: «Как ΠΆΠ΅ тСсты, господа программисты?Β» Π‘Π΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Π΅ рСбята Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚ всё Π½Π° ΠΏΡ€ΠΎΠ΄Π΅, ΠΈ это ТСстко. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡŽΠ½ΠΈΡ‚Π΅ΡΡ‚Π° для Ρ‚Π΅Ρ€Ρ€Π°Ρ„ΠΎΡ€ΠΌ-модуля с сайта Microsoft.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π£ Π½ΠΈΡ… Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ докумСнтация. Microsoft ΠΌΠ½Π΅ всСгда Π½Ρ€Π°Π²ΠΈΠ»ΠΈΡΡŒ своим ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΡŽ. Но Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ дядюшкой Π‘ΠΎΠ±ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ здСсь Π½Π΅ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ, Π²Ρ‹Π½Π΅ΡΠ΅Π½Π½ΡƒΡŽ Π²ΠΏΡ€Π°Π²ΠΎ.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° unit-тСста Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ с Π²Π°ΠΌΠΈ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ JsonΠ° Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅. Π― ΠΊΠΈΠ½ΡƒΠ» 5 ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΌΠ½Π΅ Π²Ρ‹Π΄Π°Π»Π°ΡΡŒ портянка Json Π½Π° 2000 строк. Π― ΠΌΠΎΠ³Ρƒ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ здСсь происходит, validate test result…

Π‘Π»ΠΎΠΆΠ½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Json Π² Go. А Π½Π°Π΄ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Go, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ€Ρ€Π°Ρ„ΠΎΡ€ΠΌ Π½Π° Go – это Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΠ΅ΡˆΡŒ Π² Ρ‚ΠΎΠΌ языкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ‚Ρ‹ пишСшь. Π‘Π°ΠΌΠ° организация ΠΊΠΎΠ΄Π° ΠΎΡ‡Π΅Π½ΡŒ слабая. ΠŸΡ€ΠΈ этом – это Π»ΡƒΡ‡ΡˆΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для тСстирования.

Π‘Π°ΠΌ Microsoft ΠΏΠΈΡˆΠ΅Ρ‚ свои ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, тСстируя ΠΈΡ… Ρ‚Π°ΠΊΠΈΠΌ способом. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, это Open Source. Всё, ΠΎ Ρ‡Π΅ΠΌ я Π³ΠΎΠ²ΠΎΡ€ΡŽ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ ΠΈ ΠΏΠΎΡ‡ΠΈΠ½ΠΈΡ‚ΡŒ. Π― ΠΌΠΎΠ³Ρƒ ΡΠ΅ΡΡ‚ΡŒ ΠΈ Π·Π° Π½Π΅Π΄Π΅Π»ΡŒΠΊΡƒ всё ΠΏΠΎΡ‡ΠΈΠ½ΠΈΡ‚ΡŒ, Π·Π°ΠΎΠΏΠ΅Π½ΡΠΎΡ€ΡΠΈΡ‚ΡŒ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ VS-ΠΊΠΎΠ΄Π°, Ρ‚Π΅Ρ€Ρ€Π°Ρ„ΠΎΡ€ΠΌ, ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ»Π°Π³ΠΈΠ½ для Ρ€Π°ΠΉΠ΄Π΅Ρ€Π°. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΡƒ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΏΡ€ΠΈΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ Π»ΠΈΠ½Ρ‚Π΅Ρ€Ρ‹, Π·Π°ΠΊΠΎΠ½Ρ‚Ρ€ΠΈΠ±ΡŒΡŽΡ‚ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ для тСстирования. Всё ΠΌΠΎΠ³Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ. Но я Π½Π΅ этим Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ.

Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Infrastructure as code

Π•Π΄Π΅ΠΌ дальшС. Если Π² IaC Π½Π΅Ρ‚ тСстов, ΠΏΠ»ΠΎΡ…ΠΎ с IDE ΠΈ Ρ‚ΡƒΠ»ΠΈΠ½Π³ΠΎΠΌ, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ хотя Π±Ρ‹ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ. Π― просто ΠΏΠΎΡˆΡ‘Π» Π² Π³ΡƒΠ³Π»-Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΡƒ ΠΈ ΠΏΡ€ΠΎΠ²Ρ‘Π» сравнСниС Π΄Π²ΡƒΡ… поисковых запросов: Terraform best practices ΠΈ c# best practices.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π§Ρ‚ΠΎ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ? Π‘Π΅ΡΠΏΠΎΡ‰Π°Π΄Π½ΡƒΡŽ статистику Π½Π΅ Π² Π½Π°ΡˆΡƒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ. По количСству ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° – Ρ‚ΠΎ ΠΆΠ΅ самоС. Π’ C# Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΌΡ‹ просто купаСмся Π² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°Ρ…, Ρƒ нас Π΅ΡΡ‚ΡŒ ΡΠ²Π΅Ρ€Ρ…Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, Π΅ΡΡ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ написанныС экспСртами, ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ½ΠΈΠΆΠΊΠΈ, написанныС Π½Π° ΠΊΠ½ΠΈΠΆΠΊΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ экспСртами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΠΊΡƒΡŽΡ‚ Ρ‚Π΅ ΠΊΠ½ΠΈΠΆΠΊΠΈ. ΠœΠΎΡ€Π΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, статСй, ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… курсов, сСйчас Π΅Ρ‰Π΅ ΠΈ open source Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°.

Π§Ρ‚ΠΎ касаСтся запроса ΠΏΠΎ IaC: здСсь Π²Ρ‹ ΠΏΠΎ ΠΊΡ€ΡƒΠΏΠΈΡ†Π°ΠΌ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ½Ρ„Ρƒ с Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ² Ρ…Π°ΠΉΠ»ΠΎΠ°Π΄Π° ΠΈΠ»ΠΈ HashiConf, с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ многочислСнных issue Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅. Как Π²ΠΎΠΎΠ±Ρ‰Π΅ эти ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Ρ€Π°ΡΠΊΠΈΠ΄Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ с Π½ΠΈΠΌΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ? ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ это Ρ€Π΅Π°Π»ΡŒΠ½Π°Ρ проблСма… Π•ΡΡ‚ΡŒ ΠΆΠ΅ ΠΊΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ, господа, Π³Π΄Π΅ Π½Π° любой вопрос Ρ‚Π΅Π±Π΅ Π΄Π°Π΄ΡƒΡ‚ 10 ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΎΠ² Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅. Но это Π½Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ.

К соТалСнию, Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ экспСрты Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ. Пока ΠΈΡ… слишком ΠΌΠ°Π»ΠΎ. А само ΠΊΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ болтаСтся Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π·Π°Ρ‡Π°Ρ‚ΠΊΠΎΠ².

ΠšΡƒΠ΄Π° всё это двиТСтся ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ

МоТно всё Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ ΠΈ ΠΏΠΎΠΉΡ‚ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π½Π° C#, Π² ΠΌΠΈΡ€ Ρ€Π°ΠΉΠ΄Π΅Ρ€Π°. Но Π½Π΅Ρ‚. Π—Π°Ρ‡Π΅ΠΌ Π²Ρ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ стали Π±Ρ‹ этим Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ, Ссли Π½Π΅ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π”Π°Π»Π΅Π΅ я ΠΏΡ€ΠΈΠ²ΠΎΠΆΡƒ свои ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹. ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ со ΠΌΠ½ΠΎΠΉ Π² коммСнтариях, Π±ΡƒΠ΄Π΅Ρ‚ интСрСсно.

Π›ΠΈΡ‡Π½ΠΎ я ΡΡ‚Π°Π²Π»ΡŽ Π½Π° нСсколько Π²Π΅Ρ‰Π΅ΠΉ:

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π΅ΠΌΠ° хайповая, Π½ΠΎ сам Ρ„Π°ΠΊΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ сфСра растёт, всСляСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π°Π΄Π΅ΠΆΠ΄Ρƒ.

Π‘Π°Π½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: совмСстная Ρ€Π°Π±ΠΎΡ‚Π° Ρ‡Π΅Ρ€Π΅Π· pair programming. Он сильно ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ. Когда Ρƒ тСбя Π΅ΡΡ‚ΡŒ рядом сосСд, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚ΠΎΠΆΠ΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ пытаСтся ΠΏΠΎΠ½ΡΡ‚ΡŒ, вмСстС Π²Ρ‹ ΠΏΠΎΠΉΠΌΡ‘Ρ‚Π΅ Π»ΡƒΡ‡ΡˆΠ΅.

ПониманиС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ дСлаСтся Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π΄Π°ΠΆΠ΅ Π² Ρ‚Π°ΠΊΠΎΠΉ ситуации ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΅Π³ΠΎ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, Ρ‚Ρ‹ моТСшь ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ всё сразу, Π° ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ΠΉΠΌΠΈΠ½Π³, ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ располоТСниС, ΠΏΠΎΡ‚ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ, ΠΎΠΉ, Π° здСсь Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘Π»Π΅Π΄ΠΎΠΌ ΠΈΠ΄Ρ‘Ρ‚ вторая Ρ‡Π°ΡΡ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Π’ Π½Π΅ΠΉ я Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°ΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ примСняли ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΡΠΊΡΡ‚Ρ€Π΅ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ наш процСсс обучСния ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ с инфраструктурой.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Богласно ΠΎΡ‚Ρ‡Π΅Ρ‚Ρƒ Β«State of DevOps 2019Β», 80% рСспондСнтов сказали, Ρ‡Ρ‚ΠΎ основноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ слуТба, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΈ, Π±Ρ‹Π»ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π½Π° ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. 50% рСспондСнтов заявили, Ρ‡Ρ‚ΠΎ ΠΈΡ… основноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΎ Π² ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΎΠ±Π»Π°ΠΊΠ΅.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄?

ИдСя состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅ΡΡŒ ΠΊ своСй инфраструктурС ΠΊΠ°ΠΊ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΈΡˆΠ΅Ρ‚Π΅, тСстируСтС ΠΈ выполняСтС ΠΊΠΎΠ΄ для опрСдСлСния, развСртывания, обновлСния ΠΈ уничтоТСния своСй инфраструктуры.

Π’Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ для управлСния своими сСрвСрами, Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, сСтями, ΠΆΡƒΡ€Π½Π°Π»Π°ΠΌΠΈ, Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ ΠΈ настройкой ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Когда Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ внСсти измСнСния Π² свою инфраструктуру, Π²Ρ‹ вноситС измСнСния Π² ΠΊΠΎΠ΄, тСстируСтС Π΅Π³ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ примСняСтС Π΅Π³ΠΎ Π² своих систСмах.

Π›ΡŒΠ³ΠΎΡ‚Ρ‹

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ прСдоставляСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ прСимущСства ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΎΠΉ:

БамообслуТиваниС

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ инфраструктура опрСдСляСтся ΠΊΠ°ΠΊ ΠΊΠΎΠ΄, вСсь процСсс ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Ρ‹ Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ DevOps. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ инфраструктуры ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ рСсурсы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌ Π½ΡƒΠΆΠ½Ρ‹, ΠΊΠΎΠ³Π΄Π° ΠΈΠΌ это Π½ΡƒΠΆΠ½ΠΎ.

Π˜Π΄Π΅ΠΌΠΏΠΎΡ‚Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ

Π˜Π΄Π΅ΠΌΠΏΠΎΡ‚Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ опрСдСляСтС ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ состояниС, ΠΈ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, сколько Ρ€Π°Π· Π²Ρ‹ запускаСтС скрипт, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ. Он провСряСт Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΈ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ состояниС ΠΈ примСняСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹. Π­Ρ‚ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скриптов bash.

Π’Π°ΠΊΠΈΠ΅ инструмСнты, ΠΊΠ°ΠΊ Ansible ΠΈ Terraform, ΠΈΠΌΠ΅ΡŽΡ‚ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ ваш ΠΊΠΎΠ΄ ΠΈΠ΄Π΅ΠΌΠΏΠΎΡ‚Π΅Π½Ρ‚Π½Ρ‹ΠΌ.

Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Ρ‚Ρ€Π°Ρ‚

Π‘ΠΎΠΊΡ€Π°Ρ‰Π°Π΅Ρ‚ врСмя ΠΈ усилия, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для прСдоставлСния, Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ мСньшС, Ρ‡Π΅ΠΌ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

Π‘ΠΎΠ»Π΅Π΅ быстрая доставка ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

БыстроС прСдоставлСниС инфраструктуры для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, тСстирования ΠΈ производства позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстрСС Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ процСсс развСртывания Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ повторяСмый.

Π‘Π°ΠΌΠΎΠ΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

БостояниС инфраструктуры опрСдСляСтся Π² ΠΊΠΎΠ΄Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ читаСтся Π»ΡŽΠ±Ρ‹ΠΌ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠ°Ρ вСрсия

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ измСнСния Π² производствСнных систСмах ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ рискованными. Но Ρ‚ΠΎΠ³Π΄Π° измСнСния Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½Ρ‹. Π’Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ сСрвСры ΠΈΠ»ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π² кластСр. Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ усилия ΠΈ риск внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² инфраструктуру.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ свои исходныС Ρ„Π°ΠΉΠ»Ρ‹ Π² систСмС управлСния вСрсиями, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ всС измСнСния, внСсСнныС Π² инфраструктуру, ΠΈ быстро Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии, Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ сломаСтся.

Валидация ΠΈ тСстированиС

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ позволяСт постоянно Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ нСбольшиС измСнСния. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС являСтся ΠΊΠΎΠ΄ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ошибки, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ статичСский Π°Π½Π°Π»ΠΈΠ· ΠΈ автоматичСскиС тСсты.

Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ инфраструктурС Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄Π° позволяСт Π²ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ систСму бСзопасности с самого Π½Π°Ρ‡Π°Π»Π°, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ ΠΈ бСзопасно ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ измСнСния.

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ инструмСнты ΠΊΠΎΠ΄Π°

НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ доступно ΠΌΠ½ΠΎΠ³ΠΎ инструмСнтов, Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π»Π΅Π³ΠΊΠΎ. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сообраТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ:

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ инструмСнты обСспСчСния

Π’ Ρ†Π΅Π»ΠΎΠΌ доступныС инструмСнты ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΏΠΎΠ΄ Π΄Π²Π΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ:

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ управлСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ инструмСнты управлСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠ΅ΠΉ для установки ΠΈ обновлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π½Π° сСрвСрах.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ обСспСчСния

Terraform, CloudFormatio, OpenStack Heat, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΡΠ²Π»ΡΡŽΡ‚ΡΡ инструмСнтами обСспСчСния, Ρ‚.Π΅. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для создания сСрвСров, сСрвСров Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, балансировщиков Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ, подсСтСй, брандмауэров ΠΈ всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² вашСй инфраструктуры. Π­Ρ‚ΠΈ инструмСнты Π΄Π΅Π»Π°ΡŽΡ‚ API-Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΊ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°ΠΌ для создания Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ инфраструктуры.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π˜Π·ΠΌΠ΅Π½Ρ‡ΠΈΠ²Π°Ρ ΠΈ нСизмСнная инфраструктура

ПослС ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСрвСр, вСроятно, Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ…, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡΠΌΠ΅Ρ‰Π΅Π½ΠΈΡŽ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. НапримСр, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° тСстовых сСрвСрах, ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° производствСнных сСрвСрах.

Π’Π°ΠΊΠΈΠ΅ инструмСнты, ΠΊΠ°ΠΊ Terraform ΠΈ CloudFormation, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ сСрвСр ΠΈΠ· ΠΎΠ±Ρ€Π°Π·Π° ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π·Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ сСрвСры, Π²Ρ‹ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΡ… Π½ΠΎΠ²Ρ‹ΠΌΠΈ сСрвСрами.

Когда Π½ΠΎΠ²Ρ‹Π΅ сСрвСры Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ старыС. КаТдоС Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ нСизмСняСмый ΠΎΠ±Ρ€Π°Π· для создания сСрвСра, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ смСщСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Π˜ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΈ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ инструмСнты

ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ инструмСнты ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° скрипты. Π’Ρ‹ пСрСчисляСтС шаги, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ для достиТСния ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ³ΠΎ состояния. Π”Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ инструмСнты ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояниС, ΠΈ инструмСнт Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ шаги для достиТСния этого состояния.

Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Chef являСтся Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ инструмСнтом, Ansible ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹.

Terraform, CloudFormation, Puppet, OpenStack Heat ΠΈ SaltStack ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ ΠΊ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… инструмСнтов, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚Π΅ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояниС.

ИспользованиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… инструмСнтов вмСстС

Π₯отя ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· этих инструмСнтов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ±Ρ‰ΠΈΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… вмСстС. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Terraform для создания VPC, подсСтСй, ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-шлюзов, балансировщиков Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ansible для настройки ΠΈ развСртывания слуТб Π² этих экзСмплярах.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄, Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Π΅ΠΌ Π½Π° ΠΌΠ°ΡΡˆΡ‚Π°Π±Π΅ (ΠšΠΈΡ€ΠΈΠ»Π» Π’Π΅Ρ‚Ρ‡ΠΈΠ½ΠΊΠΈΠ½, TYME)

МодСль Β«Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ (IaC)Β», ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Β«ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ инфраструктурой», β€” это модСль, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ процСсс настройки инфраструктуры Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ процСссу программирования ПО. По сути, ΠΎΠ½Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»Π° Π½Π°Ρ‡Π°Π»ΠΎ ΡƒΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΡŽ Π³Ρ€Π°Π½ΠΈΡ† ΠΌΠ΅ΠΆΠ΄Ρƒ написаниСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ созданиСм срСд для этих ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ скрипты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ свои собствСнныС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ ΠΈΠΌΠΈ. Π­Ρ‚ΠΎ основа ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… вычислСний ΠΈ Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ DevOps.

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ машинами Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ€ΡƒΡ‡Π½ΠΎΠΉ настройки ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ для ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² оборудования. Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° становится Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ «ΡΠ»Π°ΡΡ‚ΠΈΡ‡Π½ΠΎΠΉ», Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ воспроизводимой ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ. Одни ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎΠΉ, Ρ‚Π°ΠΊ ΠΈ 1000 машинами, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠ΄Π°. Π‘Ρ€Π΅Π΄ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… прСимущСств инфраструктуры ΠΊΠ°ΠΊ ΠΊΠΎΠ΄Π° β€” ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ риска.

Как Ρ€Π°Π· ΠΎΠ± этом Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° Π΄ΠΎΠΊΠ»Π°Π΄Π° ΠšΠΈΡ€ΠΈΠ»Π»Π° Π’Π΅Ρ‚Ρ‡ΠΈΠ½ΠΊΠΈΠ½Π° Π½Π° DevOpsDays Moscow 2018. Π’ Π΄ΠΎΠΊΠ»Π°Π΄Π΅: ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Ansible, Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Git, Ρ€Π΅Π²ΡŒΡŽ, пСрСсборка, финансовыС Π²Ρ‹Π³ΠΎΠ΄Ρ‹, Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² 1 ΠΊΠ»ΠΈΠΊ.

ΠšΠΎΠΌΡƒ интСрСсно, ΠΏΡ€ΠΎΡˆΡƒ ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚.

ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚. Как ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ, я Π’Π΅Ρ‚Ρ‡ΠΈΠ½ΠΊΠΈΠ½ ΠšΠΈΡ€ΠΈΠ»Π». Π― Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ TYME ΠΈ сСгодня ΠΌΡ‹ с Π²Π°ΠΌΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ инфраструктуру ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π° этой ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° достаточно дорогая. ΠŸΠΈΡΠ°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, для настройки инфраструктуры достаточно Π·Π°Ρ‚Ρ€Π°Ρ‚Π½ΠΎ.

Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅ расскаТу ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π― Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ TYME. Π£ нас ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π» Ρ€Π΅Π±Ρ€Π΅Π½Π΄ΠΈΠ½Π³. БСйчас ΠΌΡ‹ называСмся PaySystem β€” ΠΊΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· названия, ΠΌΡ‹ занимаСмся ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹ΠΌΠΈ систСмами. Π£ нас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊ собствСнныС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ β€” это процСссинги, Ρ‚Π°ΠΊ ΠΈ заказная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. Заказная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° β€” это элСктронныС Π±Π°Π½ΠΊΠΈ, Π±ΠΈΠ»Π»ΠΈΠ½Π³ΠΈ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ. И ΠΊΠ°ΠΊ Π²Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅, Ссли это заказная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, Ρ‚ΠΎ это ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π³ΠΎΠ΄ большоС количСство ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠ΄Π΅Ρ‚ Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ. Π§Π΅ΠΌ большС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Ρ‚Π΅ΠΌ большС ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½ΠΎΠΉ инфраструктуры приходится ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Ρ‚ΡŒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ высоконагруТСнныС, Ρ‚ΠΎ ΠΌΡ‹ примСняСм ΠΌΠΈΠΊΡ€ΠΎΡΠ΅Ρ€Π²ΠΈΡΠ½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ содСрТится Π΅Ρ‰Π΅ ΠΌΠ½ΠΎΠ³ΠΎ-ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

БоотвСтствСнно, всСм этим Π·ΠΎΠΎΠΏΠ°Ρ€ΠΊΠΎΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π±Π΅Π· ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ DevOps вСсьма слоТно. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² нашСй ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ DevOps. ЕстСствСнно, ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΏΠΎ kanban, ΠΏΠΎ SCRUM, всС Ρ…Ρ€Π°Π½ΠΈΠΌ Π² git. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠ»ΠΈ, ΠΈΠ΄Π΅Ρ‚ нСпрСрывная интСграция, ΠΏΡ€ΠΎΠ³ΠΎΠ½ΡΡŽΡ‚ΡΡ тСсты. ВСстировщики ΠΏΠΈΡˆΡƒΡ‚ Π½Π° PyTest end-to-end тСсты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Π½ΠΎΡ‡ΡŒ ΡΡ‚Π°Ρ€Ρ‚ΡƒΡŽΡ‚. Unit-test ΡΡ‚Π°Ρ€Ρ‚ΡƒΡŽΡ‚ послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ процСсс сборки ΠΈ дСплоя: собрали, ΠΏΠΎΡ‚ΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· Π΄Π΅ΠΏΠ»ΠΎΠΈΠΌ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ срСды. ΠœΡ‹ Π±Ρ‹Π»ΠΈ Π½Π° windows. На windows ΠΌΡ‹ Π΄Π΅ΠΏΠ»ΠΎΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Octopus deploy, Π’ этом Π³ΠΎΠ΄Ρƒ ΠΌΡ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Π½Π° DotNet Core. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ПО Π½Π° Linux систСмах. ΠœΡ‹ ΡƒΡˆΠ»ΠΈ ΠΎΡ‚ Octopus ΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΠΊ Ansible. БСгодня ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± этой части, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΈΠ· сСбя Π½ΠΎΠ²ΡƒΡŽ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Ρ€Π°Π·Π²ΠΈΠ»ΠΈ Π² этом Π³ΠΎΠ΄Ρƒ, Ρ‚ΠΎ Ρ‡Π΅Π³ΠΎ Ρƒ нас Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ Π±Ρ‹Π»ΠΎ. Когда Ρƒ вас Π΅ΡΡ‚ΡŒ тСсты, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΡƒΠΌΠ΅Π΅Ρ‚Π΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ β€” всС прСкрасно. Но Ссли Ρƒ вас Π΄Π²Π΅ срСды настроСны ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, Ρ‚ΠΎ Π²Ρ‹ всС Ρ€Π°Π²Π½ΠΎ ΡƒΠΏΠ°Π΄Π΅Ρ‚Π΅, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΡƒΠΏΠ°Π΄Π΅Ρ‚Π΅ Π½Π° production. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ конфигурациями это ΠΎΡ‡Π΅Π½ΡŒ ваТная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. Π’ΠΎΡ‚ ΠΎ Π½Π΅ΠΉ ΠΌΡ‹ сСгодня Π±ΡƒΠ΄Π΅ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄
Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅ расскаТу ΠΊΠ°ΠΊ Π²ΠΎΠΎΠ±Ρ‰Π΅ строится экономика ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΏΠΎ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌ: 60 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² Ρƒ нас Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ, Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠ° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π³Π΄Π΅-Ρ‚ΠΎ 10 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ², QA (тСстированиС) Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 20 ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² ΠΈ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠ°ΠΊ Ρ€Π°Π· отводится Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Когда систСмы ΠΈΠ΄ΡƒΡ‚ Ρ†Π΅Π»Ρ‹ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ, Π² Π½ΠΈΡ… ΠΌΠ½ΠΎΠ³ΠΈΠ΅ стороннСС ПО, сами ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ практичСски ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ. ΠœΡ‹ Π½Π° это Ρ‚Ρ€Π°Ρ‚ΠΈΠΌ лишнСС врСмя, дСлая ΠΏΠΎ сути ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎΠΆΠ΅. Появилась идСя это всС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ инфраструктуры. ΠžΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΡ‚Π»Π°ΠΆΠ΅Π½Ρ‹ ΠΈ Π½Π΅ содСрТат Ρ€ΡƒΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄
КаТдоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΈΠ· Ρ‡Π΅Π³ΠΎ это всС состоит. Π£ нас ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ опСрационная систСма, Π΅Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ сторонниС прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚ΠΎΠΆΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, само ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, Π½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ вСсь ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π», Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒΡΡ само ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΎ всСй этой систСмС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚. Π•ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΡΠ΅Ρ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ‚ΠΎΠΆΠ΅ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ, Π½ΠΎ ΠΏΡ€ΠΎ ΡΠ΅Ρ‚ΡŒ ΠΌΡ‹ сСгодня Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρƒ нас Ρ€Π°Π·Π½Ρ‹Π΅ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΈ, Ρ€Π°Π·Π½Ρ‹Π΅ сСтСвыС устройства. ΠœΡ‹ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ Ρ‚ΠΎΠΆΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ сСти, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ устройства Ρ€Π°Π·Π½Ρ‹Π΅, Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ особо Ρ‚ΠΎΠ»ΠΊΡƒ ΠΎΡ‚ этого Π½Π΅ Π±Ρ‹Π»ΠΎ, большС Ρ‚Ρ€Π°Ρ‚ΠΈΠ»ΠΈ рСсурсов Π½Π° это. Но ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы, сторонниС прилоТСния ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² сами прилоТСния ΠΌΡ‹ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π”Π²Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊΠ°ΠΊ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСрвСра: Ρ€ΡƒΠΊΠ°ΠΌΠΈ β€” Ссли Π²Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡ… Ρ€ΡƒΠΊΠ°ΠΌΠΈ, Ρƒ вас соотвСтствСнно ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ такая ситуация, Ρ‡Ρ‚ΠΎ Ρƒ вас production настроСн ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, тСст Π΄Ρ€ΡƒΠ³ΠΈΠΌ, Π½Π° тСстС всС Π·Π΅Π»Π΅Π½ΠΎΠ΅, тСсты Π·Π΅Π»Π΅Π½Ρ‹Π΅. Π’Ρ‹ Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚Π΅ Π½Π° production, Π° Ρ‚Π°ΠΌ Π½Π΅ стоит ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ β€” Ρƒ вас Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Ρ‚Ρ€ΠΈ Application сСрвСра настроСны Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Один Application сСрвСр настроили ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΄Ρ€ΡƒΠ³ΠΎΠΉ Application сСрвСр Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π‘Π΅Ρ€Π²Π΅Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ. Π•Ρ‰Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Π±Ρ‹Π»Π° ситуация, ΠΊΠΎΠ³Π΄Π° Ρƒ нас ΠΎΠ΄ΠΈΠ½ Stage сСрвСр ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ пСрСстал Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Запустили созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ сСрвСра ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈ Ρ‡Π΅Ρ€Π΅Π· 30 сСрвСр Π±Ρ‹Π» Π³ΠΎΡ‚ΠΎΠ². Π•Ρ‰Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: сСрвСр просто пСрСстал Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Если настраивали Ρ€ΡƒΠΊΠ°ΠΌΠΈ, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π½Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ. Как ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, докумСнтация вряд Π»ΠΈ Π±Ρ‹Π²Π°Π΅Ρ‚ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ. Π­Ρ‚ΠΎ большиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. И, самоС Π³Π»Π°Π²Π½ΠΎΠ΅, β€” это Π°ΡƒΠ΄ΠΈΡ‚, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π³Ρ€ΡƒΠ±ΠΎ говоря, Ρƒ вас Π΅ΡΡ‚ΡŒ Π΄Π΅ΡΡΡ‚ΡŒ администраторов, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ€ΡƒΠΊΠ°ΠΌΠΈ настраиваСт, Ρ‚ΠΎ Π½Π΅ особо понятно ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ½ΠΈ это настроили ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, ΠΈ ΠΊΠ°ΠΊ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ настройки, ΠΌΠΎΠ³Π»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ лишнСС ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π•ΡΡ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” это ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΠΎ, ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ сСгодня Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ β€” это ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΠ΄Π°. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ вся инфраструктура хранится. Π’Π°ΠΌ хранятся всС скрипты, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ это Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это всС Π² git, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ всС прСимущСства ΠΎΡ‚ управлСния ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠ°ΠΊ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π΅Π²ΡŒΡŽ, Π°ΡƒΠ΄ΠΈΡ‚, ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΡ‚ΠΎ сдСлал, ΠΏΠΎΡ‡Π΅ΠΌΡƒ сдСлал, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠΎΠ΄ΠΎΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ сборки β€” ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ развСртывания. Π§Ρ‚ΠΎΠ±Ρ‹ какая-Ρ‚ΠΎ систСма ΠΈΠΌΠ΅Π½Π½ΠΎ вносила измСнСния Π² сСрвСра, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ€ΡƒΠΊΠ°ΠΌΠΈ Π΄Π΅Π»Π°Π», Π° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π΅Π»Π°Π»Π° это систСма.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π’ качСствС систСмы, которая вносит измСнСния, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ansible. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρƒ нас Π½Π΅Ρ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ³ΠΎ количСства сСрвСров, ΠΎΠ½ Π½Π°ΠΌ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. Если Ρƒ вас Ρ‚Π°ΠΌ 100-200 сСрвСров, Ρ‚ΠΎ Ρƒ вас Π±ΡƒΠ΄ΡƒΡ‚ нСбольшиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ (Ρ‚.Π΅. Ansible) всС-Ρ‚Π°ΠΊΠΈ соСдиняСтся с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈ ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ ΠΈΡ… настраиваСт β€” это ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°. Π›ΡƒΡ‡ΡˆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ срСдства ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΡƒΡˆΠ°Ρ‚ (push), Π° пулят (pull). Но для нашСй истории, ΠΊΠΎΠ³Π΄Π° Ρƒ нас ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π½ΠΎ сСрвСров Π½Π΅ большС 20 β€” Π½Π°ΠΌ это Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. Π£ Ansible большой плюс β€” это Π½ΠΈΠ·ΠΊΠΈΠΉ ΠΏΠΎΡ€ΠΎΠ³ вхоТдСния. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ любой ИВ-спСциалист Π·Π° Ρ‚Ρ€ΠΈ Π½Π΅Π΄Π΅Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ. Π£ Π½Π΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ±Π»Π°ΠΊΠ°ΠΌΠΈ, сСтями, Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, установкой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π΄Π΅ΠΏΠ»ΠΎΠ΅ΠΌ β€” Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всСм. Если Π½Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ свой собствСнный, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ² Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ansible shell ΠΈΠ»ΠΈ command.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅ рассмотрим ΠΊΠ°ΠΊ ΠΎΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ выглядит, этот инструмСнт. Π£ Ansible Π΅ΡΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ». Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ, самим ΠΏΠΈΡΠ°Ρ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚. Π•ΡΡ‚ΡŒ inventories β€” это ΠΊΡƒΠ΄Π° ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ наши измСнСния, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ это хосты, ΠΈΡ… IP адрСса, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, спСцифичныС для этих хостов. И, соотвСтствСнно, Ρ€ΠΎΠ»ΠΈ. Π ΠΎΠ»ΠΈ β€” это Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° эти сСрвСра. И Ρ‚Π°ΠΊΠΆΠ΅ Ρƒ нас хосты Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹: сСрвСра Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ сСрвСра ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ Ρƒ нас ΠΏΠΎ Ρ‚Ρ€ΠΈ ΠΌΠ°ΡˆΠΈΠ½Ρ‹. Они ΠΏΠΎ ssh ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ Ρ€Π΅ΡˆΠ°Π΅ΠΌ Ρ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Ρ‚ΠΎ Ρƒ нас Π²ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… сСрвСра настроСны ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ Ρ€ΠΎΠ»ΡŒ накатываСтся Π½Π° сСрвСра. И Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, Ссли эту Ρ€ΠΎΠ»ΡŒ запустим Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…, Ρ‚ΠΎ Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΎΠΆΠ΅ ΠΎΠ½Π° ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Если ΠΌΡ‹ Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ посмотрим Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ устроСн ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ansible, Ρ‚ΠΎ здСсь ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²ΠΎΡ‚ inventories хосты допустим для production. Π’ΠΎΡ‚ эта Π³Ρ€ΡƒΠΏΠΏΠ° ΡƒΠΊΠ°Π·Π°Π½Π° ΠΈ Π² Π½Π΅ΠΉ Π΄Π²Π° сСрвСра. Если ΠΌΡ‹ Π·Π°ΠΉΠ΄Π΅ΠΌ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ сСрвСр, Ρ‚ΠΎ Π²ΠΈΠ΄ΠΈΠΌ Ρ‡Ρ‚ΠΎ здСсь ΡƒΠΊΠ°Π·Π°Π½ IP адрСс этой ΠΌΠ°ΡˆΠΈΠ½Ρ‹. Π’Π°ΠΊΠΆΠ΅ Ρ‚Π°ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ β€” ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, спСцифичныС для этой срСды. Если ΠΌΡ‹ посмотрим Π½Π° Ρ€ΠΎΠ»ΠΈ. Π’ΠΎ Ρ€ΠΎΠ»ΡŒ содСрТит нСсколько Π·Π°Π΄Π°Ρ‡ (task), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС это Ρ€ΠΎΠ»ΡŒ для установки PostgreSQL. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΡ‹ устанавливаСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, создаСм Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ†ΠΈΠΊΠ». Π˜Ρ… (Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…) нСсколько создастся. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ устанавливаСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ соСдинСниС β€” IP адрСса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π² этой Π±Π°Π·Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. И, соотвСтствСнно, настраиваСм Π² самом ΠΊΠΎΠ½Ρ†Π΅ firewall. Настройки Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΊΠΎ всСм сСрвСрам Π² Π³Ρ€ΡƒΠΏΠΏΠ΅.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Как Ρ€Π°Π· ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ самой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅: ΠΌΡ‹ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСрвСра с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ansible ΠΈ Π±Ρ‹Π»ΠΎ всС прСкрасно. Но, ΠΊΠ°ΠΊ я ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ», Ρƒ нас мноТСство ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². Они ΠΏΠΎΡ‡Ρ‚ΠΈ всС ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ систСмы (k8s, RabbitMQ, Vault, ELK, PostgreSQL, HAProxy). Для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΡ‹ написали свою Ρ€ΠΎΠ»ΡŒ. ΠœΡ‹ Π΅Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ с ΠΊΠ½ΠΎΠΏΠΊΠΈ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Но ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΎ Ρƒ нас ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ½ΠΈ ΠΏΠΎ сути ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°ΡŽΡ‚ΡΡ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠΉ Π½Π°Π±ΠΎΡ€, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠΉ, Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ Ρ‚Π°ΠΊΠΎΠΉ. Π£ нас ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΡ‡ΠΊΠΈ пСрСсСчСния, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Ρ€ΠΎΠ»ΠΈ Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π£ нас Π΅ΡΡ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π΅ΡΡ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с инфраструктурой для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π£ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅. ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ инфраструктуры. И Ρƒ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ. Если ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‚ΠΎ ΠΏΠΎ сути получится copy-paste. На ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ Ρ€ΠΎΠ»ΡŒ Π² 10 мСстах сдСлаСм. ΠŸΠΎΡ‚ΠΎΠΌ, Ссли Π±ΡƒΠ΄Π΅Ρ‚ какая-Ρ‚ΠΎ ошибка, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π² 10 мСстах ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π§Ρ‚ΠΎ ΠΌΡ‹ сдСлали: ΠΌΡ‹ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ, которая общая для всСх ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ всС Π΅Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ приходят ΠΈΠ·Π²Π½Π΅, вынСсли Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»ΠΈ ΠΈΡ… Π² Π³ΠΈΡ‚ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ°ΠΏΠΎΡ‡ΠΊΡƒ β€” Π½Π°Π·Π²Π°Π»ΠΈ TYME Infrastructure. Π’Π°ΠΌ Ρƒ нас Π»Π΅ΠΆΠΈΡ‚ Ρ€ΠΎΠ»ΡŒ для PostgreSQL, для ELK, для развСртывания кластСров Kubernetes. Если Π½Π°ΠΌ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ понадобится ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ допустим Ρ‚ΠΎΡ‚ ΠΆΠ΅ PostgreSQL, Ρ‚ΠΎ просто Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΊΠ°ΠΊ submodule, пСрСписываСм inventories, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Π³Ρ€ΡƒΠ±ΠΎ говоря, ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΊΡƒΠ΄Π° эту Ρ€ΠΎΠ»ΡŒ Π½Π°ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ. Π‘Π°ΠΌΡƒ Ρ€ΠΎΠ»ΡŒ ΠΌΡ‹ Π½Π΅ пСрСписываСм: ΠΎΠ½Π° ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ. И Ρƒ нас ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²ΠΎ всСх Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… появляСтся PostgreSQL. Если Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ кластСр Kubernetes β€” Ρ‚ΠΎ ΠΆΠ΅ самоС.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΠΈΠ·Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π° написаниС Ρ€ΠΎΠ»Π΅ΠΉ. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· написали β€” 10 Ρ€Π°Π· использовали. Когда ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠ΄Π΅Ρ‚ Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ β€” это ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Но ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с инфраструктурой ΠΊΠ°ΠΊ с ΠΊΠΎΠ΄ΠΎΠΌ, Π½Π°ΠΌ, СстСствСнно, Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρ‹, ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ. Π›ΡŽΠ΄ΠΈ коммитят Π² git, ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ β€” Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ это всС ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ρƒ нас построСн Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ pipeline. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ Π² git скрипты Ansible. TeamΠ‘ity ΠΈΡ… Ρ‚Ρ€Π΅ΠΊΠ°Π΅Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π² Ansible. Teamcity здСсь Π½ΡƒΠΆΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅: Π²ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Ρƒ Π½Π΅Π³ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс (Π΅ΡΡ‚ΡŒ бСсплатная вСрсия Ansible Tower β€” AWX, которая Ρ€Π΅ΡˆΠ°Π΅Ρ‚ эту ΠΆΠ΅ Π·Π°Π΄Π°Ρ‡Ρƒ β€” ΠΏΡ€ΠΈΠΌ. Ρ€Π΅Π΄.) Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ansible бСсплатного ΠΈ, Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, Ρƒ нас Teamcity ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ CI. Π’Π°ΠΊ-Ρ‚ΠΎ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ Ansible ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сам ΠΌΠΎΠΆΠ΅Ρ‚ git Ρ‚Ρ€Π΅ΠΊΠ°Ρ‚ΡŒ. Но Π² Π΄Π°Π½Π½ΠΎΠΌ случаС сдСлали просто ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρƒ ΠΈ подобию. И ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½ Π΅Π³ΠΎ трэкнул, ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ вСсь ΠΊΠΎΠ΄ Π² Ansible ΠΈ Ansible соотвСтствСнно запускаСт ΠΈΡ… Π½Π° integration сСрвСрС ΠΈ мСняСт ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ. Если этот процСсс Π½Π°Ρ€ΡƒΡˆΠΈΠ»ΡΡ, Π·Π½Π°Ρ‡ΠΈΡ‚ ΠΌΡ‹ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΏΠ»ΠΎΡ…ΠΎ написали скрипты.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ спСцифичная инфраструктура, Ρ‚ΠΎ здСсь Ρƒ нас инфраструктура дСплоится ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ дСплоится ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ. Но Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ‡Π½ΡƒΡŽ инфраструктура для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ прилоТСния, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π΅Π³ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ. Π—Π΄Π΅ΡΡŒ, соотвСтствСнно, нСльзя Π²Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ это Π² Ρ€Π°Π·Π½Ρ‹ΠΉ pipeline. Π£ вас Π΄ΠΎΠ»ΠΆΠ½ΠΎ это Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅, Ρ‡Ρ‚ΠΎ ΠΈ само ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ΠΎ Π΅ΡΡ‚ΡŒ, допустим, Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ β€” популярная Π²Π΅Ρ‰ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ для Π½ΠΎΠ²ΠΎΠ³ΠΎ прилоТСния ΠΎΠ΄ΠΈΠ½ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, для Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ с Π΄Π°Π½Π½ΠΎΠΉ ситуациСй. Π›ΠΈΠ±ΠΎ кэши Π½Π°Π΄ΠΎ ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ansible ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π»Π΅Π·Ρ‚ΡŒ, кэш ΠΏΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Но здСсь ΠΌΡ‹ примСняСм Π΄ΠΎΠΊΠ΅Ρ€ Π² сочСтании с Ansible. Π’ΠΎ Π΅ΡΡ‚ΡŒ спСцифичная инфраструктура нас находится Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅, нСспСцифичная Π² Ansible. И Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΠΊΠ°ΠΊ Π±Ρ‹ раздСляСм Π²ΠΎΡ‚ эту ΠΌΠ°Π»Π΅Π½ΡŒΠΊΡƒΡŽ Π΄Π΅Π»ΡŒΡ‚Ρƒ Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅, всС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅, Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ β€” Π² Ansible.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠžΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ β€” Ссли Π²Ρ‹ ΠΊΠ°Ρ‚ΠΈΡ‚Π΅ инфраструктуру Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ скрипты, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ΄, Ρ‚ΠΎ Ссли Ρƒ вас всС ΠΆΠ΅ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Ρ€ΡƒΡ‡Π½Ρ‹Π΅ манипуляции сСрвСрами, Ρ‚ΠΎ это ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ допустим, Π²Ρ‹ Π½Π° тСстовый сСрвСр поставили java, написали Ρ€ΠΎΠ»ΡŒ ELK, Π½Π°ΠΊΠ°Ρ‚ΠΈΠ»ΠΈ Π΅Π΅. Π”Π΅ΠΏΠ»ΠΎΠΉ Π² тСст ΠΏΡ€ΠΎΡˆΠ΅Π» ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ. Π”Π΅ΠΏΠ»ΠΎΠΈΡ‚Π΅ Π² production, Π° Ρ‚Π°ΠΌ java Π½Π΅Ρ‚. А java Π² скриптС Π²Ρ‹ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π»ΠΈ β€” Π΄Π΅ΠΏΠ»ΠΎΠΉ Π² production ΡƒΠΏΠ°Π». ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²Π° со всСх сСрвСров Ρƒ администраторов, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Ρ€ΡƒΠΊΠ°ΠΌΠΈ Ρ‚ΡƒΠ΄Π° Π½Π΅ Π·Π°Π»Π΅Π·Π°Π»ΠΈ ΠΈ всС измСнСния вносили Ρ‡Π΅Ρ€Π΅Π· git. Π’Π΅ΡΡŒ этот ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ ΠΌΡ‹ сами ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΈ. Π—Π΄Π΅ΡΡŒ Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ Π½ΠΎ β€” Π½Π΅ Π½Π°Π΄ΠΎ сильно Π·Π°ΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π³Π°ΠΉΠΊΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π²Π½Π΅Π΄Ρ€ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ процСсс постСпСнно. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ всС Π΅Ρ‰Π΅ Π½Π΅ΠΎΠ±ΠΊΠ°Ρ‚Π°Π½Π½Ρ‹ΠΉ. Π’ нашСм случаС ΠΌΡ‹ оставили доступ Π΄ΠΎ всСх систСм Ρƒ самого Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ руководитСля администраторов Π½Π° случай Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹Ρ… ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ΠΎΠ². Доступ Π²Ρ‹Π΄Π°Π½ с условиСм, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ Ρ€ΡƒΠΊΠ°ΠΌΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Как происходит Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°? Π’Ρ‹ΠΊΠ°Ρ‚ΠΊΠ° Π² staging, production Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π±Π΅Π· ошибок. Π£ нас Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒΡΡ. Если Π²Ρ‹ΠΊΠ°Ρ‚ΠΊΠ° Π² integration ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ постоянно ΠΏΠ°Π΄Π°Ρ‚ΡŒ Π½Π° ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… β€” это Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ»ΠΎΡ…ΠΎ. Π­Ρ‚ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ прилоТСния Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ машинС. Когда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ сначала всС Π½Π° машинС, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚. Если всС компилируСтся, ΠΏΠΎΡ‚ΠΎΠΌ отправляСт Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π—Π΄Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Visual Studio Code с ΠΏΠ»Π°Π³ΠΈΠ½Π°ΠΌΠΈ Ansible, Vagrant, Docker ΠΈ Ρ‚.Π΄. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚ свой инфраструктурный ΠΊΠΎΠ΄ Π½Π° локальном vagrant. Π’Π°ΠΌ поднимаСтся чистая опСрационная систСма. Π‘Π°ΠΌΠΈ скрипты для поднятия этой ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ‚ΠΎΠΆΠ΅ находятся Π² этом Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ с инфраструктурой, ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π½Π° Π½Π΅ΠΉ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ FTP-сСрвСр. Если Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ пошло Π½Π΅ Ρ‚Π°ΠΊ, ΠΎΠ½ Π΅Π΅ просто удаляСт, Π·Π°Π½ΠΎΠ²ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚, ΠΈ Π·Π°Π½ΠΎΠ²ΠΎ пытаСтся Π½Π° Π½Π΅Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎΠ΅ ПО, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ скрипты развСртывания. ПослС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ скриптов развСртывания ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ Merge Request Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. ПослС слияния Merge Request CI раскатываСт эти измСнСния integration сСрвСр.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС скрипты это ΠΊΠΎΠ΄, Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ тСсты. Допустим, ΠΌΡ‹ установили PostgreSQL. Π₯ΠΎΡ‚ΠΈΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠ½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ansible assert. Π‘Ρ€Π°Π²Π½ΠΈΠ²Π°Π΅ΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ PostgreSQL с вСрсиСй Π² скриптах. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ установлСн, ΠΎΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½, ΠΎΠ½ Ρ‚ΠΎΠΉ самой вСрсии, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΡ‹ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ тСст ΠΏΡ€ΠΎΡˆΠ΅Π». Π—Π½Π°Ρ‡ΠΈΡ‚ наш playbook ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ. Π’Π°ΠΊΠΈΡ… тСстов ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Они ΠΈΠ΄Π΅ΠΌΠΏΠΎΡ‚Π΅Π½Ρ‚Π½Ρ‹Π΅. Π˜Π΄Π΅ΠΌΠΏΠΎΡ‚Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ (опСрация, которая Ссли примСняСтся ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ нСсколько Ρ€Π°Π· β€” всСгда получаСтся Ρ‚ΠΎ ΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ). Если Π²Ρ‹ ΠΏΠΈΡˆΠΈΡ‚Π΅ свобствСнныС скрипт ΠΏΠΎ установкС, настройкС, Ρ‚ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ Ρ‡Ρ‚ΠΎ ваши скрипты всСгда ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‚ΠΎ ΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ссли Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΈΡ… нСсколько Ρ€Π°Π·.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π•ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ тСстов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ инфраструктуры Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π½Π΅ относятся. Но ΠΎΠ½ΠΈ ΠΊΠ°ΠΊ Π±Ρ‹ косвСнно Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°ΡŽΡ‚ Π΅Π³ΠΎ. Π­Ρ‚ΠΎ end-to-end тСсты. Π£ нас инфраструктура ΠΈ сами прилоТСния ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ тСстировщики Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚. Если ΠΌΡ‹ Π½Π°ΠΊΠ°Ρ‚ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΡƒΡŽ инфраструктуру, Ρ‚ΠΎ Ρƒ нас просто комплСксныС тСсты Π½Π΅ ΠΏΡ€ΠΎΠΉΠ΄ΡƒΡ‚. Π’ΠΎ Π΅ΡΡ‚ΡŒ нашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ-Ρ‚ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π½Π° production установили Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ β€” ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π—Π°Ρ‚Π΅ΠΌ Π±Ρ‹Π» сдСлан commit Π² git ΠΈ end-to-end тСсты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎ Π½ΠΎΡ‡Π°ΠΌ, отслСдили, Ρ‡Ρ‚ΠΎ Π²ΠΎΡ‚ здСсь Ρƒ нас отсутствуСт Ρ„Π°ΠΉΠ» Π½Π° ftp. Π Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌ этот кСйс ΠΈ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΈΠΌΠ΅Π½Π½ΠΎ Π² настройках ftp. ΠœΡ‹ исправляСм скрипты Π² ΠΊΠΎΠ΄Π΅, снова Π΄Π΅ΠΏΠ»ΠΎΠΈΠΌ ΠΈ всС становится Π·Π΅Π»Π΅Π½Ρ‹ΠΌ. Вакая ΠΆΠ΅ история с ΠΊΠΎΠ΄ΠΎΠΌ. Код инфраструктуры ΠΈ инфраструктура Ρ‚Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ косвСнно тСстируСтся. ΠœΡ‹ Π΅Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡ‚ΠΎΠΌ Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ Π½Π° production.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Когда ΠΌΡ‹ этот ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ, CI (Teamcity), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Π» измСнСния Π½Π° integration сСрвСр ΠΏΠ°Π΄Π°Π» 8 Ρ€Π°Π· ΠΈΠ· 10. Никто Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π» Π½Π° это внимания, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи. Π£ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² эти процСссы достаточно Π΄Π°Π²Π½ΠΎ Π±Ρ‹Π»ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½Ρ‹, Π° Π΄ΠΎ OPS (систСмных администраторов) сообщСния Π½Π΅ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Dashboard со сборками Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° большой ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ Π² самом Π²ΠΈΠ΄Π½ΠΎΠΌ мСстС Π² офисС. На Π½Π΅ΠΌ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ Π·Π΅Π»Π΅Π½Ρ‹ΠΌ β€” это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ с Π½ΠΈΠΌ всС Π² порядкС. Если Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ красным Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ с Π½ΠΈΠΌ всС ΠΏΠ»ΠΎΡ…ΠΎ. ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ тСсты Π½Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΈ. На ΠΏΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π² Π»Π΅Π²ΠΎΠΉ сторонС Π²Ρ‚ΠΎΡ€ΠΎΠΉ свСрху Π²ΠΈΠ΄ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ инфраструктурых Π΄Π΅ΠΏΠ»ΠΎΠΉΠ½Ρ‹Ρ… тасок. Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ Π΄Π΅ΠΏΠ»ΠΎΠΉΠ½Ρ‹Π΅ таски Π·Π΅Π»Π΅Π½Ρ‹Π΅. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ всС тСсты ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Ρ‹, Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π΄Π΅Ρ„Π΅ΠΊΡ‚ΠΎΠ² Π½Π΅ Π±Ρ‹Π»ΠΎ, ΠΎΠ½ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ. ΠžΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅: Допустим ИВ-спСциалист запустил скрипт ΠΈ ΠΎΡ‚ΠΎΡˆΠ΅Π». Если ΠΊΠΎΠΌΠΌΠΈΡ‚ всС сломал. Π•ΠΌΡƒ Π² ΠΊΠ°Π½Π°Π» Slack ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ-Ρ‚ΠΎ ИВ-спСциалист Ρ‚Π°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠΌ сломал наш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Ok, ΠΌΡ‹ сСйчас Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ ΠΏΡ€ΠΎ Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠΌ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ тСстовыС срСды, ΠΊΠ°ΠΊ ΠΌΡ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ это дальшС Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ срСды. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ trunk based ΠΏΠΎΠ΄Ρ…ΠΎΠ΄. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ здСсь Master Π²Π΅Ρ‚ΠΊΠ° β€” это основная Π²Π΅Ρ‚ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ Π² Master Π²Π΅Ρ‚ΠΊΡƒ CI сСрвСр (Teamcity) Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ измСнСния Π½Π° integration сСрвСр. Если таска Π² CI сСрвСрС зСлСная, Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ пишСм тСстировщикам Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π½Π° integration сСрвСрС. Π€ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ release candidate. На тСстовом сСрвСрС эта конфигурация появляСтся. Π•Π΅ тСстировщики ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вмСстС с самими прилоТСниями. Если всС ΠΎΠΊ, Ссли end-to-end тСсты ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Ρ‹, ΠΌΡ‹ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ саму ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° staging ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅. Π—Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° production. Π—Π° счСт Ρ‚Π°ΠΊΠΈΡ… Π²ΠΎΡ‚ Ρ€Π°Π·Π½ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… Π±Π°Ρ€ΡŒΠ΅Ρ€ΠΎΠ² ΠΌΡ‹ достигаСм Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ staging ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Ρƒ нас всСгда Π·Π΅Π»Π΅Π½ΠΎΠ΅.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

Π‘Ρ€Π°Π²Π½ΠΈΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ инфраструктурой ΠΈΠ· ΠΊΠΎΠ΄Π° ΠΈ настройка инфраструктуры Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Какая экономика? Π”Π°Π½Π½Ρ‹ΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ ΠΌΡ‹ устанавливали PostgreSQL. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ инфраструктурой ΠΈΠ· ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ 5 Ρ€Π°Π· Π΄ΠΎΡ€ΠΎΠΆΠ΅ Π½Π° Ρ€Π°Π½Π½Π΅ΠΌ этапС. ВсС скрипты Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ, ΠΎΡ‚Π°Π»Π°Π΄ΠΈΡ‚ΡŒ Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π­Ρ‚ΠΎΠΉ Π·Π°ΠΉΠΌΠ΅Ρ‚ 1-2 часа. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ появляСтся ΠΎΠΏΡ‹Ρ‚ написания этих скриптов. Π‘Ρ€Π°Π²Π½ΠΈΠΌ установку, настройку PostgreSQL час Ρ€ΡƒΠΊΠ°ΠΌΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ скрипт развСртывания. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ скрипты развСрывания ΠΈ настройки PostgreSQL ΡƒΠΆΠ΅ написаны, Ρ‚ΠΎ дСплоится Π½Π° staging, production 4 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹. Π§Π΅ΠΌ большС срСд, Ρ‡Π΅ΠΌ большС машин, Ρ‚ΠΎ Π²Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌ Π² настройкС инфраструктурС. И Ссли Ρƒ вас ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΎΠ΄Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ Π²Π°ΠΌ дСшСвлС это Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ это интСрСсно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Ρƒ вас ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹Π΅ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠœΡ‹ Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ git submodule позволяСм нСсколько Ρ€Π°Π· ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ansible Ρ€ΠΎΠ»ΡŒ. Нам Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π· Π½Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, ΠΎΠ½Π° ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ. ДобавляСм git submodule с Ansible Ρ€ΠΎΠ»ΡŒΡŽ добавляСм Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ПишСм Π² inventories сСрвСра, ΠΊΡƒΠ΄Π° эту Ρ€ΠΎΠ»ΡŒ Π΄Π΅ΠΏΠ»ΠΎΠΈΡ‚ΡŒ. Π­Ρ‚ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 30 ΠΌΠΈΠ½ΡƒΡ‚. Π’ случаС использования git submodule Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° написаниС скриптов развСртывания сильно ΠΎΠ±ΠΎΠ³Π½Π°Π» Ρ€ΡƒΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

ΠŸΡ€ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ срСд: здСсь я Π½Π΅ Π³ΠΎΡ‚ΠΎΠ² ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, сколько Ρƒ нас Π±Ρ‹Π»ΠΎ ошибок Π΄ΠΎ этого ΠΈ сколько стало ΠΏΠΎΡ‚ΠΎΠΌ. Но Ρ…ΠΎΡ‡Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ соблюдСнии всСх ΠΏΡ€Π°Π²ΠΈΠ», ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ сСгодня Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ, Ρƒ нас staging настроСн Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ тСст. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ, Ссли тСст разваливаСтся, ΠΌΡ‹ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°Π΅ΠΌ ΠΌΠ°ΡˆΠΈΠ½Ρƒ, Π·Π°Π½ΠΎΠ²ΠΎ пытаСмся Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° становится зСлСная, накатываСтся всС Π΄Π΅Π»ΠΎ Π½Π° staging. Бколько Ρ€ΡƒΠΊΠ°ΠΌΠΈ ошибок Π΄Π΅Π»Π°Π΅Ρ‚ ваша ΠΊΠΎΠΌΠ°Π½Π΄Π° β€” Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ сами ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, ΠΏΠΎΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ навСрняка ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ свой ΠΏΠΎΡ€ΠΎΠ³.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄

На Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ Π²ΠΈΠ΄Π½Ρ‹ ΠΈΡ‚ΠΎΠ³ΠΈ Π·Π° 6 мСсяцСв. Π’Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ β€” ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎ 10 бальной шкалС. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° мСсяца ΠΌΡ‹ просто писали эти Ρ€ΠΎΠ»ΠΈ ΠΎΡ‡Π΅Π½ΡŒ больно ΠΈ Π΄ΠΎΠ»Π³ΠΎ. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Π±Ρ‹Π»Π° новая систСма. Когда ΠΌΡ‹ ΠΈΡ… написали, Π³Ρ€Π°Ρ„ΠΈΠΊ пошСл Π²Π½ΠΈΠ·. Π“Π΄Π΅-Ρ‚ΠΎ Π² сСрСдинС Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ git submodule, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΡƒΠΆΠ΅ написанныС Ρ€ΠΎΠ»ΠΈ стали ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Ρ€Π΅Π·ΠΊΠΎΠΌΡƒ спаду Ρ‚Ρ€ΡƒΠ΄ΠΎΠ·Π°Ρ‚Ρ€Π°Ρ‚. Если ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ с Ρ€ΡƒΡ‡Π½ΠΎΠΉ настройкой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ данная ΠΎΡ†Π΅Π½ΠΊΠ° дСлалась, Ρ‚ΠΎ Ρ€ΡƒΠΊΠ°ΠΌΠΈ ΠΌΡ‹ настраивали Ρ‚Ρ€ΠΈ дня, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° инфраструктуры ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ настраивал ΠΎΠΊΠΎΠ»ΠΎ мСсяца. Π’ пСрспСктивС, использованиС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ эффСктивСн, Ρ‡Π΅ΠΌ настройка сСрвСров Ρ€ΡƒΠΊΠ°ΠΌΠΈ.

ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄. Π€ΠΎΡ‚ΠΎ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄
Π’Ρ‹Π²ΠΎΠ΄Ρ‹.

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΈ мСня ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚: Π½Π° ΠΊΠ°ΠΊΠΎΠΌ ΠΏΠΎΡ€Ρ‚Ρƒ Ρƒ нас ΡΠ»ΡƒΡˆΠ°Π΅Ρ‚ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, я ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽ Ansible скрипт Π² git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π³ΠΎΠ²ΠΎΡ€ΡŽ: β€œΠ’ΠΎΡ‚ смотри, Π²ΠΎΡ‚ Π½Π° Ρ‚Π°ΠΊΠΎΠΌ-Ρ‚ΠΎ порту”. КакиС Ρƒ нас здСсь настройки? ВсС это Π²ΠΈΠ΄Π½ΠΎ Π² git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π°ΡƒΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°ΠΌ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π­Ρ‚ΠΎ 100% достовСрная информация. ДокумСнтация устарСваСт. А Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ устарСваСт.

Π’Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΏΡ€ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ. ΠŸΡ€ΠΎ Π½Π΅Π³ΠΎ косвСнно скаТу. Π•ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ локально Ρ‚ΠΎΠΆΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Ρ‚ΡŒ RabbitMQ, ELK, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ€ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ. Если ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ€ΡƒΠΊΠ°ΠΌΠΈ, Ρ‚ΠΎ поднятиС ELK ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ большС часа. ΠŸΡ€ΠΈ использовании ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° инфраструктура ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅Ρ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΊΡƒ, Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΡƒ, ΠΈ Ρƒ Π½Π΅Π³ΠΎ устанавливаСтся ELK. Если Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ сломал ELK, Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ΄Π°Π»ΠΈΠ»ΡŒ, Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ снова установку ELK Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΊΡƒ.

Как ΠΌΡ‹ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ, это всС дСшСвлС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ, ΠΊΠΎΠ³Π΄Π° Ρƒ вас Π»ΠΈΠ±ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π»ΠΈΠ±ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ срСд, Π»ΠΈΠ±ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ машин. Если Ρƒ вас Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅Ρ‚, Ρ‚ΠΎ, соотвСтствСнно, это Π½Π΅ дСшСвлС, это Π΄ΠΎΡ€ΠΎΠΆΠ΅. Π’ нашСй пСрспСктивС Π² Π½Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… это ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ становится дСшСвлС со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ здСсь ΠΊΠ°ΠΊ ΠΏΠ»ΡŽΡΡ‹ Ρ‚Π°ΠΊ ΠΈ минусы.

БыстроС восстановлСниС послС Π°Π²Π°Ρ€ΠΈΠΈ. Если Π²Ρ‹ ΡƒΠΏΠ°Π»ΠΈ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ эту ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π΅Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠ½ΠΈΡ‚, ΠΊΠ°ΠΊ Π΅Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС всС настройки ΠΈ скрипты развСртывания находятся Π² git. Π”Π°ΠΆΠ΅ Ссли Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ уволился, ΠΏΠ΅Ρ€Π΅ΡˆΠ΅Π» Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ β€” всС находится Π² git, всС Π² коммСнтариях, всС Π²ΠΈΠ΄Π½ΠΎ: ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π» Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΡ€Ρ‚, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ставил Ρ‚Π°ΠΊΠΈΠ΅-Ρ‚ΠΎ настройки ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π’Ρ‹ всС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ.

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ошибок снизилось, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρƒ нас появились Ρ€Π°Π·Π½Ρ‹Π΅ Π±Π°Ρ€ΡŒΠ΅Ρ€Ρ‹, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ срСды для отслСТивания, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ плюс code review. Π­Ρ‚ΠΎ Ρ‚ΠΎΠΆΠ΅ Π½Π΅ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π΄Π΅Π»Π°ΡŽΡ‚. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΠ½ΠΈ Π΅Ρ‰Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ. Возросла ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это, соотвСтствСнно, новая систСма, это ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρ‹, людям Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π°Ρ‚ΡŒΡΡ. Π­Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ: ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ ΡΡ‚Π°Ρ‚ΡŒΡŽ ΠΈ ΠΏΠΎ ΡΡ‚Π°Ρ‚ΡŒΠ΅ сдСлали. Π—Π΄Π΅ΡΡŒ Π½Π΅ΠΌΠ½ΠΎΠΆΠΊΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Но Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ это достаточно Π»Π΅Π³ΠΊΠΎ осваиваСтся. Если ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° освоСниС, Ρ‚ΠΎ это Π³Π΄Π΅-Ρ‚ΠΎ Ρ‚Ρ€ΠΈ-Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ мСсяца.

Вопрос задаСтся Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ вопрос Π½Π΅ ΡΠ»Ρ‹ΡˆΠ½ΠΎ.

ΠžΡ‚Π²Π΅Ρ‚: Π ΠΎΠ»ΠΈ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ послСднюю Π²Π΅Ρ€ΡΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€ΠΎΠ»ΡŒ выдСляСм Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ git submodule, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Π° для Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всСх систСм. Если ΠΏΠΎ Π½Π΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹, Ρ‚ΠΎ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° latest ΠΊΠΎΠΌΠΈΡ‚. А вся конфигурация ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ· inventories. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ€ΠΎΠ»ΡŒ β€” это просто Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ. НазваниС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π»ΠΎΠ³ΠΈΠ½, ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΈ Ρ‚.Π΄. ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ снаруТи. Роль β€” это просто исполняСмый Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ. Вся конфигурация ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ· самого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Вопрос: Если Ρƒ вас ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ролями Ansible Ρ‚Ρ€Π°Π½Π·ΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ зависимости ΠΈ ΠΊΠ°ΠΊ Π²Ρ‹ вытягиваСтС ΠΏΡ€ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠ΅ прилоТСния (Ρ€ΠΎΠ»ΡŒ A зависит ΠΎΡ‚ B, B ΠΎΡ‚ C ΠΈ Π²Ρ‹ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ Ρ€ΠΎΠ»ΡŒ A, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ всС сама тянула)? ΠŸΠΎΡΡ€Π΅Π΄ΡΡ‚Π²ΠΎΠΌ ΠΊΠ°ΠΊΠΈΡ… инструмСнтов, Ссли Ρƒ вас Ρ‚Π°ΠΊΠΎΠΉ Π΅ΡΡ‚ΡŒ?

ΠžΡ‚Π²Π΅Ρ‚: Π’ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ΅ зависимостСй Ρ‚Π°ΠΊΠΈΡ… Π½Π΅Ρ‚. Π£ нас Π±Ρ‹Π²Π°ΡŽΡ‚ зависимости ΠΎΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, ΠΌΡ‹ ставим ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ систСму ΠΈ Π·Π½Π°Π΅ΠΌ IP адрСса сСрвСров, ΠΈ Π² Ρ‚ΠΎ ΠΆΠ΅ самоС Π΅ΡΡ‚ΡŒ балансировщик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ стал, Π΄ΠΎΠ»ΠΆΠ΅Π½ сСбя ΠΊΠ°ΠΊ Π±Ρ‹ Π²ΠΎΠ³Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Π°Π»Π°Π½ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° эти Π½Π°ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ. Π­Ρ‚ΠΎ Π·Π° счСт ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΎΠ² ΠΊΠ°ΠΊ Π±Ρ‹ разруливаСтся. Но, Ссли Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Ρ‚ΠΎ здСсь Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅Ρ‚, Ρƒ нас ΠΎΠ΄ΠΈΠ½ свободный, Π½ΠΈ ΠΎΡ‚ Ρ‡Π΅Π³ΠΎ Π½Π΅ зависит, ΠΎΠ½ самодостаточный. И ΠΌΡ‹ Π½Π΅ выносим Π² ΠΎΠ±Ρ‰ΠΈΠ΅ Ρ€ΠΎΠ»ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ…ΠΎΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ Π½Π΅ ΠΎΠ±Ρ‰ΡƒΡŽ структуру, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, допустим, RabbitMQ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈ Π² Π°Ρ„Ρ€ΠΈΠΊΠ΅ RabbitMQ, ΠΎΠ½ Π½ΠΈ ΠΎΡ‚ Ρ‡Π΅Π³ΠΎ Π½Π΅ зависит. ΠšΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ спСцифику ΠΌΡ‹ Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅ ΠΊΠ°ΠΊ Ρ…Ρ€Π°Π½ΠΈΠΌ, Ρ‚Π΅ ΠΆΠ΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *