ΠΠ½ΠΎΠ³ΠΎ Ρ ΠΎΡΠ° ΡΠΌΡΡΠ°Ρ, ΡΠ΅ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π΄Π° ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π² Kubernetes (Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Helm ΠΈΠ»ΠΈ ΡΡΡΠ½ΠΎ) - ΠΈ ΡΠ΅ ΠΈΠΌΠ° ΡΠ°ΡΡΠΈΠ΅. ΠΠΎ Π½Π΅ Π²ΡΠΈΡΠΊΠΎ Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΡΠΎΡΡΠΎ.
ΠΡΠ±ΠΎΡ
ΠΡΡΠ²Π° ΡΡΡΠΏΠΊΠ°: ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π·Π° Pod
ΠΠ΅ΠΊΠ° Π·Π°ΠΏΠΎΡΠ½Π΅ΠΌ, ΠΊΠ°ΡΠΎ ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΡΠΈΡΡΠ° ΡΡΠ΅Π΄Π°, Π² ΠΊΠΎΡΡΠΎ Π½Π°ΡΠΈΡΠ΅ ΠΊΠ°ΠΏΡΡΠ»ΠΈ ΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ. Kubernetes Π΅ ΡΡΡΠ°Ρ ΠΎΡΠ΅Π½ Π² ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° pod ΠΈ ΠΏΡΠΈ ΠΎΡΠΊΠ°Π·. ΠΠΎ ΡΠ΅ ΠΎΠΊΠ°Π·Π°, ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΡΡ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈ ΠΏΠΎΠ΄, Π°ΠΊΠΎ Π΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΠΏΡΠ΅ΡΠ΅Π½ΠΈ ΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΡΡΡΠΈ ΡΠ° ΠΌΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ, Π·Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ. Π’ΠΎΠ²Π° Π΅ ΠΌΡΡΡΠΎΡΠΎ, ΠΊΡΠ΄Π΅ΡΠΎ ΠΈΠ·ΡΠΊΠ°ΡΠ°Ρ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ. ΠΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Π±Π°ΡΠΈ ΠΎΡΠ½ΠΎΡΠ½ΠΎ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ ΠΈ Π»ΠΈΠΌΠΈΡΠΈ. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, ΡΠ΅ ΡΠΎΠ²Π° Π½Π°ΠΈΡΡΠΈΠ½Π° Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΈΠ·ΠΊΡΡΡΠ²ΠΎ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π½Π°ΡΠΊΠ°. ΠΡΠΎ Π½Π°ΡΠΈΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄.
ΠΠΎΠ΄ Π·Π°ΡΠ²ΠΊΠΈ Π΅ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΎΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Π·Π° ΠΎΠΏΡΠΈΠΌΠ°Π»Π½ΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΠΏΠΎΠ΄.
ΠΠ°
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° Kubernetes : Π‘ΡΡΠΏΠΊΠ°ΡΠ° Π½Π° ΡΠΈΠ»ΡΡΡΠ° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° Π½Π°Π±ΠΎΡ ΠΎΡ Π²ΡΠ·Π»ΠΈ, ΠΊΡΠ΄Π΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ Pod. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΈΠ»ΡΡΡΡΡ PodFitsResources ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π΄Π°Π»ΠΈ Π΄Π°Π΄Π΅Π½ Π²ΡΠ·Π΅Π» ΠΈΠΌΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΡΠ΅ΡΡΡΡΠΈ, Π·Π° Π΄Π° ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈ ΠΎΡ ΠΏΠΎΠ΄.
ΠΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½, ΡΠ΅ Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡΠ΅ΡΠ΅Π½ΠΈΠΌ ΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΡΡΡΠΈ Π²ΡΡΡΠ½ΠΎΡΡ ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ ΠΎΡ ΡΠΎΠ²Π°, Π·Π° Π΄Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ. ΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΡΡ ΠΌΠΎΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΡΡΠΈΡΠ½ΠΎ Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈ Π²ΡΠ·Π»ΠΈΡΠ΅. ΠΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΠΈΡΠΊΠ°Ρ ΠΌΠ΅ Π΄Π° ΠΏΡΠ΅Π½Π°ΡΡΠΎΡΠΈΠΌ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅, Π·Π° Π΄Π° ΠΎΡΠΈΠ³ΡΡΠΈΠΌ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΡΠ΅ΡΡΡΡΠΈ Π·Π° Π²ΡΠ΅ΠΊΠΈ Pod, Π½ΠΎ Π·Π°Π±Π΅Π»ΡΠ·Π°Ρ ΠΌΠ΅, ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈ Π½ΡΠΊΠΎΠΈ Pods Π½Π΅ Π±ΡΡ Π° Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ΠΈ, ΡΡΠΊΠ°Ρ Π½ΡΠΌΠ°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈ Π·Π° ΡΡΡ .
Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΡΡ ΡΠ΅ΡΡΠΎ Π±ΠΈ βΠΈΠ·ΡΡΠΈΡΠΊΠ°Π»β ΠΏΠΎΠ΄ΠΎΠ²Π΅ΡΠ΅ ΠΈ Π½Π΅ Π±ΠΈ ΠΌΠΎΠ³ΡΠ» Π΄Π° Π³ΠΈ ΠΏΡΠ΅ΠΏΠ»Π°Π½ΠΈΡΠ°, Π·Π°ΡΠΎΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΠ°Π²Π½ΠΈΠ½Π° Π½ΡΠΌΠ°ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π° ΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΡΡΡΠΈ ΡΠ΅ ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΊΠ»ΡΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° Π·Π° ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅.
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΏΠΎΠ΄ Π΅ ΠΏΠΎ-ΡΡΠ½Π° Π³ΡΠ°Π½ΠΈΡΠ° Π·Π° ΠΏΠΎΠ΄. Π’ΠΎΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΡΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΊΠ»ΡΡΡΠ΅ΡΡΡ ΡΠ΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΠΈ ΠΊΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°.
ΠΡΠ½ΠΎΠ²ΠΎ ΠΎΡ
ΠΎΡΠΈΡΠΈΠ°Π»Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ : ΠΠΊΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡΡ ΠΈΠΌΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΠΎΡ 4 GiB, ΡΠΎΠ³Π°Π²Π° kubelet (ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°) ΡΠ΅ Π³ΠΎ Π½Π°Π»ΠΎΠΆΠ°Ρ. ΠΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΡΠΊΠ°Π·Π°Π½ΠΎΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΡΠΎΡΠ΅Ρ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΡΠ΅ ΠΎΠΏΠΈΡΠ° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΠΌΠ΅Ρ, ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΡΠΎ ΡΠ΄ΡΠΎ ββΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ²Π° ΠΏΡΠΎΡΠ΅ΡΠ° Ρ Π³ΡΠ΅ΡΠΊΠ° βΠ½Π΅Π΄ΠΎΡΡΠΈΠ³ Π½Π° ΠΏΠ°ΠΌΠ΅Ρβ (OOM).
ΠΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π²ΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎ Π² Π·Π°ΡΠ²ΠΊΠ°ΡΠ° Π·Π° ΡΠ΅ΡΡΡΡ, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΡΠΎ. Π’Π°Π·ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡ Π΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ Π·Π°Π΄Π°Π΄Π΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ, Π½ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½Π°.
Π ΠΈΠ΄Π΅Π°Π»Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉ ΠΈΡΠΊΠ°ΠΌΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° Π·Π° ΡΠ΅ΡΡΡΡΠΈ Π½Π° ΠΏΠΎΠ΄ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΆΠΈΠ·Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΡΠ» Π½Π° ΠΏΡΠΎΡΠ΅ΡΠ°, Π±Π΅Π· Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠ²Π°Ρ Π² Π΄ΡΡΠ³ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° - ΡΠΎΠ²Π° Π΅ ΡΠ΅Π»ΡΠ° Π½Π° Π·Π°Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ.
ΠΠ° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠ³Π° Π΄Π° Π΄Π°ΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΊΠ°ΠΊΠ²ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΠΌ, Π½ΠΎ Π½ΠΈΠ΅ ΡΠ°ΠΌΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠΈΠ΄ΡΡΠΆΠ°ΠΌΠ΅ ΠΊΡΠΌ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°:
- ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ, Π½ΠΈΠ΅ ΡΠΈΠΌΡΠ»ΠΈΡΠ°ΠΌΠ΅ Π±Π°Π·ΠΎΠ²ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΡΡΠ°ΡΠΈΠΊ ΠΈ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΌΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° pod (ΠΏΠ°ΠΌΠ΅Ρ ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡ).
- ΠΠ°Π΄Π°ΠΉΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π½Π° pod Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ Π½ΠΈΡΠΊΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡ (Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠ° ΠΎΡ ΠΎΠΊΠΎΠ»ΠΎ 5 ΠΏΡΡΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° Π·Π°ΡΠ²ΠΊΠΈΡΠ΅) ΠΈ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΉΡΠ΅. ΠΠΎΠ³Π°ΡΠΎ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ ΡΠ° Π½Π° ΡΠ²ΡΡΠ΄Π΅ Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ, ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ΡΡΠΎ ΠΏΡΠΈΡΠΈΠ½ΡΠ²Π° Π·Π°Π³Π°Π΄ΡΡΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Go.
ΠΡΠ±Π΅Π»ΡΠ·Π²Π°ΠΌ, ΡΠ΅ ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠΈΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΠΏΡΠ°Π²ΡΡ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ΡΠΎ ΠΏΠΎ-ΡΡΡΠ΄Π½ΠΎ, ΡΡΠΉ ΠΊΠ°ΡΠΎ pod ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ ΠΎΡ ΡΠ΅Π»Π΅Π²ΠΈ Π²ΡΠ·Π΅Π» Ρ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π½Π°Π»ΠΈΡΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ.
ΠΡΠ΅Π΄ΡΡΠ°Π²Π΅ΡΠ΅ ΡΠΈ ΡΠΈΡΡΠ°ΡΠΈΡ, Π² ΠΊΠΎΡΡΠΎ ΠΈΠΌΠ°ΡΠ΅ Π»Π΅ΠΊ ΡΠ΅Π± ΡΡΡΠ²ΡΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΈΡΠΎΠΊΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 4 GB ΠΏΠ°ΠΌΠ΅Ρ. Π’ΠΎΠ·ΠΈ ΠΏΡΠΎΡΠ΅Ρ Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½ Ρ ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»Π½ΠΎ ΠΈ Π²ΡΠ΅ΠΊΠΈ Π½ΠΎΠ² pod ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½ Π½Π° Π²ΡΠ·Π΅Π» Ρ Π½Π°ΠΉ-ΠΌΠ°Π»ΠΊΠΎ 4 GB Π½Π°Π»ΠΈΡΠ½Π° ΠΏΠ°ΠΌΠ΅Ρ. ΠΠΊΠΎ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° ΡΠ°ΠΊΡΠ² Π²ΡΠ·Π΅Π», ΠΊΠ»ΡΡΡΠ΅ΡΡΡ ΡΡΡΠ±Π²Π° Π΄Π° Π²ΡΠ²Π΅Π΄Π΅ Π½ΠΎΠ² Π²ΡΠ·Π΅Π», Π·Π° Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈ ΡΠΎΠ·ΠΈ ΠΏΠΎΠ΄, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡΠ½Π΅ΠΌΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠ°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π·Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡΠ°, Π·Π° Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ Π±ΡΡΠ·ΠΎ ΠΈ ΠΏΠ»Π°Π²Π½ΠΎ ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅.
Π‘ΡΡΠΏΠΊΠ° Π²ΡΠΎΡΠ°: ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΡΠ΅ΡΡΠΎΠ²Π΅ Π·Π° ΠΆΠΈΠ·Π½Π΅Π½ΠΎΡΡ ΠΈ Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡ
Π’ΠΎΠ²Π° Π΅ Π΄ΡΡΠ³Π° ΡΠΈΠ½Π° ΡΠ΅ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΡΠ΅ΡΡΠΎ ΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π° Π² ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° Π½Π° Kubernetes. ΠΠ°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΠΈΠΌΠ°ΡΠ΅ Π΄ΠΎΠ±ΡΠΎ ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΎΠΆΠΈΠ²Π΅Π½ΠΎΡΡ ΠΈ Π³ΠΎΡΠΎΠ²Π½ΠΎΡΡ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π·Π° ΡΡΠ°Π±ΠΈΠ»Π½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° ΡΠΎΡΡΡΠ΅ΡΠ° ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ°Ρ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΏΡΠ΅ΡΡΠΎΠΉ. Π’Π΅ ΠΎΠ±Π°ΡΠ΅ ΠΌΠΎΠ³Π°Ρ ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΎ Π΄Π° ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° Π²Π°ΡΠ΅ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π°ΠΊΠΎ Π½Π΅ ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ. ΠΠΎ-Π΄ΠΎΠ»Ρ Π΅ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π°Ρ Π΄Π²Π΅ΡΠ΅ ΠΏΡΠΎΠ±ΠΈ.
ΠΠΈΠ·Π½Π΅Π½ΠΎΡΡ ΠΏΠΎΠΊΠ°Π·Π²Π° Π΄Π°Π»ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠΈ. ΠΠΊΠΎ Π½Π΅ ΡΡΠΏΠ΅Π΅, kubelet ΡΠ±ΠΈΠ²Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΠΈ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°ΡΠ° Π·Π° ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π° Π·Π° Π½Π΅Π³ΠΎ. ΠΠΊΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡΡ Π½Π΅ Π΅ ΠΎΠ±ΠΎΡΡΠ΄Π²Π°Π½ Ρ Liveness Probe, ΡΠΎΠ³Π°Π²Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ΅ Π±ΡΠ΄Π΅ ΡΡΠΏΠ΅Ρ
- ΠΊΠ°ΠΊΡΠΎ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎ Π²
ΠΡΠΎΠ±ΠΈΡΠ΅ Π½Π° 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
ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠ°Π·ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ:
(https://miro.medium.com/max/875/1*-eiVw43azgzYzyN1th7cZg.gif)
ΠΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ
Π§Π΅ΡΠ²ΡΡΡΠ° ΡΡΡΠΏΠΊΠ°: ΠΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ ΠΊΡΠΊΠΈΡΠΊΠΈ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ
ΠΠ΄Π½Π° ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π½ΠΈ ΡΠ΅Π»ΠΈ Π±Π΅ΡΠ΅ Π΄Π° ΠΎΡΠΈΠ³ΡΡΠΈΠΌ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½ΠΈΡ Π² Kubernetes Π±Π΅Π· ΠΏΡΠ΅ΡΡΠΎΠΉ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅. Π’ΠΎΠ²Π° Π΅ ΡΡΡΠ΄Π½ΠΎ, Π·Π°ΡΠΎΡΠΎ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΈ Π·Π° ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΠ΅ ΠΎΡ ΡΡΡ ΡΠ΅ΡΡΡΡΠΈ.
ΠΡΠΎΠ±Π΅Π½ΠΈ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ
Π° Ρ
Π‘Π»Π΅Π΄ Π·Π°Π΄ΡΠ»Π±ΠΎΡΠ΅Π½ΠΎ ΠΏΡΠΎΡΡΠ²Π°Π½Π΅ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ΅ ΠΎΠΊΠ°Π·Π°, ΡΠ΅ 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 Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° ΡΠ»Π΅Π΄Π²Π°ΡΠ΅ βΡΠΈΠΊΡΠ»Π° Π½Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅β: ΡΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ, ΡΠ΅ΡΡΠ²Π°ΠΉΡΠ΅ Π³ΠΎ ΠΏΠΎΠ΄ ΡΠΎΠ²Π°Ρ, Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅, ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠ»Π΅Π΄ ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ΅ΡΠ΅ ΡΠΎΠ·ΠΈ ΡΠΈΠΊΡΠ» ΠΎΡΠ½ΠΎΠ²ΠΎ.
ΠΡΠ΄Π΅ΡΠ΅ ΡΠ΅Π°Π»ΠΈΡΡΠΈ ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΈΡ ΡΡΠ°ΡΠΈΠΊ ΠΈ ΡΠ΅ ΠΎΠΏΠΈΡΠ°ΠΉΡΠ΅ Π΄Π° Π³ΠΎ Π½Π°Π΄Ρ Π²ΡΡΠ»ΠΈΡΠ΅, Π·Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ ΡΠ΅ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π°Ρ ΠΏΡΡΠ²ΠΈ. Π‘ ΡΠΎΠ·ΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΈΠ²Π΅Π½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠ°ΠΌΠΎ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΎΡ ΠΈΠ·Π±ΡΠΎΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ Π·Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΡΡΠΏΠ΅Ρ . ΠΠ»ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎ-Π·Π°Π΄ΡΠ»Π±ΠΎΡΠ΅Π½ΠΎ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅.
ΠΠΈΠ½Π°Π³ΠΈ ΡΠΈ Π·Π°Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π²ΡΠΏΡΠΎΡΠΈ:
- ΠΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΡΡΡΠΈ ΠΊΠΎΠ½ΡΡΠΌΠΈΡΠ°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΠΈ ΠΊΠ°ΠΊ ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΠΎΠ²Π° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ?
- ΠΠ°ΠΊΠ²ΠΈ ΡΠ° ΡΠ΅Π°Π»Π½ΠΈΡΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ Π·Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅? ΠΠΎΠ»ΠΊΠΎ ΡΡΠ°ΡΠΈΠΊ ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈ ΡΡΠ΅Π΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ? ΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΠΊΠ°ΠΆΠ΅ΡΠ΅ Π·Π° ΠΏΠΈΠΊΠΎΠ²ΠΈΡ ΡΡΠ°ΡΠΈΠΊ?
- ΠΠΎΠ»ΠΊΠΎ ΡΠ΅ΡΡΠΎ ΡΡΠ»ΡΠ³Π°ΡΠ° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΠ°Π·ΡΠΈΡΡΠ²Π°? ΠΠΎΠ»ΠΊΠΎ Π±ΡΡΠ·ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π·Π°ΡΠ°Π±ΠΎΡΡΡ Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ²Π΅, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΡΠ°ΡΠΈΠΊ?
- ΠΠΎΠ»ΠΊΠΎ Π³ΡΠ°ΡΠΈΠΎΠ·Π½ΠΎ ΡΠ΅ ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°Ρ ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠ΅? ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈ Π΅ ΠΈΠ·ΠΎΠ±ΡΠΎ? ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π±Π΅Π· ΠΏΡΠ΅ΡΡΠΎΠΉ?
- ΠΠ°ΠΊ Π΄Π° ΡΠ²Π΅Π΄Π΅ΡΠ΅ Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΠΈΡΠΊΠΎΠ²Π΅ΡΠ΅ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° ΠΈ Π΄Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΠ΅ ΠΎΡ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠ°Π½ΠΈ ΠΏΠΎΠ΄ΠΎΠ²Π΅? ΠΠΌΠ° Π»ΠΈ ΡΡΠ»ΡΠ³ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠΈ, ΠΎΡ ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ΅ Π½ΡΠΆΠ΄Π°ΡΡ?
Kubernetes ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π·Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° Ρ ΠΈΠ»ΡΠ΄ΠΈ ΡΡΠ»ΡΠ³ΠΈ Π² ΠΊΠ»ΡΡΡΠ΅Ρ. ΠΡΠΈΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±Π°ΡΠ΅ ΡΠ° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°.
ΠΠ° ΡΠ°ΡΡΠΈΠ΅, Kubernetes ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΅Π»ΠΈ. Π§ΡΠ΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΎΡ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, ΡΠΎΠ½Π΄ΠΈ Π·Π° Liveness ΠΈ Readiness, init ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΡΠΈΠ³Π½Π΅ΡΠ΅ Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π·Π°Π΅Π΄Π½ΠΎ Ρ ΡΠΎΠ»Π΅ΡΠ°Π½ΡΠ½ΠΎΡΡ ΠΊΡΠΌ Π³ΡΠ΅ΡΠΊΠΈ ΠΈ Π±ΡΡΠ·Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡ.
ΠΠ°ΠΊΠ²ΠΎ Π΄ΡΡΠ³ΠΎ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅:
ΠΠ°ΠΉ-Π΄ΠΎΠ±ΡΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΈ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΈ Kubernetes Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ΠΈ ΡΡΠ΅Π΄ΠΈ .90+ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π·Π° Kubernetes: Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅, ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ ΠΈ Π΄ΡΡΠ³ΠΈ .ΠΠ°ΡΠΈΡΡ ΠΊΠ°Π½Π°Π» ΠΠΊΠΎΠ»ΠΎ Kubernetes Π² Telegram .
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com