ΠΠ½Π΅Ρ, Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΠΈΡ ΠΊΠΎΠ΄, Π΄Π΅ΡΠ΅ΡΠΊΠΈ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ ΡΠ°Π±ΠΎΡΡΡ Π²ΡΡΡ Ρ Π½Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡΠ΅ΠΊΠΈ ΠΎΡ ΡΡΡ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Π½. ΠΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ ΡΠΎΠ²Π° Π² ΡΠ°ΠΊΠΈΠ²Π° ΠΎΠ±Π΅ΠΌΠΈ ΠΎΡ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ Π½Π° DevOps. Π Π°Π·ΡΠ°Π±ΠΎΡΠΈΡ ΠΌΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, ΠΊΠΎΡΡΠΎ ΡΠ°Π±ΠΎΡΠΈ ΠΊΠ°ΡΠΎ ΡΡΠ»ΡΠ³Π° Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ. Π’Π΅ ΠΌΠΎΠ³Π°Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄Π° Π·Π°ΠΏΠΈΡΠ²Π°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ, Π΄Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Ρ ΡΠ°Π±Π»Π° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΡΡ , Π΄Π° ΠΏΡΠΈΠΊΠ°ΡΠ²Π°Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΊΡΠΌ ΡΡΡ , ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΠ΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²Π°Ρ ΠΏΡΠΈ Π΄ΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π³ΠΎΠ²ΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ. Π‘ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ Π½Π° DevOps - ΡΠ°ΠΌΠΎ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
Π’Π°Π·ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π΅ ΠΏΡΠ΅ΠΏΠΈΡ Π½Π° ΠΌΠΎΡΡΠ° ΡΠ΅Ρ ΠΎΡ Π½Π°ΡΠ°ΡΠ°
ΠΠΈΠ½Π°Π»ΠΎ: ΡΡ Π΅ΠΌΠΈ ΠΈ ΠΏΠ»Π°Π½ΠΎΠ²Π΅
ΠΠ°ΠΊ ΡΡΠΈΠ³Π½Π°Ρ ΠΌΠ΅ Π΄ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠ°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³? ΠΠ° Π΄Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈΡΠ΅ Π½Π° ΡΠΎΠ·ΠΈ Π²ΡΠΏΡΠΎΡ, ΡΡΡΠ±Π²Π° Π΄Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π΄ΠΎ 2015 Π³. ΠΡΠΎ ΠΊΠ°ΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°ΡΠ΅ ΡΠΎΠ³Π°Π²Π°:
ΠΠΌΠ°Ρ
ΠΌΠ΅ ΠΎΠΊΠΎΠ»ΠΎ 24 Π²ΡΠ·Π΅Π»Π°, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ
Π° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°. ΠΠΌΠ° ΡΡΠ» ΠΊΡΠΏ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ crons, ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅, Π΄Π΅ΠΌΠΎΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Ρ Π½Π΅ΡΠΎ Π½ΡΠΊΡΠ΄Π΅, ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ. Π‘ΠΌΡΡΠ°Ρ
ΠΌΠ΅, ΡΠ΅ ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-Π½Π°ΡΠ°ΡΡΠΊ, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΆΠΈΠ·Π½Π΅ΡΠΏΠΎΡΠΎΠ±Π½Π° ΡΠ°ΠΊΠ°Π²Π° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΡΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°: ΡΠ²ΡΡΠ΄Π΅ Π΅ ΡΡΠΎΠΌΠ°Π²ΠΎ.
Π Π΅ΡΠΈΡ
ΠΌΠ΅ Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΠΌ ΡΠ΅Π·ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΎΡΡΠ°Π²ΠΈΠΌ ΠΈ ΡΠ°Π·Π²ΠΈΠ΅ΠΌ, ΠΈ ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ·ΠΎΡΡΠ°Π²ΠΈΠΌ. ΠΡΡ
Π° 19. ΠΡΡΠ°Π½Π°Ρ
Π° ΡΠ°ΠΌΠΎ Π³ΡΠ°ΡΠΈΡΠΈ, Π°Π³ΡΠ΅Π³Π°ΡΠΎΡΠΈ ΠΈ ΠΡΠ°ΡΠ°Π½Π° ΠΊΠ°ΡΠΎ ΡΠ°Π±Π»ΠΎ. ΠΠΎ ΠΊΠ°ΠΊ ΡΠ΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°? ΠΠ°ΡΠΎ ΡΠΎΠ·ΠΈ:
ΠΠΌΠ°ΠΌΠ΅ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈ: ΡΠΎΠ²Π° ΡΠ° Π³ΡΠ°ΡΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΡΠ΅ Π±Π°Π·ΠΈΡΠ°Ρ Π½Π° Π±ΡΡΠ·ΠΈ SSD ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΡΠΎΠ²Π° ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΎΡΠΈ Π·Π° ΠΌΠ΅ΡΡΠΈΠΊΠΈ. Π‘Π»Π΅Π΄Π²Π° - Grafana Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»Π°ΡΠ° ΠΈ Moira ΠΊΠ°ΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΡΠΊΠ°Ρ
ΠΌΠ΅ ΡΡΡΠΎ Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π½Π°ΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ.
Π‘ΡΠ°Π½Π΄Π°ΡΡ: ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ 2.0
Π’Π°ΠΊΠ° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°Ρ Π° ΠΏΠ»Π°Π½ΠΎΠ²Π΅ΡΠ΅ ΠΏΡΠ΅Π· 2015 Π³. ΠΠΎ ΡΡΡΠ±Π²Π°ΡΠ΅ Π΄Π° ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΠΈΠΌ Π½Π΅ ΡΠ°ΠΌΠΎ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΈ ΡΠ°ΠΌΠ°ΡΠ° ΡΡΠ»ΡΠ³Π°, Π½ΠΎ ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π·Π° Π½Π΅Ρ. Π Π°Π·ΡΠ°Π±ΠΎΡΠΈΡ ΠΌΠ΅ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π΅Π½ ΡΡΠ°Π½Π΄Π°ΡΡ Π·Π° ΡΠ΅Π±Π΅ ΡΠΈ, ΠΊΠΎΠΉΡΠΎ Π½Π°ΡΠ΅ΠΊΠΎΡ ΠΌΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ 2.0. ΠΠ°ΠΊΠ²ΠΈ Π±ΡΡ Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° ΠΊΡΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°?
- ΠΏΠΎΡΡΠΎΡΠ½Π½Π° Π½Π°Π»ΠΈΡΠ½ΠΎΡΡ;
- ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» Π½Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅ΡΡΠΈΠΊΠ° = 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ;
- ΡΡΡΡΠΊΡΡΡΠΈΡΠ°Π½ΠΎ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΈ ΡΠ°Π±Π»Π° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅;
- SLA > 99,99%
- ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π·Π° ΡΡΠ±ΠΈΡΠΈΡ ΡΡΠ΅Π· UDP (!).
ΠΠΌΠ°Ρ ΠΌΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ UDP, Π·Π°ΡΠΎΡΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊ ΠΈ ΡΡΠ±ΠΈΡΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. ΠΠΊΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ ΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Ρ Π³ΡΠ°ΡΠΈΡ Π½Π°Π²Π΅Π΄Π½ΡΠΆ, Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ ΡΠ΅ ΡΠ΅ ΡΡΠΈΠ½Π΅. ΠΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΠΈ ΠΏΡΠ΅ΡΠΈΠΊΡΠΈ ΠΎΡ ΠΏΡΡΠ²ΠΎ Π½ΠΈΠ²ΠΎ Π·Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ.
ΠΡΠ΅ΠΊΠΈ ΠΎΡ ΠΏΡΠ΅ΡΠΈΠΊΡΠΈΡΠ΅ ΠΈΠΌΠ° Π½ΡΠΊΠ°ΠΊΠ²ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ. ΠΠΌΠ° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π·Π° ΡΡΡΠ²ΡΡΠΈ, ΠΌΡΠ΅ΠΆΠΈ, ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, ΡΠ΅ΡΡΡΡΠΈ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Ρ.Π½. ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΎ Π΅ ΡΡΠ½ΠΎ, ΡΡΡΠΎΠ³ΠΎ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅, ΠΏΡΠΈ ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠΈΠ΅ΠΌΠ°ΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΎΡ ΠΏΡΡΠ²ΠΎ Π½ΠΈΠ²ΠΎ ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅ΠΌΠ°Ρ
Π²Π°ΠΌΠ΅ ΠΎΡΡΠ°Π½Π°Π»ΠΈΡΠ΅. Π’Π°ΠΊΠ° ΠΏΠ»Π°Π½ΠΈΡΠ°Ρ
ΠΌΠ΅ ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π· 2015 Π³. ΠΠ°ΠΊΠ²ΠΎ ΠΈΠΌΠ° Π² Π½Π°ΡΡΠΎΡΡΠ΅ΡΠΎ?
ΠΠ°ΡΡΠΎΡΡΠ΅: ΡΡ Π΅ΠΌΠ°ΡΠ° Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³
ΠΠ° ΠΏΡΡΠ²ΠΎ ΠΌΡΡΡΠΎ, Π½ΠΈΠ΅ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΌΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ°: Π½Π°ΡΠΈΡ PHP ΠΊΠΎΠ΄, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ - Ρ Π΅Π΄Π½Π° Π΄ΡΠΌΠ° Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΈΡΠ°Ρ Π½Π°ΡΠΈΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ. ΠΡΠΈΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΡΡΠ΅Π· UDP ΠΊΡΠΌ Π°Π³ΡΠ΅Π³Π°ΡΠΎΡΠ° Π½Π° Brubeck (statsd, ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C). Π’ΠΎΠΉ ΡΠ΅ ΠΎΠΊΠ°Π·Π° Π½Π°ΠΉ-Π±ΡΡΠ·ΠΈΡΡ ΡΠΏΠΎΡΠ΅Π΄ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΡ ΡΠΈΠ½ΡΠ΅ΡΠΈΡΠ½ΠΈΡΠ΅ ΡΠ΅ΡΡΠΎΠ²Π΅. Π ΠΈΠ·ΠΏΡΠ°ΡΠ° Π²Π΅ΡΠ΅ Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΊΡΠΌ Graphite ΡΡΠ΅Π· TCP.
ΠΠΌΠ° ΡΠ°ΠΊΡΠ² ΡΠΈΠΏ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΊΠ°ΡΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΠΈ. Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ Π½Π΅ΡΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π²ΡΡΠΊΠ° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠ° Π²ΡΡΠ·ΠΊΠ° ΠΊΡΠΌ ΡΡΠ»ΡΠ³Π°ΡΠ°, Π²ΠΈΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠ° Π·Π° Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡ Π½Π° Brubeck. ΠΠΎΠΉΠ΄ΠΎΡ Π° ΠΌΠΈΠ»ΠΈΠΎΠ½ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ°, Π° Π°Π³ΡΠ΅Π³Π°ΡΠΎΡΡΡ Π΄Π°Π΄Π΅ ΡΠ°ΠΌΠΎ 10 ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. ΠΠΌΠ°ΡΠ΅ Π±ΡΠΎΡ Π½Π° Π΄ΠΎΡΠ»ΠΈΡΠ΅ Ρ ΠΎΡΠ°, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎΡΠΎ, ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎΡΠΎ ΠΈ ΡΡΠ΅Π΄Π½ΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡ, ΠΌΠ΅Π΄ΠΈΠ°Π½Π°ΡΠ° ΠΈ 4 ΠΏΡΠΎΡΠ΅Π½ΡΠΈΠ»Π°. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΡ ΠΊΡΠΌ Graphite ΠΈ Π½ΠΈΠ΅ Π³ΠΈ Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΈ Π½Π° ΠΆΠΈΠ²ΠΎ.
ΠΠΌΠ°ΠΌΠ΅ ΠΈ Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½Π΅ Π·Π° Ρ Π°ΡΠ΄ΡΠ΅Ρ, ΡΠΎΡΡΡΠ΅Ρ, ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΈ ΡΡΠ°ΡΠ°ΡΠ° Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Munin (ΡΠ°Π±ΠΎΡΠ΅ΡΠ΅ Ρ Π½Π°Ρ Π΄ΠΎ 2015 Π³.). Π‘ΡΠ±ΠΈΡΠ°ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° ΡΡΠ΅Π· C'ish daemon CollectD (Π² Π½Π΅Π³ΠΎ ΡΠ° Π·Π°ΡΠΈΡΠΈ ΡΡΠ» ΠΊΡΠΏ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ, ΡΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΡΡΠΈ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΡΡΡΡΠΈ Π½Π° Ρ ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°, Π½Π° ΠΊΠΎΡΡΠΎ Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½, ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠΎΡΠ΅ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΊΡΠ΄Π΅ Π΄Π° Π·Π°ΠΏΠΈΡΠ²Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈ ) ΠΈ Π·Π°ΠΏΠΈΡΠ²Π°ΠΉΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΏΡΠ΅Π· Π½Π΅Π³ΠΎ Π² Graphite. Π’ΠΎΠΉ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Python ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ ΠΈ shell ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅, ΡΠ°ΠΊΠ° ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ: CollectD ΡΠ΅ ΡΡΠ±Π΅ΡΠ΅ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ Π»ΠΎΠΊΠ°Π»Π΅Π½ ΠΈΠ»ΠΈ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ Ρ ΠΎΡΡ (ΠΏΡΠΈΠ΅ΠΌΠ°ΠΌΠ΅, ΡΠ΅ ΠΈΠΌΠ° Curl) ΠΈ ΡΠ΅ Π³ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠΈ Π½Π° Graphite.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠΌΠ΅ ΡΡΠ±ΡΠ°Π»ΠΈ, ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ Π΄ΠΎ Carbon-c-relay. Π’ΠΎΠ²Π° Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Carbon Relay Π½Π° Graphite, ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°Π½ΠΎ Π² C. Π’ΠΎΠ²Π° Π΅ ΡΡΡΠ΅Ρ, ΠΊΠΎΠΉΡΠΎ ΡΡΠ±ΠΈΡΠ° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΡΠ°ΡΠ°ΠΌΠ΅ ΠΎΡ Π½Π°ΡΠΈΡΠ΅ Π°Π³ΡΠ΅Π³Π°ΡΠΎΡΠΈ, ΠΈ Π³ΠΈ Π½Π°ΡΠΎΡΠ²Π° ΠΏΡΠ΅Π· Π²ΡΠ·Π»ΠΈΡΠ΅. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° ΠΌΠ°ΡΡΡΡΡΠΈΠ·ΠΈΡΠ°Π½Π΅ ΡΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅. ΠΡΡΠ²ΠΎ, ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°Ρ Π½Π° ΠΏΡΠ΅ΡΠΈΠΊΡΠ½Π°ΡΠ° ΡΡ Π΅ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ ΠΏΠΎ-ΡΠ°Π½ΠΎ, ΠΈ Π²ΡΠΎΡΠΎ, ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ° Π²Π°Π»ΠΈΠ΄Π½ΠΈ Π·Π° Π³ΡΠ°ΡΠΈΡ. Π ΠΏΡΠΎΡΠΈΠ²Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ ΡΠ΅ ΠΏΠ°Π΄Π°Ρ.
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° Carbon-c-relay ΠΈΠ·ΠΏΡΠ°ΡΠ° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΊΡΠΌ ΠΊΠ»ΡΡΡΠ΅ΡΠ° Graphite. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Carbon-cache, ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½ Π² Go, ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π·Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. Go-carbon, ΠΏΠΎΡΠ°Π΄ΠΈ ΡΠ²ΠΎΡΡΠ° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡ, Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΄ΠΎΠ±ΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° Carbon-cache. Π’ΠΎΠΉ Π²Π·Π΅ΠΌΠ° Π΄Π°Π½Π½ΠΈ Π² ΡΠ΅Π±Π΅ ΡΠΈ ΠΈ Π³ΠΈ Π·Π°ΠΏΠΈΡΠ²Π° Π½Π° Π΄ΠΈΡΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ° whisper (ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½, Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° python). ΠΠ° Π΄Π° ΡΠ΅ΡΠ΅ΠΌ Π΄Π°Π½Π½ΠΈ ΠΎΡ Π½Π°ΡΠΈΡΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°, Π½ΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Graphite API. Π Π°Π±ΠΎΡΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡ Graphite WEB. ΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Ρ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π°?
ΠΡΠΈΠ²Π°Ρ Π½Π° ΠΡΠ°ΡΠ°Π½Π°. ΠΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π½Π°ΡΠΈΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ½ΠΈ ΠΊΠ»ΡΡΡΠ΅ΡΠΈ ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π΅Π½ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΏΠ»ΡΡ ΠΈΠΌΠ°ΠΌΠ΅ Grafana ΠΊΠ°ΡΠΎ ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ°Π±Π»Π° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΠ° Π²ΡΡΠΊΠ° ΡΠ²ΠΎΡ ΡΡΠ»ΡΠ³Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΡΡΠ·Π΄Π°Π²Π°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΎ ΡΠ°Π±Π»ΠΎ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Ρ Π³ΡΠ°ΡΠΈΠΊΠΈ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΡΡ , ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π°Ρ ΠΎΡ ΡΠ²ΠΎΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠ²Π΅Π½ ΠΡΠ°ΡΠ°Π½Π° ΠΈΠΌΠ°ΠΌΠ΅ ΠΈ SLAM. Π’ΠΎΠ²Π° Π΅ ΠΏΠΈΡΠΎΠ½ΠΈΡΠ΅Π½ Π΄Π΅ΠΌΠΎΠ½, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π° SLA Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ Π³ΡΠ°ΡΠΈΡ. ΠΠ°ΠΊΡΠΎ ΠΊΠ°Π·Π°Ρ , ΠΈΠΌΠ°ΠΌΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄ΡΠ·ΠΈΠ½ΠΈ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ, Π²ΡΡΠΊΠ° ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΠΈΠΌΠ° ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ. Π‘ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° SLAM ΠΎΡΠΈΠ²Π°ΠΌΠ΅ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° ΠΈ Ρ ΡΡΠ°Π²Π½ΡΠ²Π°ΠΌΠ΅ Ρ ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π² Graphite, ΠΈ ΡΡΠ°Π²Π½ΡΠ²Π°ΠΌΠ΅ ΠΊΠ°ΠΊ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°Ρ Π½Π° Π½Π°Π»ΠΈΡΠ½ΠΎΡΡΡΠ° Π½Π° Π½Π°ΡΠΈΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ.
ΠΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π°ΠΉΠΊΠΈ ΠΏΠΎ-Π½Π°ΡΠ°ΡΡΠΊ: Π°Π»Π°ΡΠΌΠΈΡΠ°Π½Π΅. ΠΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½ Π΅ ΡΡΡ ΡΠΈΠ»Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° - ΠΠΎΠΉΡΠ°. Π’Ρ Π΅ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠ°, Π·Π°ΡΠΎΡΠΎ ΠΈΠΌΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½ Π³ΡΠ°ΡΠΈΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠ°ΠΊΠ°. Π Π°Π·ΡΠ°Π±ΠΎΡΠ΅Π½ΠΎ ΠΎΡ ΠΌΠΎΠΌΡΠ΅ΡΠ°ΡΠ° ΠΎΡ SKB Kontur, Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π½Π° python ΠΈ Go, Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄. ΠΠΎΠΉΡΠ° ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΡΡΡΠΈΡ ΠΏΠΎΡΠΎΠΊ, ΠΊΠΎΠΉΡΠΎ ΠΎΡΠΈΠ²Π° Π² Π³ΡΠ°ΡΠΈΡΠΈΡΠ΅. ΠΠΊΠΎ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° Π²Π°ΡΠ΅ΡΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΡΠΌΡΠ΅, Π²Π°ΡΠ΅ΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ.
Π Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠΈΡ ΠΌΠ΅ Moira Π² Kubernetes, ΡΠΎΠΉ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ»ΡΡΡΠ΅Ρ ΠΎΡ Redis ΡΡΡΠ²ΡΡΠΈ ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π Π΅Π·ΡΠ»ΡΠ°ΡΡΡ Π΅ ΡΡΡΠΎΠΉΡΠΈΠ²Π° Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°. Π’ΠΎΠΉ ΡΡΠ°Π²Π½ΡΠ²Π° ΠΏΠΎΡΠΎΠΊΠ° ΠΎΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΡΡΡ ΡΠΏΠΈΡΡΠΊΠ° ΠΎΡ ΡΡΠΈΠ³Π΅ΡΠΈ: Π°ΠΊΠΎ Π² Π½Π΅Π³ΠΎ Π½ΡΠΌΠ° ΡΠΏΠΎΠΌΠ΅Π½Π°Π²Π°Π½ΠΈΡ, ΡΠΎΠΉ ΠΈΠ·ΠΏΡΡΠΊΠ° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. Π’Π°ΠΊΠ° ΡΠ΅ ΡΡ Π΅ Π² ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π΄Π° ΡΠΌΠΈΠ»Π° Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΠΌΠΈΠ½ΡΡΠ°.
ΠΡΠΌ Π½Π΅Π³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ ΠΌΠ΅ ΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π΅Π½ LDAP, Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΊΠΎΠΉΡΠΎ Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½Π° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π²Π° ΠΈΠ·Π²Π΅ΡΡΠΈΡ Π·Π° ΡΠ΅Π±Π΅ ΡΠΈ Π·Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ (ΠΈΠ»ΠΈ Π½ΠΎΠ²ΠΎΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ) ΡΡΠΈΠ³Π΅ΡΠΈ. Π’ΡΠΉ ΠΊΠ°ΡΠΎ Moira ΡΡΠ΄ΡΡΠΆΠ° Graphite, ΡΠΎΠΉ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π²ΡΠΈΡΠΊΠΈ Π½Π΅Π³ΠΎΠ²ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. Π’Π°ΠΊΠ° ΡΠ΅ ΠΏΡΡΠ²ΠΎ Π²Π·Π΅ΠΌΠ΅ΡΠ΅ ΡΠ΅Π΄Π° ΠΈ Π³ΠΎ ΠΊΠΎΠΏΠΈΡΠ°ΠΉΡΠ΅ Π² Grafana. ΠΠΈΠΆΡΠ΅ ΠΊΠ°ΠΊ ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ Π΄Π°Π½Π½ΠΈΡΠ΅ Π² Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΈΡΠ΅. Π ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ ΡΡΡΠΈΡ ΡΠ΅Π΄ ΠΈ Π³ΠΎ ΠΊΠΎΠΏΠΈΡΠ°ΠΉΡΠ΅ Π² Moira. ΠΠ°ΠΊΠ°ΡΠ΅ΡΠ΅ Π³ΠΎ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π°. ΠΠ° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π°, Π½Π΅ ΡΠ° Π²ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ ΠΏΠΎΠ·Π½Π°Π½ΠΈΡ. Moira ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°Π²Π° ΡΡΠ΅Π· SMS, ΠΈΠΌΠ΅ΠΉΠ», Jira, Slackβ¦ ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅. ΠΠΎΠ³Π°ΡΠΎ ΡΡ ΠΈΠΌΠ° ΡΡΠΈΠ³Π΅Ρ ΠΈ Π΅ Π°Π±ΠΎΠ½ΠΈΡΠ°Π½Π° Π·Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΡΠΊΡΠΈΠΏΡ ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΈΡΠ΅Π½ ΡΠ°ΠΉΠ», ΡΡ Π³ΠΎ ΡΡΠ°ΡΡΠΈΡΠ° ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠ° ΡΠΎΠ·ΠΈ JSON Π΄Π²ΠΎΠΈΡΠ΅Π½ ΡΠ°ΠΉΠ» ΠΊΡΠΌ stdin. Π‘ΡΠΎΡΠ²Π΅ΡΠ½ΠΎ Π²Π°ΡΠ°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΡΡΡΠ±Π²Π° Π΄Π° Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°. ΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ Ρ ΡΠΎΠ·ΠΈ JSON Π·Π°Π²ΠΈΡΠΈ ΠΎΡ Π²Π°Ρ. ΠΠΊΠΎ ΠΈΡΠΊΠ°ΡΠ΅, ΠΈΠ·ΠΏΡΠ°ΡΠ΅ΡΠ΅ Π³ΠΎ Π² Telegram, Π°ΠΊΠΎ ΠΈΡΠΊΠ°ΡΠ΅, ΠΎΡΠ²ΠΎΡΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π² Jira, ΠΏΡΠ°Π²Π΅ΡΠ΅ ΠΊΠ°ΠΊΠ²ΠΎΡΠΎ ΠΈΡΠΊΠ°ΡΠ΅.
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π·Π° ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ - Imagotag. ΠΠ΄Π°ΠΏΡΠΈΡΠ°Ρ ΠΌΠ΅ ΠΏΠ°Π½Π΅Π»Π°, ΠΊΠΎΠΉΡΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π΅Π»Π΅ΠΊΡΡΠΎΠ½Π½ΠΈ Π΅ΡΠΈΠΊΠ΅ΡΠΈ Ρ ΡΠ΅Π½ΠΈ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΈΡΠ΅, Π·Π° Π½Π°ΡΠΈΡΠ΅ Π½ΡΠΆΠ΄ΠΈ. ΠΠΎΠ½Π΅ΡΠΎΡ ΠΌΠ΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²Π°Π½ΠΈΡ ΠΎΡ ΠΠΎΠΉΡΠ° ΠΊΡΠΌ Π½Π΅Π³ΠΎ. ΠΠΎΠΊΠ°Π·Π²Π° Π² ΠΊΠ°ΠΊΠ²ΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°, ΠΊΠΎΠ³Π° ΡΠ° ΡΠ΅ ΡΠ»ΡΡΠΈΠ»ΠΈ. ΠΡΠΊΠΎΠΈ ΠΎΡ ΠΌΠΎΠΌΡΠ΅ΡΠ°ΡΠ° ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° ΠΈΠ·ΠΎΡΡΠ°Π²ΠΈΡ Π° ΠΈΠ·Π²Π΅ΡΡΠΈΡΡΠ° Π² Slack ΠΈ ΠΏΠΎ ΠΏΠΎΡΠ°ΡΠ° Π² ΠΏΠΎΠ»Π·Π° Π½Π° ΡΠΎΠ·ΠΈ ΠΏΠ°Π½Π΅Π».
Π, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π½ΠΈΠ΅ ΡΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ΅ΡΠΈΠ²Π½Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ, Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Ρ
ΠΌΠ΅ ΠΈ Kubernetes Π² ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠΊΠ»ΡΡΠΈΡ
ΠΌΠ΅ Π³ΠΎ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Heapster, ΠΊΠΎΠΉΡΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ
ΠΌΠ΅ Π² ΠΊΠ»ΡΡΡΠ΅ΡΠ°, ΡΠΎΠΉ ΡΡΠ±ΠΈΡΠ° Π΄Π°Π½Π½ΠΈ ΠΈ Π³ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π½Π° Graphite. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΡΡ
Π΅ΠΌΠ°ΡΠ° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ°ΠΊΠ°:
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅
ΠΡΠΎ ΡΠΏΠΈΡΡΠΊ Ρ Π²ΡΡΠ·ΠΊΠΈ ΠΊΡΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ Π·Π° ΡΠ°Π·ΠΈ Π·Π°Π΄Π°ΡΠ°. ΠΡΠΈΡΠΊΠΈ ΡΠ΅ ΡΠ° Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄.
ΠΡΠ°ΡΠΈΡ:
- Π²ΡΠ³Π»Π΅ΡΠΎΠ΄Π΅Π½:
github.com/lomik/go-carbon - ΠΏΡΠΎΡΠ΅ΠΏΠ²Π°ΠΌ:
github.com/graphite-project/whisper - Π³ΡΠ°ΡΠΈΡ-api:
github.com/brutasse/graphite-api
Carbon-c-ΡΠ΅Π»Π΅:
ΠΡΡΠ±Π΅ΠΊ:
Π‘ΡΠ±ΡΠ°Π½:
ΠΠΎΠΉΡΠ°:
ΠΡΠ°ΡΠ°Π½Π°:
ΠΊΡΠΏΡΠΈΠ½Π°:
ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°
Π Π΅ΡΠΎ Π½ΡΠΊΠΎΠΈ ΡΠΈΡΡΠΈ Π·Π° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠΈ Π·Π° Π½Π°Ρ.
ΠΠ³ΡΠ΅Π³Π°ΡΠΎΡ (Π±ΡΡΠ±Π΅ΠΊ)
ΠΡΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ: ~ 300 000 / ΡΠ΅ΠΊ
ΠΠ½ΡΠ΅ΡΠ²Π°Π» Π½Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° Graphite Metrics: 30 ΡΠ΅ΠΊ
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° ΡΡΡΠ²ΡΡΠ°: ~ 6% CPU (Π³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° ΠΏΡΠ»Π½ΠΎΡΠ΅Π½Π½ΠΈ ΡΡΡΠ²ΡΡΠΈ); ~ 1Gb RAM; ~ 3 Mbps LAN
ΠΡΠ°ΡΠΈΡ (go-carbon)
ΠΡΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ: ~ 1 600 000 / ΠΌΠΈΠ½
ΠΠ½ΡΠ΅ΡΠ²Π°Π» Π·Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅: 30 ΡΠ΅ΠΊ
Π‘Ρ
Π΅ΠΌΠ° Π·Π° ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ: 30sec 35d, 5min 90d, 10min 365d (Π΄Π°Π²Π° ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Ρ ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° Π΄ΡΠ»ΡΠ³ ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅)
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΡΡΠ²ΡΡΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ: ~10% CPU; ~ 20Gb RAM; ~ 30 Mbps LAN
ΠΡΠ²ΠΊΠ°Π²ΠΎΡΡ
ΠΠΈΠ΅ ΠΎΡ Avito Π½Π°ΠΈΡΡΠΈΠ½Π° ΡΠ΅Π½ΠΈΠΌ Π³ΡΠ²ΠΊΠ°Π²ΠΎΡΡΡΠ° Π½Π° Π½Π°ΡΠ°ΡΠ° ΡΡΠ»ΡΠ³Π° Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅. ΠΠ°ΡΠΎ Π²ΡΡΡΠ½ΠΎΡΡ ΡΠ΅ ΠΎΠΊΠ°Π·Π° ΡΠ°ΠΊΡΠ²? ΠΡΡΠ²ΠΎ, Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΡΡΡΡΠ°Π²Π½ΠΈ ΡΠ°ΡΡΠΈ ΡΠ° Π²Π·Π°ΠΈΠΌΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΈ: ΠΊΠ°ΠΊΡΠΎ ΡΠ°ΠΌΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, ΡΠ°ΠΊΠ° ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ. ΠΡΠΎΡΠΎ, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°. Π’ΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅Π»ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ Π²ΡΡΡ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, Π²ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΌΠΈ Π΄Π° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°ΡΠ΅ ΠΊΠΎΠ΄Π°, Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π° ΠΏΡΠΈΠ»Π°Π³Π°ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π²Π΅Π΄Π½Π°Π³Π°. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ΅ Π΄ΠΎΡΡΠ° ΡΠ΅ΡΡΠΎ ΡΡΠ΅ΡΠ°Π½ΠΈ ΡΡΠ΅ΠΊΠΎΠ²Π΅, Π³Π»Π°Π²Π½ΠΎ Go ΠΈ Python, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠΎΠ²Π° ΡΠ΅ ΠΏΡΠ°Π²ΠΈ Π΄ΠΎΡΡΠ° ΠΏΡΠΎΡΡΠΎ.
ΠΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΡΠ΅Π°Π»Π΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΠ΅ΡΡΠΈΠΊΠ°ΡΠ° Π² Graphite Π΅ ΡΠ°ΠΉΠ». ΠΠΌΠ° ΡΠΈ ΠΈΠΌΠ΅. ΠΠΌΠ΅ Π½Π° ΡΠ°ΠΉΠ» = ΠΈΠΌΠ΅ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π». Π ΠΈΠΌΠ° Π½Π°ΡΠΈΠ½ Π΄Π° ΡΡΠΈΠ³Π½Π΅ΡΠ΅ Π΄ΠΎ ΡΠ°ΠΌ. ΠΠΌΠ΅Π½Π°ΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ Π² Linux ΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ Π΄ΠΎ 255 Π·Π½Π°ΠΊΠ°. Π ΠΈΠΌΠ°ΠΌΠ΅ (ΠΊΠ°ΡΠΎ βΠ²ΡΡΡΠ΅ΡΠ½ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈβ) ΠΌΠΎΠΌΡΠ΅ΡΠ° ΠΎΡ ΠΎΡΠ΄Π΅Π»Π° Π·Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. Π’Π΅ Π½ΠΈ ΠΊΠ°Π·Π²Π°Ρ: βΠΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΌΠ΅ Π½Π°ΡΠΈΡΠ΅ SQL Π·Π°ΡΠ²ΠΊΠΈ. Π Π½Π΅ ΡΠ° 255 ΡΠΈΠΌΠ²ΠΎΠ»Π°, Π° ΠΏΠΎ 8 MB. ΠΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π³ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π² Grafana, Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ°Π·ΠΈ Π·Π°ΡΠ²ΠΊΠ° ΠΈ ΠΎΡΠ΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅, ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ Π²ΡΡΡ Π° Π½Π° ΡΠ°ΠΊΠΈΠ²Π° Π·Π°ΡΠ²ΠΊΠΈ. Π©Π΅ Π±ΡΠ΄Π΅ ΡΡΠ΄Π΅ΡΠ½ΠΎ, Π°ΠΊΠΎ ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅. Π Π±ΠΈ Π±ΠΈΠ»ΠΎ Π½Π°ΠΈΡΡΠΈΠ½Π° ΡΡΡΠ°Ρ ΠΎΡΠ½ΠΎ Π΄Π° Π³ΠΈ Π²ΠΊΠ°ΡΠ°ΠΌΠ΅ Π² ΡΡΠ΅Π²ΠΎΠ³Π°ΡΠ°.
ΠΡΠΈΠΌΠ΅ΡΡΡ Π·Π° SQL Π·Π°ΡΠ²ΠΊΠ° Π΅ Π²Π·Π΅Ρ ΠΊΠ°ΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡ
ΠΠΈΠ΅ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°ΠΌΠ΅ Redis ΡΡΡΠ²ΡΡΠ° ΠΈ Π½Π°ΡΠΈΡΠ΅ Collectd ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠΈΠ²Π°Ρ Π² Postgres ΠΈ Π²Π·Π΅ΠΌΠ°Ρ Π²ΡΠΈΡΠΊΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ°ΠΌ, ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π΄ΠΎ Graphite. ΠΠΎ Π·Π°ΠΌΠ΅Π½ΡΠΌΠ΅ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Ρ Ρ Π΅ΡΠΎΠ²Π΅. Π‘ΡΡΠΈΡΡ Ρ Π΅Ρ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π° Redis ΠΊΠ°ΡΠΎ ΠΊΠ»ΡΡ ΠΈ ΡΡΠ»Π°ΡΠ° SQL Π·Π°ΡΠ²ΠΊΠ° ΠΊΠ°ΡΠΎ ΡΡΠΎΠΉΠ½ΠΎΡΡ. ΠΡΡΠ°Π²Π° Π΄Π° Π½Π°ΠΊΠ°ΡΠ°ΠΌΠ΅ Grafana Π΄Π° ΠΎΡΠΈΠ΄Π΅ Π² Redis ΠΈ Π΄Π° Π²Π·Π΅ΠΌΠ΅ ΡΠ°Π·ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΠΈΠ΅ ΠΎΡΠ²Π°ΡΡΠΌΠ΅ Graphite API, Π·Π°ΡΠΎΡΠΎ ΡΠΎΠ²Π° Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Ρ Π³ΡΠ°ΡΠΈΡ ΠΈ Π½ΠΈΠ΅ Π²ΡΠ²Π΅ΠΆΠ΄Π°ΠΌΠ΅ Π½ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΡ ΡΠ°ΠΌ, Π½Π°ΡΠ΅ΡΠ΅Π½Π° aliasByHash () - ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΌΠ΅ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΎΡ Grafana ΠΈ Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π² Π·Π°ΡΠ²ΠΊΠ° ΠΊΡΠΌ Redis ΠΊΠ°ΡΠΎ ΠΊΠ»ΡΡ, Π² ΠΎΡΠ³ΠΎΠ²ΠΎΡ ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΌΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° ΠΊΠ»ΡΡΠ°, ΠΊΠΎΠΉΡΠΎ Π΅ Π½Π°ΡΠ°ΡΠ° βSQL Π·Π°ΡΠ²ΠΊΠ°β. Π’Π°ΠΊΠ° Π΄ΠΎΠ½Π΅ΡΠΎΡ ΠΌΠ΅ Π² Grafana ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° SQL Π·Π°ΡΠ²ΠΊΠ°, ΠΊΠΎΡΡΠΎ Π½Π° ΡΠ΅ΠΎΡΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΡΠ°ΠΌ, Π·Π°Π΅Π΄Π½ΠΎ ΡΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° Π½Π΅Ρ (ΠΎΠ±Π°ΠΆΠ΄Π°Π½ΠΈΡ, ΡΠ΅Π΄ΠΎΠ²Π΅, total_time, ...).
Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΎΡ
ΠΠ°Π»ΠΈΡΠΈΠ΅. ΠΠ°ΡΠ°ΡΠ° ΡΡΠ»ΡΠ³Π° Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π΅ Π΄ΠΎΡΡΡΠΏΠ½Π° 24/7 ΠΎΡ Π²ΡΡΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΡΠ΅ΠΊΠΈ ΠΊΠΎΠ΄. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°ΡΠ°, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΏΠΈΡΠ²Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈ Π² ΡΡΠ»ΡΠ³Π°ΡΠ°. ΠΠ·ΠΈΠΊΡΡ Π½Π΅ Π΅ Π²Π°ΠΆΠ΅Π½, ΡΠ΅ΡΠ΅Π½ΠΈΡΡΠ° Π½Π΅ ΡΠ° Π²Π°ΠΆΠ½ΠΈ. Π’ΡΡΠ±Π²Π° ΡΠ°ΠΌΠΎ Π΄Π° Π·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ Π΄Π° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ ΡΠΎΠΊΠ΅Ρ, Π΄Π° Ρ Π²ΡΡΠ»ΠΈΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠ° ΡΠ°ΠΌ ΠΈ Π΄Π° Π·Π°ΡΠ²ΠΎΡΠΈΡΠ΅ ΡΠΎΠΊΠ΅ΡΠ°.
ΠΠ°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡ. ΠΡΠΈΡΠΊΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ ΡΠ° ΡΡΡΠΎΠΉΡΠΈΠ²ΠΈ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΡΠ΅ ΡΠΏΡΠ°Π²ΡΡ Π΄ΠΎΠ±ΡΠ΅ Ρ Π½Π°ΡΠΈΡΠ΅ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½ΠΈΡ.
ΠΠΈΡΡΠΊ ΠΏΡΠ°Π³ Π½Π° Π²Π»ΠΈΠ·Π°Π½Π΅. ΠΠ° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°, Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΠΈΠ·ΡΡΠ°Π²Π°ΡΠ΅ Π΅Π·ΠΈΡΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅ ΠΈ Π·Π°ΡΠ²ΠΊΠΈ Π² Grafana. ΠΡΠΎΡΡΠΎ ΠΎΡΠ²ΠΎΡΠ΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠΈ, Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ ΡΠΎΠΊΠ΅Ρ ΠΊΡΠΌ Π½Π΅Π³ΠΎ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΊΡΠΌ Graphite, Π·Π°ΡΠ²ΠΎΡΠ΅ΡΠ΅ Π³ΠΎ, ΠΎΡΠ²ΠΎΡΠ΅ΡΠ΅ Grafana, ΡΡΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°Π±Π»Π° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΌ ΠΈ Π²ΠΈΠΆΡΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π²Π°ΡΠΈΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΉΠΊΠΈ ΠΈΠ·Π²Π΅ΡΡΠΈΡ ΡΡΠ΅Π· Moira.
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° ΡΠ°ΠΌΠΈ, Π±Π΅Π· ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈΡΠ΅ Π½Π° DevOps. Π ΡΠΎΠ²Π° Π΅ ΡΠ²ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Π·Π°ΡΠΎΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΈ ΡΠΎΡΠ½ΠΎ ΡΠ΅Π³Π°, Π½Π΅ Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π° ΠΏΠΈΡΠ°ΡΠ΅ Π½ΠΈΠΊΠΎΠ³ΠΎ - Π½ΠΈΡΠΎ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°, Π½ΠΈΡΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ.
ΠΡΠΌ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΡΡΠ΅ΠΌΠΈΠΌ?
ΠΡΠΈΡΠΊΠΎ ΠΈΠ·Π±ΡΠΎΠ΅Π½ΠΎ ΠΏΠΎ-Π΄ΠΎΠ»Ρ Π½Π΅ ΡΠ° ΠΏΡΠΎΡΡΠΎ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΠΈ ΠΌΠΈΡΠ»ΠΈ, Π° Π½Π΅ΡΠΎ ΠΊΡΠΌ ΠΊΠΎΠ΅ΡΠΎ ΡΠ° Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΏΠΎΠ½Π΅ ΠΏΡΡΠ²ΠΈΡΠ΅ ΡΡΡΠΏΠΊΠΈ.
- Π΄Π΅ΡΠ΅ΠΊΡΠΎΡ Π½Π° Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ. ΠΡΠΊΠ°ΠΌΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΡΡΠ»ΡΠ³Π°, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΎΡΠΈΠ²Π° Π² Π½Π°ΡΠΈΡΠ΅ Graphite Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΈ ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π» Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ. ΠΠ΅ΡΠ΅ ΠΈΠΌΠ° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ, ΠΈΠΌΠ° Π΄Π°Π½Π½ΠΈ, Π·Π½Π°Π΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° ΡΠ°Π±ΠΎΡΠΈΠΌ Ρ ΡΡΡ .
- ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ. ΠΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ»ΡΠ³ΠΈ, ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΡΡ Π²ΡΠ² Π²ΡΠ΅ΠΌΠ΅ΡΠΎ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Ρ ΠΎΡΠ°ΡΠ°, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Ρ ΡΡΡ . Π ΡΡΠ½ΠΎΡΠΎ Π²ΠΎΠ΄Π΅Π½Π΅ Π½Π° Π·Π°ΠΏΠΈΡΠΈ Π½Π΅ Π΅ ΠΎΠΏΡΠΈΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈΡΠ΅ Π²Π΅ΡΠ΅ ΡΠ° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ Π² Π½Π°ΡΠΈΡΠ΅ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ. Π’ΠΎΠΉ ΠΏΠΎΡΠΎΡΠ²Π° ΠΊΠΎΠΉ Π³ΠΎ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈΠ», Π΅Π·ΠΈΡΠΈΡΠ΅, Ρ ΠΊΠΎΠΈΡΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²Π°, SLA ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ, ΠΊΡΠ΄Π΅ ΠΈ Π΄ΠΎ ΠΊΠΎΠ³ΠΎ Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠ°ΡΠ΅ ΠΈΠ·Π²Π΅ΡΡΠΈΡ. ΠΡΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ»ΡΠ³Π° Π²ΡΠΈΡΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° ΠΎΠ±Π΅ΠΊΡΠ° ΡΠ΅ ΡΡΠ·Π΄Π°Π²Π°Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅ Π΄Π²Π΅ Π²ΡΡΠ·ΠΊΠΈ - Π΅Π΄Π½Π°ΡΠ° Π·Π° ΡΡΠΈΠ³Π΅ΡΠΈ, Π΄ΡΡΠ³Π°ΡΠ° Π·Π° ΡΠ°Π±Π»Π°ΡΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π² Grafana.
- ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π²ΡΠ² Π²ΡΠ΅ΠΊΠΈ Π΄ΠΎΠΌ. ΠΡΡΠ²Π°ΠΌΠ΅, ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ°ΠΊΠ°Π²Π° ΡΠΈΡΡΠ΅ΠΌΠ°. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π²ΠΈΠ½Π°Π³ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°ΡΠ΅ ΠΊΡΠ΄Π΅ Π΅ Π²Π°ΡΠΈΡΡ ΡΡΠ°ΡΠΈΠΊ, ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Ρ Π½Π΅Π³ΠΎ, ΠΊΡΠ΄Π΅ ΠΏΠ°Π΄Π°, ΠΊΡΠ΄Π΅ ΠΈΠΌΠ° ΡΠ»Π°Π±ΠΈ ΠΌΠ΅ΡΡΠ°. ΠΠΊΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄ΠΎΠΉΠ΄Π΅ Π½Π΅ΡΠΎ ΠΈ Π²ΠΈ ΡΡΠΈΠ½Π΅ ΡΡΠ»ΡΠ³Π°ΡΠ°, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ Π·Π° ΡΠΎΠ²Π° Π½Π΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΎΠ±Π°ΠΆΠ΄Π°Π½Π΅ ΠΎΡ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΠ°, Π° ΠΎΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ Π½ΠΎΠ²ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ Π΅ ΡΠ»ΡΡΠΈΠ»ΠΎ ΡΠ°ΠΌ.
- ΠΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ. ΠΠ°ΡΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎ ΡΠ΅ ΡΠ°Π·ΡΠ°ΡΡΠ²Π° ΠΈ Π΄Π½Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° ΠΎΠΊΠΎΠ»ΠΎ 2 000 000 ΠΌΠ΅ΡΡΠΈΡΠ½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π½Π° ΠΌΠΈΠ½ΡΡΠ°. ΠΡΠ΅Π΄ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ° Π±Π΅ΡΠ΅ 500 000. Π ΡΠ°ΡΡΠ΅ΠΆΡΡ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° ΠΈ ΡΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΡΠ»Π΅Π΄ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Graphite (ΡΠ΅ΠΏΠΎΡ) ΡΠ΅ Π·Π°ΠΏΠΎΡΠ½Π΅ Π΄Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π° Π΄ΠΈΡΠΊΠΎΠ²Π°ΡΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΈΠ»Π½ΠΎ. ΠΠ°ΠΊΡΠΎ ΠΊΠ°Π·Π°Ρ
, ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π΅ Π΄ΠΎΡΡΠ° Π³ΡΠ²ΠΊΠ°Π²Π° ΠΏΠΎΡΠ°Π΄ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΡΡΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅. ΠΡΠΊΠΎΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π·Π° Graphite ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΈ Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎ ΡΠ°Π·ΡΠΈΡΡΠ²Π° ΡΡΡ
Π½Π°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°, Π½ΠΎ Π½ΠΈΠ΅ ΡΠ΅ΡΠΈΡ
ΠΌΠ΅ Π΄Π° ΡΡΡΠ³Π½Π΅ΠΌ ΠΏΠΎ Π΄ΡΡΠ³ Π½Π°ΡΠΈΠ½: Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅
Π©ΡΠ°ΠΊΠ½Π΅ΡΠ΅ Π²ΡΡΡ Ρ ΠΡΡΠ° ΠΊΠ°ΡΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π·Π° Π½Π°ΡΠΈΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. Π’ΠΎΠ·ΠΈ ΠΏΡΠ΅Ρ ΠΎΠ΄ Π΅ ΠΏΠΎΡΡΠΈ Π·Π°Π²ΡΡΡΠ΅Π½ ΠΈ ΡΡΠ²ΡΠ΅ΠΌ ΡΠΊΠΎΡΠΎ ΡΠ΅ Π²ΠΈ ΡΠ°Π·ΠΊΠ°ΠΆΠ° ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΊΠ°ΠΊ Π±Π΅ΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΎ: ΠΊΠ°ΠΊΠ²ΠΈ Π±ΡΡ Π° ΡΡΡΠ΄Π½ΠΎΡΡΠΈΡΠ΅ ΠΈ ΠΊΠ°ΠΊ Π±ΡΡ Π° ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π½ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ΅ΠΌΠΈΠ½Π° ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ, ΡΠ΅ ΠΎΠΏΠΈΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅, ΠΈΠ·Π±ΡΠ°Π½ΠΈ ΠΊΠ°ΡΠΎ ΠΎΠ±Π²ΡΡΠ·Π²Π°ΡΠΈ, ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΡΠΎ! ΠΠ°Π΄Π°Π²Π°ΠΉΡΠ΅ Π²Π°ΡΠΈΡΠ΅ Π²ΡΠΏΡΠΎΡΠΈ ΠΏΠΎ ΡΠ΅ΠΌΠ°ΡΠ°, Π°Π· ΡΠ΅ ΡΠ΅ ΠΎΠΏΠΈΡΠ°ΠΌ Π΄Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡΡ ΡΡΠΊ ΠΈΠ»ΠΈ Π² ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠΎΠΆΠ΅ Π±ΠΈ Π½ΡΠΊΠΎΠΉ ΠΈΠΌΠ° ΠΎΠΏΠΈΡ Π² ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ΡΠΎ ΠΊΡΠΌ Clickhouse Π² ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΡΠΈΡΡΠ°ΡΠΈΡ - ΡΠΏΠΎΠ΄Π΅Π»Π΅ΡΠ΅ Π³ΠΎ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com