ΠΡΠ° ΠΈΡΡΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π² ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Π΅, Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΠΎΠ΄ Kubernetes. Π‘ΡΠ°ΡΡΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° ΡΠ±ΠΎΡΡ ΠΌΠ΅ΡΡΠΈΠΊ ΠΈ Π»ΠΎΠ³ΠΎΠ² Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ Π±ΠΈΠ»Π΄Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠ².
ΠΡ ΠΈΠ· ΡΠΈΠ½ΡΠ΅Ρ
-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Exness, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Π΄Π»Ρ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΡΠ΅ΠΉΠ΄ΠΈΠ½Π³Π° ΠΈ ΡΠΈΠ½ΡΠ΅Ρ
-ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ² Π΄Π»Ρ B2B ΠΈ Π2Π‘. Π Π½Π°ΡΠ΅ΠΌ R&D ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π½ΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄, Π² ΠΎΡΠ΄Π΅Π»Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ 100 + ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ².
ΠΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠ° ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠ΄Π° Π½Π°ΡΠΈΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΌΡ ΠΎΡΠ²Π΅ΡΠ°Π΅ΠΌ Π·Π° ΡΠ±ΠΎΡ, Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΠΈΠΊ, Π»ΠΎΠ³ΠΎΠ², ΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΌΡ ΠΎΠΏΠ΅ΡΠΈΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΡΠ΅ΠΌΡ ΡΡΡΡΡΠ°ΠΌΠΈ Docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Π² ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΎΠΉ ΡΡΠ΅Π΄Π΅, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ Π½Π°ΡΠ΅ big data-Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π° 50 Π’Π± ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠΎΡΡΡΡ Π²ΠΎΠΊΡΡΠ³ Π½Π°ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ: Kubernetes, Rancher ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ cloud-ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΡ.Β
ΠΠ°ΡΠ° ΠΌΠΎΡΠΈΠ²Π°ΡΠΈΡ
Π§ΡΠΎ Π³ΠΎΡΠΈΡ? ΠΠΈΠΊΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ²Π΅ΡΠΈΡΡ.Β ΠΠ΄Π΅ ΠΎΡΠ°Π³? ΠΠΎΠ½ΡΡΡ ΡΡΡΠ΄Π½ΠΎ. ΠΠΎΠ³Π΄Π° Π·Π°Π³ΠΎΡΠ΅Π»ΠΎΡΡ? ΠΡΡΡΠ½ΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π½Π΅ ΡΡΠ°Π·Ρ.Β
ΠΠΎΡΠ΅ΠΌΡ ΠΎΠ΄Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΡΡΠΎΡΡ, Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΏΠ°Π»ΠΈ? ΠΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΡΡΠ°Π» ΡΠΎΠΌΡ Π²ΠΈΠ½ΠΎΠΉ? ΠΠ΅Π΄Ρ ΡΠ½Π°ΡΡΠΆΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅, Π° Π²Π½ΡΡΡΠΈ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉ Neo.
ΠΠ°ΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ β Π³ΡΠ°ΠΌΠΎΡΠ½ΡΠ΅ ΡΠ΅Π±ΡΡΠ°. ΠΠ½ΠΈ Π΄Π΅Π»Π°ΡΡ Ρ
ΠΎΡΠΎΡΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΡΠΈΠ±ΡΠ»Ρ. ΠΠΎ Π±ΡΠ²Π°ΡΡ ΡΠ°ΠΊΠ°ΠΏΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΠ΄ΡΡ Π²ΡΠ°Π·Π±ΡΠΎΠ΄. ΠΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ CPU, Π΄ΡΡΠ³ΠΎΠΉ β ΡΠ΅ΡΡ, ΡΡΠ΅ΡΠΈΠΉ β ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΡΠ΅ΡΠ²ΡΡΡΡΠΉ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Ρ ΡΠΎΠΊΠ΅ΡΠ°ΠΌΠΈ. ΠΡΡ ΡΡΠΎ ΠΏΠ°Π΄Π°Π΅Ρ, ΠΈ ΠΊΠΎΡΠ°Π±Π»Ρ ΡΠΎΠ½Π΅Ρ.Β
ΠΠ³Π΅Π½ΡΡ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²Π½ΡΡΡΠΈ, ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ ΡΡΠ°Π²ΠΈΡΡ Π°Π³Π΅Π½ΡΠΎΠ² ΠΏΡΡΠΌΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ.
ΠΡΠΈ Π°Π³Π΅Π½ΡΡ β ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ»ΠΎΠΌΠ°Π»ΠΈ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°. ΠΠ³Π΅Π½ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ, ΠΈ ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ².Β
Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π°Π³Π΅Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π»ΠΎΠ³ΠΈ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅, ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈ Ρ ΡΡΠΎΡΠ»ΠΈΠ½Π³ΠΎΠΌ. Π’Π°ΠΊΠΆΠ΅ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π½Π°ΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π±ΠΈΠ·Π½Π΅Ρ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠΎΠ΄ Π°Π³Π΅Π½ΡΠ°ΠΌΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ, ΡΠΌΠ΅ΡΡΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡΒ Π² ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΎΡΠΊΠ΅ΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ ΡΠ°Π·Π½ΡΠ΅ images (Debian, Alpine, Centos ΠΈ Ρ. Π΄.).
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π°Π³Π΅Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ CI/CD, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ Π² ΡΠ΅Π±Ρ Docker-ΡΠ°ΠΉΠ»Ρ. ΠΠ½Π°ΡΠ΅ ΠΊΠΎΡΠ°Π±Π»Ρ ΡΠ°Π·Π²Π°Π»ΠΈΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π½Π°ΡΠ½ΡΡ ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΏΠΎ Β«ΠΊΡΠΈΠ²ΡΠΌΒ» ΡΠ΅Π»ΡΡΠ°ΠΌ.
ΠΡΠΎΡΠ΅ΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΡΠ΅Π»Π΅Π²ΠΎΠ³ΠΎ image
Π§ΡΠΎΠ±Ρ Π²ΡΡ Π±ΡΠ»ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ±ΠΎΡΠΊΠΈ. ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌΠΈ β ΡΠ°ΠΊΠ°Ρ Π²ΠΎΡ ΡΠ΅ΠΊΡΡΡΠΈΡ.
ΠΠ΄Π΅ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠΏΠ»ΠΎΡΠ½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΡΡΠ°ΠΌΠΈ. ΠΠ°ΠΎΠ΄Π½ΠΎ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π² Π½ΠΈΡ
Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ, ΡΡΠΎΠ±Ρ Β«ΠΆΠΈΠ·Π½Ρ ΠΌΠ°Π»ΠΈΠ½ΠΎΠΉ Π½Π΅ ΠΊΠ°Π·Π°Π»Π°ΡΡΒ». ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ, ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ Π½ΠΈΠΆΠ΅.
Β
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ β ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ².
ΠΠ°ΠΊ ΠΌΡ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ? Π£ Π½Π°Ρ Π΅ΡΡΡ Docker Hub, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π»Π΅ΠΆΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ. ΠΡ Π·Π΅ΡΠΊΠ°Π»ΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ Π²Π½ΡΡΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡ Π²Π½Π΅ΡΠ½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠΎΠ»ΡΡΠΈΠ»ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ, ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΠΉ ΠΆΡΠ»ΡΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ. ΠΡ ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°Π±Π»ΠΎΠ½, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°ΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ ΠΈ ΡΠΊΡΠΈΠΏΡΡ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ°Π·: ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΊΠ»Π°Π΄ΡΡ Π² Π½Π΅Π³ΠΎ ΠΊΠΎΠ΄ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ²ΠΎΠΈ ΠΎΡΠΎΠ±ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ.Β
Π§Π΅ΠΌ Ρ ΠΎΡΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄?Β
- ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , ΠΏΠΎΠ»Π½ΡΠΉ Π²Π΅ΡΡΠΈΠΎΠ½Π½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΒ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΠ±ΠΎΡΠΊΠΈ β ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΡΠ±ΠΎΡΠΊΠΈ, Π²Π΅ΡΡΠΈΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ².Β
- ΠΠΎ-Π²ΡΠΎΡΡΡ , ΠΌΡ Π΄ΠΎΠ±ΠΈΠ»ΠΈΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΠΈ: ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°Π±Π»ΠΎΠ½Ρ, ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΠΈ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΠΊ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ image.Β
- Π-ΡΡΠ΅ΡΡΠΈΡ , ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π½Π°ΠΌ ΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΠΎΡΡΡ. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Gitlab, Π° Π·Π°Π²ΡΡΠ° ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΡΠΌ Π½Π° TeamCity ΠΈΠ»ΠΈ Jenkins ΠΈ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΡΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π½Π°ΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ.Β
- Π-ΡΠ΅ΡΠ²ΡΡΡΡΡ , ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΡ Π½Π΅ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ, Π²Π΅Π΄Ρ ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π΅ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ ΠΈΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΈΠ· ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°.Β
- Π-ΠΏΡΡΡΡ , ΠΏΠΎΠ²ΡΡΠΈΠ»Π°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ β Π½Π°Π»ΠΈΡΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΊΠΎΠΏΠΈΠΉ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π΅ ΡΡΠ°ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π½Π° ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΅ΡΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ°Π·.Β
ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΌΡ Π΄ΠΎΠ±ΠΈΠ»ΠΈΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΈ Π³ΠΈΠ±ΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ±ΠΎΡΠΊΠΈ. ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ Π»ΡΠ±ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Ρ ΠΏΠΎΠ»Π½ΡΠΌ Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.Β
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°ΡΠ° ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΠ±ΠΎΡΠΊΠΈ
Π‘Π±ΠΎΡΠΊΠ° Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΎΠ±ΡΠ°Π·Π΅ (Π²ΡΠ΄Π΅Π»Π΅Π½ ΠΊΡΠ°ΡΠ½ΡΠΌ). Π£ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π΅ΡΡΡ Docker-ΡΠ°ΠΉΠ» (Π²ΡΠ΄Π΅Π»Π΅Π½ ΠΆΡΠ»ΡΡΠΌ), ΠΌΡ Π΅Π³ΠΎ ΡΠ΅Π½Π΄Π΅ΡΠΈΠΌ, ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ. Π ΠΏΠΎΠΏΡΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΒ headerβΡ ΠΈ footerβΡ β ΡΡΠΎ Π½Π°ΡΠΈ Π°Π³Π΅Π½ΡΡ.Β
Header Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ ΠΈΠ· ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ². Π footer ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π²Π½ΡΡΡΡ Π½Π°ΡΠΈ ΡΠ΅ΡΠ²ΠΈΡΡ, Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ Π·Π°ΠΏΡΡΠΊ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΡΠΈΡ Π°Π³Π΅Π½ΡΠΎΠ², ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΠ΅Ρ entrypoint ΠΈ Ρ.Π΄.Β
ΠΡ Π΄ΠΎΠ»Π³ΠΎ Π΄ΡΠΌΠ°Π»ΠΈ, ΡΡΠ°Π²ΠΈΡΡ Π»ΠΈ ΡΡΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ. Π ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ², ΡΠ΅ΡΠΈΠ»ΠΈ, ΡΡΠΎ ΠΎΠ½ Π½Π°ΠΌ Π½ΡΠΆΠ΅Π½. ΠΡΠ±ΡΠ°Π»ΠΈ S6. Π‘ΡΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠΌ: ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΊ Π½Π΅ΠΌΡ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠΌ Π±Π΅Π· Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π½ΠΈΡ. ΠΠΎΠ³ΠΈ ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ β ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°. ΠΡ
ΡΠΎΠΆΠ΅ Π½Π°Π΄ΠΎ ΠΊΠ°ΠΊ-ΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ, ΠΈ ΠΌΡ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ°. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, S6 Π±Π΅ΡΡΡ Π½Π° ΡΠ΅Π±Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ housekeeping, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΠΏΡΠΎΡΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π½Π°Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ, ΠΏΠΎΡΠ»Π΅ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ½ΡΡΡ, Π² ΠΊΠ°ΠΊΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΠΎΠ½ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ, ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΡΠΈΡΡΠ°ΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΡΠΎΠ±ΡΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡΠ°Π· ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π΅Π³ΠΎ Π² ΡΠ°Π·Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ, ΠΏΡΠΈΡΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠΈ ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ.
Β
ΠΠ»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ°Π·Π½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ½ΡΠ΅ Π΄Π΅ΡΠ΅Π²ΡΡ Π² Docker ΠΈ Kubernetes:
ΠΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ ΡΡΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠΎΠΌ S6. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° collector ΠΈ events β ΡΡΠΎ Π½Π°ΡΠΈ Π°Π³Π΅Π½ΡΡ, ΠΎΡΠ²Π΅ΡΠ°ΡΡΠΈΠ΅ Π·Π° Π»ΠΎΠ³ΠΈ ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ. Π Kubernetes ΠΈΡ
Π½Π΅Ρ, Π° Π² Docker Π΅ΡΡΡ. ΠΠΎΡΠ΅ΠΌΡ?Β
ΠΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Β«ΠΏΠΎΠ΄Π°Β» (Π·Π΄Π΅ΡΡ ΠΈ Π΄Π°Π»Π΅Π΅ β Kubernetes pod), ΡΠΎ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎΒ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ events ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΠΏΠΎΠ΄Π΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ collector, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ ΠΈ Π»ΠΎΠ³ΠΎΠ². ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Kubernetes: Π·Π°ΠΏΡΡΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΠ΄Π΅, Π² Π΅Π΄ΠΈΠ½ΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ½ΠΎΠΌ ΠΈ/ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°Ρ . Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π½Π΅Π΄ΡΡΡΡ ΡΠ²ΠΎΠΈΡ Π°Π³Π΅Π½ΡΠΎΠ² ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ. Π Π΅ΡΠ»ΠΈ ΡΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡΡ Π² Docker, ΠΎΠ½ ΠΏΠΎΠ»ΡΡΠΈΡ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ Π²ΡΠ΅ ΡΠ΅ ΠΆΠ΅ ΡΠ°ΠΌΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΡΠΎ Π΅ΡΡΡ ΡΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π»ΠΎΠ³ΠΈ ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π°Π³Π΅Π½ΡΡ Π±ΡΠ΄ΡΡ Π·Π°ΠΏΡΡΠ΅Π½Ρ Π²Π½ΡΡΡΠΈ.Β
ΠΠ΅ΡΡΠΈΠΊΠΈ ΠΈ Π»ΠΎΠ³ΠΈ
ΠΠΎΡΡΠ°Π²ΠΊΠ° ΠΌΠ΅ΡΡΠΈΠΊ ΠΈ Π»ΠΎΠ³ΠΎΠ² β ΡΠ»ΠΎΠΆΠ½Π°Ρ Π·Π°Π΄Π°ΡΠ°. Π‘ Π΅Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²ΡΠ·Π°Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π°ΡΠΏΠ΅ΠΊΡΠΎΠ².
ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, Π° Π½Π΅ ΠΌΠ°ΡΡΠΎΠ²ΠΎΠΉ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ Π»ΠΎΠ³ΠΎΠ². Π’ΠΎ Π΅ΡΡΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΊ ΡΠ΅ΡΡΡΡΠ°ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ². ΠΡ ΡΡΡΠ΅ΠΌΠΈΠΌΡΡ ΠΏΠΎΠΌΠΎΡΡ Π½Π°ΡΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ: Β«ΠΠΎΠ·ΡΠΌΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Docker Hub, Π·Π°ΠΏΡΡΡΠΈΡΠ΅, ΠΈ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π»ΠΎΠ³ΠΈΒ».Β
ΠΡΠΎΡΠΎΠΉ Π°ΡΠΏΠ΅ΠΊΡ β ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΠ° Π»ΠΎΠ³ΠΎΠ². ΠΡΠ»ΠΈ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΈΡΡΠ°ΡΠΈΡ Π²ΡΠΏΠ»Π΅ΡΠΊΠ° ΠΎΠ±ΡΠ΅ΠΌΠ° Π»ΠΎΠ³ΠΎΠ² (ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΈΠΊΠ»Π΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡ stack-trace), Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° CPU, ΠΊΠ°Π½Π°Π»Ρ ΡΠ²ΡΠ·ΠΈ, ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π»ΠΎΠ³ΠΎΠ²,Β ΠΈ ΡΡΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ ΠΎΡΡΠ° Π² ΡΠ΅Π»ΠΎΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π½Π° Ρ ΠΎΡΡΠ΅, ΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Β«ΠΏΠ°Π΄Π΅Π½ΠΈΡΒ» Ρ ΠΎΡΡΠ°.Β
Π’ΡΠ΅ΡΠΈΠΉ Π°ΡΠΏΠ΅ΠΊΡ β Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊ ΡΠ±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ. ΠΡ ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΎΠΏΡΠΎΡΠ° Prometheus-endpoint Π΄ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π°ΡΠΏΠ΅ΠΊΡ β Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ².
ΠΡ Π²ΡΠ±ΡΠ°Π»ΠΈ open-source ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Go ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Telegraf. ΠΡΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ½Π½Π΅ΠΊΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ 140 Π²ΠΈΠ΄ΠΎΠ² Π²Ρ ΠΎΠ΄Π½ΡΡ ΠΊΠ°Π½Π°Π»ΠΎΠ² (input plugins) ΠΈ 30 Π²ΠΈΠ΄ΠΎΠ² Π²ΡΡ ΠΎΠ΄Π½ΡΡ (output plugins). ΠΡ Π΅Π³ΠΎ Π΄ΠΎΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΠΈ ΡΠ΅ΠΉΡΠ°Ρ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ Π½Π°Ρ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Kubernetes.Β
ΠΠΎΠΏΡΡΡΠΈΠΌ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π΅Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΠΈ Kubernetes ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π°. Π ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Collector (ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ mutation webhook). Collector β ΡΡΠΎ Π½Π°Ρ Π°Π³Π΅Π½Ρ. ΠΠ° ΡΡΠ°ΡΡΠ΅, ΡΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΡΠ΅Π±Ρ Π½Π° ΡΠ°Π±ΠΎΡΡ c Prometheus ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠ±ΠΎΡΠ° Π»ΠΎΠ³ΠΎΠ².
- ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°Π½Π½ΠΎΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ΄Π°, ΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ, ΡΠΎΠ·Π΄Π°ΡΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΡΠΎΡΠΊΡ end-point Prometheus;Β
- ΠΠ° ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎΠ΄Π° ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π»ΠΎΠ³ΠΈ.
ΠΠΎΠ³ΠΈ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ΅ΡΠ΅Π· Docker API: ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ ΠΈΡ Π² stdout ΠΈΠ»ΠΈ stderr, Π° Π΄Π°Π»ΡΡΠ΅ Collector ΡΠ°Π·Π±Π΅ΡΠ΅ΡΡΡ. ΠΠΎΠ³ΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ chunkβΠ°ΠΌΠΈ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°Π΄Π΅ΡΠΆΠΊΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΡ Ρ ΠΎΡΡΠ°.Β
ΠΠ΅ΡΡΠΈΠΊΠΈ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°ΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ (ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ) Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ . ΠΡΡ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΡΠ΅Π³Π°ΠΌΠΈ: namespace, ΠΏΠΎΠ΄ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅, Π° Π·Π°ΡΠ΅ΠΌ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅ΡΡΡ Π² ΡΠΎΡΠΌΠ°Ρ Prometheus β ΠΈ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ ΡΠ±ΠΎΡΠ° (ΠΊΡΠΎΠΌΠ΅ Π»ΠΎΠ³ΠΎΠ²). Π’Π°ΠΊΠΆΠ΅, Π»ΠΎΠ³ΠΈ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈ ΡΠΎΠ±ΡΡΠΈΡ ΠΌΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π² Kafka ΠΈ Π΄Π°Π»Π΅Π΅:
- ΠΠΎΠ³ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² Graylog (Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°);
- ΠΠΎΠ³ΠΈ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΡΠΎΠ±ΡΡΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Π² Clickhouse Π΄Π»Ρ Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ.
Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² AWS, ΡΠΎΠ»ΡΠΊΠΎ ΠΌΡ Π·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌ Graylog Ρ Kafka Π½Π° Cloudwatch. ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ ΡΡΠ΄Π° Π»ΠΎΠ³ΠΈ, ΠΈ Π²ΡΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ: ΡΡΠ°Π·Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΠΊ ΠΊΠΎΠΌΡ ΠΊΠ»Π°ΡΡΠ΅ΡΡ ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΎΠ½ΠΈ ΠΎΡΠ½ΠΎΡΡΡΡΡ. Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ Π²Π΅ΡΠ½ΠΎ ΠΈ Π΄Π»Ρ Google Stackdriver. Π’ΠΎ Π΅ΡΡΡ Π½Π°ΡΠ° ΡΡ Π΅ΠΌΠ° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ on-premise Ρ Kafka, ΡΠ°ΠΊ ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ΅.Β
ΠΡΠ»ΠΈ ΠΆΠ΅ Ρ Π½Π°Ρ Π½Π΅Ρ Kubernetes Ρ ΠΏΠΎΠ΄Π°ΠΌΠΈ, ΡΡ Π΅ΠΌΠ° ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅, Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌ.
ΠΠ½ΡΡΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΠΎΠ½ΠΈ ΠΎΡΠΊΠ΅ΡΡΡΠΈΡΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ S6. ΠΡΠ΅ ΡΠ΅ ΠΆΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½Ρ Π²Π½ΡΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°.
Π ΠΈΡΠΎΠ³Π΅
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΠΎΠ±ΡΠ°Π·ΠΎΠ² Π² ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΡ, Ρ ΠΎΠΏΡΠΈΡΠΌΠΈ ΡΠ±ΠΎΡΠ° ΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠΎΠΉ Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΌΠ΅ΡΡΠΈΠΊ:
- Π Π°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΡΠ±ΠΎΡΠΊΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ², Π½Π° Π΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ CI-ΡΠ°Π±Π»ΠΎΠ½Ρ;
- ΠΠ³Π΅Π½ΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ β ΡΡΠΎ Π½Π°ΡΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Telegraf. ΠΡ ΠΈΡ Ρ ΠΎΡΠΎΡΠΎ ΠΎΠ±ΠΊΠ°ΡΠ°Π»ΠΈ Π² production;
- ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ mutation webhook Π΄Π»Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² Ρ Π°Π³Π΅Π½ΡΠ°ΠΌΠΈ Π² ΠΏΠΎΠ΄Π°Ρ ;Β
- ΠΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π² ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ Kubernetes/Rancher;
- ΠΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π² ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΎΡΠΊΠ΅ΡΡΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡΠΉ Π½Π°ΠΌΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ;
- Π‘ΠΎΠ·Π΄Π°Π»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌΠΈ.Β
Π‘ΠΎΠ°Π²ΡΠΎΡ: ΠΠ»ΡΡ ΠΡΡΠ΄Π½ΠΈΠΊΠΎΠ²
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com