ΠΠ° Π³ΠΎΠ΄Ρ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ Pinterest 300 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΠ΅ΡΠ²ΠΈΡΠ° ΡΠΎΠ·Π΄Π°Π»ΠΈ Π±ΠΎΠ»Π΅Π΅ 200 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄ΠΎΠ² ΠΏΠΈΠ½ΠΎΠ² Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ 4 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄ΠΎΠ² Π΄ΠΎΡΠΎΠΊ. Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡ Π°ΡΠΌΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΎΠ±ΡΠΈΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅Π½Ρ-Π±Π°Π·Ρ, ΠΏΠΎΡΡΠ°Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π» ΡΡΡΡΡΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ CPU, ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈΠΌΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΡΡΡΡΡΡΡ Π½Π° ΡΠ΅Π»ΠΎΠΌ ΠΏΠ°ΡΠΊΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ
ΠΌΠ°ΡΠΈΠ½. Π Π²ΠΎΡ Π½Π°ΡΡΡΠΏΠΈΠ» ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° Π²Π·Π³Π»ΡΠ΄ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠΏΠ°Π» Π½Π° k8s. Π§Π΅ΠΌ ΠΆΠ΅ Β«ΠΊΡΠ±ΠΈΠΊΒ» Π³Π»ΡΠ½ΡΠ»ΡΡ Β«ΠΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΒ»? ΠΠ± ΡΡΠΎΠΌ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΈΠ· Π½Π°ΡΠ΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΠ²Π΅ΠΆΠ΅ΠΉ ΡΡΠ°ΡΡΠΈ ΠΈΠ·
ΠΡΠ°ΠΊ, ΡΠΎΡΠ½ΠΈ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΡΠΎΡΠ½ΠΈ ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄ΠΎΠ² ΠΏΠΈΠ½ΠΎΠ². Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡ Π°ΡΠΌΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΎΠ±ΡΠΈΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠ΅Π½Ρ-Π±Π°Π·Ρ, ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΡΡΡΡΡΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ CPU, ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈΠΌΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΡΡΡΡΡΡΡ Π½Π° ΡΠ΅Π»ΠΎΠΌ ΠΏΠ°ΡΠΊΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ
ΠΌΠ°ΡΠΈΠ½. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² CPU, ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°.
Π Ρ
ΠΎΠ΄Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΡΠΎΠ³ΠΎ Π·ΠΎΠΎΠΏΠ°ΡΠΊΠ° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΡΡ Ρ ΡΡΠ΄ΠΎΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌ:
- Π£ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ² Π½Π΅Ρ ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° Π·Π°ΠΏΡΡΠΊΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ΅Π΄Ρ. Stateless-ΡΠ΅ΡΠ²ΠΈΡΡ, Stateful-ΡΠ΅ΡΠ²ΠΈΡΡ ΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠ΅ΡΡ Π² ΡΡΠ°Π΄ΠΈΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ Π±Π°Π·ΠΈΡΡΡΡΡΡ Π½Π° Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΡΠ°Π·Π½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅ΠΊΠ°Ρ . ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π»ΠΎ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅Π»ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΠΊΡΡΡΠ° Π΄Π»Ρ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Π½Π°ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ Π² ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ°ΡΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½, ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ². Π ΠΈΡΠΎΠ³Π΅, ΡΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΠ‘ ΠΈΠ»ΠΈ AMI, ΡΠ°ΡΡΡΠ³ΠΈΠ²Π°ΡΡΡΡ Π½Π° Π½Π΅Π΄Π΅Π»ΠΈ ΠΈ ΠΌΠ΅ΡΡΡΡ. ΠΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π², ΠΊΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π±ΡΠ΄Π½ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ .
- Π‘Π»ΠΎΠΆΠ½ΠΎΡΡΠΈ Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠΎΠΉ ΠΏΠΎΠ²Π΅ΡΡ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ. Π‘ΠΈΡΡΠ°ΡΠΈΡ ΠΎΡΠ»ΠΎΠΆΠ½ΡΠ΅ΡΡΡ Π΅ΡΠ΅ ΠΈ ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π°ΠΉΡΠΈ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Π½Π΅ΠΏΡΠΎΡΡΠΎ. Π’ΠΎ Π΅ΡΡΡ ΠΌΡ Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΡΡ ΡΡΠΈ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΡΠ°ΡΡΠΊΠ°Ρ Π½Π°ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ.
ΠΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ β ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ± ΡΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ. ΠΠ½ΠΈ ΠΎΡΠΊΡΡΠ²Π°ΡΡ Π²Π°ΠΌ ΠΏΡΡΡ ΠΊ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΡΠΏΡΠΎΡΠ°ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠ΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΠ΅ΡΡΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ.
Π ΠΈΡΡΠ½ΠΎΠΊ 1: ΠΡΠΈΠΎΡΠΈΡΠ΅ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ (Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ).
ΠΠΎΠΌΠ°Π½Π΄Π° Cloud Management Platform Π² Pinterest ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»Π°ΡΡ Ρ K8s Π² 2017 Π³ΠΎΠ΄Ρ. Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ 2017 ΠΌΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π»ΠΈ Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ Π½Π°ΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΡ ΠΌΠΎΡΠ½ΠΎΡΡΠ΅ΠΉ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅, API ΠΈ Π²ΡΠ΅ Π½Π°ΡΠΈ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΡ. ΠΠΎΡΠ»Π΅ ΠΌΡ ΠΏΡΠΎΠ²Π΅Π»ΠΈ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΠΎΡΠ΅Π½ΠΊΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠ² ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π½ΠΈΠΌΠΈ. Π ΠΊΠΎΠ½ΡΡ 2017 Π³ΠΎΠ΄Π° ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Kubernetes. ΠΠ½ Π±ΡΠ» Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π³ΠΈΠ±ΠΎΠΊ ΠΈ ΡΠΈΡΠΎΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π»ΡΡ Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Π Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΌΠΎΠΌΠ΅Π½ΡΡ ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Kops ΠΈ ΠΏΠ΅ΡΠ΅Π²Π΅Π»ΠΈ Π½Π° Kubernetes ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ β ΡΠ°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ ΡΠ΅ΡΡ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ, Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΆΡΡΠ½Π°Π»ΠΎΠ², ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ ΠΈ ΡΡΠ°ΡΠΈΠΊ. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠΈΡ Π½Π°Π³ΡΡΠ·ΠΎΠΊ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ΅ΡΡΡΡΠ°, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΊΡΡΡΠ° ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠ΅Π½Ρ Π½Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°, Π΅Π³ΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π½ΠΎΠ²ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
Kubernetes: ΠΏΡΡΡ Pinterest
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ Kubernetes Π² ΠΌΠ°ΡΡΡΠ°Π±Π°Ρ Pinterest ΠΊΠ°ΠΊ Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π»ΡΠ±ΠΈΠΌΠ° Π½Π°ΡΠΈΠΌΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ°ΠΌΠΈ, Π²ΡΠ»ΠΈΠ»ΠΎΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΡΠ΄Π½ΠΎΡΡΠ΅ΠΉ.
ΠΠ°ΠΊ ΠΊΡΡΠΏΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΌΡ Π²Π»ΠΎΠΆΠΈΠ»ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ. Π ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΊΠ»ΡΡΠΈ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΡΡΠ°ΡΠΈΠΊΠ°, ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΆΡΡΠ½Π°Π»ΠΎΠ² ΠΈ ΠΌΠ΅ΡΡΠΈΠΊ. ΠΡΠ΅ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠΎΠ±ΡΠ°Π½ΠΎ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΊ: ΠΌΡ ΠΏΡΠΎΡΠ»ΠΈ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΡΡΡ ΠΏΡΠΎΠ± ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΈ ΠΏΠΎΡΠΎΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΡΡΠΎ Ρ ΠΎΠ·ΡΠΉΡΡΠ²ΠΎ Π² Π½ΠΎΠ²ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π½Π° Kubernetes Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π·Π°Π½ΠΎΠ²ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ°ΡΡ ΡΡΠ°ΡΡΠΉ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ Π½Π° Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π² ΡΠ΅Π»ΠΎΠΌ ΡΠΏΡΠΎΡΡΠΈΠ» ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, Π΅Π΅ Π½Π΅ Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Ρ Π½ΡΠ»Ρ.
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΎΠΊ Π² ΡΠ°ΠΌΠΎΠΌ Kubernetes (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ, Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΈ Π½Π°Π±ΠΎΡΠΎΠ² Daemon) Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ·Π°Π±ΠΈΠ»ΠΈΡΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΌΠΈ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΠΈΡΠΌΠΈ Π½Π° ΠΏΡΡΠΈ ΠΊ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ Π½Π° Kubernetes. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ ΡΠ»ΡΡΠ°Π»ΠΈ, ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΆΠ°Π»ΡΡΡΡΡ Π½Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Π²Ρ ΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡ Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΎΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈΡΡ ΡΠΎΡΠ½ΠΈ ΠΊΠΎΠΏΠΈΠΉ Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ ΠΈ Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ, ΡΡΠΎ Π²ΡΠ»ΠΈΠ²Π°Π»ΠΎΡΡ Π² ΠΊΠΎΡΠΌΠ°ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΎΠΉ.
ΠΡΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΡΠΎΠΌ ΠΆΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ΅. ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅Π±Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΡΠ°Π·Ρ Π²ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅ Π²Π΅ΡΡΠΈΠΉ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ ΡΠΎΠΉ ΠΆΠ΅ ΡΡΠ΅Π΄Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, Π±Π°Π³Π°ΠΌΠΈ ΠΈ Π°ΠΏΠ΄Π΅ΠΉΡΠ°ΠΌΠΈ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Pinterest
Π§ΡΠΎΠ±Ρ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Kubernetes, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΡΡΠΊΠΎΡΠΈΡΡ Π΅Π΅ ΡΠ°Π±ΠΎΡΡ, ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Π½Π°ΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² (CRD).
CRD ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ:
- ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π½Π°ΡΠΈΠ²Π½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² Kubernetes, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΅Π΄ΠΈΠ½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΡΡΡ PinterestService Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅, ΡΠ»ΡΠΆΠ±Ρ Π²Ρ ΠΎΠ΄Π° ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΠΊΠ°ΡΡΡ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ DNS.
- ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΠ²ΠΎΠ΅ΠΉ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ΅, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ CRD Π²Π½Π΅Π΄ΡΡΠ΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ init-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ pod. ΠΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½ΠΎ ΠΈΠ½ΠΎΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΊΠΎΠΌΡΠΎΡΡΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
- ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ CRD ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ ΠΏΠΎΠ²ΡΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ. ΠΡΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠΉ ΠΈ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡΠ° CRD ΠΈ Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΎΠ² ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ. ΠΠ΅Π· CRD ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π±ΡΠ»ΠΈ Π±Ρ Π²ΡΠ½ΡΠΆΠ΄Π΅Π½Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠ΅ΡΡΡΡΠΎΠ², ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ²ΡΡΠ°Π»ΠΎ Π±Ρ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ PinterestService ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅ΡΡΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½Π°ΡΠΈΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠΌ:
ΠΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π²ΡΡΠ΅, Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Π² Π½Π΅Π³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡ ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΠ΅Π²ΡΠΌ ΡΡΠ°ΡΠΈΠΊΠΎΠΌ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΊΠ°ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² PVC Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΡ
Π·Π°Π΄Π°Π½ΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅ΠΊΠΈΠ½Π³ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π΄Ρ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ ΡΠ±ΠΎΡΠ° Β«ΠΌΡΡΠΎΡΠ°Β».
Π’ΡΡΠ΄Π½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π·Π°Ρ ΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π²ΡΡΡΠ½ΡΡ Π±Π΅Π· ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ CRD, Π½Π΅ Π³ΠΎΠ²ΠΎΡΡ ΡΠΆΠ΅ ΠΎ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ.
ΠΠΎΡΠΊΡΠ»ΠΎΡ Π΄Π΅ΠΏΠ»ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
ΠΠ° ΡΠΈΡΡΠ½ΠΊΠ΅ Π²ΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ΅ΡΡΡΡ Pinterest Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠ΅ Kubernetes:
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ Ρ Π½Π°ΡΠΈΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠΌ Kubernetes ΡΠ΅ΡΠ΅Π· CLI ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
- ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ CLI / UI ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ YAML-ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠ±ΠΎΡΠΊΠΈ (ΡΠΎΡ ΠΆΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π²Π΅ΡΡΠΈΠΈ) ΠΈΠ· Artifactory, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΡ Π² Job Submission Service. ΠΡΠΎΡ ΡΠ°Π³ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅Ρ Π±ΡΠ΄ΡΡ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±ΠΎΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ.
- JSS ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΡΠ·ΠΎΠΌ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ, Π²ΠΊΠ»ΡΡΠ°Ρ Kubernetes. Π’ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π²ΡΠ΄Π°ΡΠ° ΠΊΠ²ΠΎΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ½Π°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π°ΡΠ΅Π³ΠΎ CRD.
- ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ CRD Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ JSS ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½Π° API ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ k8s.
- ΠΠ°Ρ CRD-ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΡ Π½Π° Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ΅ΡΡΡΡΠ°Ρ . ΠΠ½ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ CR Π² Π½Π°ΡΠΈΠ²Π½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ k8s, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π±ΠΎΡΡ, ΡΠ΅ΠΌ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ.
- ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ CRD ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² API Kubernetes Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Ρ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠΌ ΠΈ Π·Π°ΠΏΡΡΠ΅Π½Ρ Π² ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠ΅Π»ΠΈΠ·Π½ΠΎΠ΅ Π²ΠΎΡΠΊΡΠ»ΠΎΡ Π΄Π΅ΠΏΠ»ΠΎΡ Π±ΡΠ»ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΎ Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ k8s-ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Ρ Π½Π°ΡΠ΅ΠΉ Π½ΠΎΠ²ΠΎΠΉ CI/CD. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΌΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π²ΡΠ΅Π³ΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ Ρ Kubernetes. ΠΡ Ρ Π½Π΅ΡΠ΅ΡΠΏΠ΅Π½ΠΈΠ΅ΠΌ ΠΆΠ΄Π΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π½Π°ΡΠΈΠΌ ΠΎΠΏΡΡΠΎΠΌ ΠΈ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Π΄Π°Π½Π½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π² Π½Π°ΡΠ΅ΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π±Π»ΠΎΠ³ΠΎΠ·Π°ΠΏΠΈΡΠΈ Β«Building a CI/CD platform for PinterestΒ».
ΠΠΈΠ΄Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ²
ΠΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ Pinterest, ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ CRD, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ°Π±ΠΎΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ²:
- PinterestService β ΡΡΠΎ ΡΠΆΠ΅ Π΄Π°Π²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ stateless-ΡΠ΅ΡΠ²ΠΈΡΡ. ΠΠ½ΠΎΠ³ΠΈΠ΅ Π½Π°ΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π±Π°Π·ΠΈΡΡΡΡΡΡ Π½Π° Π½Π°Π±ΠΎΡΠ΅ ΡΠ°ΠΊΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ².
- PinterestJobSet ΠΌΠΎΠ΄Π΅Π»ΠΈΡΡΠ΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π°. Π Pinterest Π΅ΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°Π΄Π°Π½ΠΈΠΉ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ, ΠΏΡΠΈΡΠ΅ΠΌ Π²Π½Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ².
- PinterestCronJob ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² ΡΠ²ΡΠ·ΠΊΠ΅ Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠ°ΠΌΠΈ. ΠΡΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π΄Π»Ρ Π½Π°ΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ cron Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Pinterest, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, ΡΡΠ°ΡΠΈΠΊ, Π»ΠΎΠ³ΠΈ ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.
- PinterestDaemon Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Daemon-Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ. ΠΡΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°ΡΡΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠ².
- PinterestTrainingJob ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΡΡ Tensorflow ΠΈ Pytorch, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠΎΡ ΠΆΠ΅ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ, ΡΡΠΎ ΠΈ Π²ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ CRD. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π² Pinterest Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Tensorflow ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, Ρ Π½Π°Ρ Π±ΡΠ» ΡΠ΅Π·ΠΎΠ½ Π²ΡΡΡΡΠΎΠΈΡΡ Π²ΠΎΠΊΡΡΠ³ Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ CRD.
Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π½Π°Π΄ PinterestStatefulSet, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠΊΠΎΡΠ΅ Π±ΡΠ΄Π΅Ρ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΡ stateful-ΡΠΈΡΡΠ΅ΠΌ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ΅Π΄Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
ΠΠΎΠ³Π΄Π° ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π² Kubernetes, ΠΎΠ½ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ΅Π±Ρ. ΠΡΠΎΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΡ ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΡΠΆΠ±Π°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· mTLS. ΠΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΌ, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² ΠΈ Daemon Π·Π°Π³ΡΡΠ·ΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ³Π΄Π° Π²ΡΠ΅ Π±ΡΠ΄Π΅Ρ Π³ΠΎΡΠΎΠ²ΠΎ, sidecar ΡΡΠ°ΡΠΈΠΊΠ° ΠΈ Daemon Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΡΡ IP-Π°Π΄ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Π½Π°ΡΠ΅ΠΌ Zookeeper, ΡΡΠΎΠ±Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΌΠΎΠ³Π»ΠΈ Π΅Π³ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ. ΠΡΠ΅ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Π±ΡΠ» Π½Π°ΡΡΡΠΎΠ΅Π½ Π΅ΡΠ΅ Π΄ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΡΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ°Π±ΠΎΡΠΈΡ Π½Π°Π³ΡΡΠ·ΠΎΠΊ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠ»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΠΏΠΎΠ² ΡΠ°Π±ΠΎΡΠΈΡ Π½Π°Π³ΡΡΠ·ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΠΏΠΏΠΎΡΡ, Π½ΠΎ Π²ΡΠ΅ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ sidecar ΡΡΠΎΠ²Π½Ρ pod, ΡΠ·Π»ΠΎΠ²ΡΠΌΠΈ ΠΈΠ»ΠΈ Daemon-Π°ΠΌΠΈ ΡΡΠΎΠ²Π½Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½. ΠΡ ΡΠ»Π΅Π΄ΠΈΠΌ Π·Π° ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠΎ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΡΡΠΎ Π² ΠΈΡΠΎΠ³Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠΆΠ°Π΅Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ Π² ΠΏΠ»Π°Π½Π΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ°Π±ΠΎΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ QA
ΠΡ ΡΠΎΠ±ΡΠ°Π»ΠΈ end-to-end ΡΠ΅ΡΡΠΎΠ²ΡΠΉ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ ΠΏΠΎΠ²Π΅ΡΡ ΡΠΆΠ΅ ΠΈΠΌΠ΅ΡΡΠ΅ΠΉΡΡ ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Kubernetes. ΠΡΠΈ ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ Π½Π° Π²ΡΠ΅ Π½Π°ΡΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΡ. ΠΠ°Ρ ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½ ΠΏΠ΅ΡΠ΅ΠΆΠΈΠ» ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»ΠΎΠΊ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΡΡΠ°Π» ΡΠ°ΡΡΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°.
ΠΠΎΠΌΠΈΠΌΠΎ ΡΠΈΡΡΠ΅ΠΌ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ»Π΅Π΄ΡΡ Π·Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π²Π°ΠΆΠ½ΡΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ, ΡΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡ Π½Π°Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΡΡΠ²Π°.
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ
ΠΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ², ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ². ΠΠ΄Π½Π°ΠΊΠΎ Π²ΡΠ΅ ΠΎΠ½ΠΈ ΡΠΎΠΏΡΡΠΆΠ΅Π½Ρ Ρ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠΌΠΈ ΡΡΡΠ΄Π½ΠΎΡΡΡΠΌΠΈ Π² ΡΠ°Π±ΠΎΡΠ΅, ΡΠ°ΠΊ ΡΡΠΎ ΠΌΡ Π²ΡΠ±ΡΠ°Π»ΠΈ ΠΏΡΡΡ CRD.
ΠΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π΄ΠΎΠΏΡΡΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° ΡΠ°ΠΉΠ΄ΠΊΠ°ΡΠΎΠ², ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΠΈ ΠΏΡΠΎΡΠ΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π² CRD ΡΠ°ΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π‘ΠΈΡΡΠ΅ΠΌΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Π₯Π΅Π»ΠΌΠ°, ΡΠ°ΠΊΠΆΠ΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΡ ΠΎΠΆΠΈΠΌΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΌΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°ΡΠΈ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½Ρ, ΡΡΠΎΠ±Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ². Π’Π°ΠΊΠΆΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² Π±ΡΠ΄Π΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ.
ΠΡΡΠ΄ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°
Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΠΈΠΌΠ΅Π΅ΠΌ Π΄Π΅Π»ΠΎ ΡΠΎ ΡΠΌΠ΅ΡΠ°Π½Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ Π½Π° Π²ΡΠ΅Ρ Π½Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°Ρ . Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΡ :
- Π‘ΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠ² ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°ΠΌ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ.
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ ΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ²ΡΠ·ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΅Π³ΠΎ SLA.
- Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ ΠΈ ΠΊΠ²ΠΎΡΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ²Π°Π»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ, Π° ΠΌΠ°ΡΡΡΠ°Π± ΠΊΠ»Π°ΡΡΠ΅ΡΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°Π»ΡΡ Ρ Π½Π°ΡΠ΅ΠΉ ΡΡΠΎΡΠΎΠ½Ρ.
- ΠΠΎΠ²Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° CI/CD Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² Kubernetes.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com