ΠΡΠ΅Π· Π³ΠΎΠ΄ΠΈΠ½ΠΈΡΠ΅ 300 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π½Π° Pinterest ΡΠ° ΡΡΠ·Π΄Π°Π»ΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 200 ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄Π° ΠΏΠΈΠ½Π° Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 4 ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄Π° Π΄ΡΡΠΊΠΈ. ΠΠ° Π΄Π° ΠΎΠ±ΡΠ»ΡΠΆΠ²Π° ΡΠ°Π·ΠΈ Π°ΡΠΌΠΈΡ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ ΠΎΠ³ΡΠΎΠΌΠ½Π° Π±Π°Π·Π° ΠΎΡ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, ΠΏΠΎΡΡΠ°Π»ΡΡ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈΠ» Ρ
ΠΈΠ»ΡΠ΄ΠΈ ΡΡΠ»ΡΠ³ΠΈ, Π²Π°ΡΠΈΡΠ°ΡΠΈ ΠΎΡ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΎΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ°, Π΄ΠΎ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Π½Π° ΡΡΠ» ΡΠ»ΠΎΡ ΠΎΡ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ. Π ΡΠΎΠ³Π°Π²Π° Π΄ΠΎΠΉΠ΄Π΅ ΠΌΠΎΠΌΠ΅Π½ΡΡΡ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΠΎΠ³Π»Π΅Π΄ΡΡ Π½Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡΠ° ΠΏΠ°Π΄Π½Π° Π²ΡΡΡ
Ρ k8s. ΠΠ°ΡΠΎ βΠΊΡΠ±ΡΡβ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°ΡΠ΅ Π΄ΠΎΠ±ΡΠ΅ Π² Pinterest? Π©Π΅ Π½Π°ΡΡΠΈΡΠ΅ Π·Π° ΡΠΎΠ²Π° ΠΎΡ Π½Π°ΡΠΈΡ ΠΏΡΠ΅Π²ΠΎΠ΄ Π½Π° ΡΠΊΠΎΡΠΎΡΠ½Π° ΡΡΠ°ΡΠΈΡ ΠΎΡ
Π ΡΠ°ΠΊΠ°, ΡΡΠΎΡΠΈΡΠΈ ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ ΡΡΠΎΡΠΈΡΠΈ ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄ΠΈ ΠΏΠΈΠ½ΠΎΠ²Π΅. ΠΠ° Π΄Π° ΠΎΠ±ΡΠ»ΡΠΆΠ²Π°ΠΌΠ΅ ΡΠ°Π·ΠΈ Π°ΡΠΌΠΈΡ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΠΈ ΠΎΠ³ΡΠΎΠΌΠ½Π° Π±Π°Π·Π° ΠΎΡ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈΡ
ΠΌΠ΅ Ρ
ΠΈΠ»ΡΠ΄ΠΈ ΡΡΠ»ΡΠ³ΠΈ, Π²Π°ΡΠΈΡΠ°ΡΠΈ ΠΎΡ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΎΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ°, Π΄ΠΎ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Π½Π° ΡΠ΅Π»ΠΈ Π³ΡΡΠΏΠΈ ΠΎΡ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΈΠΌΠ°ΠΌΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ°ΠΌΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ ΡΡΡΠΎ Π΄Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ, ΠΏΠ°ΠΌΠ΅Ρ ΠΈΠ»ΠΈ I/O.
ΠΡΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ Π·ΠΎΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠ° Π³ΡΠ°Π΄ΠΈΠ½Π° ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π΅ΠΊΠΈΠΏΡΡ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π΅ ΠΈΠ·ΠΏΡΠ°Π²Π΅Π½ ΠΏΡΠ΅Π΄ ΡΠ΅Π΄ΠΈΡΠ° ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅Π»ΡΡΠ²Π°:
- ΠΡΠΌΠ° Π΅Π΄ΠΈΠ½Π΅Π½ Π½Π°ΡΠΈΠ½ Π·Π° ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π° ΡΡΠ΅Π΄Π°. Π£ΡΠ»ΡΠ³ΠΈΡΠ΅ Π±Π΅Π· ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, ΡΡΠ»ΡΠ³ΠΈΡΠ΅ Ρ ΠΏΡΠ»Π½ΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ΅ Π² ΠΏΡΠΎΡΠ΅Ρ Π½Π° Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΡΠ° Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ½ΠΈ ΡΡΠ΅ΠΊΠΎΠ²Π΅. Π’ΠΎΠ²Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ» ΠΊΡΡΡ Π·Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈ, Π° ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΠ²Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π½Π°ΡΠΈΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅Π½ Π΅ΠΊΠΈΠΏ.
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½ ΠΏΠ°ΡΠΊ ΠΎΡ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΡΡΠ·Π΄Π°Π²Π°Ρ ΠΎΠ³ΡΠΎΠΌΠ½Π° ΡΠ΅ΠΆΠ΅ΡΡ Π·Π° Π²ΡΡΡΠ΅ΡΠ½ΠΈΡΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΡΠ°ΠΊΠΈΠ²Π° ΠΏΡΠΎΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΊΠ°ΡΠΎ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΠ»ΠΈ 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 ΠΈ Π²ΡΡΡΠ΅ΡΠ΅Π½ ΡΠ΅ΡΡΡΡ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ²Π° ΠΎΡ Π½Π°ΡΠΈΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ:
ΠΠ°ΠΊΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΠΎ-Π³ΠΎΡΠ΅, Π·Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΌΠ΅ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ, ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°ΠΌΠ΅ init ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΊΠΈ, Π·Π° Π΄Π° ΠΎΡΠΈΠ³ΡΡΠΈΠΌ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ² ΡΡΠ°ΡΠΈΠΊ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΡΡΠ·Π΄Π°Π΄ΠΎΡ
ΠΌΠ΅ ΡΠ°Π±Π»ΠΎΠ½ΠΈ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½Π° ΠΊΠ°ΡΡΠ° ΠΈ Π²Π½Π΅Π΄ΡΠΈΡ
ΠΌΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° PVC ΡΠ°Π±Π»ΠΎΠ½ΠΈ Π·Π° ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΈ Π·Π°Π΄Π°Π½ΠΈΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡ, ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΎΠΊΠ»ΡΠΊ.
Π’ΡΡΠ΄Π½ΠΎ Π΅ Π΄Π° ΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π±ΠΈΡ Π° ΠΈΡΠΊΠ°Π»ΠΈ Π΄Π° Π½Π°ΠΏΠΈΡΠ°Ρ ΡΠ΅Π·ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΡΠΊΠ° Π±Π΅Π· CRD ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°, Π΄Π° Π½Π΅ Π³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΈ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈΡΠ΅.
Π Π°Π±ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΠ΅Ρ Π·Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎ-Π³ΠΎΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠ°ΠΊ Π΄Π° Π²Π½Π΅Π΄ΡΠΈΡΠ΅ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΡΠ΅ΡΡΡΡ Π½Π° Pinterest Π² ΠΊΠ»ΡΡΡΠ΅Ρ Π½Π° Kubernetes:
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²Π°Ρ Ρ Π½Π°ΡΠΈΡ Kubernetes ΠΊΠ»ΡΡΡΠ΅Ρ ΡΡΠ΅Π· CLI ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
- ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ CLI/UI ΠΈΠ·Π²Π»ΠΈΡΠ°Ρ YAML ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΡ ΠΏΠΎΡΠΎΠΊ ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ (ΡΡΡΠΈΡ ID Π½Π° Π²Π΅ΡΡΠΈΡΡΠ°) ΠΎΡ Artifactory ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π³ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΠ΄Π°Π²Π°Π½Π΅ Π½Π° Π·Π°Π΄Π°Π½ΠΈΡ. Π’Π°Π·ΠΈ ΡΡΡΠΏΠΊΠ° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ Π² ΠΊΠ»ΡΡΡΠ΅ΡΠ° ΡΠ΅ Π΄ΠΎΡΡΠ°Π²ΡΡ ΡΠ°ΠΌΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ΠΈ Π²Π΅ΡΡΠΈΠΈ.
- JSS Π΅ ΡΠ»ΡΠ· Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Kubernetes. Π’ΡΠΊ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ ΡΠ΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°, ΠΈΠ·Π΄Π°Π²Π°Ρ ΡΠ΅ ΠΊΠ²ΠΎΡΠΈ ΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° Π½Π°ΡΠΈΡ CRD.
- Π‘Π»Π΅Π΄ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° CRD ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° JSS, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π΄ΠΎ API Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° k8s.
- ΠΠ°ΡΠΈΡΡ CRD ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ ΡΠ»Π΅Π΄ΠΈ ΡΡΠ±ΠΈΡΠΈΡΡΠ° Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΡΠ΅ΡΡΡΡΠΈ. Π’ΠΎΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π° CR Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ k8s ΡΠ΅ΡΡΡΡΠΈ, Π΄ΠΎΠ±Π°Π²Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, Π·Π°Π΄Π°Π²Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π° Π΄ΡΡΠ³Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°, Π·Π° Π΄Π° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠΌΠ°Ρ Π΄ΠΎΡΡΠ°ΡΡΡΠ½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°.
- Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° CRD ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΡΡ ΠΏΡΠ΅Π΄Π°Π²Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΊΡΠΌ Kubernetes API, ΡΠ°ΠΊΠ° ΡΠ΅ Π΄Π° ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈ ΠΎΡ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° ΠΈ ΠΏΡΡΠ½Π°ΡΠΈ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ.
ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ΠΎΠ·ΠΈ ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΠ΅Ρ ΠΏΡΠ΅Π΄ΠΈ ΠΏΡΡΠΊΠ°Π½Π΅ Π½Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½ Π·Π° ΠΏΡΡΠ²ΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π½Π° Π½ΠΎΠ²Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° k8s. Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠΌΠ΅ Π² ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΡΡΡΠ²ΡΡΡΠ΅Π½ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠΎΠ·ΠΈ ΠΏΡΠΎΡΠ΅Ρ, Π·Π° Π΄Π° ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ° Π½Π°ΠΏΡΠ»Π½ΠΎ Ρ Π½Π°ΡΠΈΡ Π½ΠΎΠ² CI/CD. Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π²ΠΈ ΠΊΠ°ΠΆΠ΅ΠΌ Π²ΡΠΈΡΠΊΠΎ, ΡΠ²ΡΡΠ·Π°Π½ΠΎ Ρ Kubernetes. ΠΡΠ°ΠΊΠ²Π°ΠΌΠ΅ Ρ Π½Π΅ΡΡΡΠΏΠ΅Π½ΠΈΠ΅ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»ΠΈΠΌ Π½Π°ΡΠΈΡ ΠΎΠΏΠΈΡ ΠΈ Π½Π°ΠΏΡΠ΅Π΄ΡΠΊΠ° Π½Π° Π΅ΠΊΠΈΠΏΠ° Π² ΡΠ°Π·ΠΈ ΠΏΠΎΡΠΎΠΊΠ° Π² ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° Π½ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π² Π±Π»ΠΎΠ³Π° βΠΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° CI/CD ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° Pinterest.β
ΠΠΈΠ΄ΠΎΠ²Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΡΠ΅ΡΡΡΡΠΈ
ΠΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈΡΠ΅ Π½ΡΠΆΠ΄ΠΈ Π½Π° Pinterest, Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈΡ ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ CRD, Π·Π° Π΄Π° ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ:
- PinterestService ΡΠ° ΡΡΠ»ΡΠ³ΠΈ Π±Π΅Π· ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ ΠΎΡ Π΄ΡΠ»Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠ½ΠΎΠ³ΠΎ ΠΎΡ Π½Π°ΡΠΈΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΡΠ° Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠ°ΠΊΠΈΠ²Π° ΡΡΠ»ΡΠ³ΠΈ.
- PinterestJobSet ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ° ΠΏΠ°ΡΡΠΈΠ΄Π½ΠΈ Π·Π°Π΄Π°ΡΠΈ ΠΎΡ ΠΏΡΠ»Π΅Π½ ΡΠΈΠΊΡΠ». Π§Π΅ΡΡΠΎ ΡΡΠ΅ΡΠ°Π½ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π² Pinterest Π΅, ΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π·Π°Π΄Π°Π½ΠΈΡ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ Π΅Π΄Π½ΠΈ ΠΈ ΡΡΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π΄ΡΡΠ³ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ.
- PinterestCronJob ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠΈΡΠΎΠΊΠΎ Π²ΡΠ² Π²ΡΡΠ·ΠΊΠ° Ρ ΠΌΠ°Π»ΠΊΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡ. Π’ΠΎΠ²Π° Π΅ ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° Π·Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° cron Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Pinterest, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ°, ΡΡΠ°ΡΠΈΠΊΠ°, ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅.
- PinterestDaemon Π²ΠΊΠ»ΡΡΠ²Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΠΈ Π΄Π΅ΠΌΠΎΠ½ΠΈ. Π’ΠΎΠ²Π° ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° Π΄Π° ΡΠ°ΡΡΠ΅, Π΄ΠΎΠΊΠ°ΡΠΎ Π΄ΠΎΠ±Π°Π²ΡΠΌΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΊΡΠΌ Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΡΡΡΠ΅ΡΠΈ.
- PinterestTrainingJob ΡΠ΅ ΡΠ°Π·ΡΠΈΡΡΠ²Π° Π΄ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΈ Tensorflow ΠΈ Pytorch, ΠΎΡΠΈΠ³ΡΡΡΠ²Π°ΠΉΠΊΠΈ ΡΡΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΡΠΎ Π²ΡΠΈΡΠΊΠΈ Π΄ΡΡΠ³ΠΈ CRD. Π’ΡΠΉ ΠΊΠ°ΡΠΎ Pinterest Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Tensorflow ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΠΈΠΌΠ°Ρ ΠΌΠ΅ ΠΏΡΠΈΡΠΈΠ½Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΠΎΡΠ΄Π΅Π»Π΅Π½ CRD ΠΎΠΊΠΎΠ»ΠΎ ΡΡΡ .
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ°Π±ΠΎΡΠΈΠΌ Π²ΡΡΡ Ρ PinterestStatefulSet, ΠΊΠΎΠΉΡΠΎ ΡΠΊΠΎΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½ Π·Π° Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΡΡΡ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅.
ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅
ΠΠΎΠ³Π°ΡΠΎ ΠΏΠΎΠ΄ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π½Π° Kubernetes, ΡΠΎΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ, Π·Π° Π΄Π° ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°. Π’ΠΎΠ·ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈΠ»ΠΈ Π·Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡ Ρ Π΄ΡΡΠ³ΠΈ ΡΡΠ»ΡΠ³ΠΈ ΡΡΠ΅Π· mTLS. ΠΠ΅ΠΆΠ΄ΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Container Init Configurator ΠΈ Daemon ΡΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΡΡ Π²ΡΠΈΡΠΊΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈΠ·ΠΈΡΠ°Π½ΠΎΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎΠ³Π°ΡΠΎ Π²ΡΠΈΡΠΊΠΎ Π΅ Π³ΠΎΡΠΎΠ²ΠΎ, ΡΡΡΠ°Π½ΠΈΡΠ½ΠΈΡΡ ΡΡΠ°ΡΠΈΠΊ ΠΈ Daemon ΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°Ρ IP Π°Π΄ΡΠ΅ΡΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»Π° Ρ Π½Π°ΡΠΈΡ Zookeeper, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ Π΄Π° ΠΌΠΎΠ³Π°Ρ Π΄Π° Π³ΠΎ ΠΎΡΠΊΡΠΈΡΡ. ΠΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ, Π·Π°ΡΠΎΡΠΎ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΡ ΠΌΠΎΠ΄ΡΠ» Π΅ ββΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½ ΠΏΡΠ΅Π΄ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ.
ΠΠΎΡΠ½ΠΈΡΠ΅ ΡΠ° ΡΠΈΠΏΠΈΡΠ½ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π° ΡΠ°Π±ΠΎΡΠ½ΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡ. ΠΡΡΠ³ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΡΠ°Π·Π»ΠΈΡΠ½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°, Π½ΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ ΠΈΠ΄Π²Π°Ρ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ½ΠΈ ΠΊΠΎΠ»ΠΈΡΠΊΠΈ Π½Π° Π½ΠΈΠ²ΠΎ pod, Π½ΠΈΠ²ΠΎ Π½Π° Π²ΡΠ·Π΅Π» ΠΈΠ»ΠΈ Π΄Π΅ΠΌΠΎΠ½ΠΈ Π½Π° Π½ΠΈΠ²ΠΎ Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°. ΠΠΈΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°ΠΌΠ΅, ΡΠ΅ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΎ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΡΠ΅ΠΆΠ΅ΡΡΡΠ° ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅.
Π’Π΅ΡΡΠ²Π°Π½Π΅ ΠΈ QA
ΠΠ·Π³ΡΠ°Π΄ΠΈΡ ΠΌΠ΅ ΡΠ΅ΡΡΠΎΠ²Π° Π»ΠΈΠ½ΠΈΡ ΠΎΡ ΠΊΡΠ°ΠΉ Π΄ΠΎ ΠΊΡΠ°ΠΉ Π²ΡΡΡ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠ°ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π½Π° Kubernetes. Π’Π΅Π·ΠΈ ΡΠ΅ΡΡΠΎΠ²Π΅ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°Ρ Π·Π° Π²ΡΠΈΡΠΊΠΈ Π½Π°ΡΠΈ ΠΊΠ»ΡΡΡΠ΅ΡΠΈ. ΠΠ°ΡΠΈΡΡ ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ ΠΏΡΠ΅ΠΌΠΈΠ½Π° ΠΏΡΠ΅Π· ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΡΡΠ°Π½Π΅ ΡΠ°ΡΡ ΠΎΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΈΡ ΠΊΠ»ΡΡΡΠ΅Ρ.
Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅, ΡΠ°Π·ΠΏΠΎΠ»Π°Π³Π°ΠΌΠ΅ ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ»Π΅Π΄ΡΡ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ Π΄ΡΡΠ³ΠΈ Π²Π°ΠΆΠ½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΊΠ°ΡΠΎ Π½ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΡΠ²Π°Ρ ΡΠ°ΠΌΠΎ ΠΊΠΎΠ³Π°ΡΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π°ΠΌΠ΅ΡΠ°.
Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²ΠΈ
Π Π°Π·Π³Π»Π΅Π΄Π°Ρ ΠΌΠ΅ Π½ΡΠΊΠΎΠΈ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²ΠΈ Π½Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ΅ΡΡΡΡΠΈ, ΠΊΠ°ΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΈ Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΌΡΡΠ°ΡΠΈΡ ΠΈ ΡΠ°Π±Π»ΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΡΠΈΡΠΊΠΈ ΡΠ΅ ΠΎΠ±Π°ΡΠ΅ ΠΈΠ΄Π²Π°Ρ ΡΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°ΡΠ΅Π»ΡΡΠ²Π°, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΠΌΠ°ΡΡΡΡΡΠ° Π½Π° CRD.
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π΅ ΠΌΡΡΠ°ΡΠΈΠΎΠ½Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π·Π° Π΄ΠΎΠΏΡΡΠΊΠ°Π½Π΅ Π·Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ½ΠΈ ΠΊΠΎΠ»ΠΈ, ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° ΠΈ Π΄ΡΡΠ³Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅. Π’ΠΎΠΉ ΠΎΠ±Π°ΡΠ΅ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ° Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΊΠ°ΡΠΎ ΠΎΠ±Π²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΆΠΈΠ·Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΡΠ», ΠΊΡΠ΄Π΅ΡΠΎ ΡΠ°ΠΊΠΈΠ²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π½Π΅ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Ρ Π² CRD.
ΠΠ°Π±Π΅Π»Π΅ΠΆΠΊΠ°: Π‘ΠΈΡΡΠ΅ΠΌΠΈ Ρ ΡΠ°Π±Π»ΠΎΠ½ΠΈ ΠΊΠ°ΡΠΎ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΈ Π½Π° Helm ΡΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠΈΡΠΎΠΊΠΎ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠ°ΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±Π°ΡΠ΅ ΡΠ° ΡΠ²ΡΡΠ΄Π΅ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΈ, Π·Π° Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Π½ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ°Π±Π»ΠΎΠ½ΠΈ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ ΡΠ΅ ΠΈΠΌΠ° ΡΠ²ΡΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»ΠΎΠ½ΠΈ.
ΠΡΠ΅Π΄ΡΡΠΎΡΡΠ° ΡΠ°Π±ΠΎΡΠ°
Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΠΌΠ΅ ΡΡΡ ΡΠΌΠ΅ΡΠ΅Π½ΠΎ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ Π½Π°ΡΠΈ ΠΊΠ»ΡΡΡΠ΅ΡΠΈ. ΠΠ° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΠΌΠ΅ ΡΠ°ΠΊΠΈΠ²Π° ΠΏΡΠΎΡΠ΅ΡΠΈ ΠΎΡ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΈ, Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠΈΠΌ Π² ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ:
- ΠΠΎΠ»Π΅ΠΊΡΠΈΡ ΠΎΡ ΠΊΠ»ΡΡΡΠ΅ΡΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Ρ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠ»ΡΡΡΠ΅ΡΠΈ Π·Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡ ΠΈ ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ.
- ΠΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ Π½Π° ΠΊΠ»ΡΡΡΠ΅ΡΠ°, ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡ ΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ²ΡΡΠ·Π°Π½ΠΎΡΡ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ SLA.
- Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΊΠ²ΠΎΡΠΈ, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° Π΄Π° Π½Π΅ Π²Π»ΠΈΠ·Π°Ρ Π² ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈ, Π° ΠΌΠ°ΡΠ°Π±ΡΡ Π½Π° ΠΊΠ»ΡΡΡΠ΅ΡΠ° Π΄Π° ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΎΡ Π½Π°ΡΠ° ΡΡΡΠ°Π½Π°.
- ΠΠΎΠ²Π° CI/CD ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Kubernetes.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com