ВстроСнныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°

Π’ΠΈΠΏ ΡΡ‚Π°Ρ‚ΡŒΠΈ

Знания

ΠšΠΎΠΌΠΏΠ΅Ρ‚Π΅Π½Ρ†ΠΈΠΈ

Администратор

НСобходимыС ΠΏΡ€Π°Π²Π°

Админ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅

ВСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

2.19.1/2.20

Бтатус

Π‘Π΅Ρ‚Π°

Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΒ 

Π»Π΅Π³ΠΊΠΎ

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ссылки

https://grafana.com/Β 
https://grafana.com/docs/loki/latest/
https://grafana.com/docs/loki/latest/clients/promtail/
https://prometheus.io/docs/introduction/overview/
https://prometheus.io/docs/guides/node-exporter/
https://prometheus.io/docs/guides/cadvisor/
Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ систСмы

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния

Ubuntu 18.04/20.04


Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅


1. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².


2. ОписаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹.


Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅


Π£ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, начиная с вСрсии 2.18, имССтся встроСнный ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π² ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ… опишСм ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π΅Π³ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚, ΠΈ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚. Бсылки Π½Π° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΈΡ… использованиС Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Ρ‹ Π²Ρ‹ΡˆΠ΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.Β 

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° – это ΠΏΠΎ сути ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Docker сСрвисы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ описаны Π² Ρ„Π°ΠΉΠ»Π΅ grafana.yml ΠΈΠ· дистрибутива ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

1. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².


Loki – систСма для Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ ΠΈ хранСния Π»ΠΎΠ³ΠΎΠ². ΠŸΡ€ΠΎΡΡ‚Ρ‹ΠΌΠΈ словами: Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… всСх Π»ΠΎΠ³ΠΎΠ² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ со всСх Π΅Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

Promtail – сСрвис для сбора Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΡ… Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Loki. Π”Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ унивСрсалСн ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Loki, Π½ΠΎ Π² нашСм случаС Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ Π°Π³Π΅Π½Ρ‚ΠΎΠΌ для сбора Π»ΠΎΠ³ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Loki. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρƒ Zabbix Π°Π³Π΅Π½Ρ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

Prometheus – систСма ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΈ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠΉ. Π’ нашСм случаС Π°Π³Ρ€Π΅Π³ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ использования рСсурсов сСрвСра.

Node-exporter – собираСт ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ использования рСсурсов хоста (сСрвСра с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ) ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΈΡ… Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Prometheus. НапримСр, Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° CPU, использованиС RAM, Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° ΡΠ΅Ρ‚ΡŒ.

Cadvisor – собираСт ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ использования рСсурсов сСрвСра Docker ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΒ Node-exporter ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΈΡ… Π²Β Prometheus.

Grafana – ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π΄ΡΡˆΠ±ΠΎΡ€Π°Ρ…. По сути ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Π² Π²ΠΈΠ΄Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ·Β Prometheus ΠΈΒ Loki.

2. ОписаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹.


Prometheus постоянно ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚Β Node-exporter ΠΈΒ Cadvisor ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² стандартизированном, понятном Π΅ΠΌΡƒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π’Β Prometheus Ρ‚Π°ΠΊΠΆΠ΅ прописаны внутрисСтСвыС ΠΏΡƒΡ‚ΠΈ Π΄ΠΎ Node-exporter ΠΈΒ Cadvisor. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ хранятся 7 Π΄Π½Π΅ΠΉ.

Promtail парсит JSON Ρ„Π°ΠΉΠ»ΠΈΠΊΠΈ Π»ΠΎΠ³ΠΎΠ² Docker ΠΏΠΎ настроСнным ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ. Он рСгулярно с Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ проходится ΠΏΠΎ всСм Π»ΠΎΠ³Π°ΠΌ, Π±Π΅Ρ€Π΅Ρ‚ ΠΎΡ‚Ρ‚ΡƒΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Loki.

Grafana являСтся ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ всСх Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ, Π³Π΄Π΅ Π½Π° основС запросов Π½Π° языкС PromQL строятся Π΄ΡΡˆΠ±ΠΎΡ€Π΄Ρ‹. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ (02.2021 вСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 2.20) Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΡΡˆΠ±ΠΎΡ€Π΄ΠΎΠ² Π² Grafana ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Docker ΠΎΠ±Ρ€Π°Π·Π°. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΌ Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΈ ΡƒΠΆΠ΅ настроСно Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π² Π²Π΅Π± администрировании ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.