ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

ДнСс Π½Π° нашия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, освСн монолитния ΠΊΠΎΠ΄, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π°Ρ‚ дСсСтки микросСрвизи. ВсСки ΠΎΡ‚ тях изисква ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³. Π”Π° Π³ΠΎ ΠΏΡ€Π°Π²ΠΈΠΌ Π² Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠ±Π΅ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° DevOps ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈ Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΡ…ΠΌΠ΅ систСма Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, която Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ услуга Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅. Π’Π΅ ΠΌΠΎΠ³Π°Ρ‚ сами Π΄Π° записват ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π² систСмата Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚, Π΄Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚ Π½Π° тяхна основа Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ΠΎΠ²Π΅ ΠΈ Π΄Π° прикрСпят Π°Π»Π°Ρ€ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ сработват ΠΏΡ€ΠΈ достиганС Π½Π° ΠΏΡ€Π°Π³ΠΎΠ²ΠΈ стойности. ΠžΡ‚ DevOps ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΡ‚Π΅ β€” само инфраструктура ΠΈ докумСнтация.

Π’ΠΎΠ·ΠΈ пост Π΅ транскрипция Π½Π° ΠΌΠΎΠ΅Ρ‚ΠΎ ΠΈΠ·ΠΊΠ°Π·Π²Π°Π½Π΅ ΠΎΡ‚ Π½Π°ΡˆΠ°Ρ‚Π° сСкция Π½Π° RIT++. Мнозина Π½ΠΈ ΠΏΠΎΠΌΠΎΠ»ΠΈΡ…Π° Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ тСкстови вСрсии Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄ΠΈΡ‚Π΅ ΠΎΡ‚ Ρ‚Π°ΠΌ. Ако стС Π±ΠΈΠ»ΠΈ Π½Π° конфСрСнцията ΠΈΠ»ΠΈ стС Π³Π»Π΅Π΄Π°Π»ΠΈ Π²ΠΈΠ΄Π΅ΠΎΡ‚ΠΎ, няма Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Π½ΠΈΡ‰ΠΎ Π½ΠΎΠ²ΠΎ. А Π½Π° всички останали β€” Π΄ΠΎΠ±Ρ€Π΅ дошли ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚. Π©Π΅ Ρ€Π°Π·ΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊ стигнахмС Π΄ΠΎ Ρ‚Π°ΠΊΠ°Π²Π° систСма, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΠΈΡ€Π°ΠΌΠ΅ Π΄Π° я Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅.

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

ΠœΠΈΠ½Π°Π»ΠΎΡ‚ΠΎ: схСми ΠΈ ΠΏΠ»Π°Π½ΠΎΠ²Π΅

Как стигнахмС Π΄ΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰Π°Ρ‚Π° систСма Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³? Π—Π° Π΄Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π° Ρ‚ΠΎΠ·ΠΈ Π²ΡŠΠΏΡ€ΠΎΡ, трябва Π΄Π° сС Π²ΡŠΡ€Π½Π΅ΠΌ Π΄ΠΎ 2015 Π³ΠΎΠ΄ΠΈΠ½Π°. Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ изглСТдашС Ρ‚ΠΎΠ³Π°Π²Π°:

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

Π˜ΠΌΠ°Ρ…ΠΌΠ΅ ΠΎΠΊΠΎΠ»ΠΎ 24 възСла, ΠΊΠΎΠΈΡ‚ΠΎ отговаряха Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. Π’ΡƒΠΊ ΠΈΠΌΠ° ΠΊΡƒΠΏΠΈΡ‰Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΡ€ΠΎΠ½ΠΎΠ²Π΅, скриптовС, Π΄Π΅ΠΌΠΎΠ½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅Ρ‰ΠΎ някъдС мониторят, ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠΎΠΌΠΈΡΠ»ΠΈΡ…ΠΌΠ΅ си, Ρ‡Π΅ ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎ-Π΄Π°Π»Π΅Ρ‡ стигнСм, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ТизнСспособна Ρ‰Π΅ бъдС Ρ‚Π°ΠΊΠ°Π²Π° систСма. Няма смисъл Π΄Π° я Ρ€Π°Π·Π²ΠΈΠ²Π°ΠΌΠ΅: Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΎΠ±Π΅ΠΌΠ½Π°.
Π Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅ΠΌ ΠΎΠ½Π΅Π·ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΎΡ‚ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ Π·Π°ΠΏΠ°Π·ΠΈΠΌ ΠΈ Ρ‰Π΅ Ρ€Π°Π·Π²ΠΈΠ²Π°ΠΌΠ΅, ΠΈ Ρ‚Π΅Π·ΠΈ, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ сС ΠΎΡ‚ΠΊΠ°ΠΆΠ΅ΠΌ. ΠžΠΊΠ°Π·Π°Ρ…Π° сС 19. ΠžΡΡ‚Π°Π½Π°Ρ…Π° само Π³Ρ€Π°Ρ„ΠΈΡ‚ΠΈ, Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€ΠΈ ΠΈ Grafana ΠΊΠ°Ρ‚ΠΎ Π΄Π°ΡˆΠ±ΠΎΡ€Π΄. Но ΠΊΠ°ΠΊ Π»ΠΈ Ρ‰Π΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½ΠΎΠ²Π°Ρ‚Π° систСма? Π•Ρ‚ΠΎ Ρ‚Π°ΠΊΠ°:

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

ИмамС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π·Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ: Ρ‚ΠΎΠ²Π° са Π³Ρ€Π°Ρ„ΠΈΡ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ сС основават Π½Π° Π±ΡŠΡ€Π·ΠΈ SSD дисковС, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€ΠΈ Π·Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° β€” Grafana Π·Π° ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄Π°ΡˆΠ±ΠΎΡ€Π΄ΠΎΠ²Π΅ ΠΈ Moira ΠΊΠ°Ρ‚ΠΎ Π°Π»Π°Ρ€ΠΌΠΈΡ€Π°Ρ‰Π° систСма. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° искахмС Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ систСма Π·Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅ Π½Π° Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚: ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ 2.0

Π’Π°ΠΊΠ° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°Ρ…Π° ΠΏΠ»Π°Π½ΠΎΠ²Π΅Ρ‚Π΅ ΠΏΡ€Π΅Π· 2015. Но Ρ‚Ρ€ΡΠ±Π²Π°ΡˆΠ΅ Π΄Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²ΠΈΠΌ Π½Π΅ само инфраструктурата ΠΈ самата услуга, Π½ΠΎ ΠΈ докумСнтацията Π·Π° нСя. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΡ…ΠΌΠ΅ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π΅Π½ стандарт, ΠΊΠΎΠΉΡ‚ΠΎ Π½Π°Ρ€Π΅ΠΊΠΎΡ…ΠΌΠ΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ 2.0. Какви изисквания бяха към систСмата?

  • постоянна наличност;
  • ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ = 10 сСкунди;
  • структурирано ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ Ρ‚Π°Π±Π»Π° с ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ;
  • SLA > 99,99%
  • ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠΉΠ½ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΏΠΎ UDP (!).

НСобходим Π½ΠΈ бСшС UDP, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ голям ΠΏΠΎΡ‚ΠΎΠΊ ΠΎΡ‚ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΈ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ, ΠΊΠΎΠΈΡ‚ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Ρ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ. Ако Π³ΠΈ запишСм всички навСднъТ Π² Graphite, Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Ρ‰Π΅ ΠΏΠ°Π΄Π½Π΅. Π˜Π·Π±Ρ€Π°Ρ…ΠΌΠ΅ ΠΈ прСфикси ΠΎΡ‚ ΠΏΡŠΡ€Π²ΠΎ Π½ΠΈΠ²ΠΎ Π·Π° всички ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ.

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

ВсСки ΠΎΡ‚ прСфикситС носи някакво свойство. Има ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π·Π° ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, ΠΌΡ€Π΅ΠΆΠΈ, ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, рСсурси, прилоТСния ΠΈ Ρ‚Π°ΠΊΠ° Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ. Π Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ ясна, строга, Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€Π°Π½Π° филтрация, ΠΏΡ€ΠΈ която ΠΏΡ€ΠΈΠ΅ΠΌΠ°ΠΌΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΎΡ‚ ΠΏΡŠΡ€Π²ΠΎ Π½ΠΈΠ²ΠΎ, Π° останалитС просто Π³ΠΈ отстранявамС. Π’Π°ΠΊΠ° ΠΏΠ»Π°Π½ΠΈΡ€Π°Ρ…ΠΌΠ΅ Ρ‚Π°Π·ΠΈ систСма ΠΏΡ€Π΅Π· 2015 Π³ΠΎΠ΄ΠΈΠ½Π°. А ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ сСга?

НСпосрСдствСно: схСма Π½Π° взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³

На ΠΏΡŠΡ€Π²ΠΎ място, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠΌ прилоТСнията: нашия PHP ΠΊΠΎΠ΄, прилоТСния ΠΈ микросСрвизи β€” с Π΅Π΄Π½Π° Π΄ΡƒΠΌΠ°, всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΠΈΡˆΠ°Ρ‚ Π½Π°ΡˆΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ. Всички прилоТСния ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ към Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€Π° Brubeck (statsd, прСписан Π½Π° C) Ρ‡Ρ€Π΅Π· UDP. Π’ΠΎΠΉ сС ΠΎΠΊΠ°Π·Π° Π½Π°ΠΉ-Π±ΡŠΡ€Π· Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° синтСтичнитС тСстовС. И Ρ‚ΠΎΠΉ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° Π²Π΅Ρ‡Π΅ Π°Π³Ρ€Π΅Π³ΠΈΡ€Π°Π½ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π² Graphite Ρ‡Ρ€Π΅Π· TCP.

Има Ρ‚Π°ΠΊΡŠΠ² Ρ‚ΠΈΠΏ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΈ. Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. НапримСр, Π½Π° всяко потрСбитСлско ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ със услугата ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚Π΅ Π² Brubeck ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€. ΠŸΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ, Π° Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€ΡŠΡ‚ ΠΈΠ·Π΄Π°Π²Π° само 10 ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ. Π˜ΠΌΠ°Ρ‚Π΅ Π±Ρ€ΠΎΠΉ Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, максимално, ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎ ΠΈ срСдно Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€, ΠΌΠ΅Π΄ΠΈΠ°Π½Π° ΠΈ 4 пСрсСнтиля. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚ Π² Graphite ΠΈ Π³ΠΈ Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Π½Π° място.

ОсвСн Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ°ΠΌΠ΅ агрСгация Π·Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΏΠΎ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€, софтуСр, систСмни ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ Π½Π°ΡˆΠ°Ρ‚Π° стара систСма Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Munin (тя Ρ€Π°Π±ΠΎΡ‚Π΅ΡˆΠ΅ ΠΏΡ€ΠΈ нас Π΄ΠΎ 2015 Π³.). Всичко Ρ‚ΠΎΠ²Π° ΡΡŠΠ±ΠΈΡ€Π°ΠΌΠ΅ Ρ‡Ρ€Π΅Π· C Π΄Π΅ΠΌΠΎΠ½Π° CollectD (Π² Π½Π΅Π³ΠΎ Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½Π° цяла ΠΏΠΎΡ€Π΅Π΄ΠΈΡ†Π° ΠΎΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ плъгини, Ρ‚ΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠΏΠΈΡ‚Π²Π° всички рСсурси Π½Π° хост систСмата, Π½Π° която Π΅ инсталиран, просто Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π² конфигурацията къдС Π΄Π° пишС Π΄Π°Π½Π½ΠΈΡ‚Π΅) ΠΈ записвамС Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² Graphite. Π’ΠΎΠΉ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° python ΠΈ shell скриптовС, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΈΡˆΠ΅Ρ‚Π΅ свои пСрсонализирани Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ: CollectD Ρ‰Π΅ ΡΡŠΠ±ΠΈΡ€Π° Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π»ΠΎΠΊΠ°Π»Π΅Π½ ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½ хост (ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΠΈΠΌΠ° Curl) ΠΈ Ρ‰Π΅ Π³ΠΈ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° Π² Graphite.

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° всички ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΡΡŠΠ±Ρ€Π°Ρ…ΠΌΠ΅, сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ Π² Carbon-c-relay. Π’ΠΎΠ²Π° Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Carbon Relay ΠΎΡ‚ Graphite, ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ Π½Π° C. Π’ΠΎΠ²Π° Π΅ Ρ€ΡƒΡ‚Π΅Ρ€, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΠ±ΠΈΡ€Π° всички ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°ΠΌΠ΅ ΠΎΡ‚ Π½Π°ΡˆΠΈΡ‚Π΅ Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€ΠΈ, ΠΈ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·ΠΈΡ€Π° тях ΠΏΠΎ Π½ΠΎΠ΄ΠΎΠ²Π΅. ОсвСн Ρ‚ΠΎΠ²Π°, ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡΡ‚Π° провСрява валидността Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅. Π’Π΅, ΠΎΡ‚ Π΅Π΄Π½Π° страна, трябва Π΄Π° отговарят Π½Π° схСмата с прСфикситС, която ΠΏΠΎΠΊΠ°Π·Π°Ρ… ΠΏΠΎ-Ρ€Π°Π½ΠΎ ΠΈ, ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° страна, Π΄Π° са Π²Π°Π»ΠΈΠ΄Π½ΠΈ Π·Π° Graphite. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π΅Π½ случай Ρ‚Π΅ сС ΠΎΡ‚Ρ…Π²ΡŠΡ€Π»ΡΡ‚.

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Carbon-c-relay ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅ Π² кластСра Graphite. ИзползвамС Carbon-cache ΠΊΠ°Ρ‚ΠΎ основно Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π·Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, прСосмислСно Π½Π° Go. Go-carbon ΠΏΠΎΡ€Π°Π΄ΠΈ своята многопоточност Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π°Π΄ΠΌΠΈΠ½Π°Π²Π° Carbon-cache ΠΏΠΎ производитСлност. Π’ΠΎΠΉ ΠΏΡ€ΠΈΠ΅ΠΌΠ° Π΄Π°Π½Π½ΠΈ ΠΈ Π³ΠΈ записва Π½Π° диск с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚Π° whisper (стандартСн, написан Π½Π° Python). Π—Π° Π΄Π° Ρ‡Π΅Ρ‚Π΅ΠΌ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π½Π°ΡˆΠΈΡ‚Π΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Graphite API. Π’ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ ΠΎΡ‚ стандартния Graphite WEB. Какво сС случва с Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ?

Π’Π΅ ΠΎΡ‚ΠΈΠ²Π°Ρ‚ Π² Grafana. ΠšΠ°Ρ‚ΠΎ основСн ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΠΈ Π½Π° Graphite, плюс ΠΈΠΌΠ°ΠΌΠ΅ Grafana ΠΊΠ°Ρ‚ΠΎ ΡƒΠ΅Π± интСрфСйс Π·Π° Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° Ρ‚Π°Π±Π»Π°. ВсСки свой сСрвиз Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ собствСно Ρ‚Π°Π±Π»ΠΎ. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Ρ‚Π΅ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΈΡˆΠ°Ρ‚ ΠΎΡ‚ своитС прилоТСния. ОсвСн Grafana, ΠΈΠΌΠ°ΠΌΠ΅ ΠΈ SLAM. Π’ΠΎΠ²Π° Π΅ Python Π΄Π΅ΠΌΠΎΠ½, ΠΊΠΎΠΉΡ‚ΠΎ изчислява SLA Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Graphite. ΠšΠ°ΠΊΡ‚ΠΎ Π²Π΅Ρ‡Π΅ спомСнах, ΠΈΠΌΠ°ΠΌΠ΅ няколко дСсСтки микросСрвизи, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ всСки ΠΈΠΌΠ° свои изисквания. Π‘ ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° SLAM провСрявамС докумСнтацията ΠΈ я сравнявамС с Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Π² Graphite ΠΈ сравнявамС ΠΊΠΎΠ»ΠΊΠΎ Π΄ΠΎΠ±Ρ€Π΅ изискванията отговарят Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ сСрвизи.

ΠŸΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°ΠΌΠ΅: Π°Π»Π΅Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅. Π’ΠΎ Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΌΠΎΡ‰Π½Π° систСма β€” Moira. Вя Π΅ нСзависима, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠ°ΠΊΠ° ΠΈΠΌΠ° свой собствСн Graphite. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½Π° Π΅ ΠΎΡ‚ Π΅ΠΊΠΈΠΏΠ° Π½Π° Π‘ΠšΠ‘ β€žΠšΠΎΠ½Ρ‚ΡƒΡ€β€œ, написана Π½Π° Python ΠΈ Go, напълно с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄. Moira ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° ΡΡŠΡ‰ΠΈΡ ΠΏΠΎΡ‚ΠΎΠΊ, ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΡ‚ΠΈΠ²Π° Π² Graphite. Ако ΠΏΠΎ някаква ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π²Π°ΡˆΠ΅Ρ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ сС счупи, Π²Π°ΡˆΠ΅Ρ‚ΠΎ Π°Π»Π΅Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅ Ρ‰Π΅ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ.

Moira Π΅ Ρ€Π°Π·Π²ΠΈΡ‚Π° Π² Kubernetes ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Redis ΡΡŠΡ€Π²ΡŠΡ€Π΅Π½ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ ΠΊΠ°Ρ‚ΠΎ основна Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° устойчива Π½Π° ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ систСма. Вя сравнява ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΡ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ с списъка Π½Π° Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈΡ‚Π΅: Π°ΠΊΠΎ Π² Π½Π΅Π³ΠΎ няма спомСнавания, ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π° сС ΠΏΡ€Π΅Π½Π΅Π±Ρ€Π΅Π³Π²Π°. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ Π΅ способна Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π² ΠΌΠΈΠ½ΡƒΡ‚Π°.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ°, Π½ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Ρ…ΠΌΠ΅ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π΅Π½ LDAP, Ρ‡Ρ€Π΅Π· ΠΊΠΎΠΉΡ‚ΠΎ всСки ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π½Π° ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Π°Ρ‚Π° систСма ΠΌΠΎΠΆΠ΅ Π΄Π° създава извСстия ΠΏΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ (ΠΈΠ»ΠΈ новосъздадСни) Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈ. Въй ΠΊΠ°Ρ‚ΠΎ Moira Π² сСбС си ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° Graphite, тя ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° всичкитС ΠΌΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π—Π°Ρ‚ΠΎΠ²Π° ΠΏΡŠΡ€Π²ΠΎ Π²Π·ΠΈΠΌΠ°Ρ‚Π΅ Ρ€Π΅Π΄Π° ΠΈ Π³ΠΎ ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚Π΅ Π² Grafana. Π“Π»Π΅Π΄Π°Ρ‚Π΅ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚ Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Π²Π·ΠΈΠΌΠ°Ρ‚Π΅ ΡΡŠΡ‰ΠΈΡ Ρ€Π΅Π΄ ΠΈ Π³ΠΎ ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚Π΅ Π² Moira. ДобавятС Π»ΠΈΠΌΠΈΡ‚ΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ извСстия. Π—Π° всичко Ρ‚ΠΎΠ²Π° Π½Π΅ са Π²ΠΈ Π½ΡƒΠΆΠ½ΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ спСцифични знания. Moira ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° извСстия ΠΏΠΎ SMS, ΠΈΠΌΠ΅ΠΉΠ», Π² Jira, Slack ΠΈ Π΄Ρ€. ОсвСн Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° изпълнСниС Π½Π° пСрсонализирани скриптовС. ΠšΠΎΠ³Π°Ρ‚ΠΎ Π½Π°ΡΡ‚ΡŠΠΏΠΈ Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ ΠΈ тя Π΅ Π°Π±ΠΎΠ½ΠΈΡ€Π°Π½Π° Π·Π° пСрсонализиран скрипт ΠΈΠ»ΠΈ Π±ΠΈΠ½Π°Ρ€Π΅Π½ Ρ„Π°ΠΉΠ», тя Π³ΠΎ стартира ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π° JSON Π½Π° stdin Π½Π° Ρ‚ΠΎΠ·ΠΈ Π±ΠΈΠ½Π°Ρ€Π΅Π½ Ρ„Π°ΠΉΠ». Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, Π²Π°ΡˆΠ°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° трябва Π΄Π° Π³ΠΎ парсира. Какво Ρ‰Π΅ ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ с Ρ‚ΠΎΠ·ΠΈ JSON β€” Ρ€Π΅ΡˆΠ°Π²Π°ΠΉΡ‚Π΅ сами. Π˜ΡΠΊΠ°Ρ‚Π΅ β€” ΠΈΠ·ΠΏΡ€Π°Ρ‚Π΅Ρ‚Π΅ Π² Telegram, искатС β€” отваряйтС Π·Π°Π΄Π°Ρ‡ΠΈ Π² Jira, ΠΏΡ€Π°Π²Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎΡ‚ΠΎ ΠΏΠΎΠΆΠ΅Π»Π°Π΅Ρ‚Π΅.

НиС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΈ собствСна Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π·Π° извСстия β€” Imagotag. АдаптирахмС ΠΏΠ°Π½Π΅Π», ΠΊΠΎΠΉΡ‚ΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ Ρ†Π΅Π½ΠΈ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΈΡ‚Π΅, Π·Π° Π½Π°ΡˆΠΈΡ‚Π΅ Π½ΡƒΠΆΠ΄ΠΈ. ИзвСли смС Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΡ‚ Moira Π½Π° Π½Π΅Π³ΠΎ. Π’Π°ΠΌ Π΅ посочСно Π² ΠΊΠ°ΠΊΠ²ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ са ΠΈ ΠΊΠΎΠ³Π° са сС случили. Част ΠΎΡ‚ Π΅ΠΊΠΈΠΏΠ° ΠΎΡ‚ΠΊΠ°Π·Π° извСстия Π² Slack ΠΈ ΠΈΠΌΠ΅ΠΉΠ» Π² ΠΏΠΎΠ»Π·Π° Π½Π° Ρ‚ΠΎΠ·ΠΈ ΠΏΠ°Π½Π΅Π».

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

Въй ΠΊΠ°Ρ‚ΠΎ смС прогрСсивна компания, слСдим ΠΈ Kubernetes Π² Ρ‚Π°Π·ΠΈ систСма. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ…ΠΌΠ΅ Π³ΠΎ Π² систСмата Ρ‡Ρ€Π΅Π· Heapster, ΠΊΠΎΠΉΡ‚ΠΎ инсталирахмС Π² ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€Π°, Ρ‚ΠΎΠΉ ΡΡŠΠ±ΠΈΡ€Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π³ΠΈ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° Π² Graphite. Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка схСмата ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Π°ΠΊΠ°:

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³

Π•Ρ‚ΠΎ списък Π½Π° Π»ΠΈΠ½ΠΊΠΎΠ²Π΅ към ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…ΠΌΠ΅ Π·Π° Ρ‚Π°Π·ΠΈ Π·Π°Π΄Π°Ρ‡Π°. Всички Ρ‚Π΅ са с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄.

Graphite:

Carbon-c-relay:

github.com/grobian/carbon-c-relay

Brubeck:

github.com/github/brubeck

Collectd:

collectd.org

Moira:

github.com/moira-alert

Grafana:

grafana.com

Heapster:

github.com/kubernetes/heapster

Бтатистика

И Π΅Ρ‚ΠΎ ΠΌΠ°Π»ΠΊΠΎ Ρ†ΠΈΡ„Ρ€ΠΈ Π·Π° Ρ‚ΠΎΠ°, ΠΊΠ°ΠΊΠΎ систСмата Ρ€Π°Π±ΠΎΡ‚ΠΈ кај нас.

Aggregator (brubeck)

Π‘Ρ€ΠΎΡ˜ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ: ~ 300 000 / сСк.
Π˜Π½Ρ‚Π΅Ρ€Π²Π°Π» Π½Π° ΠΈΡΠΏΡ€Π°ΡœΠ°ΡšΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π²ΠΎ Graphite: 30 сСк.
ΠšΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° рСсурси Π½Π° сСрвСрот: ~ 6% CPU (сС однСсува Π½Π° ΠΊΠΎΠΌΠΏΠ»Π΅Ρ‚Π½ΠΈ сСрвСри); ~ 1Gb RAM; ~ 3 Mbps LAN

Graphite (go-carbon)

Π‘Ρ€ΠΎΡ˜ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ: ~ 1 600 000 / ΠΌΠΈΠ½.
Π˜Π½Ρ‚Π΅Ρ€Π²Π°Π» Π½Π° Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅: 30 сСк.
Π¨Π΅ΠΌΠ° Π½Π° Ρ‡ΡƒΠ²Π°ΡšΠ΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ: 30сСк 35Π΄, 5ΠΌΠΈΠ½ 90Π΄, 10ΠΌΠΈΠ½ 365Π΄ (Π΄Π°Π²Π° Ρ€Π°Π·Π±ΠΈΡ€Π°ΡšΠ΅ ΡˆΡ‚ΠΎ сС случува со сСрвисот Π²ΠΎ Π΄ΠΎΠ»Π³ Ρ€ΠΎΠΊ)
ΠšΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° рСсурси Π½Π° сСрвСрот: ~ 10% CPU; ~ 20Gb RAM; ~ 30 Mbps LAN

Π“ΡŠΠ²ΠΊΠ°Π²ΠΎΡΡ‚

Π’ΠΎ Avito ΠΌΠ½ΠΎΠ³Ρƒ ја Ρ†Π΅Π½ΠΈΠΌΠ΅ флСксибилноста Π½Π° Π½Π°ΡˆΠΈΠΎΡ‚ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ сСрвис. Π—ΠΎΡˆΡ‚ΠΎ, Π²ΡΡƒΡˆΠ½ΠΎΡΡ‚, Ρ‚ΠΎΡ˜ Π΅ Ρ‚Π°ΠΊΠ°? ΠŸΡ€Π²ΠΎ, Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ сС Π·Π°ΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ: ΠΈ самитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, ΠΈ Π½ΠΈΠ²Π½ΠΈΡ‚Π΅ Π²Π΅Ρ€Π·ΠΈΠΈ. Π’Ρ‚ΠΎΡ€ΠΎ β€” поддрТливост. ΠŸΠΎΡˆΡ‚ΠΎ Ρ†Π΅Π»ΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΅ ΠΈΠ·Π³Ρ€Π°Π΄Π΅Π½ Π½Π° основа Π½Π° ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΈ ΠΈΠ·Π²ΠΎΡ€ΠΈ, Π²ΠΈΠ΅ сами ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡƒΡ€Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΡ‚, Π΄Π° внСсСтС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠΈ Π½Π΅ сС достапни со ΠΏΠ°ΠΊΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ. ΠšΠΎΡ€ΠΈΡΡ‚Π°Ρ‚ доста распространСти стСки, Π³Π»Π°Π²Π½ΠΎ Go ΠΈ Python, Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ Ρ‚ΠΎΠ° Π΅ Ρ€Π΅Π»Π°Ρ‚ΠΈΠ²Π½ΠΎ Сдноставно.

Π•Π²Π΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° Ρ€Π΅Π°Π»Π΅Π½ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π° Π²ΠΎ Graphite β€” Ρ‚ΠΎΠ° Π΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°. Има ΠΈΠΌΠ΅. Π˜ΠΌΠ΅Ρ‚ΠΎ Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° = ΠΈΠΌΠ΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π°. И постои ΠΏΠ°Ρ‚ Π΄ΠΎ Π½Π΅Π°. Π˜ΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ Π²ΠΎ Linux сС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ Π½Π° 255 симболи. А Π½ΠΈΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ (ΠΊΠ°ΠΊΠΎ "Π²Π½Π°Ρ‚Ρ€Π΅ΡˆΠ½ΠΈ Π½Π°Ρ€Π°Ρ‡Π°Ρ‚Π΅Π»ΠΈ") Π»ΡƒΡ“Π΅ ΠΎΠ΄ ΠΎΠ΄Π΄Π΅Π»ΠΎΡ‚ Π·Π° Π±Π°Π·ΠΈ Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ. Π’ΠΈΠ΅ Π½ΠΈ Π²Π΅Π»Π°Ρ‚: "Π‘Π°ΠΊΠ°Ρ‚Π΅ Π΄Π° Π³ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠΌΠ΅ Π½Π°ΡˆΠ΅Ρ‚ΠΎ SQL-Π·Π°ΠΏΡ€Π°ΡˆΡƒΠ²Π°ΡšΠ΅. А Ρ‚ΠΈΠ΅ β€” Π½Π΅ 255 симболи, Ρ‚ΡƒΠΊΡƒ 8 MB сСкоја. Π‘Π°ΠΊΠ°ΠΌΠ΅ Π΄Π° Π³ΠΈ ΠΏΡ€ΠΈΠΊΠ°ΠΆΡƒΠ²Π°ΠΌΠ΅ Π²ΠΎ Grafana, Π΄Π° Π³ΠΈ Π²ΠΈΠ΄ΠΈΠΌΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° ΠΎΠ²Π°Π° Π½Π°Ρ€Π°Ρ‡ΠΊΠ°, Π° ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΎ, сакатС Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Ρ‚ΠΎΠΏ Ρ‚Π°ΠΊΠ²ΠΈ Π½Π°Ρ€Π°Ρ‡ΠΊΠΈ. Π‘ΠΈ Π±ΠΈΠ»ΠΎ супСр Π°ΠΊΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€ΠΈΠΊΠ°ΠΆΡƒΠ²Π° Π²ΠΎ Ρ€Π΅Π°Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅. А сосСма ΠΊΡƒΠ» Π±ΠΈ Π±ΠΈΠ»ΠΎ Π΄Π° Π³ΠΈ Π²ΠΊΠ»ΡƒΡ‡ΠΈΠΌΠ΅ Π²ΠΎ Π°Π»Π°Ρ€ΠΌΠΎΡ‚."

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠ°Ρ‚ΠΎ услуга: ΠΌΠΎΠ΄ΡƒΠ»Π½Π° систСма Π·Π° микросСрвисна Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΡ‚ Π½Π° SQL-Π·Π°ΠΏΡ€Π°ΡˆΡƒΠ²Π°ΡšΠ΅ Π΅ Π·Π΅ΠΌΠ΅Π½ ΠΊΠ°ΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ΄ ΡΠ°Ρ˜Ρ‚ΠΎΡ‚ postgrespro.ru

БъздавамС Redis ΡΡŠΡ€Π²ΡŠΡ€ ΠΈ Π½Π°ΡˆΠΈΡ‚Π΅ Collectd плъгини, ΠΊΠΎΠΈΡ‚ΠΎ сС ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‚ с Postgres ΠΈ ΠΈΠ·Π²Π»ΠΈΡ‡Π°Ρ‚ всички Π΄Π°Π½Π½ΠΈ ΠΎΡ‚Ρ‚Π°ΠΌ, ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π² Graphite. Но смСнямС ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π° с Ρ…Π΅ΡˆΠΎΠ²Π΅. Π’ΠΎΠ·ΠΈ Ρ…Π΅Ρˆ Π²Π΅Π΄Π½Π°Π³Π° сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° Π² Redis ΠΊΠ°Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡, Π° цСлият SQL заявка - ΠΊΠ°Ρ‚ΠΎ стойност. ΠžΡΡ‚Π°Π²Π° Π½ΠΈ Π΄Π° настроим Grafana Π΄Π° сС ΡΠ²ΡŠΡ€Π·Π²Π° с Redis ΠΈ Π΄Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π° Ρ‚Π°Π·ΠΈ информация. ΠžΡ‚Π²Π°Ρ€ΡΠΌΠ΅ Graphite API, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΎΠ²Π° Π΅ основният интСрфСйс Π·Π° взаимодСйствиС Π½Π° всички ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ с Graphite, ΠΈ вписвамС Π½ΠΎΠ²Π° функция, Π½Π°Ρ€Π΅Ρ‡Π΅Π½Π° aliasByHash() β€” ΠΎΡ‚ Grafana ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π° ΠΈ Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π² заявката към Redis ΠΊΠ°Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡, Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΡŠΡ‚ Π΅ стойността Π½Π° ΠΊΠ»ΡŽΡ‡Π°, прСдставляваща нашия β€œSQL заявка”. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½, ΠΏΠΎΠΊΠ°Π·Π²Π°ΠΌΠ΅ Π² Grafana SQL заявка, която ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π½Π΅ Π±ΠΈ ΠΌΠΎΠ³Π»Π° Π΄Π° бъдС ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Ρ‚Π°ΠΌ, Π·Π°Π΅Π΄Π½ΠΎ със статистиката ΠΏΠΎ нСя (повиквания, Ρ€Π΅Π΄ΠΎΠ²Π΅, ΠΎΠ±Ρ‰ΠΎ Π²Ρ€Π΅ΠΌΠ΅, ...).

РСзюмС

Наличност. ΠΠ°ΡˆΠΈΡΡ‚ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ сСрвис Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ 24/7 ΠΎΡ‚ всяко ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ всСки ΠΊΠΎΠ΄. Ако ΠΈΠΌΠ°Ρ‚Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°Ρ‚Π°, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Π² услугата. Π•Π·ΠΈΠΊΡŠΡ‚ Π½Π΅ Π΅ Π²Π°ΠΆΠ΅Π½, Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ‚Π° Π½Π΅ са Π²Π°ΠΆΠ½ΠΈ. ЕдинствСно трябва Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Π΄Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ сокСт, Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°Ρ‚Π° ΠΈ Π΄Π° Π·Π°Ρ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ сокСта.

НадСТдност. Всички ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ са устойчиви Π½Π° ΠΎΡ‚ΠΊΠ°Π·ΠΈ ΠΈ сС справят Π΄ΠΎΠ±Ρ€Π΅ с Π½Π°ΡˆΠΈΡ‚Π΅ натоварвания.

Нисък ΠΏΡ€Π°Π³ Π½Π° Π²Π»ΠΈΠ·Π°Π½Π΅. Π—Π° Π΄Π° ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Ρ‚Π°Π·ΠΈ систСма, Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΠΈΠ·ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΈ Π΅Π·ΠΈΡ†ΠΈ ΠΈ заявки Π² Grafana. ΠŸΡ€ΠΎΡΡ‚ΠΎ отварятС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ си, вписватС сокСта, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π² Graphite, затварятС Π³ΠΎ, отварятС Grafana, ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ Ρ‚Π°ΠΌ Ρ‚Π°Π±Π»Π° ΠΈ Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π²Π°ΡˆΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΉΠΊΠΈ извСстия Ρ‡Ρ€Π΅Π· Moira.

БамостоятСлност. Всичко Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ самостоятСлно, Π±Π΅Π· ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° DevOps ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈ. И Ρ‚ΠΎΠ²Π° Π΅ ΠΏΡ€Π΅ΠΊΠ°Π»Π΅Π½ΠΎ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° си Π²Π΅Π΄Π½Π°Π³Π°, Π±Π΅Π· Π΄Π° ΠΌΠΎΠ»ΠΈΡ‚Π΅ Π½ΠΈΠΊΠΎΠ³ΠΎ β€” Π½ΠΈΡ‚ΠΎ Π·Π° Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°, Π½ΠΈΡ‚ΠΎ Π·Π° измСнСния.

Към ΠΊΠ°ΠΊΠ²ΠΎ сС стрСмим?

Всичко ΠΈΠ·Π±Ρ€ΠΎΠ΅Π½ΠΎ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ Π½Π΅ са просто абстрактни мисли, Π° Π½Π΅Ρ‰Π°, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ смС Π½Π°ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΏΠΎΠ½Π΅ ΠΏΡŠΡ€Π²ΠΈ ΡΡ‚ΡŠΠΏΠΊΠΈ.

  1. Π”Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ Π½Π° Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ. ИскамС Π΄Π° създадСм услуга, която Ρ‰Π΅ провСрява Π½Π°ΡˆΠΈΡ‚Π΅ Graphite Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΈ всяка ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° ΠΏΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ. Π’Π΅Ρ‡Π΅ ΠΈΠΌΠ°ΠΌΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искамС Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅, ΠΈΠΌΠ°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ, ΠΈ смС способни Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌ с тях.
  2. ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ. НиС ΠΈΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ услуги, ΠΊΠΎΠΈΡ‚ΠΎ с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ сС промСнят, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Ρ…ΠΎΡ€Π°Ρ‚Π°, ΠΊΠΎΠΈΡ‚ΠΎ работят с тях. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½ΠΎΡ‚ΠΎ Π²ΠΎΠ΄Π΅Π½Π΅ Π½Π° докумСнтация Π½Π° Ρ€ΡŠΠΊΠ° Π½Π΅ Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚. Π—Π°Ρ‚ΠΎΠ²Π° Π² Π½Π°ΡˆΠΈΡ‚Π΅ микросСрвизи сСга сС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Ρ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ. Π’Π°ΠΌ Π΅ описано ΠΊΠΎΠΉ Π³ΠΎ Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΠ», Π΅Π·ΠΈΡ†ΠΈ, с ΠΊΠΎΠΈΡ‚ΠΎ взаимодСйстват, изисквания ΠΏΠΎ SLA, къдС ΠΈ Π½Π° ΠΊΠΎΠ³ΠΎ Π΄Π° сС ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚ извСстия. ΠŸΡ€ΠΈ внСдряванС Π½Π° услугата всички Π΄Π°Π½Π½ΠΈ Π·Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈΡ‚Π΅ сС ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ. Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ Π΄Π²Π΅ Π²Ρ€ΡŠΠ·ΠΊΠΈ β€” Π΅Π΄Π½Π° Π·Π° Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈ, Π΄Ρ€ΡƒΠ³Π° β€” Π·Π° Ρ‚Π°Π±Π»Π°Ρ‚Π° Π² Grafana.
  3. НаблюдСниС Π·Π° всСки Π΄ΠΎΠΌ. БмятамС, Ρ‡Π΅ Ρ‚Π°ΠΊΠ°Π²Π° систСма трябва Π΄Π° ΠΏΠΎΠ»Π·Π²Π°Ρ‚ всички Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ. Π’ Ρ‚ΠΎΠ·ΠΈ случай Π²ΠΈΠ½Π°Π³ΠΈ Π·Π½Π°Π΅Ρ‚Π΅ къдС Π΅ Π²Π°ΡˆΠΈΡΡ‚ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ, ΠΊΠ°ΠΊΠ²ΠΎ сС случва с Π½Π΅Π³ΠΎ, къдС ΠΏΠ°Π΄Π°, къдС ΠΈΠΌΠ° слаби мСста. Ако, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠΉΠ΄Π΅ Π½Π΅Ρ‰ΠΎ ΠΈ Π·Π°Π²Π°Π»ΠΈ Π²Π°ΡˆΠ°Ρ‚Π° услуга, Π²ΠΈΠ΅ Ρ‰Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π·Π° Ρ‚ΠΎΠ²Π° Π½Π΅ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΎΠ±Π°ΠΆΠ΄Π°Π½Π΅ ΠΎΡ‚ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΠ΅Ρ€Π°, Π° ΠΎΡ‚ извСстиС, ΠΈ Π²Π΅Π΄Π½Π°Π³Π° Ρ‰Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ свСТи Π»ΠΎΠ³ΠΎΠ²Π΅ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ станало.
  4. Висока производитСлност. ΠΠ°ΡˆΠΈΡΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ постоянно растС ΠΈ днСс Π² Π½Π΅Π³ΠΎ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 2 000 000 стойности Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π² ΠΌΠΈΠ½ΡƒΡ‚Π°. ΠŸΡ€Π΅Π΄ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° Ρ‚ΠΎΠ·ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π» бСшС 500 000. А Ρ€Π°ΡΡ‚Π΅ΠΆΡŠΡ‚ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ слСд извСстно Π²Ρ€Π΅ΠΌΠ΅ Graphite (whisper) Ρ‰Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π΄Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ дисковата подсистСма. ΠšΠ°ΠΊΡ‚ΠΎ Π²Π΅Ρ‡Π΅ ΠΊΠ°Π·Π°Ρ…, Ρ‚Π°Π·ΠΈ систСма Π·Π° наблюдСниС Π΅ доста унивСрсална Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° взаимозамСняСмостта Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅. Някой спСциално обслуТва Graphite ΠΈ постоянно Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π° своята инфраструктура, Π½ΠΎ Π½ΠΈΠ΅ Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° Ρ‚Ρ€ΡŠΠ³Π½Π΅ΠΌ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ ΠΏΡŠΡ‚: Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ClickHouse ΠΊΠ°Ρ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ. Π’ΠΎΠ·ΠΈ ΠΏΡ€Π΅Ρ…ΠΎΠ΄ Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½ ΠΈ съвсСм скоро Ρ‰Π΅ Ρ€Π°Π·ΠΊΠ°ΠΆΠ° ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΊΠ°ΠΊ бСшС Π½Π°ΠΏΡ€Π°Π²Π΅Π½: ΠΊΠ°ΠΊΠ²ΠΈ трудности имашС ΠΈ ΠΊΠ°ΠΊ Ρ‚Π΅ бяха ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Π½ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‚ΠΈΡ‡Π°ΡˆΠ΅ ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° миграция, Ρ‰Π΅ опиша ΠΈΠ·Π±Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Благодаря Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Ρ‚ΠΎ! ΠŸΠΎΡΡ‚Π°Π²ΡΠΉΡ‚Π΅ своитС Π²ΡŠΠΏΡ€ΠΎΡΠΈ ΠΏΠΎ Ρ‚Π΅ΠΌΠ°Ρ‚Π°, Ρ‰Π΅ сС постарая Π΄Π° отговоря Ρ‚ΡƒΠΊ ΠΈΠ»ΠΈ Π² слСдващитС постовС. Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ някой Π΄Π° ΠΈΠΌΠ° ΠΎΠΏΠΈΡ‚ Π² ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° систСма Π·Π° наблюдСниС ΠΈΠ»ΠΈ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Clickhouse Π² ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ситуация β€” сподСляйтС Π³ΠΎ Π² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡ‚Π΅.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster