ΠŸΠ΅Ρ‚ пропуска ΠΏΡ€ΠΈ внСдряванС Π½Π° ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Kubernetes

ΠŸΠ΅Ρ‚ пропуска ΠΏΡ€ΠΈ внСдряванС Π½Π° ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° KubernetesFail ΠΎΡ‚ Aris Dreamer

Много Ρ…ΠΎΡ€Π° смятат, Ρ‡Π΅ Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π² Kubernetes (с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Helm ΠΈΠ»ΠΈ Ρ€ΡŠΡ‡Π½ΠΎ) - ΠΈ Ρ‰Π΅ ΠΈΠΌΠ° щастиС. Но Π½Π΅ всичко Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° просто.

ΠžΡ‚Π±ΠΎΡ€ ΠžΠ±Π»Π°Ρ‡Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° Mail.ru ΠΏΡ€Π΅Π²Π΅Π΄Π΅ статия ΠΎΡ‚ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π° Π½Π° DevOps Π”ΠΆΡƒΠ»ΠΈΠ°Π½ Π“ΠΈΠ½Π΄ΠΈ. Π’ΠΎΠΉ Ρ€Π°Π·ΠΊΠ°Π·Π²Π° с ΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠ»ΠΎΠΏΠΊΠΈ сС Π΅ сблъскала Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° компания ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° процСса Π½Π° миграция, Π·Π° Π΄Π° Π½Π΅ ΡΡ‚ΡŠΠΏΠΈΡ‚Π΅ Π½Π° ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π³Ρ€Π΅Π±Π»ΠΎ.

ΠŸΡŠΡ€Π²Π° ΡΡ‚ΡŠΠΏΠΊΠ°: НастройтС заявки ΠΈ ограничСния Π·Π° Pod

НСка Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ, ΠΊΠ°Ρ‚ΠΎ създадСм чиста срСда, Π² която Π½Π°ΡˆΠΈΡ‚Π΅ капсули Ρ‰Π΅ работят. Kubernetes Π΅ страхотСн Π² ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° pod ΠΈ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΠ°Π·. Но сС ΠΎΠΊΠ°Π·Π°, Ρ‡Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΡŠΡ‚ понякога Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° постави ΠΏΠΎΠ΄, Π°ΠΊΠΎ Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈ ΠΊΠΎΠ»ΠΊΠΎ рСсурси са ΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ, Π·Π° Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ. Π’ΠΎΠ²Π° Π΅ мястото, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ изскачат заявки Π·Π° рСсурси ΠΈ ограничСния. Има ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Π±Π°Ρ‚ΠΈ относно Π½Π°ΠΉ-добрия ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π·Π° опрСдСлянС Π½Π° заявки ΠΈ Π»ΠΈΠΌΠΈΡ‚ΠΈ. Понякога ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, Ρ‡Π΅ Ρ‚ΠΎΠ²Π° наистина Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ изкуство, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π½Π°ΡƒΠΊΠ°. Π•Ρ‚ΠΎ нашия ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.

Под заявки Π΅ основната стойност, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΎΡ‚ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΠ° Π·Π° ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΎ поставянС Π½Π° ΠΏΠΎΠ΄.

На ДокумСнтация Π½Π° Kubernetes: Π‘Ρ‚ΡŠΠΏΠΊΠ°Ρ‚Π° Π½Π° Ρ„ΠΈΠ»Ρ‚ΡŠΡ€Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π° Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ възли, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ Pod. НапримСр Ρ„ΠΈΠ»Ρ‚ΡŠΡ€ΡŠΡ‚ PodFitsResources провСрява Π΄Π°Π»ΠΈ Π΄Π°Π΄Π΅Π½ възСл ΠΈΠΌΠ° Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ рСсурси, Π·Π° Π΄Π° ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ заявки Π·Π° рСсурси ΠΎΡ‚ ΠΏΠΎΠ΄.

НиС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ заявки Π·Π° прилоТСния ΠΏΠΎ Ρ‚Π°ΠΊΡŠΠ² Π½Π°Ρ‡ΠΈΠ½, Ρ‡Π΅ Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡ€Π΅Ρ†Π΅Π½ΠΈΠΌ ΠΊΠΎΠ»ΠΊΠΎ рСсурси Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ сС Π½ΡƒΠΆΠ΄Π°Π΅ ΠΎΡ‚ Ρ‚ΠΎΠ²Π°, Π·Π° Π΄Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΡŠΡ‚ ΠΌΠΎΠΆΠ΅ рСалистично Π΄Π° постави Π²ΡŠΠ·Π»ΠΈΡ‚Π΅. ΠŸΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ искахмС Π΄Π° прСнасрочим заявкитС, Π·Π° Π΄Π° осигурим Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ рСсурси Π·Π° всСки Pod, Π½ΠΎ забСлязахмС, Ρ‡Π΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅ сС ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ някои Pods Π½Π΅ бяха напълно ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ΠΈ, сякаш нямашС заявки Π·Π° рСсурси Π·Π° тях.

Π’ Ρ‚ΠΎΠ·ΠΈ случай ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‡ΠΈΠΊΡŠΡ‚ чСсто Π±ΠΈ β€žΠΈΠ·ΡΡ‚ΠΈΡΠΊΠ°Π»β€œ ΠΏΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ ΠΈ Π½Π΅ Π±ΠΈ могъл Π΄Π° Π³ΠΈ ΠΏΡ€Π΅ΠΏΠ»Π°Π½ΠΈΡ€Π°, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½Π°Ρ‚Π° Ρ€Π°Π²Π½ΠΈΠ½Π° нямашС прСдстава ΠΊΠΎΠ»ΠΊΠΎ рСсурси Ρ‰Π΅ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ ΠΊΠ»ΡŽΡ‡ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΠ° Π·Π° ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅.

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ Π½Π° ΠΏΠΎΠ΄ Π΅ ΠΏΠΎ-ясна Π³Ρ€Π°Π½ΠΈΡ†Π° Π·Π° ΠΏΠΎΠ΄. Π’ΠΎΠΉ прСдставлява максималното количСство рСсурси, ΠΊΠΎΠΈΡ‚ΠΎ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΡŠΡ‚ Ρ‰Π΅ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»ΠΈ към ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

ΠžΡ‚Π½ΠΎΠ²ΠΎ ΠΎΡ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½Π° докумСнтация: Ако ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΡŠΡ‚ ΠΈΠΌΠ° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΎΡ‚ 4 GiB, Ρ‚ΠΎΠ³Π°Π²Π° kubelet (ΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°) Ρ‰Π΅ Π³ΠΎ Π½Π°Π»ΠΎΠΆΠ°Ρ‚. Π’Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π΅ позволява Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ ΡƒΠΊΠ°Π·Π°Π½ΠΎΡ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° рСсурситС. НапримСр, ΠΊΠΎΠ³Π°Ρ‚ΠΎ процСс Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ сС ΠΎΠΏΠΈΡ‚Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎΡ‚ΠΎ количСство ΠΏΠ°ΠΌΠ΅Ρ‚, систСмното ядро ​​прСкратява процСса с Π³Ρ€Π΅ΡˆΠΊΠ° β€žΠ½Π΅Π΄ΠΎΡΡ‚ΠΈΠ³ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚β€œ (OOM).

Π•Π΄ΠΈΠ½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π²ΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ рСсурси, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π΅ посочСно Π² заявката Π·Π° рСсурс, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ. Π’Π°Π·ΠΈ стойност Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° сС Π·Π°Π΄Π°Π΄Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ, Π½ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½Π°.

Π’ идСалния случай искамС изискванията Π·Π° рСсурси Π½Π° ΠΏΠΎΠ΄ Π΄Π° сС промСнят ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ТизнСния Ρ†ΠΈΠΊΡŠΠ» Π½Π° процСса, Π±Π΅Π· Π΄Π° сС намСсват Π² Π΄Ρ€ΡƒΠ³ΠΈ процСси Π² систСмата - Ρ‚ΠΎΠ²Π° Π΅ Ρ†Π΅Π»Ρ‚Π° Π½Π° Π·Π°Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ограничСния.

Π—Π° съТалСниС Π½Π΅ ΠΌΠΎΠ³Π° Π΄Π° Π΄Π°ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ инструкции ΠΊΠ°ΠΊΠ²ΠΈ стойности Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΠΌ, Π½ΠΎ Π½ΠΈΠ΅ самитС сС ΠΏΡ€ΠΈΠ΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ към слСднитС ΠΏΡ€Π°Π²ΠΈΠ»Π°:

  1. Използвайки инструмСнт Π·Π° тСстванС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ, Π½ΠΈΠ΅ симулирамС Π±Π°Π·ΠΎΠ²ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΈ наблюдавамС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° рСсурситС Π½Π° pod (ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈ процСсор).
  2. Π—Π°Π΄Π°ΠΉΡ‚Π΅ заявкитС Π½Π° pod Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ ниска стойност (с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° рСсурса ΠΎΡ‚ ΠΎΠΊΠΎΠ»ΠΎ 5 ΠΏΡŠΡ‚ΠΈ стойността Π½Π° заявкитС) ΠΈ Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°ΠΉΡ‚Π΅. ΠšΠΎΠ³Π°Ρ‚ΠΎ заявкитС са Π½Π° Ρ‚Π²ΡŠΡ€Π΄Π΅ ниско Π½ΠΈΠ²ΠΎ, ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° стартира, ΠΊΠΎΠ΅Ρ‚ΠΎ чСсто причинява Π·Π°Π³Π°Π΄ΡŠΡ‡Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ изпълнСниС Π½Π° Go.

ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π°ΠΌ, Ρ‡Π΅ ΠΏΠΎ-високитС ограничСния Π½Π° рСсурситС правят ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΏΠΎ-Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ pod сС Π½ΡƒΠΆΠ΄Π°Π΅ ΠΎΡ‚ Ρ†Π΅Π»Π΅Π²ΠΈ възСл с Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π½Π°Π»ΠΈΡ‡Π½ΠΈ рСсурси.

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

Π‘Ρ‚ΡŠΠΏΠΊΠ° Π²Ρ‚ΠΎΡ€Π°: НастройтС тСстовС Π·Π° ТизнСност ΠΈ готовност

Π’ΠΎΠ²Π° Π΅ Π΄Ρ€ΡƒΠ³Π° Ρ„ΠΈΠ½Π° Ρ‚Π΅ΠΌΠ°, която чСсто сС обсъТда Π² общността Π½Π° Kubernetes. Π’Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ Π΄ΠΎΠ±Ρ€ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° тСстовСтС Π·Π° оТивСност ΠΈ готовност, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅ осигуряват ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° стабилна Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° софтуСра ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° прСстой. Π’Π΅ ΠΎΠ±Π°Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ сСриозно Π΄Π° повлияят Π½Π° производитСлността Π½Π° Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π°ΠΊΠΎ Π½Π΅ са ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ. По-Π΄ΠΎΠ»Ρƒ Π΅ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ прСдставляват Π΄Π²Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ±ΠΈ.

ЖизнСност ΠΏΠΎΠΊΠ°Π·Π²Π° Π΄Π°Π»ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΡŠΡ‚ Ρ€Π°Π±ΠΎΡ‚ΠΈ. Ако Π½Π΅ успСС, kubelet ΡƒΠ±ΠΈΠ²Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π° Π·Π° рСстартиранС Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π° Π·Π° Π½Π΅Π³ΠΎ. Ако ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΡŠΡ‚ Π½Π΅ Π΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½ с Liveness Probe, Ρ‚ΠΎΠ³Π°Π²Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Ρ‰Π΅ бъдС успСх - ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ посочСно Π² ДокумСнтация Π½Π° Kubernetes.

ΠŸΡ€ΠΎΠ±ΠΈΡ‚Π΅ Π½Π° Liveness трябва Π΄Π° са Π΅Π²Ρ‚ΠΈΠ½ΠΈ, Ρ‚.Π΅. Π΄Π° Π½Π΅ консумират ΠΌΠ½ΠΎΠ³ΠΎ рСсурси, Π·Π°Ρ‰ΠΎΡ‚ΠΎ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ чСсто ΠΈ трябва Π΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Ρ‚ Kubernetes, Ρ‡Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ.

Ако Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ опцията Π΄Π° сС изпълнява всяка сСкунда, Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Π΄ΠΎΠ±Π°Π²ΠΈ 1 заявка Π² сСкунда, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΈΠΌΠ°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄, Ρ‡Π΅ Ρ‰Π΅ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ рСсурси Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Ρ‚ΠΎΠ·ΠΈ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ.

Π’ Π½Π°ΡˆΠ°Ρ‚Π° компания тСстовСтС Π½Π° Liveness тСстват основнитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, Π΄ΠΎΡ€ΠΈ Π°ΠΊΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚ ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ кСш) Π½Π΅ са напълно Π½Π°Π»ΠΈΡ‡Π½ΠΈ.

НастроихмС β€žΠ·Π΄Ρ€Π°Π²ΠΎΡΠ»ΠΎΠ²Π½Π°β€œ ΠΊΡ€Π°ΠΉΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π² прилоТСнията, която просто Π²Ρ€ΡŠΡ‰Π° ΠΊΠΎΠ΄ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ 200. Π’ΠΎΠ²Π° Π΅ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Ρ‡Π΅ ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° заявки (Π½ΠΎ всС ΠΎΡ‰Π΅ Π½Π΅ ΠΈ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ).

тСст Готовност ΠΏΠΎΠΊΠ°Π·Π²Π° Π΄Π°Π»ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΡŠΡ‚ Π΅ Π³ΠΎΡ‚ΠΎΠ² Π΄Π° обслуТва заявки. Ако ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ‚Π° Π·Π° готовност Π΅ Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ½Π°, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€ΡŠΡ‚ Π½Π° ΠΊΡ€Π°ΠΉΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° IP адрСса Π½Π° pod ΠΎΡ‚ ΠΊΡ€Π°ΠΉΠ½ΠΈΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π° всички услуги, ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‰ΠΈ Π½Π° pod. Π’ΠΎΠ²Π° ΡΡŠΡ‰ΠΎ Π΅ посочСно Π² докумСнтацията Π½Π° Kubernetes.

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

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

Ако Ρ€Π΅ΡˆΠΈΡ‚Π΅ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ заявка Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π·Π° Π΄Π° тСстватС готовността Π½Π° Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡƒΠ²Π΅Ρ€Π΅Ρ‚Π΅ сС, Ρ‡Π΅ Π΅ възмоТно Π½Π°ΠΉ-Π΅Π²Ρ‚ΠΈΠ½ΠΎ. НСка Π²Π·Π΅ΠΌΠ΅ΠΌ Ρ‚Π°Π·ΠΈ заявка:

SELECT small_item FROM table LIMIT 1

Π•Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°ΠΌΠ΅ Ρ‚Π΅Π·ΠΈ Π΄Π²Π΅ стойности Π² Kubernetes:

livenessProbe: 
 httpGet:   
   path: /api/liveness    
   port: http 
readinessProbe:  
 httpGet:    
   path: /api/readiness    
   port: http  periodSeconds: 2

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ някои Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΎΠΏΡ†ΠΈΠΈ Π·Π° конфигурация:

  • initialDelaySeconds - ΠΊΠΎΠ»ΠΊΠΎ сСкунди Ρ‰Π΅ ΠΌΠΈΠ½Π°Ρ‚ ΠΌΠ΅ΠΆΠ΄Ρƒ изстрСлванСто Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΈ Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° изстрСлванСто Π½Π° сондитС.
  • periodSeconds β€” ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π½Π° ΠΈΠ·Ρ‡Π°ΠΊΠ²Π°Π½Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΠ±ΠΈΡ‚Π΅.
  • timeoutSeconds β€” броя сСкунди, слСд ΠΊΠΎΠΈΡ‚ΠΎ капсулата сС счита Π·Π° Π°Π²Π°Ρ€ΠΈΠΉΠ½Π°. НормалСн Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚.
  • failureThreshold Π΅ броят Π½Π° Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ½ΠΈΡ‚Π΅ тСстовС, ΠΏΡ€Π΅Π΄ΠΈ Π΄Π° бъдС ΠΈΠ·ΠΏΡ€Π°Ρ‚Π΅Π½ сигнал Π·Π° рСстартиранС към Π³Ρ€ΡƒΠΏΠ°Ρ‚Π°.
  • successThreshold Π΅ броят Π½Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΈΡ‚Π΅ ΠΎΠΏΠΈΡ‚ΠΈ ΠΏΡ€Π΅Π΄ΠΈ ΠΏΠΎΠ΄ΡŠΡ‚ Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅ Π² ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π½Π° готовност (слСд ΠΏΠΎΠ²Ρ€Π΅Π΄Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΏΠΎΠ΄ΡŠΡ‚ сС стартира ΠΈΠ»ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈ).

Π‘Ρ‚ΡŠΠΏΠΊΠ° Ρ‚Ρ€Π΅Ρ‚Π°: Π—Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° Pod

Kubernetes ΠΈΠΌΠ° "плоска" ΠΌΡ€Π΅ΠΆΠΎΠ²Π° топография, ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ всички ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠΈΡ€Π°Ρ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π΅Π΄ΠΈΠ½ с Π΄Ρ€ΡƒΠ³. Π’ някои случаи Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»Π½ΠΎ.

ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π΅Π½ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ със сигурността Π΅, Ρ‡Π΅ нападатСлят ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΅Π΄Π½ΠΎ уязвимо ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π° Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ към всички ΠΏΠΎΠ΄ΠΎΠ²Π΅ Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°. ΠšΠ°ΠΊΡ‚ΠΎ Π² ΠΌΠ½ΠΎΠ³ΠΎ области Π½Π° сигурността, Ρ‚ΡƒΠΊ сС ΠΏΡ€ΠΈΠ»Π°Π³Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡŠΡ‚ Π½Π° Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ. Π’ идСалния случай ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ трябва ΠΈΠ·Ρ€ΠΈΡ‡Π½ΠΎ Π΄Π° посочват ΠΊΠΎΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ са Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈ ΠΈ ΠΊΠΎΠΈ Π½Π΅.

НапримСр, слСдното Π΅ проста ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°, която ΠΎΡ‚ΠΊΠ°Π·Π²Π° цСлия входящ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ пространство ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π°:

---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:  
 name: default-deny-ingress
spec:  
 podSelector: {}  
 policyTypes:  
   - Ingress

Визуализация Π½Π° Ρ‚Π°Π·ΠΈ конфигурация:

ΠŸΠ΅Ρ‚ пропуска ΠΏΡ€ΠΈ внСдряванС Π½Π° ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Kubernetes
(https://miro.medium.com/max/875/1*-eiVw43azgzYzyN1th7cZg.gif)
ΠŸΠΎΠ²Π΅Ρ‡Π΅ подробности Ρ‚ΡƒΠΊ.

Π§Π΅Ρ‚Π²ΡŠΡ€Ρ‚Π° ΡΡ‚ΡŠΠΏΠΊΠ°: ΠŸΠ΅Ρ€ΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ с ΠΊΡƒΠΊΠΈΡ‡ΠΊΠΈ ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‰ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ

Π•Π΄Π½Π° ΠΎΡ‚ основнитС Π½ΠΈ Ρ†Π΅Π»ΠΈ бСшС Π΄Π° осигурим внСдрявания Π² Kubernetes Π±Π΅Π· прСстой Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅. Π’ΠΎΠ²Π° Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡ†ΠΈΠΈ Π·Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ Π½Π° прилоТСния ΠΈ освобоТдаванС Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡ‚Π΅ ΠΎΡ‚ тях рСсурси.

ОсобСни трудности Π²ΡŠΠ·Π½ΠΈΠΊΠ½Π°Ρ…Π° с Nginx. ЗабСлязахмС, Ρ‡Π΅ ΠΏΡ€ΠΈ послСдоватСлно Ρ€Π°Π·ΠΏΠΎΠ»Π°Π³Π°Π½Π΅ Π½Π° Ρ‚Π΅Π·ΠΈ Pods, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈΡ‚Π΅ Π²Ρ€ΡŠΠ·ΠΊΠΈ бяха ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΈ, ΠΏΡ€Π΅Π΄ΠΈ Π΄Π° Π·Π°Π²ΡŠΡ€ΡˆΠ°Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ.

Π‘Π»Π΅Π΄ Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π΅Π½ΠΎ ΠΏΡ€ΠΎΡƒΡ‡Π²Π°Π½Π΅ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ сС ΠΎΠΊΠ°Π·Π°, Ρ‡Π΅ Kubernetes Π½Π΅ ΠΈΠ·Ρ‡Π°ΠΊΠ²Π° Nginx Π²Ρ€ΡŠΠ·ΠΊΠΈΡ‚Π΅ Π΄Π° сС изчСрпят, ΠΏΡ€Π΅Π΄ΠΈ Π΄Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈ pod. Π‘ ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΡƒΠΊΠ°Ρ‚Π° Π·Π° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ спиранС Π²Π½Π΅Π΄Ρ€ΠΈΡ…ΠΌΠ΅ слСдната функционалност ΠΈ напълно сС ΠΎΡ‚ΡŠΡ€Π²Π°Ρ…ΠΌΠ΅ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° прСстой:

lifecycle: 
 preStop:
   exec:
     command: ["/usr/local/bin/nginx-killer.sh"]

Но nginx-killer.sh:

#!/bin/bash
sleep 3
PID=$(cat /run/nginx.pid)
nginx -s quit
while [ -d /proc/$PID ]; do
   echo "Waiting while shutting down nginx..."
   sleep 10
done

Π”Ρ€ΡƒΠ³Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° init ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ Π·Π° справянС със стартиранСто Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ прилоТСния. Π’ΠΎΠ²Π° Π΅ особСно ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π°ΠΊΠΎ ΠΈΠΌΠ°Ρ‚Π΅ Ρ€Π΅ΡΡƒΡ€ΡΠΎΠ΅ΠΌΡŠΠΊ процСс Π½Π° миграция Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ трябва Π΄Π° сС стартира ΠΏΡ€Π΅Π΄ΠΈ стартиранСто Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ. ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ ΠΏΠΎ-високо ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° рСсурситС Π·Π° Ρ‚ΠΎΠ·ΠΈ процСс, Π±Π΅Π· Π΄Π° Π·Π°Π΄Π°Π²Π°Ρ‚Π΅ Ρ‚Π°ΠΊΠΎΠ²Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π·Π° основното ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π”Ρ€ΡƒΠ³Π° чСсто срСщана схСма Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Ρ‚Π°ΠΉΠ½ΠΈ Π² init ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°, ΠΊΠΎΠΉΡ‚ΠΎ прСдоставя Ρ‚Π΅Π·ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° главния ΠΌΠΎΠ΄ΡƒΠ», ΠΊΠΎΠ΅Ρ‚ΠΎ прСдотвратява Π½Π΅ΠΎΡ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€Π°Π½ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Ρ‚Π°ΠΉΠ½ΠΈ ΠΎΡ‚ самия основСн ΠΌΠΎΠ΄ΡƒΠ» Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.

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

Π‘Ρ‚ΡŠΠΏΠΊΠ° ΠΏΠ΅Ρ‚Π°: ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ Π½Π° ядрото

И накрая, Π½Π΅ΠΊΠ° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° Π΅Π΄Π½Π° ΠΏΠΎ-ΠΌΠΎΠ΄Π΅Ρ€Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°.

Kubernetes Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ гъвкава ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, която Π²ΠΈ позволява Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ натоварвания, ΠΊΠ°ΠΊΡ‚ΠΎ смСтнСтС Π·Π° Π΄ΠΎΠ±Ρ€Π΅. ИмамС Ρ€Π΅Π΄ΠΈΡ†Π° високоСфСктивни прилоТСния, ΠΊΠΎΠΈΡ‚ΠΎ са ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ рСсурсоСмки. Π‘Π»Π΅Π΄ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π΅Π½ΠΈ тСстовС Π·Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ ΠΎΡ‚ΠΊΡ€ΠΈΡ…ΠΌΠ΅, Ρ‡Π΅ Π΅Π΄Π½ΠΎ ΠΎΡ‚ прилоТСнията ΠΈΠ·ΠΏΠΈΡ‚Π²Π° затруднСния Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΎΡ‡Π°ΠΊΠ²Π°Π½ΠΎΡ‚ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ настройкитС ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° Kubernetes са Π² сила.

Kubernetes ΠΎΠ±Π°Ρ‡Π΅ Π²ΠΈ позволява Π΄Π° стартиратС ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΠΉΡ‚ΠΎ промСня само ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ядрото Π·Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π΅Π½ pod. Π•Ρ‚ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…ΠΌΠ΅, Π·Π° Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠΌ максималния Π±Ρ€ΠΎΠΉ ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ:

initContainers:
  - name: sysctl
     image: alpine:3.10
     securityContext:
         privileged: true
      command: ['sh', '-c', "sysctl -w net.core.somaxconn=32768"]

Π’ΠΎΠ²Π° Π΅ ΠΏΠΎ-ΠΌΠΎΠ΄Π΅Ρ€Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°, която чСсто Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°. Но Π°ΠΊΠΎ Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ сС Π±ΠΎΡ€ΠΈ Π΄Π° сС справи с голямо Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΠΏΠΈΡ‚Π°Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ някои ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ настройки. ΠŸΠΎΠ²Π΅Ρ‡Π΅ информация Π·Π° Ρ‚ΠΎΠ·ΠΈ процСс ΠΈ Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ стойности - ΠΊΠ°ΠΊΡ‚ΠΎ Π²ΠΈΠ½Π°Π³ΠΈ Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½Π°Ρ‚Π° докумСнтация.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Kubernetes ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°Ρ‚ΠΎ Π³ΠΎΡ‚ΠΎΠ²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΈΠΌΠ° няколко ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈ ΡΡ‚ΡŠΠΏΠΊΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ΅Ρ‚ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚Π΅ прилоТСнията Π΄Π° работят Π³Π»Π°Π΄ΠΊΠΎ.

По Π²Ρ€Π΅ΠΌΠ΅ Π½Π° миграцията към Kubernetes Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° слСдватС β€žΡ†ΠΈΠΊΡŠΠ»Π° Π½Π° тСстванС Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅β€œ: стартирайтС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, тСствайтС Π³ΠΎ ΠΏΠΎΠ΄ Ρ‚ΠΎΠ²Π°Ρ€, Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅, ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°ΠΉΡ‚Π΅ конфигурацията въз основа Π½Π° Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Ρ‚Π΅ Ρ‚ΠΎΠ·ΠΈ Ρ†ΠΈΠΊΡŠΠ» ΠΎΡ‚Π½ΠΎΠ²ΠΎ.

Π‘ΡŠΠ΄Π΅Ρ‚Π΅ рСалисти относно очаквания Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΈ сС ΠΎΠΏΠΈΡ‚Π°ΠΉΡ‚Π΅ Π΄Π° Π³ΠΎ Π½Π°Π΄Ρ…Π²ΡŠΡ€Π»ΠΈΡ‚Π΅, Π·Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠΎΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ сС ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π°Ρ‚ ΠΏΡŠΡ€Π²ΠΈ. Π‘ Ρ‚ΠΎΠ·ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π΅Π½ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ само няколко ΠΎΡ‚ ΠΈΠ·Π±Ρ€ΠΎΠ΅Π½ΠΈΡ‚Π΅ ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° са Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ Π·Π° постиганС Π½Π° успСх. Или ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎ-Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π΅Π½ΠΎ пСрсонализиранС.

Π’ΠΈΠ½Π°Π³ΠΈ си Π·Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ слСднитС Π²ΡŠΠΏΡ€ΠΎΡΠΈ:

  1. Колко рСсурси консумират прилоТСнията ΠΈ ΠΊΠ°ΠΊ Ρ‰Π΅ сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Ρ‚ΠΎΠ²Π° количСство?
  2. Какви са Ρ€Π΅Π°Π»Π½ΠΈΡ‚Π΅ изисквания Π·Π° ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅? Колко Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Ρ‰Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΈ срСдно ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ? Какво Ρ‰Π΅ ΠΊΠ°ΠΆΠ΅Ρ‚Π΅ Π·Π° пиковия Ρ‚Ρ€Π°Ρ„ΠΈΠΊ?
  3. Колко чСсто услугата Ρ‰Π΅ трябва Π΄Π° сС Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π°? Колко Π±ΡŠΡ€Π·ΠΎ трябва Π΄Π° заработят Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠΎΠ΄ΠΎΠ²Π΅, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ?
  4. Колко Π³Ρ€Π°Ρ†ΠΈΠΎΠ·Π½ΠΎ сС ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ капсулитС? НСобходимо Π»ΠΈ Π΅ ΠΈΠ·ΠΎΠ±Ρ‰ΠΎ? Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅ Π΄Π° сС постигнС внСдряванС Π±Π΅Π· прСстой?
  5. Как Π΄Π° свСдСтС Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ рисковСтС Π·Π° сигурността ΠΈ Π΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅ Ρ‰Π΅Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ всякакви ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚ΠΈΡ€Π°Π½ΠΈ ΠΏΠΎΠ΄ΠΎΠ²Π΅? Има Π»ΠΈ услуги Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄ΠΎΡΡ‚ΡŠΠΏΠΈ, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ сС нуТдаят?

Kubernetes прСдоставя нСвСроятна ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, която Π²ΠΈ позволява Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΈΡ‚Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Π·Π° внСдряванС Π½Π° хиляди услуги Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€. Всички прилоТСния ΠΎΠ±Π°Ρ‡Π΅ са Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ. Понякога ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ изисква ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Ρ€Π°Π±ΠΎΡ‚Π°.

Π—Π° щастиС, Kubernetes прСдоставя Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈΡ‚Π΅ настройки Π·Π° постиганС Π½Π° всички тСхничСски Ρ†Π΅Π»ΠΈ. Π§Ρ€Π΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° комбинация ΠΎΡ‚ заявки Π·Π° рСсурси ΠΈ ограничСния, сонди Π·Π° Liveness ΠΈ Readiness, init ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΈ пСрсонализирана настройка Π½Π° ядрото, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° постигнСтС висока производитСлност Π·Π°Π΅Π΄Π½ΠΎ с толСрантност към Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ Π±ΡŠΡ€Π·Π° мащабируСмост.

Какво Π΄Ρ€ΡƒΠ³ΠΎ Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅:

  1. Най-Π΄ΠΎΠ±Ρ€ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈ Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Π·Π° изпълнСниС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ ΠΈ Kubernetes Π² производствСни срСди.
  2. 90+ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ инструмСнта Π·Π° Kubernetes: внСдряванС, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, наблюдСниС, сигурност ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ.
  3. ΠΠ°ΡˆΠΈΡΡ‚ ΠΊΠ°Π½Π°Π» Около Kubernetes Π² Telegram.

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

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