เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™: เบฅเบฐเบšเบปเบšเป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ

เปƒเบ™เบกเบทเป‰เบ™เบตเป‰, เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบเบฅเบฐเบซเบฑเบ” monolithic, เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบ™เบฅเบฐเบžเบฒเบเบซเบผเบฒเบเบชเบดเบšเปเบซเปˆเบ‡. เบžเบงเบเป€เบ‚เบปเบฒเปเบ•เปˆเบฅเบฐเบ„เบปเบ™เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ™เบตเป‰เปƒเบ™เบฅเบฐเบ”เบฑเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป‚เบ”เบเปƒเบŠเป‰เบงเบดเบชเบฐเบงเบฐเบเบญเบ™ DevOps เปเบกเปˆเบ™เบกเบตเบšเบฑเบ™เบซเบฒ. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ. เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™ metrics เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบญเบดเบ”เบชเบฐเบซเบผเบฐ, เบ™เปเบฒเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™, เบชเป‰เบฒเบ‡ dashboards เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบžเบงเบเบกเบฑเบ™, เปเบฅเบฐเบ„เบฑเบ”เบ•เบดเบ”เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบเบฑเบšเบžเบงเบเบกเบฑเบ™เบ—เบตเปˆเบˆเบฐเบ–เบทเบเบเบฐเบ•เบธเป‰เบ™เป€เบกเบทเปˆเบญเบ„เปˆเบฒเป€เบเบ™เบ–เบทเบเบšเบฑเบ™เบฅเบธ. เบชเปเบฒเบฅเบฑเบšเบงเบดเบชเบฐเบงเบฐเบเบญเบ™ DevOps, เบžเบฝเบ‡เปเบ•เปˆเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเบฐเป€เบญเบเบฐเบชเบฒเบ™.

เบ‚เปเป‰เบ„เบงเบฒเบกเบ™เบตเป‰เปเบกเปˆเบ™เบšเบปเบ”เบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบ„เปเบฒเป€เบงเบปเป‰เบฒเบ‚เบญเบ‡เบ‚เป‰เบญเบเบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ เบžเบฒเบเบชเปˆเบงเบ™ เบ—เบตเปˆ RIT++. เบซเบผเบฒเบเบ„เบปเบ™เป„เบ”เป‰เบ‚เปเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบชเป‰เบฒเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบชเบฐเบšเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบˆเบฒเบเบšเปˆเบญเบ™เบ™เบฑเป‰เบ™. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบขเบนเปˆเปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบกเบซเบผเบทเป€เบšเบดเปˆเบ‡เบงเบดเบ”เบตเป‚เบญ, เบ—เปˆเบฒเบ™เบˆเบฐเบšเปเปˆเบžเบปเบšเบซเบเบฑเบ‡เปƒเบซเบกเปˆ. เปเบฅเบฐเบ„เบปเบ™เบญเบทเปˆเบ™ - เบเบดเบ™เบ”เบตเบ•เป‰เบญเบ™เบฎเบฑเบšเบเบฑเบš cat เป„เบ”เป‰. เบ‚เป‰เบญเบเบˆเบฐเบšเบญเบเป€เบˆเบปเป‰เบฒเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบฒเบฎเบญเบ”เบฅเบฐเบšเบปเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบ™เบงเปƒเบ”, เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบ™เบงเปƒเบ” เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเบญเบฑเบšเป€เบ”เบ”เบกเบฑเบ™เปเบ™เบงเปƒเบ”.

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™: เบฅเบฐเบšเบปเบšเป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ

เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ: เปเบœเบ™เบเบฒเบ™เปเบฅเบฐเปเบœเบ™เบเบฒเบ™

เบžเบงเบเป€เบฎเบปเบฒเบกเบฒเบฎเบญเบ”เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เป„เบ”เป‰เปเบ™เบงเปƒเบ”? เป€เบžเบทเปˆเบญเบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ›เบซเบฒเบ›เบต 2015. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™: เบฅเบฐเบšเบปเบšเป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ

เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ›เบฐเบกเบฒเบ™ 24 nodes เบ—เบตเปˆเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เบกเบตเบŠเบธเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เป€เบฎเบทเบญเบ™เบเบญเบ”เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, scripts, daemon เบ—เบตเปˆ somehow เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡, เบชเบปเปˆเบ‡เบ‚เปเป‰เบ„เบงเบฒเบก, เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒ. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ„เบดเบ”โ€‹เบงเปˆเบฒโ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹, เบฅเบฐโ€‹เบšเบปเบšโ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹เบˆเบฐโ€‹เป€เบ›เบฑเบ™โ€‹เป„เบ›โ€‹เป„เบ”เป‰โ€‹เบซเบ™เป‰เบญเบโ€‹. เบกเบฑเบ™เบšเปเปˆเบกเบตเบˆเบธเบ”เปƒเบ”เปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบกเบฑเบ™: เบกเบฑเบ™เบซเบเบธเป‰เบ‡เบเบฒเบเป€เบเบตเบ™เป„เบ›.
เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเป€เบฅเบทเบญเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบฎเบฑเบเบชเบฒเปเบฅเบฐเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ›เบฐเบ–เบดเป‰เบก. เบกเบต 19 เบญเบฑเบ™. เบกเบตเบžเบฝเบ‡เปเบ•เปˆ graphites, เบฅเบงเบšเบฅเบงเบกเปเบฅเบฐ Grafana เป€เบ›เบฑเบ™ dashboard เบเบฑเบ‡เบ„เบปเบ‡. เปเบ•เปˆเบฅเบฐเบšเบปเบšเปƒเบซเบกเปˆเบˆเบฐเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเปเบ™เบงเปƒเบ”? เปเบšเบšเบ™เบตเป‰:

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™: เบฅเบฐเบšเบปเบšเป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ

เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เป€เบเบฑเบšโ€‹เบฎเบฑเบโ€‹เบชเบฒ metricsโ€‹: เป€เบซเบผเบปเปˆเบฒโ€‹เบ™เบตเป‰โ€‹เปเบกเปˆเบ™ graphitesโ€‹, เป€เบŠเบดเปˆเบ‡โ€‹เบˆเบฐโ€‹เบญเบตเบ‡โ€‹เปƒเบชเปˆโ€‹เบเบฒเบ™โ€‹เบ‚เบฑเบš SSD เป„เบงโ€‹, เป€เบซเบผเบปเปˆเบฒโ€‹เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เปƒเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบฅเบงเบกโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบงเบฑเบ”โ€‹เปเบ—เบโ€‹. เบ•เปเปˆเป„เบ› - Grafana เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡ dashboards เปเบฅเบฐ Moira เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™เบขเบฒเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบฅเบฐเบšเบปเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŠเบญเบเบซเบฒเบ„เบงเบฒเบกเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบด.

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™: เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก 2.0

เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบœเบ™เบเบฒเบ™เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเปƒเบ™เบ›เบต 2015. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฐเบเบฝเบกเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเบฐเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™, เปเบ•เปˆเบเบฑเบ‡เป€เบ›เบฑเบ™เป€เบญเบเบฐเบชเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบกเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเป€เบฎเบปเบฒเป€เบญเบ‡, เป€เบŠเบดเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบตเป‰เบ™เบงเปˆเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก 2.0. เบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบชเปเบฒเบฅเบฑเบšเบฅเบฐเบšเบปเบšเปเบกเปˆเบ™เบซเบเบฑเบ‡?

  • เบกเบตเบ„เบปเบ‡เบ—เบตเปˆ;
  • metrics storage interval = 10 เบงเบดเบ™เบฒเบ—เบต;
  • เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡ metrics เปเบฅเบฐ dashboards;
  • SLA > 99,99%
  • เบเบฒเบ™เป€เบเบฑเบšเบเปเบฒเบ•เบปเบงเบŠเบตเป‰เบšเบญเบเป€เบซเบ”เบเบฒเบ™เบœเปˆเบฒเบ™ UDP (!).

เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™ UDP เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเปเบฅเบฐเป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡ metrics. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ‚เบฝเบ™เบžเบงเบเบกเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ graphite เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบˆเบฐเบเบธเบšเบฅเบปเบ‡. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เป„เบ”เป‰เป€เบฅเบทเบญเบเบ„เปเบฒเบ™เปเบฒเบซเบ™เป‰เบฒเบฅเบฐเบ”เบฑเบšเบ—เปเบฒเบญเบดเบ”เบชเปเบฒเบฅเบฑเบšเบ—เบธเบ metrics.

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™: เบฅเบฐเบšเบปเบšเป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ

เปเบ•เปˆเบฅเบฐเบ„เปเบฒเบ™เปเบฒเบซเบ™เป‰เบฒเบกเบตเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบกเบต metrics เบชเปเบฒเบฅเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, containers, เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™, เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™, เป€เบ„เบฑเปˆเบ‡เบ„เบฑเบ”, เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบเบญเบกเบฎเบฑเบšเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบฅเบฐเบ”เบฑเบšเบ—เปเบฒเบญเบดเบ”เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบซเบผเบธเบ”เบฅเบปเบ‡เบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญ. เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เปเบœเบ™เบฅเบฐเบšเบปเบšเบ™เบตเป‰เปƒเบ™เบ›เบต 2015. เบ›เบฐเบˆเบธเบšเบฑเบ™เปเบกเปˆเบ™เบซเบเบฑเบ‡?

เบ›เบฐเบˆเบธเบšเบฑเบ™: เปเบœเบ™เบงเบฒเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบ•เบดเบ”เบ•เบฒเบกเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™: เบฅเบฐเบซเบฑเบ” PHP, เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปเบฅเบฐเบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ - เปƒเบ™เบชเบฑเป‰เบ™, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ‚เบฝเบ™. เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบฑเบ‡เบซเบกเบปเบ”เบชเบปเปˆเบ‡ metrics เบœเปˆเบฒเบ™ UDP เป„เบ›เบซเบฒ Brubeck aggregator (statsd, rewritten in C). เบกเบฑเบ™เป„เบ”เป‰เบเบฒเบเบกเบฒเป€เบ›เบฑเบ™เป„เบงเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเบฑเบ‡เป€เบ„เบฒเบฐ. เปเบฅเบฐเบกเบฑเบ™เบชเบปเปˆเบ‡ metrics เบฅเบงเบกเปเบฅเป‰เบงเป„เบ›เบซเบฒ Graphite เบœเปˆเบฒเบ™ TCP.

เบกเบฑเบ™เบกเบตเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ timers. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฐเบ”เบงเบเบซเบผเบฒเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบœเบนเป‰เปƒเบŠเป‰เปเบ•เปˆเบฅเบฐเบ„เบปเบ™เบเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เบ—เปˆเบฒเบ™เบชเบปเปˆเบ‡ metric เบ—เบตเปˆเบกเบตเป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบเบฑเบš Brubeck. 10 เบฅเป‰เบฒเบ™เบ„เปเบฒเบ•เบญเบšเป€เบ‚เบปเป‰เบฒเบกเบฒ, เปเบ•เปˆเบœเบนเป‰เบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒเบžเบฝเบ‡เปเบ•เปˆ 4 metrics. เบ—เปˆเบฒเบ™เบกเบตเบˆเปเบฒเบ™เบงเบ™เบ„เบปเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒ, เบชเบนเบ‡เบชเบธเบ”, เบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเปเบฅเบฐเป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบชเบฐเป€เบฅเปˆเบ, เบ›เบฒเบ™เบเบฒเบ‡เปเบฅเบฐ XNUMX เป€เบ›เบตเป€เบŠเบฑเบ™. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเป‚เบญเบ™เป„เบ› Graphite เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป€เบซเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบกเบตเบŠเบตเบงเบดเบ”เบขเบนเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”.

เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบกเบตเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบชเปเบฒเบฅเบฑเบš metrics เบเปˆเบฝเบงเบเบฑเบšเบฎเบฒเบ”เปเบง, เบŠเบญเบšเปเบง, metrics เบฅเบฐเบšเบปเบšเปเบฅเบฐเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก Munin เป€เบเบปเปˆเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ (เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบˆเบปเบ™เบเปˆเบงเบฒ 2015). เบžเบงเบเป€เบฎเบปเบฒเป€เบเบฑเบšเบเปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เป‚เบ”เบเบœเปˆเบฒเบ™ daemon C's CollectD (เบกเบฑเบ™เบกเบตเบŠเปเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡ plugins เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบกเบฑเบ™, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบชเปเบฒเบซเบผเบงเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ—เบตเปˆเบกเบฑเบ™เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡, เบžเบฝเบ‡เปเบ•เปˆเบฅเบฐเบšเบธเปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™) เปเบฅเบฐ เบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆ Graphite เบœเปˆเบฒเบ™เบกเบฑเบ™. เบกเบฑเบ™เบเบฑเบ‡เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ plugins python เปเบฅเบฐ shell scripts, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡: CollectD เบˆเบฐเป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบˆเบฒเบเป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบซเบผเบทเบซเปˆเบฒเบ‡เป„เบเบชเบญเบเบซเบผเบตเบ (เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒ Curl) เปเบฅเบฐเบชเบปเปˆเบ‡เป„เบ›เบ—เบตเปˆ Graphite.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบชเบปเปˆเบ‡ metrics เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบเบฑเบšเบเปเบฒเป„เบ›เบซเบฒ Carbon-c-relay. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚ Carbon Relay เบˆเบฒเบ Graphite, เบ”เบฑเบ”เปเบเป‰เปƒเบ™ C. เบ™เบตเป‰เปเบกเปˆเบ™ router เบ—เบตเปˆเบฅเบงเบšเบฅเบงเบกเบ—เบธเบ metrics เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบปเปˆเบ‡เบˆเบฒเบเบ•เบปเบงเบฅเบงเบšเบฅเบงเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบ™เปเบฒเบ—เบฒเบ‡เป„เบ›เบซเบฒ nodes. เบ™เบญเบเบˆเบฒเบเบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ‚เบญเบ‡เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡, เบกเบฑเบ™เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡ metrics. เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบ‚เบปเบฒเบ•เป‰เบญเบ‡เบชเบญเบ”เบ„เปˆเบญเบ‡เบเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™ เบ„เบณ เบ™เบณ เปœเป‰เบฒ เบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบชเบฐเปเบ”เบ‡เบเปˆเบญเบ™ เปœเป‰เบฒ เบ™เบตเป‰เปเบฅเบฐเบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบžเบงเบเบกเบฑเบ™เบ–เบทเบเบ•เป‰เบญเบ‡ เบชเบณ เบฅเบฑเบš graphite. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเบฅเบธเบ”เบฅเบปเบ‡.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, Carbon-c-relay เบˆเบฐเบชเบปเปˆเบ‡ metrics เป„เบ›เบซเบฒเบเบธเปˆเบก Graphite. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ Carbon-cache, เบ‚เบฝเบ™เบ„เบทเบ™เปƒเบ™ Go, เป€เบ›เบฑเบ™เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบซเบผเบฑเบเบ‚เบญเบ‡ metrics. Go-carbon, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ multithreading เบ‚เบญเบ‡เบกเบฑเบ™, เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ”เบตเบเบงเปˆเบฒ Carbon-cache. เบกเบฑเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ‚เบฝเบ™เบกเบฑเบ™เปƒเบชเปˆเปเบœเปˆเบ™เป‚เบ”เบเปƒเบŠเป‰เบŠเบธเบ”เบเบฐเบŠเบดเบš (เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™, เบ‚เบฝเบ™เปƒเบ™ python). เป€เบžเบทเปˆเบญเบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ Graphite API. เบกเบฑเบ™เป„เบงเบเบงเปˆเบฒเป€เบงเบฑเบš Graphite เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบซเบผเบฒเบ. เบˆเบฐเป€เบเบตเบ”เบซเบเบฑเบ‡เบ‚เบถเป‰เบ™เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ•เปเปˆเป„เบ›?

เบžเบงเบเป€เบ‚เบปเบฒเป„เบ› Grafana. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบเบธเปˆเบก graphite เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบฑเบ™เปเบซเบฅเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบ•เบปเป‰เบ™เบ•เป, เบšเบงเบเบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบกเบต Grafana เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบงเบฑเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡ metrics เปเบฅเบฐ dashboards เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡. เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ, เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเป‰เบฒเบ‡ dashboard เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบ‚เบปเบฒเบชเป‰เบฒเบ‡เบเบฒเบŸเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบžเบงเบเบกเบฑเบ™, เป€เบŠเบดเปˆเบ‡เบชเบฐเปเบ”เบ‡เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเบ‚เบฝเบ™เบˆเบฒเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ™เบญเบเป€เบซเบ™เบทเบญเป„เบ›เบˆเบฒเบ Grafana, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบกเบต SLAM. เบ™เบตเป‰เปเบกเปˆเบ™ python demon เบ—เบตเปˆเบ„เบดเบ”เป„เบฅเปˆ SLA เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบ graphite. เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเปเบฅเป‰เบง, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเบซเบผเบฒเบเบชเบดเบš, เปเบ•เปˆเบฅเบฐเบญเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡. เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ SLAM, เบžเบงเบเป€เบฎเบปเบฒเป„เบ›เบซเบฒเป€เบญเบเบฐเบชเบฒเบ™เปเบฅเบฐเบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเปƒเบ™ Graphite เปเบฅเบฐเบ›เบฝเบšเบ—เบฝเบšเบงเปˆเบฒเบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบ—เบตเปˆเบเบปเบ‡เบเบฑเบšเบ„เบงเบฒเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เปƒเบซเป‰เป„เบ›เบ•เบทเปˆเบกเบญเบตเบ: เป€เบ•เบทเบญเบ™. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบ•เบฑเป‰เบ‡เป‚เบ”เบเปƒเบŠเป‰เบฅเบฐเบšเบปเบšเบ—เบตเปˆเป€เบ‚เบฑเป‰เบกเปเบ‚เบ‡ - Moira. เบกเบฑเบ™เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบกเบต Graphite เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เบžเบฒเบเปƒเบ•เป‰ hood เป„เบ”เป‰. เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบ guys เบˆเบฒเบ SKB "Kontur", เบ‚เบฝเบ™เปƒเบ™ python เปเบฅเบฐ Go, เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™. Moira เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป„เบซเบผเบ”เบฝเบงเบเบฑเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ graphites. เบ–เป‰เบฒเบšเบฒเบ‡เป€เบซเบ”เบœเบปเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบ•เบฒเบ, เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบˆเบฐเบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆ.

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ™เบณเปƒเบŠเป‰ Moira เปƒเบ™ Kubernetes; เบกเบฑเบ™เปƒเบŠเป‰เบเบธเปˆเบกเป€เบŠเบตเบšเป€เบงเบต Redis เป€เบ›เบฑเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบซเบผเบฑเบ. เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ”. เบกเบฑเบ™เบ›เบฝเบšเบ—เบฝเบšเบเบฐเปเบชเบ‚เบญเบ‡ metrics เบเบฑเบšเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡ triggers: เบ–เป‰เบฒเบšเปเปˆเบกเบตเบเบฒเบ™เบเปˆเบฒเบงเป€เบ–เบดเบ‡เปƒเบ™เบกเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบˆเบฐเบซเบผเบธเบ”เบฅเบปเบ‡ metric. เบชเบฐเบ™เบฑเป‰เบ™เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบเปˆเบญเบ gigabytes เบ‚เบญเบ‡ metrics เบ•เปเปˆเบ™เบฒเบ—เบต.

เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เป„เบ”เป‰เบ„เบฑเบ”เบ•เบดเบ” LDAP เบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ”เบเบฑเบšเบกเบฑเบ™, เบ”เป‰เบงเบเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเบœเบนเป‰เปƒเบŠเป‰เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบšเปเบฅเบดเบชเบฑเบ”เบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบชเปเบฒเบฅเบฑเบšเบ•เบปเบ™เป€เบญเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง (เบซเบผเบทเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ). เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ Moira เบ›เบฐเบเบญเบšเบ”เป‰เบงเบ Graphite, เบกเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เปเบฒเบญเบดเบ”เบ—เปˆเบฒเบ™เป€เบญเบปเบฒเป€เบชเบฑเป‰เบ™เปเบฅเบฐเบ„เบฑเบ”เบฅเบญเบเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ Grafana. เป€เบšเบดเปˆเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบเบฒเบŸ. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เป€เบญเบปเบฒเป€เบชเบฑเป‰เบ™เบ”เบฝเบงเบเบฑเบ™เปเบฅเบฐเบ„เบฑเบ”เบฅเบญเบเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ Moira. เบ—เปˆเบฒเบ™เบงเบฒเบ‡เบกเบฑเบ™เบ”เป‰เบงเบเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบ•เบทเบญเบ™เบขเบนเปˆเบ—เบตเปˆเบœเบปเบ™เบœเบฐเบฅเบดเบ”. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบชเบฐเป€เบžเบฒเบฐ. Moira เบชเบฒเบกเบฒเบ”เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบœเปˆเบฒเบ™ SMS, เบญเบตเป€เบกเบฅเปŒ, Jira, Slack... เบกเบฑเบ™เบเบฑเบ‡เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบชเบฐเบ„เบดเบšเบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡. เป€เบกเบทเปˆเบญ trigger เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบ™เบฒเบ‡, เปเบฅเบฐเบ™เบฒเบ‡เบ–เบทเบเบชเบฐเบซเบกเบฑเบเป€เบ›เบฑเบ™เบชเบฐเบ„เบดเบšเบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡เบซเบผเบทเบ–เบฒเบ™เบชเบญเบ‡, เบ™เบฒเบ‡เปเบฅเปˆเบ™เบกเบฑเบ™เปเบฅเบฐเบชเบปเปˆเบ‡ 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

เป€เบเบฑเบšเบเปเบฒ:

collection.org

Moira:

github.com/moira-alert

Grafana:

grafana.com

Heapster:

github.com/kubernetes/heapster

เบชเบฐเบ–เบดเบ•เบด

เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ.

เบ•เบปเบงเบฅเบงเบšเบฅเบงเบก (brubeck)

เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบงเบฑเบ”เปเบ—เบ: ~300/เบงเบดเบ™เบฒเบ—เบต
เป„เบฅเบเบฐเบซเปˆเบฒเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบปเปˆเบ‡ metrics เบเบฑเบš Graphite: 30 เบงเบดเบ™เบฒเบ—เบต
เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ: ~ 6% CPU (เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเป€เบ•เบฑเบกเป„เบ›เบ”เป‰เบงเบเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”); ~ 1Gb RAM; ~ 3 Mbps LAN

Graphite (เป„เบ›-เบ„เบฒเบšเบญเบ™)

เบˆเปเบฒเบ™เบงเบ™ metrics: ~ 1 / min
เป„เบฅเบเบฐเบเบฒเบ™เบญเบฑเบšเป€เบ”เบ”เป€เบกเบ•เบฃเบดเบ: 30 เบงเบดเบ™เบฒเบ—เบต
เบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป€เบกเบ•เบฃเบดเบ: 30sec 35d, 5min 90d, 10min 365d (เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™)
เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ: CPU ~10%; ~ 20Gb RAM; ~30 Mbps LAN

เบขเบทเบ”เบขเบธเปˆเบ™

เบžเบงเบเป€เบฎเบปเบฒเบขเบนเปˆ Avito เบเปเปˆเปƒเบซเป‰เบ„เบธเบ™เบ„เปˆเบฒเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เปƒเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบฅเบฒเบงเบˆเบถเปˆเบ‡เบเบฒเบเป€เบ›เบฑเบ™เปเบšเบšเบ™เบตเป‰? เบ›เบฐเบเบฒเบ™เบ—เปเบฒเบญเบดเบ”, เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เบกเบฑเบ™เปเบกเปˆเบ™เบชเบฒเบกเบฒเบ”เปเบฅเบเบ›เปˆเบฝเบ™เบเบฑเบ™เป„เบ”เป‰: เบ—เบฑเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เปเบฅเบฐเบชเบฐเบšเบฑเบšเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เบฅเบฐเบซเบฑเบ”เบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡, เบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบšเปเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบเปˆเบญเบ‡. stacks เบ—เบปเปˆเบงเป„เบ›เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เบชเปˆเบงเบ™เปƒเบซเบเปˆเปเบกเปˆเบ™ Go เปเบฅเบฐ Python, เบชเบฐเบ™เบฑเป‰เบ™เบ™เบตเป‰เปเบกเปˆเบ™เป€เบฎเบฑเบ”เป„เบ”เป‰เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบ.

เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡. metric เปƒเบ™ Graphite เปเบกเปˆเบ™เป„เบŸเบฅเปŒ. เบกเบฑเบ™เบกเบตเบŠเบทเปˆ. เบŠเบทเปˆเป„เบŸเบฅเปŒ = เบŠเบทเปˆ metric. เปเบฅเบฐโ€‹เบกเบตโ€‹เบ—เบฒเบ‡โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป„เบ›โ€‹เป€เบ–เบดเบ‡โ€‹เบ—เบตเปˆโ€‹เบ™เบฑเป‰เบ™โ€‹. เบŠเบทเปˆเป„เบŸเบฅเปŒเปƒเบ™ Linux เปเบกเปˆเบ™เบˆเปเบฒเบเบฑเบ” 255 เบ•เบปเบงเบญเบฑเบเบชเบญเบ™. เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบกเบต (เป€เบ›เบฑเบ™ "เบฅเบนเบเบ„เป‰เบฒเบžเบฒเบเปƒเบ™") guys เบˆเบฒเบเบžเบฐเปเบ™เบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบžเบงเบเป€เบ‚เบปเบฒเบšเบญเบเบžเบงเบเป€เบฎเบปเบฒเบงเปˆเบฒ: "เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบชเบญเบšเบ–เบฒเบก SQL เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เปเบฅเบฐเบžเบงเบเบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™ 255 เบ•เบปเบงเบญเบฑเบเบชเบญเบ™, เปเบ•เปˆ 8 MB เปเบ•เปˆเบฅเบฐเบ„เบปเบ™. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบขเบนเปˆเปƒเบ™ Grafana, เป€เบšเบดเปˆเบ‡เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ™เบตเป‰, เปเบฅเบฐเบ”เบตเบเบงเปˆเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบšเบดเปˆเบ‡เบ”เป‰เบฒเบ™เป€เบ—เบดเบ‡เบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบกเบฑเบ™เบˆเบฐเบ”เบตเบ–เป‰เบฒเบกเบฑเบ™เบ–เบทเบเบชเบฐเปเบ”เบ‡เปƒเบ™เป€เบงเบฅเบฒเบˆเบดเบ‡. เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ”เบตเปเบ—เป‰เป†เบ—เบตเปˆเบˆเบฐเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบขเบนเปˆเปƒเบ™เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™.โ€

เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™: เบฅเบฐเบšเบปเบšเป‚เบกเบ”เบนเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ
เบ•เบปเบงเบขเปˆเบฒเบ‡ SQL query เปเบกเปˆเบ™เป€เบญเบปเบฒเป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบˆเบฒเบ เป€เบงเบฑเบšเป„เบŠเบ—เปŒ postgrespro.ru

เบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเป‰เบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ Redis เปเบฅเบฐเปƒเบŠเป‰ plugins เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบฅเบงเบšเบฅเบงเบก, เป€เบŠเบดเปˆเบ‡เป„เบ›เบซเบฒ Postgres เปเบฅเบฐเป€เบญเบปเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฒเบเบšเปˆเบญเบ™เบ™เบฑเป‰เบ™, เบชเบปเปˆเบ‡ metrics เบเบฑเบš Graphite. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบฝเบ™เบŠเบทเปˆ metric เบ”เป‰เบงเบ hashes. เบžเบงเบเป€เบฎเบปเบฒเบžเป‰เบญเบกเป†เบเบฑเบ™เบชเบปเปˆเบ‡ hash เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš Redis เป€เบ›เบฑเบ™เบ„เบต, เปเบฅเบฐเบเบฒเบ™เบชเบญเบšเบ–เบฒเบก SQL เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒ. เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เปเบกเปˆเบ™เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒ Grafana เบชเบฒเบกเบฒเบ”เป„เบ›เบซเบฒ Redis เปเบฅเบฐเป€เบญเบปเบฒเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰. เบžเบงเบเป€เบฎเบปเบฒเบเบณเบฅเบฑเบ‡เป€เบ›เบตเบ” Graphite API เป€เบžเบฒเบฐเบงเปˆเบฒ... เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ•เบปเป‰เบ™เบ•เปเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบชเปเบฒเบžเบฑเบ™เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบฑเบ‡เบซเบกเบปเบ”เบเบฑเบš graphite, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบซเบ™เป‰เบฒเบ—เบตเปˆเปƒเบซเบกเปˆเบ—เบตเปˆเบกเบตเบŠเบทเปˆเบงเปˆเบฒ aliasByHash() - เบˆเบฒเบ Grafana เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบŠเบทเปˆเบ‚เบญเบ‡ metric, เปเบฅเบฐเปƒเบŠเป‰เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป Redis เป€เบ›เบฑเบ™เบเบธเบ™เปเบˆ, เปƒเบ™ เบเบฒเบ™เบ•เบญเบšเบชเบฐ เปœเบญเบ‡ เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”, เป€เบŠเบดเปˆเบ‡เปเบกเปˆเบ™ "SQL query" เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™ Grafana เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก SQL, เป€เบŠเบดเปˆเบ‡เปƒเบ™เบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบตเบšเปเปˆเบชเบฒเบกเบฒเบ”เบชเบฐเปเบ”เบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบžเป‰เบญเบกเบเบฑเบšเบชเบฐเบ–เบดเบ•เบดเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™ (เป‚เบ—, เปเบ–เบง, Total_time, ... ).

เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš

เบ„เบงเบฒเบกเบžเป‰เบญเบก เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เบกเบตเบขเบนเปˆ 24/7 เบˆเบฒเบเบ—เบธเบเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ เปเบฅเบฐเบฅเบฐเบซเบฑเบ”เปƒเบ”เป†. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเป€เบเบฑเบšเบฎเบฑเบเบชเบฒ, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเบšเปเบฅเบดเบเบฒเบ™. เบžเบฒเบชเบฒเบšเปเปˆเบชเปเบฒเบ„เบฑเบ™, เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบšเปเปˆเบชเปเบฒเบ„เบฑเบ™. เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบฎเบนเป‰เบงเบดเบ—เบตเบเบฒเบ™เป€เบ›เบตเบ”เป€เบ•เบปเป‰เบฒเบฎเบฑเบš, เป€เบญเบปเบฒ metric เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เปเบฅเบฐเบ›เบดเบ”เป€เบ•เบปเป‰เบฒเบฎเบฑเบš.

เบ„เบงเบฒเบกเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบท เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบ—เบปเบ™เบ—เบฒเบ™เบ•เปเปˆเบ„เบงเบฒเบกเบœเบดเบ”เปเบฅเบฐเบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ”เบต.

เบญเบธเบ›เบฐเบชเบฑเบเบ•เปเปˆเบฒเบ•เปเปˆเบเบฒเบ™เป€เบ‚เบปเป‰เบฒ. เป€เบžเบทเปˆเบญเปƒเบŠเป‰เบฅเบฐเบšเบปเบšเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฎเบฝเบ™เบฎเบนเป‰เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเปเบฅเบฐเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเปƒเบ™ Grafana. เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เป€เบ›เบตเบ”โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹, เปƒเบชเปˆโ€‹เป€เบ•เบปเป‰เบฒโ€‹เบฎเบฑเบšโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เบกเบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบชเบปเปˆเบ‡ metrics เบเบฑเบš Graphiteโ€‹, เบ›เบดเบ”โ€‹เบกเบฑเบ™โ€‹, เป€เบ›เบตเบ” Grafanaโ€‹, เบชเป‰เบฒเบ‡ dashboards เบกเบตโ€‹เปเบฅเบฐโ€‹เป€เบšเบดเปˆเบ‡โ€‹เบžเบถเบ”โ€‹เบ•เบดโ€‹เบเปเบฒโ€‹เบ‚เบญเบ‡ metrics เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹, เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เปเบˆเป‰เบ‡โ€‹เบเบฒเบ™โ€‹เบœเปˆเบฒเบ™ Moiraโ€‹.

เป€เบญโ€‹เบเบฐโ€‹เบฅเบฒเบ”. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เบ”เป‰เบงเบเบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡, เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡เบงเบดเบชเบฐเบงเบฐเบเบญเบ™ DevOps. เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบ‚เปเป‰เป„เบ”เป‰เบ›เบฝเบš, เป€เบžเบฒเบฐเบงเปˆเบฒเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฒเบกเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบ—เปˆเบฒเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบฒเบกเปƒเบœ - เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบซเบผเบทเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡.

เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบซเบเบฑเบ‡?

เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบ•เบปเบงเบ•เบปเบ™, เปเบ•เปˆเบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป„เบ›เบชเบนเปˆเบเบฒเบ™เบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”.

  1. เป€เบ„เบทเปˆเบญเบ‡เบเบงเบ”เบˆเบฑเบšเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบด. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบˆเบฐเป„เบ›เบซเบฒเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™ Graphite เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบเบงเบ”เป€เบšเบดเปˆเบ‡เปเบ•เปˆเบฅเบฐ metric เป‚เบ”เบเปƒเบŠเป‰ algorithms เบ•เปˆเบฒเบ‡เป†. เบกเบต algorithms เปเบฅเป‰เบงเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบšเบดเปˆเบ‡, เบกเบตเบ‚เปเป‰เบกเบนเบ™, เบžเบงเบเป€เบฎเบปเบฒเบฎเบนเป‰เบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบกเบฑเบ™.
  2. เป€เบกเบ•เบฒเป€เบ”เบ•เบฒ. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบซเบผเบฒเบเบšเปเบฅเบดเบเบฒเบ™, เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ›เปˆเบฝเบ™เปเบ›เบ‡เบ•เบฒเบกเป€เบงเบฅเบฒ, เบ„เบทเบเบฑเบ™เบเบฑเบšเบ„เบปเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ. เบเบฒเบ™เบฎเบฑเบเบชเบฒเป€เบญเบเบฐเบชเบฒเบ™เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เบšเปเปˆเปเบกเปˆเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบเบฑเบ‡ metadata เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ microservices เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบกเบฑเบ™เบšเบญเบเบงเปˆเบฒเบœเบนเป‰เบ—เบตเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเบกเบฑเบ™, เบžเบฒเบชเบฒเบ—เบตเปˆเบกเบฑเบ™เบžเบปเบงเบžเบฑเบ™เบเบฑเบš, เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™ SLA, เบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบ„เบงเบ™เบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เปƒเบชเปเบฅเบฐเปƒเบœ. เป€เบกเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™เบชเป‰เบฒเบ‡เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบชเบญเบ‡เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ - เบซเบ™เบถเปˆเบ‡เป€เบžเบทเปˆเบญเบเบฐเบ•เบธเป‰เบ™, เบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡เป„เบ›เบซเบฒ dashboards เปƒเบ™ Grafana.
  3. เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹เบเบงเบ”โ€‹เบเบฒโ€‹เปƒเบ™โ€‹เบ—เบธเบโ€‹เบšเป‰เบฒเบ™โ€‹. เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบทเปˆเบญเบงเปˆเบฒเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบธเบเบ„เบปเบ™เบ„เบงเบ™เปƒเบŠเป‰เบฅเบฐเบšเบปเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบชเบฐเป€เบซเบกเบตเป€เบ‚เบปเป‰เบฒเปƒเบˆเบšเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเบขเบนเปˆ, เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบเบฑเบšเบกเบฑเบ™, เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบ•เบปเบ, เบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบธเบ”เบญเปˆเบญเบ™เบ‚เบญเบ‡เบกเบฑเบ™เบขเบนเปˆ. เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบกเบฒเปเบฅเบฐ crash เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบˆเบฐเบฎเบฝเบ™เบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เป‚เบ—เบซเบฒเบˆเบฒเบเบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™, เปเบ•เปˆเบˆเบฒเบเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™, เปเบฅเบฐเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เบšเบฑเบ™เบ—เบถเบเบซเบฅเป‰เบฒเบชเบธเบ”เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™.
  4. เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเบนเบ‡. เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡, เปเบฅเบฐเปƒเบ™เบกเบทเป‰เบ™เบตเป‰เบกเบฑเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ›เบฐเบกเบฒเบ™ 2 เบกเบนเบ™เบ„เปˆเบฒ metric เบ•เปเปˆเบ™เบฒเบ—เบต. เบ›เบตเบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰, เบ•เบปเบงเป€เบฅเบเบ™เบตเป‰เปเบกเปˆเบ™ 000. เปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบเบฑเบ‡เบชเบทเบšเบ•เปเปˆ, เปเบฅเบฐเบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบซเบผเบฑเบ‡เบˆเบฒเบเป€เบงเบฅเบฒเปƒเบ”เบซเบ™เบถเปˆเบ‡ Graphite (whisper) เบˆเบฐเป€เบฅเบตเปˆเบกเป‚เบซเบผเบ”เบซเบผเบฒเบเบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ‚เบญเบ‡เปเบœเปˆเบ™. เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเปเบฅเป‰เบง, เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ—เบปเปˆเบงเป„เบ›เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš. เบšเบฒเบ‡เบ„เบปเบ™เบฎเบฑเบเบชเบฒเปเบฅเบฐเบ‚เบฐเบซเบเบฒเบเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบš Graphite, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเป„เบ›เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™: เปƒเบŠเป‰ เบเบปเบ”เบ›เบธเปˆเบก เป€เบ›เบฑเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบชเปเบฒเบฅเบฑเบš metrics เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบ™เบตเป‰เปเบกเปˆเบ™เป€เบเบทเบญเบšเบชเปเบฒเป€เบฅเบฑเบ”, เปเบฅเบฐเปƒเบ™เป„เบงเป†เบ™เบตเป‰เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเบญเบเบ—เปˆเบฒเบ™เปƒเบ™เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เป„เบ”เป‰เป€เบฎเบฑเบ”: เบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบญเบฑเบ™เปƒเบ”เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป„เบ›, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบญเบฐเบ—เบดเบšเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบ–เบทเบเป€เบฅเบทเบญเบเป€เบ›เบฑเบ™เบเบฒเบ™เบœเบนเบเบกเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เบ‚เบญเบšเปƒเบˆเบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเบ‚เบญเบ‡เบ—เปˆเบฒเบ™! เบ–เบฒเบกเบ„เปเบฒเบ–เบฒเบกเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบซเบปเบงเบ‚เปเป‰, เบ‚เป‰เบญเบเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเบ•เบญเบšเบ—เบตเปˆเบ™เบตเป‰เบซเบผเบทเปƒเบ™เบ‚เปเป‰เบ„เบงเบฒเบกเบ•เปเปˆเป„เบ›เบ™เบตเป‰. เบšเบฒเบ‡เบ—เบตเบšเบฒเบ‡เบ„เบปเบ™เบกเบตเบ›เบฐเบชเบปเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบซเบผเบทเบ›เปˆเบฝเบ™เป„เบ› Clickhouse เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™ - เปเบšเปˆเบ‡เบ›เบฑเบ™เบกเบฑเบ™เปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™