Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

Аз сС ΠΊΠ°Π·Π²Π°ΠΌ Π’ΠΈΠΊΡ‚ΠΎΡ€ Π―Π³ΠΎΡ„Π°Ρ€ΠΎΠ² ΠΈ Ρ€Π°Π·Π²ΠΈΠ²Π°ΠΌ Kubernetes ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π² компанията Π”ΠΎΠΌΠšΠ»ΠΈΠΊ ΠΊΠ°Ρ‚ΠΎ тСхничСски Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π» Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π² Π΅ΠΊΠΈΠΏΠ° Ops (Сксплоатация). Искам Π΄Π° Ρ€Π°Π·ΠΊΠ°ΠΆΠ° Π·Π° организацията Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ процСси Dev Ops, особСноститС Π½Π° Сксплоатацията Π½Π° Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π½Π°ΠΉ-Π³ΠΎΠ»Π΅ΠΌΠΈΡ‚Π΅ k8s ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΠΈ Π² Русия, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π·Π° DevOps/SRE ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π°ΡˆΠΈΡΡ‚ Π΅ΠΊΠΈΠΏ.

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

Π•ΠΊΠΈΠΏΡŠΡ‚ Ops

Π’ Π΅ΠΊΠΈΠΏΠ° Ops Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° работят 15 Π΄ΡƒΡˆΠΈ. Π’Ρ€ΠΈΠΌΠ°Ρ‚Π° ΠΎΡ‚ тях отговарят Π·Π° офиса, Π΄Π²Π°ΠΌΠ° работят Π² Π΄Ρ€ΡƒΠ³ часови пояс ΠΈ са Π½Π° Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ ΠΏΡ€Π΅Π· Π½ΠΎΡ‰Ρ‚Π°. Π’Π°ΠΊΠ° Π²ΠΈΠ½Π°Π³ΠΈ някой ΠΎΡ‚ Ops Π΅ ΠΏΡ€Π΅Π΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΈ Π΅ Π³ΠΎΡ‚ΠΎΠ² Π΄Π° Ρ€Π΅Π°Π³ΠΈΡ€Π° Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ ΠΎΡ‚ всякаква слоТност. НямамС Π½ΠΎΡ‰Π½ΠΈ дСТурства, ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π°ΠΏΠ°Π·Π²Π° психиката Π½ΠΈ ΠΈ позволява Π½Π° всички Π΄Π° сС наспиват ΠΈ Π΄Π° ΠΏΡ€Π΅ΠΊΠ°Ρ€Π²Π°Ρ‚ свободното си Π²Ρ€Π΅ΠΌΠ΅, Π° Π½Π΅ само Π·Π°Π΄ ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π°.

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

ΠšΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠΈΡ‚Π΅ Π½Π° всички са Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ: ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ спСциалисти, DBA, спСциалисти ΠΏΠΎ ELK стСка, Kubernetes администратори/Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ, спСциалисти ΠΏΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, виртуализация, Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€ ΠΈ Ρ‚.Π½. ΠžΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π°Ρ‰ΠΎ Π·Π° всички Π΅, Ρ‡Π΅ всСки ΠΌΠΎΠΆΠ΅ Π² извСстна стСпСн Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈ всСки ΠΎΡ‚ нас: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ Π½ΠΎΠ²ΠΈ Π½ΠΎΠ΄ΠΎΠ²Π΅ Π² k8s ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°, Π΄Π° ΠΎΠ±Π½ΠΎΠ²ΠΈ PostgreSQL, Π΄Π° напишС CI/CD pipeline + Ansible, Π΄Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π° Π½Π΅Ρ‰ΠΎ с Python/Bash/Go, Π΄Π° ΡΠ²ΡŠΡ€ΠΆΠ΅ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€ Π² Π¦ΠžΠ”. Π‘ΠΈΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠΈ Π² някоя област Π½Π΅ ΠΏΡ€Π΅Ρ‡Π°Ρ‚ Π΄Π° сС смСни посоката Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΈ Π΄Π° сС Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π΄Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π° Π² Π΄Ρ€ΡƒΠ³Π° област. НапримСр, Π°Π· ΠΏΠΎΡΡ‚ΡŠΠΏΠΈΡ… Π² компанията ΠΊΠ°Ρ‚ΠΎ спСциалист ΠΏΠΎ PostgreSQL, Π° сСга моята основна отговорност Π΅ Kubernetes ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΠΈ. Π’ Π΅ΠΊΠΈΠΏΠ° всСки растСТ Π΅ привСтстван ΠΈ Ρ€Π°Π·Π²ΠΈΡ‚ΠΎ Π΅ чувството Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠΏΠΎΠΌΠΎΡ‰.

ΠœΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΡ‡ΠΈΠΌ, Π½ΠΈΠ΅ Ρ‚ΡŠΡ€ΡΠΈΠΌ Π½ΠΎΠ²ΠΈ слуТитСли. Π˜Π·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡ‚Π° към ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΈΡ‚Π΅ са сравнитСлно стандартни. Π›ΠΈΡ‡Π½ΠΎ Π·Π° ΠΌΠ΅Π½ Π΅ Π²Π°ΠΆΠ½ΠΎ Ρ‡ΠΎΠ²Π΅ΠΊΡŠΡ‚ Π΄Π° сС вписва Π² Π΅ΠΊΠΈΠΏΠ°, Π΄Π° бъдС Π½Π΅ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π΅Π½, Π½ΠΎ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° ΡƒΠΌΠ΅Π΅ Π΄Π° отстоява своСто ΠΌΠ½Π΅Π½ΠΈΠ΅, Π΄Π° ΠΆΠ΅Π»Π°Π΅ Π΄Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π° ΠΈ Π΄Π° Π½Π΅ сС страхува Π΄Π° ΠΏΡ€ΠΎΠ±Π²Π° Π½Π΅Ρ‰ΠΎ Π½ΠΎΠ²ΠΎ, Π΄Π° ΠΏΡ€Π΅Π΄Π»Π°Π³Π° свои ΠΈΠ΄Π΅ΠΈ. ОсвСн Ρ‚ΠΎΠ²Π°, Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΈ са умСнията Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° скриптови Π΅Π·ΠΈΡ†ΠΈ, познания ΠΏΠΎ основитС Π½Π° Linux ΠΈ английския Π΅Π·ΠΈΠΊ. Английският Π΅ Π½ΡƒΠΆΠ΅Π½ просто Π·Π° Π΄Π° ΠΌΠΎΠΆΠ΅ Ρ‡ΠΎΠ²Π΅ΠΊΡŠΡ‚ Π² случай Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π±ΡŠΡ€Π·ΠΎ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Π·Π° 10 сСкунди, Π° Π½Π΅ Π·Π° 10 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ. По спСциалисти с дълбоки познания ΠΏΠΎ Linux Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° сС Π½Π°ΠΌΠ΅Ρ€ΠΈ: смСшно Π΅, Π½ΠΎ Π΄Π²Π°ΠΌΠ° ΠΎΡ‚ Ρ‚Ρ€ΠΈΠΌΠ° ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΈ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° отговорят Π½Π° Π²ΡŠΠΏΡ€ΠΎΡΠ° β€žΠšΠ°ΠΊΠ²ΠΎ Π΅ Load Average? ΠžΡ‚ ΠΊΠ°ΠΊΠ²ΠΎ сС ΡΡŠΡΡ‚ΠΎΠΈ?β€œ Π° Π²ΡŠΠΏΡ€ΠΎΡΡŠΡ‚ β€žΠšΠ°ΠΊ Π΄Π° ΡΡŠΠ±Π΅Ρ€Π΅ΠΌ core dump ΠΎΡ‚ C ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°β€œ смятат Π·Π° Π½Π΅Ρ‰ΠΎ, ΠΏΡ€ΠΎΠΈΠ·Ρ…ΠΎΠΆΠ΄Π°Ρ‰ΠΎ ΠΎΡ‚ свСта Π½Π° супСр хората… ΠΈΠ»ΠΈ Π΄ΠΈΠ½ΠΎΠ·Π°Π²Ρ€ΠΈΡ‚Π΅. Π‘ Ρ‚ΠΎΠ²Π° трябва Π΄Π° сС ΠΏΡ€ΠΈΠΌΠΈΡ€ΠΈΠΌ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π½Π° Ρ…ΠΎΡ€Π°Ρ‚Π° ΠΈΠΌ липсват Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠΈ, Π° ΠΏΠΎ β€žΠ»ΠΈΠ½ΡƒΠΊΡβ€œ Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΠ±ΡƒΡ‡ΠΈΠΌ. ΠžΡ‚Π³ΠΎΠ²ΠΎΡ€ΡŠΡ‚ Π½Π° Π²ΡŠΠΏΡ€ΠΎΡΠ° β€žΠ·Π°Ρ‰ΠΎ всичко Ρ‚ΠΎΠ²Π° трябва Π΄Π° сС Π·Π½Π°Π΅ ΠΎΡ‚ DevOps ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ Π² ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ свят Π½Π° ΠΎΠ±Π»Π°Ρ†ΠΈΡ‚Π΅β€œ Ρ‰Π΅ оставя извън Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° статията, Π½ΠΎ Π°ΠΊΠΎ трябва Π΄Π° ΠΊΠ°ΠΆΠ° с Ρ‚Ρ€ΠΈ Π΄ΡƒΠΌΠΈ: всичко Ρ‚ΠΎΠ²Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

Π•ΠΊΠΈΠΏΡŠΡ‚ Tools

Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½Π° роля Π² автоматизацията ΠΈΠ³Ρ€Π°Π΅ Π΅ΠΊΠΈΠΏΡŠΡ‚ Tools. ΠžΡΠ½ΠΎΠ²Π½Π°Ρ‚Π° ΠΈΠΌ Π·Π°Π΄Π°Ρ‡Π° Π΅ ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΡƒΠ΄ΠΎΠ±Π½ΠΈ Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ ΠΈ CLI инструмСнти Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅. НапримСр, Π½Π°ΡˆΠΈΡΡ‚ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ΅Π½ инструмСнт Confer позволява Π±ΡƒΠΊΠ²Π°Π»Π½ΠΎ с няколко ΠΊΠ»ΠΈΠΊΠ° Π½Π° ΠΌΠΈΡˆΠΊΠ°Ρ‚Π° Π΄Π° сС Π²Π½Π΅Π΄Ρ€ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Kubernetes, Π΄Π° ΠΌΡƒ сС настроят рСсурси, ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ ΠΎΡ‚ vault ΠΈ Ρ‚.Π½. ΠŸΡ€Π΅Π΄ΠΈ имашС Jenkins + Helm 2, Π½ΠΎ сС Π½Π°Π»ΠΎΠΆΠΈ Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ собствСн инструмСнт, Π·Π° Π΄Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΠΌ ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΈ Π²ΠΌΡŠΠΊΠ²Π°Π½Π΅Ρ‚ΠΎ ΠΈ Π΄Π° внСсСм Сдинство Π² ТизнСния Ρ†ΠΈΠΊΡŠΠ» Π½Π° софтуСра.

Π•ΠΊΠΈΠΏΡŠΡ‚ Ops Π½Π΅ пишС ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ΠΈ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄Π°Π΄Π΅ консултация ΠΏΠΎ всякакви Π²ΡŠΠΏΡ€ΠΎΡΠΈ относно тяхното написванС (Ρƒ някои всС ΠΎΡ‰Π΅ ΠΈΠΌ остана Helm 3).

DevOps

Π©ΠΎ сС отнася Π΄ΠΎ DevOps, Π½ΠΈΠ΅ Π³ΠΎ Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Ρ‚Π°ΠΊΠ°:

ΠšΠΎΠΌΠ°Π½Π΄ΠΈΡ‚Π΅ Dev ΠΏΠΈΡˆΠ°Ρ‚ ΠΊΠΎΠ΄, внСдряват Π³ΠΎ Ρ‡Ρ€Π΅Π· Confer Π² dev -> qa/stage -> prod. ΠžΡ‚Π³ΠΎΠ²ΠΎΡ€Π½ΠΎΡΡ‚Ρ‚Π° Π΄Π° сС увСрят, Ρ‡Π΅ ΠΊΠΎΠ΄ΡŠΡ‚ Π½Π΅ забавя ΠΈ Π½Π΅ Ρ…Π²ΡŠΡ€Π»Ρ Π³Ρ€Π΅ΡˆΠΊΠΈ, Π»Π΅ΠΆΠΈ Π½Π° Π΅ΠΊΠΈΠΏΠΈΡ‚Π΅ Dev ΠΈ Ops. ΠŸΡ€Π΅Π· дСня, Π·Π° Π΄Π° Ρ€Π΅Π°Π³ΠΈΡ€Π° Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ си, ΠΏΡŠΡ€Π²ΠΎ трябва дСТурният ΠΎΡ‚ Π΅ΠΊΠΈΠΏΠ° Ops, Π° Π²Π΅Ρ‡Π΅Ρ€ ΠΈ ΠΏΡ€Π΅Π· Π½ΠΎΡ‰Ρ‚Π° дСТурният администратор (Ops) трябва Π΄Π° ΡΡŠΠ±ΡƒΠ΄ΠΈ дСТурния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Π°ΠΊΠΎ Π΅ сигурСн, Ρ‡Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π½Π΅ Π΅ Π² инфраструктурата. Всички ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ Π°Π»Π΅Ρ€Ρ‚ΠΈ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° сС появяват Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΠ°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ.

ΠžΡ‚Π³ΠΎΠ²ΠΎΡ€Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Ops Π·Π°ΠΏΠΎΡ‡Π²Π° ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π° пусканС Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π² продукция, Π½ΠΎ отговорността Π½Π° Dev ΡΡŠΡ‰ΠΎ Π½Π΅ ΠΏΡ€ΠΈΠΊΠ»ΡŽΡ‡Π²Π° - Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ Π·Π°Π΅Π΄Π½ΠΎ ΠΈ смС Π² Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ΠΈ ΠΊΠΎΡ€Π°Π±.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ консултират администраторитС, Π°ΠΊΠΎ Π΅ Π½ΡƒΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡ‰ ΠΏΡ€ΠΈ написванСто Π½Π° административСн микросСрвис (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Go Π±Π΅ΠΊΠ΅Π½Π΄ + HTML5), Π° администраторитС консултират Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΏΠΎ всякакви инфраструктурни Π²ΡŠΠΏΡ€ΠΎΡΠΈ ΠΈΠ»ΠΈ Π²ΡŠΠΏΡ€ΠΎΡΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с k8s.

ΠœΠ΅ΠΆΠ΄Ρƒ Π΄Ρ€ΡƒΠ³ΠΎΡ‚ΠΎ, нямамС ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚, само микросСрвиси. Броят ΠΈΠΌ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΊΠΎΠ»Π΅Π±Π°Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ 900 ΠΈ 1000 Π² продуктивния k8s ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€, Π°ΠΊΠΎ сС ΠΈΠ·ΠΌΠ΅Ρ€Π²Π° ΠΏΠΎ количСство deployments. Броят Π½Π° ΠΏΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ ΠΊΠΎΠ»Π΅Π±Π°Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ 1700 ΠΈ 2000. Π’ продуктивния ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΈΠΌΠ° ΠΎΠΊΠΎΠ»ΠΎ 2000 ΠΏΠΎΠ΄Π°.

НС ΠΌΠΎΠ³Π° Π΄Π° Π΄Π°ΠΌ Ρ‚ΠΎΡ‡Π½ΠΈ числа, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ слСдим Π½Π΅Π½ΡƒΠΆΠ½ΠΈΡ‚Π΅ микросСрвиси ΠΈ Π³ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°ΠΌΠ΅ Π² ΠΏΠΎΠ»ΡƒΠ°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ. Π‘Π»Π΅Π΄Π΅Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π΅Π½ΡƒΠΆΠ½ΠΈΡ‚Π΅ структури Π² k8s Π½ΠΈ ΠΏΠΎΠΌΠ°Π³Π° useless-operator, ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ спСстява рСсурси ΠΈ срСдства.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° рСсурситС

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³

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

  • Zabbix. Бтарият Π΄ΠΎΠ±ΡŠΡ€ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡ€Π΅Π΄ΠΈΠΌΠ½ΠΎ Π·Π° прослСдяванС Π½Π° ΠΎΠ±Ρ‰ΠΎΡ‚ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° инфраструктурата. Π’ΠΎΠΉ Π½ΠΈ ΠΊΠ°Π·Π²Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΡƒΠ·Π΅Π»ΡŠΡ‚ ΡƒΠΌΠΈΡ€Π° ΠΏΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈ, ΠΏΠ°ΠΌΠ΅Ρ‚, дисковС, ΠΌΡ€Π΅ΠΆΠ° ΠΈ Ρ‚.Π½. Нищо ΠΈΠ·Π²ΡŠΠ½Ρ€Π΅Π΄Π½ΠΎ, Π½ΠΎ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΈΠΌΠ°ΠΌΠ΅ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ DaemonSet ΠΎΡ‚ Π°Π³Π΅Π½Ρ‚ΠΈ, с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ наблюдавамС ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° DNS Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°: Ρ‚ΡŠΡ€ΡΠΈΠΌ забавящи сС ΠΏΠΎΠ΄ΠΎΠ²Π΅ coredns, провСрявамС Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚Ρ‚Π° Π½Π° външни хостовС. МоТС Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½Π΅Π½ΡƒΠΆΠ½ΠΎ, Π½ΠΎ ΠΏΡ€ΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠ±Π΅ΠΌΠΈ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Ρ‚ΠΎΠ·ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π΅ сСриозна Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° ΠΎΡ‚ΠΊΠ°Π·. По-Ρ€Π°Π½ΠΎ Π²Π΅Ρ‡Π΅ описах, ΠΊΠ°ΠΊ сС справях с производитСлността Π½Π° DNS Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°.
  • Prometheus Operator. Набор ΠΎΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ СкспортСри Π΄Π°Π²Π° ΡˆΠΈΡ€ΠΎΠΊ ΠΎΠ±Π·ΠΎΡ€ Π½Π° всички ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ всичко Ρ‚ΠΎΠ²Π° Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ΠΎΠ²Π΅ Π² Grafana, Π° Π·Π° извСстяванС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ alertmanager.

ΠžΡ‰Π΅ Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ»Π΅Π·Π΅Π½ инструмСнт Π·Π° нас стана list-ingress. НаписахмС Π³ΠΎ слСд ΠΊΠ°Ρ‚ΠΎ няколко ΠΏΡŠΡ‚ΠΈ сС ΡΠ±Π»ΡŠΡΠΊΠ°Ρ…ΠΌΠ΅ с ситуация, Π² която Π΅Π΄ΠΈΠ½ Π΅ΠΊΠΈΠΏ затруднява ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ingress Π½Π° Π΄Ρ€ΡƒΠ³ Π΅ΠΊΠΈΠΏ, ΠΊΠΎΠ΅Ρ‚ΠΎ водСшС Π΄ΠΎ Π³Ρ€Π΅ΡˆΠΊΠΈ 50x. Π‘Π΅Π³Π°, ΠΏΡ€Π΅Π΄ΠΈ внСдряванС Π² продукция, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ провСряват, Ρ‡Π΅ Π½ΠΈΠΊΠΎΠ³ΠΎ Π½Π΅ засягат, Π° Π·Π° моя Π΅ΠΊΠΈΠΏ Ρ‚ΠΎΠ²Π° Π΅ Π΄ΠΎΠ±Ρ€ΠΎ срСдство Π·Π° ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½Π° диагностика Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с Ingress-ΠΈΡ‚Π΅. Π—Π°Π±Π°Π²Π΅Π½ Π΅ Ρ„Π°ΠΊΡ‚ΡŠΡ‚, Ρ‡Π΅ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ бСшС написан Π·Π° администратори ΠΈ изглСТдашС доста β€žΡ‚ΠΎΠΏΠΎΡ€Π½ΠΎβ€œ, Π½ΠΎ слСд ΠΊΠ°Ρ‚ΠΎ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΡŠΡ‚ стана популярСн срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅, Ρ‚ΠΎΠΉ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ сС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΈ ΠΈ Π²Π΅Ρ‡Π΅ Π½Π΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°Ρ‚ΠΎ β€žΠ°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€Π°Ρ‚ΠΎΡ€ Π½Π°ΠΏΡ€Π°Π²ΠΈ ΡƒΠ΅Π±-интСрфСйс Π·Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€Π°Ρ‚ΠΎΡ€ΠΈβ€œ. Π‘ΠΊΠΎΡ€ΠΎ Ρ‰Π΅ сС ΠΎΡ‚ΠΊΠ°ΠΆΠ΅ΠΌ ΠΎΡ‚ Ρ‚ΠΎΠ·ΠΈ инструмСнт ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ситуации Ρ‰Π΅ сС Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Ρ‚ ΠΎΡ‰Π΅ ΠΏΡ€Π΅Π΄ΠΈ пусканСто Π½Π° ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π°.

РСсурси Π½Π° Π΅ΠΊΠΈΠΏΠΈΡ‚Π΅ Π² "ΠšΡƒΠ±Π°"

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅ΠΌ към ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈΡ‚Π΅, Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° обясним ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° рСсурситС Π·Π° микросСрвизи.

Π—Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠΎΠΈ Π΅ΠΊΠΈΠΏΠΈ ΠΈ Π² ΠΊΠ°ΠΊΠ²ΠΈ количСства ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ своитС рСсурси (процСсор, ΠΏΠ°ΠΌΠ΅Ρ‚, Π»ΠΎΠΊΠ°Π»Π΅Π½ SSD), Π½ΠΈΠ΅ разпрСдСлямС Π½Π° всСки Π΅ΠΊΠΈΠΏ своя namespace Π² "ΠšΡƒΠ±Π°" ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°ΠΌΠ΅ максималнитС ΠΌΡƒ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎ процСсор, ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ диск, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ обсъТдайки Π½ΡƒΠΆΠ΄ΠΈΡ‚Π΅ Π½Π° Π΅ΠΊΠΈΠΏΠΈΡ‚Π΅. Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, Π΅Π΄ΠΈΠ½ Π΅ΠΊΠΈΠΏ, Π² общия случай, Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±Π»ΠΎΠΊΠΈΡ€Π° цСлия кластСр Π·Π° внСдряванС, ΠΊΠ°Ρ‚ΠΎ Π·Π°Π΄Π΅Π»ΠΈ хиляди ядра ΠΈ Ρ‚Π΅Ρ€Π°Π±Π°ΠΉΡ‚ΠΈ ΠΏΠ°ΠΌΠ΅Ρ‚. Π”ΠΎΡΡ‚ΡŠΠΏΠΈΡ‚Π΅ Π² namespace сС Π΄Π°Π²Π°Ρ‚ Ρ‡Ρ€Π΅Π· AD (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ RBAC). Namespace-ΠΈΡ‚Π΅ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ Π»ΠΈΠΌΠΈΡ‚ΠΈ сС добавят Ρ‡Ρ€Π΅Π· ΠΏΡƒΠ»-рСквСст Π² GIT рСпозитория, Π° слСд Ρ‚ΠΎΠ²Π° всичко Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ сС Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π° Ρ‡Ρ€Π΅Π· Ansible ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° рСсурси Π·Π° Π΅ΠΊΠΈΠΏ:

namespaces:

  chat-team:
    pods: 23
    limits:
      cpu: 11
      memory: 20Gi
    requests:
      cpu: 11
      memory: 20Gi

РСквСсти ΠΈ Π»ΠΈΠΌΠΈΡ‚ΠΈ

Π’ "ΠšΡƒΠ±Π°" Request β€” Ρ‚ΠΎΠ²Π° Π΅ количСството Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Π½ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½ΠΈ рСсурси Π·Π° pod (Π΅Π΄ΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Docker ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ) Π² кластСрa. Limit β€” Ρ‚ΠΎΠ²Π° Π΅ Π½Π΅Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Π½ максимум. ЧСсто ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π²ΠΈΠ΄ΠΈ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅, ΠΊΠ°ΠΊ някой Π΅ΠΊΠΈΠΏ Π΅ задълТил сСбС си с Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ рСквСсти Π·Π° всички свои прилоТСния ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²Π½Π΅Π΄Ρ€ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² "ΠšΡƒΠ±", Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ всички request’и Π² тСхния namespace Π²Π΅Ρ‡Π΅ са β€žΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π°Π½ΠΈβ€œ.

ΠŸΡ€Π°Π²ΠΈΠ»Π½ΠΈΡΡ‚ ΠΈΠ·Ρ…ΠΎΠ΄ ΠΎΡ‚ Ρ‚Π°ΠΊΠ°Π²Π° ситуация: Π΄Π° сС наблюдава Ρ€Π΅Π°Π»Π½ΠΎΡ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° рСсурси ΠΈ Π΄Π° сС сравнява с поисканото количСство (Request).

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза
Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

На ΡΠΊΡ€ΠΈΠΉΠ½ΡˆΠΎΡ‚ΠΎΠ²Π΅Ρ‚Π΅ ΠΏΠΎ-Π³ΠΎΡ€Π΅ сС Π²ΠΈΠΆΠ΄Π°, Ρ‡Π΅ "Π·Π°ΠΏΠΈΡ‚Π°Π½ΠΈΡ‚Π΅" (Requested) CPU сС ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ°Π²Π°Ρ‚ Π΄ΠΎ Ρ€Π΅Π°Π»Π½ΠΎΡ‚ΠΎ количСство ΠΏΠΎΡ‚ΠΎΡ†ΠΈ, Π° Limits ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π½Π°Π΄Π²ΠΈΡˆΠ°Π²Π°Ρ‚ Ρ€Π΅Π°Π»Π½ΠΎΡ‚ΠΎ количСство ΠΏΠΎΡ‚ΠΎΡ†ΠΈ Π½Π° Ρ†Π΅Π½Ρ‚Ρ€Π°Π»Π½ΠΈΡ‚Π΅ процСсори =)

Π‘Π΅Π³Π° Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ някой namespace (ΠΈΠ·Π±Ρ€Π°Ρ… namespace kube-system β€” систСмСн namespace Π·Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° самия β€žΠšΡƒΠ±β€œ) ΠΈ Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΠΌ ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅Π°Π»Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΎΡ‚ΠΎ CPU Π²Ρ€Π΅ΠΌΠ΅ ΠΈ ΠΏΠ°ΠΌΠ΅Ρ‚ Π² сравнСниС с Π·Π°ΠΏΠΈΡ‚Π°Π½ΠΎΡ‚ΠΎ:

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ Π΅, Ρ‡Π΅ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ CPU-Ρ‚ΠΎ, Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½ΠΈ ΠΏΠΎΠ΄ систСмни услуги, са ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Ρ€Π΅Π°Π»Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΎΡ‚ΠΎ. Π’ случая с kube-system, Ρ‚ΠΎΠ²Π° Π΅ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½ΠΎ: ΠΈΠΌΠ°Π»ΠΎ Π΅ случаи, ΠΊΠΎΠ³Π°Ρ‚ΠΎ nginx ingress controller ΠΈΠ»ΠΈ nodelocaldns Π² ΠΏΠΈΠΊ са достигали своитС CPU Π»ΠΈΠΌΠΈΡ‚ΠΈ ΠΈ са консумираСли ΠΌΠ½ΠΎΠ³ΠΎ RAM, ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ‚ΠΎΠ·ΠΈ запас Π΅ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½. ОсвСн Ρ‚ΠΎΠ²Π°, Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° сС Π²Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ само Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ ΠΎΡ‚ послСднитС 3 часа: ΠΆΠ΅Π»Π°Ρ‚Π΅Π»Π½ΠΎ Π΅ Π΄Π° Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ историчСски ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π·Π° ΠΏΠΎ-дълъг ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½Π° Π΅ систСма ΠΎΡ‚ β€žΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΠΊΠΈβ€œ. НапримСр, Ρ‚ΡƒΠΊ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π° ΠΊΠΎΠΈ рСсурси Π΅ Ρ…ΡƒΠ±Π°Π²ΠΎ Π΄Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚Π΅ β€žΠ»ΠΈΠΌΠΈΡ‚ΠΈΡ‚Π΅β€œ (Π³ΠΎΡ€Π½Π°Ρ‚Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π° Π³Ρ€Π°Π½ΠΈΡ†Π°), Π·Π° Π΄Π° Π½Π΅ сС случва β€žΡ‚Ρ€ΠΎΡ‚Π»ΠΈΠ½Π³β€œ: ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ систСмата Π²Π΅Ρ‡Π΅ Π΅ ΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈΠ»Π° CPU ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΠ΅Ρ‚ Π·Π° ΠΎΡ‚Ρ€Π΅Π΄Π΅Π½ΠΎΡ‚ΠΎ ΠΉ Π²Ρ€Π΅ΠΌΠ΅ ΠΈ Ρ‡Π°ΠΊΠ°, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ я β€žΡ€Π°Π·ΠΌΠΎΡ€ΠΎΠ·ΡΡ‚β€œ:

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

А Π΅Ρ‚ΠΎ ΠΈ ΠΏΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅, Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ слСдва Π΄Π° сС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Ρ‚ рСсурситС:

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

Π—Π° Ρ‚Ρ€ΠΎΡ‚Π»ΠΈΠ½Π³ + ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° рСсурситС ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΏΠΈΡˆΠ°Ρ‚ Π½Π΅ Π΅Π΄Π½Π°, Π° ΠΌΠ½ΠΎΠ³ΠΎ статии, Π·Π°Ρ‚ΠΎΠ²Π° Π·Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΡŠΠΏΡ€ΠΎΡΠΈ Π² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡ‚Π΅. Π‘ няколко Π΄ΡƒΠΌΠΈ ΠΌΠΎΠ³Π° Π΄Π° ΠΊΠ°ΠΆΠ°, Ρ‡Π΅ автоматизацията Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π΅ доста слоТна Π·Π°Π΄Π°Ρ‡Π° ΠΈ изисква ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅ ΠΈ Π°ΠΊΡ€ΠΎΠ±Π°Ρ‚ΠΈΠΊΠ° с β€žwindowβ€œ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ β€žCTEβ€œ Π² Prometheus / VictoriaMetrics (Ρ‚Π΅Π·ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈ са поставСни Π² ΠΊΠ°Π²ΠΈΡ‡ΠΊΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π² PromQL ΠΏΠΎΡ‡Ρ‚ΠΈ няма Π½ΠΈΡ‰ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ ΠΈ сС Π½Π°Π»Π°Π³Π° Π΄Π° сС ΠΏΠΈΡˆΠ°Ρ‚ слоТни заявки, ΠΊΠΎΠΈΡ‚ΠΎ ΠΎΠ±Ρ…Π²Π°Ρ‰Π°Ρ‚ няколко Π΅ΠΊΡ€Π°Π½Π° тСкст ΠΈ Π΄Π° сС ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Ρ‚).

Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°Ρ‚ с инструмСнти Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ namespaces Π² β€žΠšΡƒΠ±β€œ, ΠΈ Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ сами Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π°Ρ‚ къдС ΠΈ ΠΊΠΎΠ³Π° Π½Π° ΠΊΠΎΠΈ прилоТСния Π΄Π° β€žΠΎΡ‚Ρ€Π΅ΠΆΠ°Ρ‚β€œ рСсурситС, Π° Π½Π° ΠΊΠΎΠΈ ΠΏΠΎΠ΄ΠΎΠ²Π΅ Π΄Π° ΠΎΡ‚ΡΡ‚ΡŠΠΏΡΡ‚ цСлия си CPU ΠΏΡ€Π΅Π· Π½ΠΎΡ‰Ρ‚Π°.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ

Π’ компанията, ΠΊΠ°ΠΊΠ²Π°Ρ‚ΠΎ Π΅ ситуацията Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΌΠΎΠ΄Π½ΠΎ, Π½ΠΈΠ΅ сС ΠΏΡ€ΠΈΠ΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ към ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΎΡ‚ DevOps ΠΈ SRE-ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π² компанията ΠΈΠΌΠ° 1000 микросСрвиза, ΠΎΠΊΠΎΠ»ΠΎ 350 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ ΠΈ 15 администратори Π½Π° цялата инфраструктура, трябва Π΄Π° β€žΠ±ΡŠΠ΄Π΅ΠΌ ΠΌΠΎΠ΄Π½ΠΈβ€œ: Π·Π°Π΄ всички Ρ‚Π΅Π·ΠΈ β€žΠ±Π°Π·Π²ΠΎΡ€Π΄ΠΎΠ²Π΅β€œ сС ΠΊΡ€ΠΈΠ΅ остра нСобходимост ΠΎΡ‚ автоматизация Π½Π° всичко, Π° администраторитС Π½Π΅ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ bottleneck Π² процСситС.

ΠšΠ°Ρ‚ΠΎ Ops, Π½ΠΈΠ΅ прСдоставямС Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ Ρ‚Π°Π±Π»Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° услугитС ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈ.

ИзползвамС Ρ‚Π°ΠΊΠΈΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΊΠ°Ρ‚ΠΎ: RED, USE ΠΈ Π—Π»Π°Ρ‚Π½ΠΈ сигнали, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°ΠΉΠΊΠΈ Π³ΠΈ Π·Π°Π΅Π΄Π½ΠΎ. Π‘Ρ‚Ρ€Π΅ΠΌΠΈΠΌ сС Π΄Π° ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ броя Π½Π° Ρ‚Π°Π±Π»Π°Ρ‚Π°, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΎΡ‚ Π΅Π΄ΠΈΠ½ ΠΏΠΎΠ³Π»Π΅Π΄ Π΄Π° Π΅ ясно ΠΊΠΎΠΉ сСрвис Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΄Π΅Π³Ρ€Π°Π΄ΠΈΡ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ Π² сСкунда, Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π² 99-ия ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΈΠ») ΠΈ Ρ‚Π°ΠΊΠ° Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ. Π’Π΅Π΄Π½Π°Π³Π° Ρ‰ΠΎΠΌ сС появят Π½ΠΎΠ²ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π·Π° ΠΎΠ±Ρ‰ΠΈΡ‚Π΅ Ρ‚Π°Π±Π»Π°, Π½ΠΈΠ΅ Π²Π΅Π΄Π½Π°Π³Π° Π³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°ΠΌΠ΅ ΠΈ добавямС.

НС съм рисувал Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΎΡ‚ мСсСц. ВСроятно, Ρ‚ΠΎΠ²Π° Π΅ Π΄ΠΎΠ±ΡŠΡ€ Π·Π½Π°ΠΊ: Π·Π½Π°Ρ‡ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ "ТСлания" Π²Π΅Ρ‡Π΅ са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ. Имало Π΅ случаи, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π·Π° сСдмица рисувам Π½ΠΎΠ²Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΏΠΎΠ½Π΅ вСднъТ Π½Π° Π΄Π΅Π½.

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡΡ‚ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π΅ Ρ†Π΅Π½Π΅Π½, Π·Π°Ρ‰ΠΎΡ‚ΠΎ сСга Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ доста рядко ΠΈΠ΄Π²Π°Ρ‚ ΠΏΡ€ΠΈ администраторитС с Π²ΡŠΠΏΡ€ΠΎΡΠΈ "къдС ΠΌΠΎΠ³Π° Π΄Π° видя някаква ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°".

ВнСдряванС Service Mesh Π½Π΅ Π΅ Π΄Π°Π»Π΅Ρ‡ ΠΈ трябва Π΄Π° ΠΎΠ±Π»Π΅ΠΊΡ‡ΠΈ ΠΆΠΈΠ²ΠΎΡ‚Π° Π½Π° всички, ΠΊΠΎΠ»Π΅Π³ΠΈΡ‚Π΅ ΠΎΡ‚ Tools Π²Π΅Ρ‡Π΅ са Π±Π»ΠΈΠ·ΠΊΠΈ Π΄ΠΎ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° абстрактния "Istio Π½Π° здравия Ρ‡ΠΎΠ²Π΅ΠΊ": ТизнСният Ρ†ΠΈΠΊΡŠΠ» Π½Π° всяко HTTP(s) исканС Ρ‰Π΅ бъдС Π²ΠΈΠ΄ΠΈΠΌ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΈ Π²ΠΈΠ½Π°Π³ΠΈ Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π°Π·Π±Π΅Ρ€Π΅ "Π½Π° ΠΊΠΎΠΉ Π΅Ρ‚Π°ΠΏ всичко Π΅ счупСно" ΠΏΡ€ΠΈ мСТдусСрвизното (ΠΈ Π½Π΅ само) взаимодСйствиС. АбонирайтС сС Π·Π° Π½ΠΎΠ²ΠΈΠ½ΠΈΡ‚Π΅ ΠΎΡ‚ Ρ…Π°Π±Π° Π½Π° компания Π”ΠΎΠΌΠšΠ»ΠΈΠΊ. =)

ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Kubernetes инфраструктура

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΠΈ Π΅ Ρ‚Π°ΠΊΠ°, Ρ‡Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΠ°Ρ‚Ρ‡Π½Π°Ρ‚Π° вСрсия Kubespray β€” Ansible роля Π·Π° Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅, Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π°Π½Π΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° Kubernetes. Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ основната ΠΊΠ»ΠΎΠ½ΠΊΠ° бСшС ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° non-kubeadm инсталации, Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π·Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° kubeadm Π½Π΅ бСшС прСдставСно. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° компанията Southbridge Π½Π°ΠΏΡ€Π°Π²ΠΈ свой fork (с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° kubeadm ΠΈ Π±ΡŠΡ€Π· фикис Π½Π° ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ).

ΠŸΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° всички k8s ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΠΈ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π°ΠΊΠ°:

  • Π’Π·Π΅ΠΌΠ°ΠΌΠ΅ Kubespray ΠΎΡ‚ Southbridge, ΡΡŠΠΏΠΎΡΡ‚Π°Π²ΡΠΌΠ΅ с Π½Π°ΡˆΠ°Ρ‚Π° ΠΊΠ»ΠΎΠ½ΠΊΠ°, ΠΌΠ΅Ρ€Π΄ΠΆΠΈΠΌ.
  • ΠŸΡƒΡΠΊΠ°ΠΌΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π² Stress-"ΠšΡƒΠ±".
  • ΠŸΡƒΡΠΊΠ°ΠΌΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΠΎ Π΅Π΄Π½Π° Π½ΠΎΠ΄Π° (Π² Ansible Ρ‚ΠΎΠ²Π° Π΅ "serial: 1") Π² Dev-"ΠšΡƒΠ±".
  • ОбновявамС Prod Π² ΡΡŠΠ±ΠΎΡ‚Π° Π²Π΅Ρ‡Π΅Ρ€ ΠΏΠΎ Π΅Π΄Π½Π° Π½ΠΎΠ΄Π°.

Π’ Π±ΡŠΠ΄Π΅Ρ‰Π΅ ΠΈΠΌΠ°ΠΌΠ΅ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ Π΄Π° Π·Π°ΠΌΠ΅Π½ΠΈΠΌ Kubespray с Π½Π΅Ρ‰ΠΎ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ ΠΈ Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅ΠΌ Π½Π° kubeadm.

ΠžΠ±Ρ‰ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Ρ‚Ρ€ΠΈ "ΠšΡƒΠ±Π°": Stress, Dev ΠΈ Prod. ΠŸΠ»Π°Π½ΠΈΡ€Π°ΠΌΠ΅ Π΄Π° стартирамС ΠΎΡ‰Π΅ Π΅Π΄ΠΈΠ½ (hot standby) Prod-"ΠšΡƒΠ±" във втория Π¦ΠžΠ”. Stress ΠΈ Dev ТивСят Π² "Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΊΠΈ" (oVirt Π·Π° Stress ΠΈ VMWare cloud Π·Π° Dev). Prod-"ΠšΡƒΠ±" ΠΆΠΈΠ²Π΅Π΅ Π½Π° "Π³ΠΎΠ»ΠΎ ТСлязо" (bare metal): Ρ‚ΠΎΠ²Π° са Π΅Π΄Π½Π°ΠΊΠ²ΠΈ Π½ΠΎΠ΄ΠΈ с 32 CPU нишки, 64-128 Π“Π± ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ 300 Π“Π± SSD RAID 10 β€” ΠΎΠ±Ρ‰ΠΎ 50 Π½Π° Π±Ρ€ΠΎΠΉ. Π’Ρ€ΠΈ "Ρ‚ΡŠΠ½ΠΊΠΈ" Π½ΠΎΠ΄ΠΈ са ΠΎΡ‚Π΄Π΅Π»Π΅Π½ΠΈ Π·Π° "мастСра" Prod-"ΠšΡƒΠ±Π°": 16 Π“Π± ΠΏΠ°ΠΌΠ΅Ρ‚, 12 CPU нишки.

Π—Π° производството ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ "Π³ΠΎΠ»ΠΎ ТСлязо" ΠΈ избягвамС излишни слоСвС ΠΊΠ°Ρ‚ΠΎ OpenStack: Π½Π΅ Π½ΠΈ трябват "ΡˆΡƒΠΌΠ½ΠΈ съсСди" ΠΈ CPU steal timeБлоТността Π½Π° администриранСто нараства ΠΏΠΎΡ‡Ρ‚ΠΈ Π΄Π²ΠΎΠΉΠ½ΠΎ Π² случай Π½Π° in-house OpenStack.

Π—Π° CI/CD β€žΠšΡƒΠ±ΠΎΠ²ΠΈΡ‚Π΅β€œ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ инфраструктурни ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ GIT-ΡΡŠΡ€Π²ΡŠΡ€, Helm 3 (ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅Ρ‚ΠΎ ΠΎΡ‚ Helm 2 бСшС доста Π±ΠΎΠ»Π΅Π·Π½Π΅Π½ΠΎ, Π½ΠΎ смС ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈ ΠΎΡ‚ опцията atomic), Jenkins, Ansible ΠΈ Docker. ΠžΠ±ΠΈΡ‡Π°ΠΌΠ΅ feature-bΡ€Π°Π½Ρ‡ΠΎΠ²Π΅ ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ срСди ΠΎΡ‚ Π΅Π΄Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅.

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

Kubernetes Π² Π”ΠΎΠΌΠšΠ»ΠΈΠΊ: ΠΊΠ°ΠΊ Π΄Π° спитС спокойно, управлявайки ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ с 1000 микросСрвиза
Π’Π°ΠΊΠ°, Π² ΠΎΠ±Ρ‰ΠΈ Π»ΠΈΠ½ΠΈΠΈ, Π² компанията Π”ΠΎΠΌΠšΠ»ΠΈΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ DevOps ΠΎΡ‚ страна Π½Π° ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π° ΠΏΠΎ Сксплоатация. Бтатията сС ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ тСхничСска, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΎΡ‡Π°ΠΊΠ²Π°Ρ…: Π·Π°Ρ‚ΠΎΠ²Π°, слСдСтС Π½ΠΎΠ²ΠΈΠ½ΠΈΡ‚Π΅ Π½Π° Π”ΠΎΠΌΠšΠ»ΠΈΠΊ Π² Π₯Π°Π±Ρ€Π°: Ρ‰Π΅ ΠΈΠΌΠ° ΠΏΠΎ-"Ρ…Π°Ρ€Π΄ΠΊΠΎΡ€Π½ΠΈ" статии Π·Π° Kubernetes ΠΈ Π½Π΅ само.

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

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