Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π’Π°Π·ΠΈ история Π΅ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ Π² производствСна срСда, особСно ΠΏΠΎΠ΄ Kubernetes. Бтатията Π΅ посвСтСна Π½Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π½Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° изобраТСния.

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

НиС смС ΠΎΡ‚ Ρ„ΠΈΠ½Ρ‚Π΅Ρ… компанията Exness, която Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π° услуги Π·Π° ΠΎΠ½Π»Π°ΠΉΠ½ Ρ‚ΡŠΡ€Π³ΠΎΠ²ΠΈΡ ΠΈ Ρ„ΠΈΠ½Ρ‚Π΅Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ Π·Π° B2B ΠΈ B2C. Има ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΅ΠΊΠΈΠΏΠΈ Π² Π½Π°ΡˆΠ°Ρ‚Π° научноизслСдоватСлска ΠΈ Ρ€Π°Π·Π²ΠΎΠΉΠ½Π° дСйност, Π½Π°Π΄ 100 слуТитСли Π² ΠΎΡ‚Π΄Π΅Π»Π° Π·Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅.

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

ΠΠ°ΡˆΠ°Ρ‚Π° мотивация

Какво Π³ΠΎΡ€ΠΈ? Никой Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ. КъдС Π΅ ΠΎΠ³Π½ΠΈΡ‰Π΅Ρ‚ΠΎ? Π’Ρ€ΡƒΠ΄Π½ΠΎ Π΅ Π·Π° Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅. Кога Π·Π°ΠΏΠ°Π»ΠΈ? ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅, Π½ΠΎ Π½Π΅ Π²Π΅Π΄Π½Π°Π³Π°. 

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π—Π°Ρ‰ΠΎ някои ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ стоят, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠ°Π΄Π°Ρ‚? Кой ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ бСшС Π²ΠΈΠ½ΠΎΠ²Π½ΠΈΠΊΡŠΡ‚? Π’ края Π½Π° ΠΊΡ€Π°ΠΈΡ‰Π°Ρ‚Π°, ΠΎΡ‚Π²ΡŠΠ½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ са Π΅Π΄Π½Π°ΠΊΠ²ΠΈ, Π½ΠΎ Π²ΡŠΡ‚Ρ€Π΅ всСки ΠΈΠΌΠ° свой Neo.

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

ΠΠ°ΡˆΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ са ΡƒΠΌΠ½ΠΈ ΠΌΠΎΠΌΡ‡Π΅Ρ‚Π°. Π’Π΅ правят Π΄ΠΎΠ±Ρ€ΠΈ услуги, ΠΊΠΎΠΈΡ‚ΠΎ носят ΠΏΠ΅Ρ‡Π°Π»Π±Π° Π½Π° компанията. Но ΠΈΠΌΠ° Π³Ρ€Π΅ΡˆΠΊΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ с прилоТСния сС развалят. Π•Π΄ΠΈΠ½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ консумира Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ CPU, другият - ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, трСтият - I / O ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‡Π΅Ρ‚Π²ΡŠΡ€Ρ‚ΠΈΡΡ‚ ΠΊΠ°Ρ‚ΠΎ цяло Π½Π΅ Π΅ ясно ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΡ€Π°Π²ΠΈ със сокСти. Всичко Ρ‚ΠΎΠ²Π° ΠΏΠ°Π΄Π° ΠΈ ΠΊΠΎΡ€Π°Π±ΡŠΡ‚ ΠΏΠΎΡ‚ΡŠΠ²Π°. 

АгСнти

Π—Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ сС случва Π²ΡŠΡ‚Ρ€Π΅, Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° поставим Π°Π³Π΅Π½Ρ‚ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ.

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π’Π΅Π·ΠΈ Π°Π³Π΅Π½Ρ‚ΠΈ са ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°Ρ‰ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ Π² Ρ‚Π°ΠΊΠΎΠ²Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅, Ρ‡Π΅ Π΄Π° Π½Π΅ сС счупят Π΅Π΄ΠΈΠ½ Π΄Ρ€ΡƒΠ³. АгСнтитС са стандартизирани ΠΈ Ρ‚ΠΎΠ²Π° Π²ΠΈ позволява Π΄Π° стандартизиратС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° към сСрвиранСто Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ. 

Π’ нашия случай Π°Π³Π΅Π½Ρ‚ΠΈΡ‚Π΅ трябва Π΄Π° прСдоставят рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² стандартСн Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ ΠΈ дросСлирани. Π’Π΅ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° трябва Π΄Π° Π½ΠΈ прСдоставят стандартизирани ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са Ρ€Π°Π·ΡˆΠΈΡ€ΠΈΠΌΠΈ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° бизнСс прилоТСния.

АгСнтитС ΡΡŠΡ‰ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°Ρ‚ ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° работят Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСми Π·Π° оркСстрация, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ изобраТСния (Debian, Alpine, Centos ΠΈ Π΄Ρ€.).

И накрая, Π°Π³Π΅Π½Ρ‚ΠΈΡ‚Π΅ трябва Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ прост CI/CD, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Dockerfiles. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π΅Π½ случай ΠΊΠΎΡ€Π°Π±ΡŠΡ‚ Ρ‰Π΅ сС Ρ€Π°Π·ΠΏΠ°Π΄Π½Π΅, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ доставСни ΠΏΠΎ "ΠΊΡ€ΠΈΠ²ΠΈΡ‚Π΅" рСлси.

ΠŸΡ€ΠΎΡ†Π΅Ρ Π½Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ ΠΈ устройство Π·Π° Ρ†Π΅Π»Π΅Π²ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

Π—Π° Π΄Π° бъдС всичко стандартизирано ΠΈ управляСмо, трябва Π΄Π° сС слСдва някакъв стандартСн процСс Π½Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅. Π—Π°Ρ‚ΠΎΠ²Π° Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° ΡΡŠΠ±ΠΈΡ€Π°ΠΌΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ - Ρ‚Π°ΠΊΠ°Π²Π° Π΅ рСкурсията.

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π’ΡƒΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ са прСдставСни с ΠΏΠ»ΡŠΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΈ. Π’ ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° поставим дистрибуции Π² тях, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ β€žΠΆΠΈΠ²ΠΎΡ‚ΡŠΡ‚ Π΄Π° Π½Π΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°Ρ‚ΠΎ ΠΌΠ°Π»ΠΈΠ½Π°β€œ. Π—Π°Ρ‰ΠΎ бСшС Π½Π°ΠΏΡ€Π°Π²Π΅Π½ΠΎ Ρ‚ΠΎΠ²Π°, Ρ‰Π΅ опишСм ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ.
 
Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ Π΅ инструмСнт Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅, спСцифичСн Π·Π° вСрсията ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅ΠΏΡ€Π°Ρ‰Π° към ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ вСрсии Π½Π° разпространСниС ΠΈ вСрсии Π½Π° скриптовС.

Как Π΄Π° Π³ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌ? ИмамС Docker Hub, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. НиС Π³ΠΎ отразявамС Π² Π½Π°ΡˆΠ°Ρ‚Π° систСма, Π·Π° Π΄Π° сС ΠΎΡ‚ΡŠΡ€Π²Π΅ΠΌ ΠΎΡ‚ Π²ΡŠΠ½ΡˆΠ½ΠΈΡ‚Π΅ зависимости. Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ Π² ΠΆΡŠΠ»Ρ‚ΠΎ. БъздавамС шаблон, Π·Π° Π΄Π° инсталирамС всички дистрибуции ΠΈ скриптовС, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ сС Π½ΡƒΠΆΠ΄Π°Π΅ΠΌ, Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° сглобявамС Π³ΠΎΡ‚ΠΎΠ²ΠΎ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ поставят ΠΊΠΎΠ΄ ΠΈ някои ΠΎΡ‚ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ спСциални зависимости Π² Π½Π΅Π³ΠΎ. 

Π—Π°Ρ‰ΠΎ Ρ‚ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π΅ Π΄ΠΎΠ±ΡŠΡ€? 

  • ΠŸΡŠΡ€Π²ΠΎ, пълСн ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° вСрсиитС Π½Π° инструмСнтитС Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ - ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅, скрипт ΠΈ вСрсии Π·Π° разпространСниС. 
  • Π’Ρ‚ΠΎΡ€ΠΎ, постигнахмС стандартизация: създавамС шаблони ΠΏΠΎ ΡΡŠΡ‰ΠΈΡ Π½Π°Ρ‡ΠΈΠ½, ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΈ ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ изобраТСния. 
  • Π’Ρ€Π΅Ρ‚ΠΎ, ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ Π½ΠΈ осигуряват прСносимост. ДнСс ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Gitlab, Π° ΡƒΡ‚Ρ€Π΅ Ρ‰Π΅ ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅ΠΌ към TeamCity ΠΈΠ»ΠΈ Jenkins ΠΈ Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° управлявамС Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΏΠΎ ΡΡŠΡ‰ΠΈΡ Π½Π°Ρ‡ΠΈΠ½. 
  • Π§Π΅Ρ‚Π²ΡŠΡ€Ρ‚ΠΎ, ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° зависимоститС. НСслучайно поставямС дистрибуции Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ‚ΠΎΠ²Π° Π½ΠΈ позволява Π΄Π° Π½Π΅ Π³ΠΈ изтСглямС всСки ΠΏΡŠΡ‚ ΠΎΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. 
  • ΠŸΠ΅Ρ‚ΠΎ, скоростта Π½Π° сглобяванС сС Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»Π° - Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ копия Π½Π° изобраТСния Π²ΠΈ позволява Π΄Π° Π½Π΅ Π³ΡƒΠ±ΠΈΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅ Π·Π° изтСглянС, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ° Π»ΠΎΠΊΠ°Π»Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. 

Π‘ Π΄Ρ€ΡƒΠ³ΠΈ Π΄ΡƒΠΌΠΈ, постигнахмС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½ ΠΈ гъвкав процСс Π½Π° сглобяванС. НиС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π΅Π΄Π½ΠΈ ΠΈ ΡΡŠΡ‰ΠΈ инструмСнти, Π·Π° Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ всякакви ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ с пълна вСрсия. 

Как Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π°ΡˆΠ°Ρ‚Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π·Π° сглобяванС

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

БглобяванСто сС стартира с Π΅Π΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ сС изпълнява Π² ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ (ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΎ Π² Ρ‡Π΅Ρ€Π²Π΅Π½ΠΎ). Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡŠΡ‚ ΠΈΠΌΠ° Docker Ρ„Π°ΠΉΠ» (ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ Π² ΠΆΡŠΠ»Ρ‚ΠΎ), Π½ΠΈΠ΅ Π³ΠΎ изобразявамС, ΠΊΠ°Ρ‚ΠΎ замСнямС ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ със стойности. И ΠΏΠΎ ΠΏΡŠΡ‚Ρ добавямС Π³ΠΎΡ€Π½ΠΈ ΠΈ Π΄ΠΎΠ»Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½Ρ‚ΠΈΡ‚ΡƒΠ»ΠΈ - Ρ‚ΠΎΠ²Π° са Π½Π°ΡˆΠΈΡ‚Π΅ Π°Π³Π΅Π½Ρ‚ΠΈ. 

Header добавя разпрСдСлСния ΠΎΡ‚ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ‚Π΅ изобраТСния. И долният ΠΊΠΎΠ»ΠΎΠ½Ρ‚ΠΈΡ‚ΡƒΠ» инсталира Π½Π°ΡˆΠΈΡ‚Π΅ услуги Π²ΡŠΡ‚Ρ€Π΅, ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π° стартиранСто Π½Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΎΡ‚ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, рСгистриранС ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π°Π³Π΅Π½Ρ‚ΠΈ, замСства Π²Ρ…ΠΎΠ΄Π½Π°Ρ‚Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΈ Ρ‚.Π½. 

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

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

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

 Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π—Π° Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΄ΡŠΡ€Π²Π΅Ρ‚Π° Π½Π° процСси Π² Docker ΠΈ Kubernetes:

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

ΠŸΠΎΠ»Π΅Π·Π½ΠΈΡΡ‚ Ρ‚ΠΎΠ²Π°Ρ€ сС изпълнява ΠΏΠΎΠ΄ супСрвайзора S6. ΠžΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΡŠΠ±ΠΈΡ€Π°Ρ‡Π° ΠΈ ΡΡŠΠ±ΠΈΡ‚ΠΈΡΡ‚Π° - Ρ‚ΠΎΠ²Π° са Π½Π°ΡˆΠΈΡ‚Π΅ Π°Π³Π΅Π½Ρ‚ΠΈ, ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€Π½ΠΈ Π·Π° рСгистрационнитС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅. Kubernetes Π³ΠΈ няма, Π½ΠΎ Docker Π³ΠΈ ΠΈΠΌΠ°. Π—Π°Ρ‰ΠΎ? 

Ако ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ спСцификацията Π½Π° β€žpodβ€œ (ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ - Kubernetes pod), Ρ‚ΠΎΠ³Π°Π²Π° Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΡŠΡ‚ Π·Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ сС изпълнява Π² pod, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠΌΠ° ΠΎΡ‚Π΄Π΅Π»Π΅Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅, ΠΊΠΎΠΉΡ‚ΠΎ изпълнява функцията Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅. МоТСм Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π½Π° Kubernetes: Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ Π² Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ΄, Π² Π΅Π΄ΠΈΠ½ процСс ΠΈ/ΠΈΠ»ΠΈ ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΎ пространство. Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ внСдряват Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ Π°Π³Π΅Π½Ρ‚ΠΈ ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ някои Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. И Π°ΠΊΠΎ ΡΡŠΡ‰ΠΈΡΡ‚ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ сС стартира Π² Docker, Ρ‚ΠΎΠΉ Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈ всички ΡΡŠΡ‰ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·Ρ…ΠΎΠ΄Π°, тоСст Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° доставя рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π°Π³Π΅Π½Ρ‚ΠΈΡ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ стартирани Π²ΡŠΡ‚Ρ€Π΅. 

ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΡΠ½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π΅ Ρ‚Ρ€ΡƒΠ΄Π½Π° Π·Π°Π΄Π°Ρ‡Π°. Има няколко аспСкта Π½Π° Π½Π΅Π³ΠΎΠ²ΠΎΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.
Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Π΅ създадСна Π·Π° изпълнСниС Π½Π° полСзния Ρ‚ΠΎΠ²Π°Ρ€, Π° Π½Π΅ Π·Π° масова доставка Π½Π° Ρ‚Ρ€ΡƒΠΏΠΈ. Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Ρ‚ΠΎΠ·ΠΈ процСс трябва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ изисквания Π·Π° рСсурси Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. НиС сС стрСмим Π΄Π° ΠΏΠΎΠΌΠΎΠ³Π½Π΅ΠΌ Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ: β€žΠ’Π·Π΅ΠΌΠ΅Ρ‚Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π½Π° Docker Hub, стартирайтС Π³ΠΎ ΠΈ Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° доставим рСгистрационнитС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.β€œ 

Вторият аспСкт Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° ΠΎΠ±Π΅ΠΌΠ° Π½Π° Ρ‚Ρ€ΡƒΠΏΠΈΡ‚Π΅. Ако възникнС ситуация Π½Π° скок Π² ΠΎΠ±Π΅ΠΌΠ° Π½Π° рСгистрационнитС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² няколко ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° прослСдяванС Π½Π° стСка Π² Ρ†ΠΈΠΊΡŠΠ»), Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° процСсора, ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ ΠΊΠ°Π½Π°Π»ΠΈ, систСмата Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ сС ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π° ΠΈ Ρ‚ΠΎΠ²Π° сС отразява Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° хост ΠΊΠ°Ρ‚ΠΎ цяло ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ Π½Π° хоста, Ρ‚ΠΎΠ³Π°Π²Π° понякога Ρ‚ΠΎΠ²Π° Π²ΠΎΠ΄ΠΈ Π΄ΠΎ "ΠΏΠ°Π΄Π°Π½Π΅" Π½Π° хоста. 

ВрСтият аспСкт Π΅, Ρ‡Π΅ трябва Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚Π΅ възмоТно Π½Π°ΠΉ-ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΎΡ‚ кутията. ΠžΡ‚ Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π·Π°ΠΏΠΈΡ‚Π²Π°Π½Π΅ Π½Π° ΠΊΡ€Π°ΠΉΠ½Π°Ρ‚Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° Prometheus Π΄ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° спСцифични ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΈ Π·Π° прилоТСния.

И послСдният аспСкт - Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° сС свСдС Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° рСсурси.

Π˜Π·Π±Ρ€Π°Ρ…ΠΌΠ΅ Go Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄, Π½Π°Ρ€Π΅Ρ‡Π΅Π½ΠΎ Telegraf. Π’ΠΎΠ²Π° Π΅ унивСрсалСн ΠΊΠΎΠ½Π΅ΠΊΡ‚ΠΎΡ€, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 140 Π²ΠΈΠ΄Π° Π²Ρ…ΠΎΠ΄Π½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ (Π²Ρ…ΠΎΠ΄Π½ΠΈ плъгини) ΠΈ 30 Π²ΠΈΠ΄Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ (ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈ плъгини). НиС Π³ΠΎ Ρ„ΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ…ΠΌΠ΅ ΠΈ сСга Ρ‰Π΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Kubernetes ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. 

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π”Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ΅ΠΌ, Ρ‡Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π²Π½Π΅Π΄Ρ€ΠΈ Ρ‚ΠΎΠ²Π°Ρ€ ΠΈ Kubernetes ΠΏΠΎΠ»ΡƒΡ‡ΠΈ заявка Π·Π° създаванС Π½Π° pod. Π’ Ρ‚ΠΎΠ·ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ сС създава ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, Π½Π°Ρ€Π΅Ρ‡Π΅Π½ Collector Π·Π° всСки Pod (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ webhook Π·Π° мутация). Collector Π΅ наш Π°Π³Π΅Π½Ρ‚. Π’ Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Ρ‚ΠΎΠ·ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ сС настройва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ с Prometheus ΠΈ систСмата Π·Π° рСгистриранС.

  • Π—Π° Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈ Ρ‚ΠΎΠ²Π°, Ρ‚ΠΎΠΉ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π°Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π½Π° Pod ΠΈ Π² зависимост ΠΎΡ‚ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ си създава, Π΄Π° Ρ€Π΅Ρ‡Π΅ΠΌ, ΠΊΡ€Π°ΠΉΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Prometheus; 
  • Π’ΡŠΠ· основа Π½Π° спСцификацията Π½Π° Π³Ρ€ΡƒΠΏΠ°Ρ‚Π° ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈΡ‚Π΅ настройки Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, Ρ€Π΅ΡˆΠ°Π²Π° ΠΊΠ°ΠΊ Π΄Π° достави рСгистрационнитС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.

НиС ΡΡŠΠ±ΠΈΡ€Π°ΠΌΠ΅ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Ρ‡Ρ€Π΅Π· Docker API: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ просто трябва Π΄Π° Π³ΠΈ поставят Π² stdout ΠΈΠ»ΠΈ stderr ΠΈ слСд Ρ‚ΠΎΠ²Π° Collector Ρ‰Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅. РСгистрационнитС Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ сС ΡΡŠΠ±ΠΈΡ€Π°Ρ‚ Π½Π° части с извСстно забавянС, Π·Π° Π΄Π° сС ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈ възмоТно ΠΏΡ€Π΅Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° хоста. 

ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅ сС ΡΡŠΠ±ΠΈΡ€Π°Ρ‚ ΠΎΡ‚ СкзСмпляри Π½Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ (процСси) Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ. Всичко сС ΠΌΠ°Ρ€ΠΊΠΈΡ€Π° с Ρ‚Π°Π³ΠΎΠ²Π΅: пространство ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π°, pod ΠΈ Ρ‚.Π½., слСд ΠΊΠΎΠ΅Ρ‚ΠΎ сС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π° във Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° Prometheus - ΠΈ става Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎ Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ (с ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π° рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅). Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°ΠΌΠ΅ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π½Π° Kafka ΠΈ ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ:

  • Π”Π½Π΅Π²Π½ΠΈΡ†ΠΈΡ‚Π΅ са Π½Π°Π»ΠΈΡ‡Π½ΠΈ Π² Graylog (Π·Π° Π²ΠΈΠ·ΡƒΠ°Π»Π΅Π½ Π°Π½Π°Π»ΠΈΠ·);
  • РСгистри, ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, ΡΡŠΠ±ΠΈΡ‚ΠΈΡ сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ Π½Π° Clickhouse Π·Π° Π΄ΡŠΠ»Π³ΠΎΡΡ€ΠΎΡ‡Π½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅.

Всичко Ρ€Π°Π±ΠΎΡ‚ΠΈ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π² AWS, само Ρ‡Π΅ замСнямС Graylog ΠΎΡ‚ Kafka с Cloudwatch. Π˜Π·ΠΏΡ€Π°Ρ‰Π°ΠΌΠ΅ рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Ρ‚Π°ΠΌ ΠΈ всичко сС ΠΎΠΊΠ°Π·Π²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ: Π²Π΅Π΄Π½Π°Π³Π° става ясно към ΠΊΠΎΠΉ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚. Π‘ΡŠΡ‰ΠΎΡ‚ΠΎ Π²Π°ΠΆΠΈ ΠΈ Π·Π° Google Stackdriver. ВоСст Π½Π°ΡˆΠ°Ρ‚Π° схСма Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΊΠ°ΠΊΡ‚ΠΎ Π½Π° място с Kafka, Ρ‚Π°ΠΊΠ° ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ°. 

Ако нямамС Kubernetes с pods, схСмата Π΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-слоТна, Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° ΡΡŠΡ‰ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ.

Π“ΠΎΡ‚ΠΎΠ²ΠΈ Π·Π° производство изобраТСния Π·Π° k8s

Π’ΡŠΡ‚Ρ€Π΅ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ ΡΡŠΡ‰ΠΈΡ‚Π΅ процСси, Ρ‚Π΅ сС управляват с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° S6. Всички ΡΡŠΡ‰ΠΈΡ‚Π΅ процСси сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π² Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.

Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π°

Π‘ΡŠΠ·Π΄Π°Π΄ΠΎΡ…ΠΌΠ΅ цялостно Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ ΠΈ стартиранС Π½Π° изобраТСния Π² Сксплоатация, с ΠΎΠΏΡ†ΠΈΠΈ Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ ΠΈ доставянС Π½Π° рСгистрационни Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ:

  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΡ…ΠΌΠ΅ стандартизиран ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° изобраТСния, въз основа Π½Π° ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΡ…ΠΌΠ΅ CI шаблони;
  • АгСнтитС Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ са Π½Π°ΡˆΠΈΡ‚Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ Π½Π° Telegraf. ВСствахмС Π³ΠΈ Π΄ΠΎΠ±Ρ€Π΅ Π² производството;
  • ИзползвамС webhook Π·Π° мутация, Π·Π° Π΄Π° ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ€Π°ΠΌΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ с Π°Π³Π΅Π½Ρ‚ΠΈ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ; 
  • Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½ Π² СкосистСмата Kubernetes/Rancher;
  • МоТСм Π΄Π° изпълним Π΅Π΄Π½ΠΈ ΠΈ ΡΡŠΡ‰ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСми Π·Π° оркСстрация ΠΈ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π°, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΡ‡Π°ΠΊΠ²Π°ΠΌΠ΅;
  • БъздадСна напълно Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½Π° конфигурация Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ. 

Π‘ΡŠΠ°Π²Ρ‚ΠΎΡ€: Иля ΠŸΡ€ΡƒΠ΄Π½ΠΈΠΊΠΎΠ²

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

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€