GitOps: порСдният ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±ΠΈΠ² Π² автоматизацията?

GitOps: порСдният ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±ΠΈΠ² Π² автоматизацията?

ΠŸΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΎΡ‚ нас, забСлязвайки порСдния Π½ΠΎΠ² Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Π² IT блогосфСра ΠΈΠ»ΠΈ конфСрСнция, Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ късно си Π·Π°Π΄Π°Π²Π°Ρ‚ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π²ΡŠΠΏΡ€ΠΎΡ: β€žΠšΠ°ΠΊΠ²ΠΎ Π΅ Ρ‚ΠΎΠ²Π°? ΠŸΠΎΡ€Π΅Π΄Π½ΠΎΡ‚ΠΎ ΠΌΠΎΠ΄Π½ΠΎ слово, β€žbuzzwordβ€œ ΠΈΠ»ΠΈ наистина Π½Π΅Ρ‰ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ заслуТава Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Ρ‚ΠΎ, ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅Ρ‚ΠΎ ΠΈ ΠΎΠ±Π΅Ρ‰Π°Π²Π° Π½ΠΎΠ²ΠΈ Ρ…ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚ΠΈ?β€œ По ΡΡŠΡ‰ΠΈΡ Π½Π°Ρ‡ΠΈΠ½ сС случи ΠΈ с ΠΌΠ΅Π½ със Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° GitOps ΠΏΡ€Π΅Π΄ΠΈ извСстно Π²Ρ€Π΅ΠΌΠ΅. Π—Π°ΠΏarmed with мноТСство Π²Π΅Ρ‡Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ статии, Π° ΡΡŠΡ‰ΠΎ ΠΈ знанията Π½Π° ΠΊΠΎΠ»Π΅Π³ΠΈΡ‚Π΅ ΠΎΡ‚ компанията GitLab, сС ΠΎΠΏΠΈΡ‚Π°Ρ… Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π° ΠΊΠ°ΠΊΠ²ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎ прСдставлява Ρ‚ΠΎΠ²Π° ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΌΡƒ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°.

ΠœΠ΅ΠΆΠ΄Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΡ‚ΠΎ, Π·Π° новостта Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° GitOps ΡΡŠΡ‰ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈ наскоро ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΎΡ‚ΠΎ ΠΎΡ‚ нас ΠΏΡ€ΠΎΡƒΡ‡Π²Π°Π½Π΅: ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°Ρ‚Π° ΠΎΡ‚ Π°Π½ΠΊΠ΅Ρ‚ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ всС ΠΎΡ‰Π΅ Π½Π΅ са Π·Π°ΠΏΠΎΡ‡Π½Π°Π»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ.

И Ρ‚Π°ΠΊΠ°, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ с ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° инфраструктурата Π½Π΅ Π΅ Π½ΠΎΠ². ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ доставчици са Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° ΡˆΠΈΡ€ΠΎΠΊΠ° ΠΏΡƒΠ±Π»ΠΈΠΊΠ° Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ дСсСт Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈ, ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, Π±ΠΈ трябвало Π΄Π° са улСснили Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Π΅ΠΊΠΈΠΏΠΈΡ‚Π΅, ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€Π½ΠΈ Π·Π° инфраструктурата. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π² сравнСниС с процСса Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° прилоТСния (ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π½ΠΈΠ²ΠΎΡ‚ΠΎ Π½Π° автоматизация достига Π½ΠΎΠ²ΠΈ Ρ…ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚ΠΈ), инфраструктурнитС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ всС ΠΎΡ‰Π΅ чСсто Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ мноТСство Ρ€ΡŠΡ‡Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ изискват спСциални знания ΠΈ спСциалисти, особСно с ΠΎΠ³Π»Π΅Π΄ Π½Π° ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ изисквания Π·Π° устойчивост, Π³ΡŠΠ²ΠΊΠ°Π²ΠΎΡΡ‚, мащабируСмост ΠΈ Сластичност.

ΠžΠ±Π»Π°Ρ‡Π½ΠΈΡ‚Π΅ услуги ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ…Π° Ρ‚Π΅Π·ΠΈ изисквания ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π΅ Π΄Π°Π΄ΠΎΡ…Π° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π΅Π½ Ρ‚Π»Π°ΡΡŠΠΊ Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° IaC. Π’ΠΎΠ²Π° Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΎ. ВсС ΠΏΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π΅ Π΄Π°Π΄ΠΎΡ…Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° сС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π° напълно Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π΅Π½ Ρ†Π΅Π½Ρ‚ΡŠΡ€ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ: няма физичСски ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, Ρ€Π°Ρ„Ρ‚ΠΎΠ²Π΅, ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, цялата инфраструктура ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС описана с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° скриптовС ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.

Π’Π°ΠΊΠ° Π² ΠΊΠ°ΠΊΠ²ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎ сС ΡΡŠΡΡ‚ΠΎΠΈ Ρ€Π°Π·Π»ΠΈΠΊΠ°Ρ‚Π° GitOps ΠΎΡ‚ IaC? ИмСнно с этого вопроса я ΠΈ Π½Π°Ρ‡Π°Π» своС расслСдованиС. ΠŸΠΎΠΎΠ±Ρ‰Π°Π²ΡˆΠΈΡΡŒ с ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ, Ρƒ мСня ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ сравнСниС:

GitOps

IaC

ЦСлият ΠΊΠΎΠ΄ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Π² git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

ВСрсионността Π½Π° ΠΊΠΎΠ΄Π° Π½Π΅ Π΅ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π°

Π”Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ описаниС Π½Π° ΠΊΠΎΠ΄Π° / Π˜Π΄Π΅ΠΌΠΏΠΎΡ‚Π΅Π½Ρ‚Π½ΠΎΡΡ‚

Допустимо Π΅ ΠΊΠ°ΠΊΡ‚ΠΎ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ, Ρ‚Π°ΠΊΠ° ΠΈ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ описаниС

ΠŸΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π²Π»ΠΈΠ·Π°Ρ‚ Π² сила с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° Merge Request / Pull Request

Π‘ΡŠΠ³Π»Π°ΡΡƒΠ²Π°Π½Π΅Ρ‚ΠΎ, ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΈ колаборацията Π½Π΅ са Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΈ

ΠŸΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° внСдряванС Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½

ΠŸΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° внСдряванС Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅ Π΅ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ (Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅Π½, Ρ€ΡŠΡ‡Π΅Π½, ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° командния Ρ€Π΅Π΄ ΠΈ Ρ‚.Π½.)

Π‘ Π΄Ρ€ΡƒΠ³ΠΈ Π΄ΡƒΠΌΠΈ GitOps сС появи Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΡ‚Π΅ IaC. ΠŸΡŠΡ€Π²ΠΎ, инфраструктурата ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈΡ‚Π΅ сСга ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠ°, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ прилоТСнията. ΠšΠΎΠ΄ΡŠΡ‚ Π΅ лСсСн Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, сподСлянС, сравняванС ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π·Π° вСрсия. ВСрсии, ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅, история. И всичко Ρ‚ΠΎΠ²Π° Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎ Π·Π° цСлия Π΅ΠΊΠΈΠΏ място. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ, съвсСм Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ бСшС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° систСми Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° вСрсиитС. Π’ частност, git, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΉ-популярната.

ΠžΡ‚ Π΄Ρ€ΡƒΠ³Π° страна, сС появи Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° процСситС Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° инфраструктурата. Π‘Π΅Π³Π° Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° станС ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ, ΠΏΠΎ-Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ ΠΏΠΎ-Π΅Π²Ρ‚ΠΈΠ½ΠΎ. Π’ допълнСниС, ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΡ‚Π΅ Π½Π° CI / CD Π²Π΅Ρ‡Π΅ бяха Π΄ΠΎΠ±Ρ€Π΅ извСстни ΠΈ популярни срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° софтуСр. Π‘Π΅ΡˆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ само Π΄Π° сС прСнСсат ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ°Ρ‚ Π²Π΅Ρ‡Π΅ познанията ΠΈ умСнията Π² Π½ΠΎΠ²Π° област. Π’Π΅Π·ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΎΠ±Π°Ρ‡Π΅ ΠΈΠ·Π»ΠΈΠ·Π°Ρ…Π° извън стандартното ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π° Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ΄, ΠΎΡ‚Ρ‚ΡƒΠΊ ΠΈ Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° понятиСто GitOps.

GitOps: порСдният ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±ΠΈΠ² Π² автоматизацията?

Π›ΡŽΠ±ΠΎΠΏΠΈΡ‚ΡΡ‚Π²ΠΎΡ‚ΠΎ GitOps, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, ΠΏΡ€ΠΎΠΈΠ·Ρ‚ΠΈΡ‡Π° ΠΈ ΠΎΡ‚ Ρ„Π°ΠΊΡ‚Π°, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, приставка ΠΈΠ»ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, ΡΠ²ΡŠΡ€Π·Π°Π½Π° с ΠΊΠ°ΠΊΡŠΠ²Ρ‚ΠΎ ΠΈ Π΄Π° Π΅ Π²Π΅Π½Π΄ΠΎΡ€. Π’ΠΎΠ²Π° ΠΏΠΎ-скоро Π΅ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° ΠΈ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ ΠΏΠΎΠ·Π½Π°Ρ‚ Π½ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½: DevOps.

Π’ компанията GitLab ΠΈΠ·Ρ€Π°Π±ΠΎΡ‚ΠΈΡ…ΠΌΠ΅ Π΄Π²Π΅ опрСдСлСния Π·Π° Ρ‚ΠΎΠ·ΠΈ Π½ΠΎΠ² Ρ‚Π΅Ρ€ΠΌΠΈΠ½: Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΡ‡Π½ΠΎ ΠΈ практичСски. НСка Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ с Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΡ‡Π½ΠΎΡ‚ΠΎ:

GitOps β€” Ρ‚ΠΎΠ²Π° Π΅ мСтодология, която ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π°ΠΏΡ€Π΅Π΄Π½ΠΈΡ‡Π°Π²ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ Π½Π° DevOps, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° прилоТСния, ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° вСрсиитС, взаимодСйствиС, ΡΡŠΠ³Π»Π°ΡΡƒΠ²Π°Π½Π΅, CI / CD, ΠΈ Π³ΠΈ ΠΏΡ€ΠΈΠ»Π°Π³Π° Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ автоматизация Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° инфраструктурата.

Всички процСси GitOps работят с Π²Π΅Ρ‡Π΅ Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ инструмСнти. ЦСлият инфраструктурСн ΠΊΠΎΠ΄ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Π² Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ·Π½Π°Ρ‚ git Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Ρ‚ ΠΏΡ€Π΅Π· ΡΡŠΡ‰ΠΈΡ процСс Π½Π° ΡΡŠΠ³Π»Π°ΡΡƒΠ²Π°Π½Π΅, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ всСки Π΄Ρ€ΡƒΠ³ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠ΄, Π° ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° внСдряванС Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π° Π³Ρ€Π΅ΡˆΠΊΠΈΡ‚Π΅ Π½Π° Ρ‡ΠΎΠ²Π΅ΡˆΠΊΠΈΡ Ρ„Π°ΠΊΡ‚ΠΎΡ€, ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π° надСТдността ΠΈ Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚Ρ‚Π°.

ΠžΡ‚ практичСска Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° описвамС GitOps ΠΏΠΎ слСдния Π½Π°Ρ‡ΠΈΠ½:

GitOps: порСдният ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±ΠΈΠ² Π² автоматизацията?

Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ΄ Π²Π΅Ρ‡Π΅ ΠΎΠ±ΡΡŠΠ΄ΠΈΡ…ΠΌΠ΅ ΠΊΠ°Ρ‚ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ Ρ‚Π°Π·ΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°. НСка Π΄Π° прСдставим ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ участници.

Merge Request (Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Pull Request). Π’ процСса Π½Π° MR Ρ‚ΠΎΠ²Π° Π΅ исканС Π·Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ΄Π° ΠΈ послСдващо сливанС Π½Π° ΠΊΠ»ΠΎΠ½ΠΎΠ²Π΅. Но Π² контСкста Π½Π° инструмСнтитС, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅, Ρ‚ΠΎΠ²Π° Π΅ ΠΏΠΎ-скоро Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ пълна прСдстава Π·Π° всички внСсСни ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ: Π½Π΅ само code diff, ΡΡŠΠ±Ρ€Π°Π½ ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π±Ρ€ΠΎΠΉ ΠΊΠΎΠΌΠΈΡ‚ΠΈ, Π½ΠΎ ΠΈ контСкст, Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ ΠΎΡ‚ тСстовС, ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ ΠΎΡ‡Π°ΠΊΠ²Π°Π½ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚. Ако Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° инфраструктурСн ΠΊΠΎΠ΄, Π½ΠΈ интСрСсува ΠΊΠ°ΠΊ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‰Π΅ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ инфраструктурата, ΠΊΠΎΠ»ΠΊΠΎ Π½ΠΎΠ²ΠΈ рСсурси Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΈ, ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½ΠΈ. Π–Π΅Π»Π°Ρ‚Π΅Π»Π½ΠΎ Π΅ Π² ΠΏΠΎ-ΡƒΠ΄ΠΎΠ±Π΅Π½ ΠΈ лСсно Ρ‡Π΅Ρ‚ΠΈΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. Π’ случай с ΠΎΠ±Π»Π°Ρ‡Π½ΠΈΡ‚Π΅ доставчици, Π±ΠΈ Π±ΠΈΠ»ΠΎ Π΄ΠΎΠ±Ρ€Π΅ Π΄Π° Π·Π½Π°Π΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΈ финансови послСдици Ρ‰Π΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Ρ‚Π°Π·ΠΈ промяна.

Но MR Π΅ ΠΈ срСдство Π·Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°, взаимодСйствиС, комуникация. Π’ΠΎΠ²Π° Π΅ мястото, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π²Π»ΠΈΠ·Π° Π² дСйствиС систСмата Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈ противовСси. ΠžΡ‚ простички ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈ Π΄ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Π»Π½ΠΈ одобрСния ΠΈ ΡƒΡ‚Π²ΡŠΡ€ΠΆΠ΄Π΅Π½ΠΈΡ.

И послСдният ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚: CI/CD, ΠΊΠ°ΠΊΡ‚ΠΎ Π²Π΅Ρ‡Π΅ Π·Π½Π°Π΅ΠΌ, Π΄Π°Π²Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° процСса Π½Π° въвСТданС Π½Π° инфраструктурни ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, тСстванС (ΠΎΡ‚ проста ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° синтаксиса Π΄ΠΎ ΠΏΠΎ-слоТСн статичСн Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΊΠΎΠ΄Π°). И ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΏΠΎ-късно Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Ρ€Π΅ΠΉΡ„: Ρ€Π°Π·Π»ΠΈΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ дСйствитСлното ΠΈ ΠΆΠ΅Π»Π°Π½ΠΎΡ‚ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° систСмата. НапримСр, Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Π½Π΅Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈ Ρ€ΡŠΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ°ΠΆΠΈ Π½Π° систСмитС.

Π”Π°, Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΡŠΡ‚ GitOps Π½Π΅ Π½ΠΈ Π·Π°ΠΏΠΎΠ·Π½Π°Π²Π° с Π½Π΅Ρ‰ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π½ΠΎΠ²ΠΎ, Π½Π΅ изобрСтява ΠΊΠΎΠ»Π΅Π»ΠΎΡ‚ΠΎ, Π° просто ΠΏΡ€ΠΈΠ»Π°Π³Π° Π²Π΅Ρ‡Π΅ натрупания ΠΎΠΏΠΈΡ‚ Π² Π½ΠΎΠ²Π° област. Но Π² Ρ‚ΠΎΠ²Π° ΠΈ Π΅ силата ΠΌΡƒ.

Ако Π²ΠΈ станС интСрСсно ΠΊΠ°ΠΊ всичко Ρ‚ΠΎΠ²Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°, Π²ΠΈ каня Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ нашия мастСрклас, Π² ΠΊΠΎΠΉΡ‚ΠΎ ΡΡ‚ΡŠΠΏΠΊΠ° ΠΏΠΎ ΡΡ‚ΡŠΠΏΠΊΠ° Ρ€Π°Π·ΠΊΠ°Π·Π²Π°ΠΌ ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° GitLab:

  • Π”Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ основнитС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ Π½Π° GitOps

  • Π”Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ ΠΈ внСдряватС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΠΎΠ±Π»Π°Ρ‡Π½Π°Ρ‚Π° инфраструктура (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π½Π° Yandex Cloud)

  • Π”Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ откритията Π½Π° Π΄Ρ€Π΅ΠΉΡ„Π° Π½Π° систСмата ΠΎΡ‚ ΠΆΠ΅Π»Π°Π½ΠΎΡ‚ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ наблюдСниС

GitOps: порСдният ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±ΠΈΠ² Π² автоматизацията?https://bit.ly/34tRpwZ

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster