ΠΠ°ΠΊΠ°Ρ ΡΠΎΠ»Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° scrape interval Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ prometheus
LaurVas
Prometheus server Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π΄Π²Π° ΠΌΠ΅ΡΡΠ°: ΠΆΠΎΠΏΡ ΠΈ Π³ΠΎΠ»ΠΎΠ²Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ». ΠΠ°ΡΡΡΠΎΠΉΠΊΡ ΡΠ΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π² Prometheus Π½Π΅ Π·Π°Π²Π΅Π·Π»ΠΈ ΠΈ Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡΡΡΡ.
ΠΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ Prometheus Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ ΡΠ°Π½ΠΈΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ
ΠΡΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π ΠΈΠ΄Π΅Π°Π»Π΅ Π½Π°Π΄ΠΎ ΠΈΠΌΠ΅ΡΡ Π΄Π²Π° Π½Π°Π±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ: ΠΊΡΠ°ΡΠΊΠΎΡΡΠΎΡΠ½ΡΠ΅ Π½Π° ΠΏΠ°ΡΡ Π½Π΅Π΄Π΅Π»Ρ ΠΈ Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΡΠ΅ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΡΠ΅Π². ΠΠ΅ΡΠ²ΡΠ΅ Π½ΡΠΆΠ½Ρ, ΡΡΠΎΠ±Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ, Π²ΡΠΎΡΡΠ΅ β ΡΡΠΎΠ±Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΡ Π½Π° Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠ°Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΎ ΡΡΠΎ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ΅ΠΌΠ°, Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡΠ°Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ, Π° ΠΏΠΎΠΊΠ° ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΠΏΠΎ-ΠΏΡΠΎΡΡΠΎΠΌΡ. ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°Ρ Π·Π°ΠΏΡΡΠΊΠ° Prometheus. ΠΡΡΡ Π΄Π²Π΅ ΠΎΠΏΡΠΈΠΈ:
—storage.tsdb.retention.time=. ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ Prometheus Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ. ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² PromQL Π΄Π»Ρ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π½ΠΎΠ³ΠΎ Π²Π΅ΠΊΡΠΎΡΠ°: 30d β ΡΡΠΎ 30 Π΄Π½Π΅ΠΉ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ ΡΠ°Π½ΡΡΡΡ 15 Π΄Π½Π΅ΠΉ, ΠΏΠΎΡΠΎΠΌ ΠΈΡΡΠ΅Π·Π°ΡΡ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ Π½Π΅Π»ΡΠ·Ρ ΠΎΠ΄Π½ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ ΡΠ°Π½ΠΈΡΡ Π΄ΠΎΠ»Π³ΠΎ, Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎ, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Graphite. Π Prometheus Π»ΠΈΠΌΠΈΡ ΠΎΠ±ΡΠΈΠΉ Π΄Π»Ρ Π²ΡΠ΅Ρ .
—storage.tsdb.retention.size=. ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Prometheus ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄ ΠΌΠ΅ΡΡΠΈΠΊΠΈ. ΠΠΎ-ΠΌΠΎΠ΅ΠΌΡ ΡΡΠ° ΠΎΠΏΡΠΈΡ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ: ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π²ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ»Π³ΠΈΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅. ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π΅Π»ΡΠ·Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π²ΠΏΡΠΈΡΡΠΊ. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Ρ ΠΠ ΠΌΠ΅ΡΡΠΈΠΊ Π΅ΡΡΡ ΠΆΡΡΠ½Π°Π» ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΠΈΡΠΈ (WAL), ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΡΠΎΠΌ Π»ΠΈΠΌΠΈΡΠ΅ Π½Π΅ ΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ. Π― Π½Π΅ ΠΏΠΎΠ½ΡΠ» ΠΎΡ ΡΠ΅Π³ΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ WAL, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ Π·Π°ΠΏΠ°ΡΡ Π½Π΅ ΠΌΠΎΠ³Ρ Π΄Π°ΡΡ. Π£ ΠΌΠ΅Π½Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ WAL Π±ΡΠ» 8 ΠΠ.
ΠΡΠ»ΠΈ ΠΆΠ΅ Prometheus ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Π΄ΠΎΠΊΠ΅ΡΠ΅, ΡΠΎ Π½Π°Π΄ΠΎ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² docker-compose.yml ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ΄Π½ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ.
ΠΠ½ΡΠ΅ΡΠ²Π°Π» ΠΎΠΏΡΠΎΡΠ° ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠΎΠ² ΠΈ job name
ΠΠ°Π²Π°ΠΉΡΠ΅ Π²Π·Π³Π»ΡΠ½Π΅ΠΌ Π½Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΡΠ°ΡΡΠΈ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ ΠΎ ΡΡΠΌ ΠΈΠ΄ΡΡ ΡΠ΅ΡΡ:
scrape_interval β ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠΎΡΠ° ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠΎΠ² (scrape Π΄ΠΎΡΠ»ΠΎΠ²Π½ΠΎ Ρ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ β ΡΡΠΎ ΡΠΎΡΠΊΠ°Π±Π»ΠΈΠ²Π°ΡΡ, ΡΠΎΡΠΊΡΠ΅Π±Π°ΡΡ). Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π·Π½ΠΎΠΉ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ. ΠΠΎ Π²ΡΠ΅Ρ ΠΌΠ°Π½ΡΠ°Π»Π°Ρ Ρ Π²ΡΡΡΠ΅ΡΠ°Π» ΡΠΈΡΡΡ Π² 15 ΡΠ΅ΠΊΡΠ½Π΄, Π½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΎΠ±ΡΡΡΠ½ΡΠ» ΡΡΡ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ. ΠΠΎΡΠ΅ΠΌΡ Π½Π΅ 2, 5 ΠΈΠ»ΠΈ 10? Π ΡΠ΅Π»ΠΎΠΌ ΡΠ°ΠΊ: ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π», ΡΠ΅ΠΌ Π²ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΠΈ ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊ. ΠΠΈΠ΄ΠΈΠΌΠΎ 15 ΡΠ΅ΠΊΡΠ½Π΄ β ΡΡΠΎ Π·ΠΎΠ»ΠΎΡΠ°Ρ ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π°, Π½Π°ΠΉΠ΄Π΅Π½Π½Π°Ρ ΠΎΠΏΡΡΠ½ΡΠΌ ΠΏΡΡΡΠΌ.
job_name β ΠΈΠΌΡ (Π΄Π»Ρ PrometheusβΠ°) Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ Π³ΡΡΠΏΠΏΡ ΠΌΠ΅ΡΡΠΈΠΊ. job_name Π±ΡΠ΄Π΅Ρ ΡΠ²Π΅ΡΠΈΡΡΡΡ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ PrometheusβΠ° Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Targets, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΠ°Π΄ΡΡ Π² ΠΌΠ΅ΡΠΊΡ job Π΄Π»Ρ Π³ΡΡΠΏΠΏΡ ΠΌΠ΅ΡΡΠΈΠΊ c ΡΡΠΈΡ ΠΌΠ°ΡΠΈΠ½:
ΠΠΎΡΠ»Π΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³Π° Π½Π°Π΄ΠΎ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ PrometheusβΠ° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°Π΄ΠΎ ΠΏΠΎΡΠ»Π°ΡΡ Π΅ΠΌΡ ΡΠΈΠ³Π½Π°Π» SIGHUP ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ²:
ΠΠ°ΠΊ Π½Π°Π²Π΅ΡΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΠΎΠΊ Ρ ΠΎΡΡΠ°ΠΌ
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ Prometheus:
Π Π·Π°ΠΏΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
ΠΠ°ΠΊ ΡΠ±ΡΠ°ΡΡ Π½ΠΎΠΌΠ΅Ρ ΠΏΠΎΡΡΠ° ΠΈΠ· ΡΠ°ΡΠ³Π΅ΡΠΎΠ²
ΠΠΎΡΡ ΡΠΊΡΠΎΠ΅ΡΡΡ Π½Π΅ Π²Π΅Π·Π΄Π΅. ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Targets ΠΎΠ½ ΠΎΡΡΠ°Π½Π΅ΡΡΡ:
Π Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ ΠΈΡΡΠ΅Π·Π½Π΅Ρ:
Service discovery
Service discovery β ΡΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»Π΅ΠΉ. Π‘ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Prometheus Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅Π»Π΅ΠΉ ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°: consul, openstack ΠΈΠ»ΠΈ ΡΡΠΎ-ΡΠΎ Π΅ΡΡ. Service discovery β ΡΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΡΠΊΠ°, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΡΠ°Π·Π²ΡΡΠ½ΡΡΠ° Π² ΠΎΠ±Π»Π°ΠΊΠ΅ ΠΈ ΠΌΠ°ΡΠΈΠ½Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ ΡΠΎΠΆΠ΄Π°ΡΡΡΡ ΠΈ ΡΠΌΠΈΡΠ°ΡΡ.
Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ service discovery ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΡΠ°ΠΉΠ»ΠΈΠΊΠ°Ρ . Π ΠΊΠΎΠ½ΡΠΈΠ³Π΅ ΠΏΠΈΡΠ΅ΠΌ ΡΠ°ΠΊ:
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ°ΡΠ³Π΅ΡΠ°ΠΌΠΈ:
Π£Π΄ΠΎΠ±Π½ΠΎ Π΄Π΅ΡΠΆΠ°ΡΡ ΡΠ°ΡΠ³Π΅ΡΡ ΡΠ°Π·Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π² ΡΠ°Π·Π½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ . Π ΠΌΠΎΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΎΠ΅ΠΊΡ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ βbooβ, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π΄Π΅Π»Π°ΡΡΡΡ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ. ΠΡΠΌΠ°Ρ ΡΠ°Π·Π±Π΅ΡΡΡΠ΅ΡΡ.
Π‘Π΅ΡΠ²Π΅Ρ Prometheus ΠΈ TLS
Prometheus ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ TLS ΠΈ Π±Π°Π·ΠΎΠ²ΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π΄Π»Ρ HTTP ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΠΎΠ².
Π‘ΠΊΡΠ΅ΠΉΠΏΠΈΠ½Π³ ΡΠ°ΡΠ³Π΅ΡΠΎΠ² ΡΠ΅ΡΠ΅Π· HTTPS Π²ΠΌΠ΅ΡΡΠΎ HTTP ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠΆΠ΅ Π΄Π°Π²Π½ΠΎ. ΠΠ΅ΡΡΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±ΠΈΡΠ°ΡΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ HTTPS, Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°ΠΌ ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
Π ΠΏΡΠΎΡΠ»ΠΎΠΌ Π³ΠΎΠ΄Ρ Node Exporter ΡΡΠ°Π» ΠΏΠ΅ΡΠ²ΡΠΌ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠΈΠ²Π½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΏΠΎ HTTPS. ΠΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅. ΠΠ° ΡΡΠΎΠΉ Π½Π΅Π΄Π΅Π»Π΅ (ΠΏΡΠΈΠΌ. ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠ°: ΡΡΠ°ΡΡΡ Π²ΡΡΠ»Π° 6 ΡΠ½Π²Π°ΡΡ 2021 Π³ΠΎΠ΄Π°) ΠΌΡ Π²ΡΡΡΠ΅ΡΠ°Π΅ΠΌ Prometheus 2.24.0. Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ Prometheus ΡΠ°Π΄ΡΠ΅Ρ Π½Π°Ρ ΠΊΡΡΡΡΠΌΠΈ Π½ΠΎΠ²ΡΠ΅ΡΡΠ²Π°ΠΌΠΈ β ΡΡΠΎ ΠΈ TLS, ΠΈ backfilling (ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, ΡΠΎΠΆΠ΅ Π² Π²Π΅ΡΡΠΈΠΈ 2.24) ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π° React.
Π ΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎ TLS ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Prometheus ΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡΡΡ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ.
ΠΡΠ»ΠΈ Π²Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»ΠΈ Π² Prometheus, ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠ΅ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΠΊΠ°ΠΊΡΡ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ, Π½Π΅ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎ, Π° ΡΠΎΠΎΠ±ΡΠΈΡΠ΅ Π½Π°ΠΌ, ΡΡΠΎΠ±Ρ ΠΌΡ Π²ΡΠ΅ ΠΈΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ.
API Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Prometheus ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΡ API ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π΄Π°Π½Π½ΡΡ . ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΅ΡΠ΅ ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΡΠΌ ΡΠΈΠΊΠ»ΠΎΠΌ (ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, Π²ΡΡ ΠΎΠ΄) ΠΈ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΠΈΠΊ, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ½Π°ΠΏΡΠΎΡΠΎΠ²).
ΠΡΠΈ ΡΡΠΎΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°ΡΠΈΡΠΈΡΡ ΠΏΠΎΡΡ Prometheus, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
ΠΠ°ΡΠΈΡΠ° Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Prometheus
Π Π°Π½ΡΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Prometheus Π΄Π»Ρ Π·Π°ΡΠΈΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠ°Π²ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΡΠΎΠΊΡΠΈ:
Π‘ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄ΠΎΡΡΡΠΏΠΎΠΌ ΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Π½ΠΎ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡΡΠ»ΠΈΠ½Π³, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ (mangling) ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. ΠΠ° Π·Π°Π΄Π°ΡΠΈ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠ² Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΠΏΡΠΎΠΊΡΠΈ Prometheus Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ, ΡΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΡΠΎΠΊΡΠΈ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ ΡΡΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡΠ»ΠΈ Π²Π°Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΏΠΎΠΏΡΠΎΡΠ΅ ΠΈΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠΈΡΠΈΡΡ ΡΡΠ°ΡΠΈΠΊ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΌ ΠΏΡΠΎΠΊΡΠΈ ΠΈ Prometheus, ΡΠ΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΅ΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ Π·Π°ΡΠΈΡΡ Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ HTTP-ΡΡΠ°ΡΠΈΠΊΠ°.
ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ TLS
ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅, Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Prometheus Π½Π° Linux.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅:
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ TLS-ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ²
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΌΠΎΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½Π½ΡΠΉ TLS-ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ.
ΠΠ΄Π΅ΡΡ localhost β ΡΡΠΎ ΠΈΠΌΡ Ρ ΠΎΡΡΠ° Π΄Π»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Prometheus.
Π‘ΠΎΠ·Π΄Π°Π΅ΡΡΡ Π΄Π²Π° ΡΠ°ΠΉΠ»Π°: prometheus.crt ΠΈ prometheus.key.
ΠΠ΅Π±-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Prometheus
Π‘ΠΊΠ°ΡΠΈΠ²Π°Π΅ΠΌ Prometheus v2.24.0, ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΡΠ²Π°Π΅ΠΌ, ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π²ΡΡΠ΅:
Π‘Π΅ΠΉΡΠ°Ρ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ TLS ΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ prometheus.yml. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΌ ΠΏΠ΅ΡΠ΅ΡΠΈΡΡΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅, ΡΡΠΎΠ±Ρ Π½Π° Π»Π΅ΡΡ ΠΏΠΎΠ΄Ρ Π²Π°ΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ΅ΡΠΊΠΈ ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ.
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» web.yml Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ TLS:
ΠΡΠ»ΠΈ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ΡΠ²Π΅Ρ Prometheus Π·Π°ΠΏΡΡΠ΅Π½ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ TLS.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ TLS ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ, Π½ΠΎ Π΅ΡΠ»ΠΈ ΡΠΆ ΠΌΡ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ TLS, ΡΠΎ Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊΠ° Prometheus Π΅Π³ΠΎ Π½Π΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΎΠ± ΡΡΠΎΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ TLS Π²ΡΡΡΠ½ΡΡ
Π curl ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ TLS. Π Π½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π·Π°ΠΏΡΡΡΠΈΠΌ ΠΏΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π΄Π»Ρ ΡΠ΅ΡΡΠ°:
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠΊΡΠ΅ΠΉΠΏΠ°
ΠΠ°ΡΡΡΠΎΠΈΡΡ TLS Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ β Π΅ΡΠ»ΠΈ ΠΎΠ½ Π²ΠΊΠ»ΡΡΠ΅Π½, ΠΎΠ½ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Π½Π° Π²ΡΠ΅ ΡΠ½Π΄ΠΏΠΎΠΈΠ½ΡΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Prometheus ΡΠΎΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠ΅ΡΠ΅Π· TLS, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΡΡΡΠΎΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ HTTPS.
ΠΠ·ΠΌΠ΅Π½ΠΈΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ prometheus Π² ΡΠ°ΠΉΠ»Π΅ prometheus.yml:
ΠΠ΅ΡΠ΅ΡΠΈΡΠ°Π΅ΠΌ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Prometheus:
Π’Π°ΡΠ³Π΅Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΡΠ°ΡΡΡ UP? Π£ΡΠ°! ΠΡ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ TLS Π΄Π»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Prometheus ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.
ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ Π±Π°Π·ΠΎΠ²ΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΉΠ΄Π΅ΠΌ Π΅ΡΠ΅ Π΄Π°Π»ΡΡΠ΅ ΠΈ Π·Π°ΡΡΠ΅Π±ΡΠ΅ΠΌ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ. TLS Π·Π΄Π΅ΡΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½, Π½ΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ (Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΌΡ ΡΠΆΠ΅ ΡΠΌΠ΅Π΅ΠΌ).
ΠΠ΅Π±-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Ρ ΡΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΉ (Ρ ΠΏΠΎΠΌΠΎΡΡΡ bcrypt). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ htpasswd (ΠΏΠ°ΠΊΠ΅Ρ apache2-utils ΠΈΠ»ΠΈ httpd-tools Π΅ΡΡΡ Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅; Π΅ΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ bcrypt ΠΎΠ½Π»Π°ΠΉΠ½).
ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π²ΠΎΠ·ΡΠΌΠ΅ΠΌ ΠΏΠ°ΡΠΎΠ»Ρ inuitsdemo.
ΠΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΡΠ°ΠΉΠ» Π²Π΅Π±-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Prometheus web.yml:
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ prometheus β ΡΡΠΎ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΡΠ»ΠΈ Prometheus Π΅ΡΠ΅ Π·Π°ΠΏΡΡΠ΅Π½, Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ https://127.0.0.1:9090, ΠΈΠ½Π°ΡΠ΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ targets Π΄Π»Ρ ΡΠ°ΡΠ³Π΅ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ° 401 Unauthorized.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Prometheus
ΠΠ½Π΅ΡΡΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² prometheus.yml, ΡΡΠΎΠ±Ρ ΡΠΊΡΠ΅ΠΉΠΏΠΈΠ½Π³ ΡΡΠ» Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ.
ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠΌ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Prometheus ΡΠΈΠ³Π½Π°Π»ΠΎΠΌ SIGHUP:
ΠΡΠ»ΠΈ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Prometheus ΡΠ½ΠΎΠ²Π° ΠΎΡΠΊΡΠΎΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ targets.
Promtool
Π£ Prometheus Π΅ΡΡΡ ΡΠ²ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ β promtool, ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΈ ΡΠ°ΠΉΠ»Ρ Π²Π΅Π±-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ:
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π»ΡΠ±ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² web.yml.
Grafana
Grafana ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ Prometheus. ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ CA (Π½Π°Ρ prometheus.crt) ΠΈΠ»ΠΈ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ².
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΠΈΠΉ ΠΎΠ±Π·ΠΎΡ. Π ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ CA ΠΈ ΠΏΡΠΎΠ΄ΡΠΌΠ°ΡΡ Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅ΡΠ°Π»Π΅ΠΉ. ΠΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΡ, Π½ΠΎ ΠΈΠ· ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ. Π‘ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΠ°Ρ Π²Π΅ΡΡΠΈΡ TLS ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ΅Π½ΡΡΡΡΡ, Π° Ρ Π½Π΅ΠΉ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ.
Π ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΡΠ΅Π² ΠΌΡ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΠΌ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ ΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ HTTPS ΠΏΠΎ Π²ΡΠ΅ΠΌ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠ°ΠΌ Prometheus ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Alertmanager, Pushgateway.
ΠΡ Π·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³.
ΠΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΈ: ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ Prometheus ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Π½Π° ΠΊΡΡΡΠ΅ Π‘Π»ΡΡΠΌΠ° Β«ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΈ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π² KubernetesΒ». Π‘Π΅ΠΉΡΠ°Ρ ΠΊΡΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΡΠΏΠΈΡΡ ΠΏΠΎ ΡΠ΅Π½Π΅ ΠΏΡΠ΅Π΄Π·Π°ΠΊΠ°Π·Π°.
ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Ρ Prometheus
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡΡ ΠΌΡ ΡΠΆΠ΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π»ΠΈ Π²ΠΎΠΏΡΠΎΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ ΡΠ±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ. Π ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½Π΅ΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ ΠΈ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ± ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ΅ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Prometheus. ΠΠ½ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π² 2012 Π³ΠΎΠ΄Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π½Π΅Π±Π΅Π·ΡΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° SoundCloud, Π½ΠΎ Π²ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ» Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅.
Prometheus β ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠΎΠ²ΡΠ΅ΠΌ Π½ΠΎΠ²ΡΠΉ (ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΡΠ΅Π»ΠΈΠ· ΡΠΎΡΡΠΎΡΠ»ΡΡ Π² Π½Π°ΡΠ°Π»Π΅ 2015 Π³ΠΎΠ΄Π°), ΠΈ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΉ ΠΎ Π½ΡΠΌ ΠΏΠΎΠΊΠ° ΠΏΠΎΡΡΠΈ ΡΡΠΎ Π½Π΅Ρ (Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΡΡΠ΅Π² Π½Π°Π·Π°Π΄ Π±ΡΠ»Π° ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° ΡΡΠ°ΡΡΡ Π² ΠΆΡΡΠ½Π°Π»Π΅ Β«Π₯Π°ΠΊΠ΅ΡΒ», Π½ΠΎ ΠΎΠ½Π° Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠ°ΠΌ).
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ SoundCloud ΠΎΡΠΌΠ΅ΡΠ°ΡΡ (ΡΠΌ. ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ Π΄ΠΎΠΊΠ»Π°Π΄ Π·Π΄Π΅ΡΡ), ΡΡΠΎ Π½ΠΎΠ²ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΡΡ ΠΈΠΌ Π² ΡΠ²ΡΠ·ΠΈ Ρ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΎΠΌ ΠΊ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΉ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ΅. Π ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ° ΠΊ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌ β ΠΎΠ΄Π½Π° ΠΈΠ· Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΡ
ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΠΉ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π»Π΅Ρ.
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΠ΅ΡΡ Π½Π΅ ΠΊΠ°ΠΊ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ, Π° ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠ²ΠΎΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ° (ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠ΅ΡΠ΅Π· ΠΏΡΠΎΡΠΎΠΊΠΎΠ» HTTP).
ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ² β Π·Π°Π΄Π°ΡΠ° Π½Π΅ΠΏΡΠΎΡΡΠ°Ρ: Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΡΠ°ΠΊ ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΠ΅Π»ΠΎΠΌ. ΠΠ°Π΄Π°ΡΠ° ΡΡΠ»ΠΎΠΆΠ½ΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π΅ΡΡ ΠΈ Π±ΠΈΠ·Π½Π΅Ρ-Π·Π½Π°ΡΠΈΠΌΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. ΠΠ°ΠΊ ΠΎΡΠΌΠ΅ΡΠ°ΡΡ ΡΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Prometheus Π² ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΡΠ°ΡΡΡΡ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄Π°Ρ , Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π΅Ρ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ½ΠΎ. ΠΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ.
Prometheus ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π² ΡΠΎΡΡΠ°Π² ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ
ΠΎΠ΄ΡΡ ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°, ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠ΅ΠΌΠΏΠΎΡΠ°Π»ΡΠ½Π°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΎΠ±Π·ΠΎΡΠ°Ρ
Π΅Π³ΠΎ Π΄Π°ΠΆΠ΅ Π½Π°Π·ΡΠ²Π°ΡΡ Β«ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΡΒ».
ΠΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΎ Prometheus Π½Π°Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π»ΠΈ, ΠΈ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ ΡΡΠΈΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ ΠΏΠΎΠ±Π»ΠΈΠΆΠ΅.
ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Prometheus
Π ΡΠΎΡΡΠ°Π² Prometheus Π²Ρ ΠΎΠ΄ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ:
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ
Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° Go, Π° ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ β Π½Π° Ruby ΠΈ Java.
ΠΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Prometheus Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ HTTP:
ΠΠ»Π°Π²Π½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ β ΡΠ΅ΡΠ²Π΅Ρ Prometheus. ΠΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ: Π΄Π»Ρ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΡ Π·Π° ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°; Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ²Π΅Ρ ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠ° ΠΈ ΡΠΊΡΠΏΠΎΡΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ. Π’Π°ΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², Β«Π·Π°ΡΠΎΡΠ΅Π½Π½ΡΡ Β» ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ: Π΄Π»Ρ Haproxy, MySQL, PostrgreSQL ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ (ΠΏΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΠΌ. Π·Π΄Π΅ΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π° GitHub).
Π‘Π±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊ Π² Prometheus ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° pull. ΠΠΌΠ΅Π΅ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° push (Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ pushgateway, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ). ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ Π² ΡΠΈΡΡΠ°ΡΠΈΡΡ , ΠΊΠΎΠ³Π΄Π° ΡΠ±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ pull ΠΏΠΎ ΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠΈ Π·Π° ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, Π·Π°ΡΠΈΡΡΠ½Π½ΡΠΌΠΈ ΡΠ°Π΅ΡΠ²ΠΎΠ»Π»ΠΎΠΌ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ push ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ ΠΏΡΠΈ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠΈ Π·Π° ΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΠΈΡ ΡΡ ΠΊ ΡΠ΅ΡΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΈ Π½Π° Π½Π΅ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
Prometheus Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² (time series). ΠΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΎΠ½ Ρ ΡΠ°Π½ΠΈΡ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΠ΅ΠΌΠΏΠΎΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΠ (Π΅Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ OpenTSDB ΠΈ InfluxDB ΡΠΌ. Π·Π΄Π΅ΡΡ); Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ LevelDB.
ΠΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ
Prometheus Ρ ΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² β Π½Π°Π±ΠΎΡΠΎΠ² Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΡΠΎΠΎΡΠ½Π΅ΡΡΠ½Π½ΡΡ Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ (timestamp).
ΠΠ»Π΅ΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° (ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅) ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΏΠ°ΡΡ Β«ΠΊΠ»ΡΡ β Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅Β». ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄, Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Ρ 64-Π±ΠΈΡΠ½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ.
ΠΠΌΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ HTTP-Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π½Π΅ΠΊΠΎΠ΅ΠΌΡ API ΠΈΠΌΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ: api_http_requests_total. ΠΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΄ Π² ΡΠ°ΠΊΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠ΅ ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΎΠ±ΠΎ Π²ΡΠ΅Ρ GET-Π·Π°ΠΏΡΠΎΡΠ°Ρ Π½Π° Π°Π΄ΡΠ΅Ρ /api/tracks, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ» ΠΎΡΠ΄Π°Π½ ΠΎΡΠ²Π΅Ρ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 200. ΠΡΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π½ΠΎΡΠ°ΡΠΈΠΈ:
ΠΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π² Prometheus, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΡ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² OpenTSDB. Π£ Π²ΡΠ΅Ρ
ΠΌΠ΅ΡΡΠΈΠΊ Π΅ΡΡΡ ΠΈΠΌΡ, Π½ΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΡΠ΄ΠΎΠ².
ΠΡΠΈ ΡΡΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ Ρ
ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΡΠ³ΠΎΠΌ. ΠΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΠ³Π° Ρ
ΡΠ°Π½ΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΡΡΡΡΡΡ Π°Π³ΡΠ΅Π³Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ
.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΠΏΡ ΠΌΠ΅ΡΡΠΈΠΊ:
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Prometheus. ΠΠ°ΡΠ½ΡΠΌ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
Π‘ΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Π΄Π°Π²Π½ΠΎ Prometheus Π±ΡΠ» Π²ΠΊΠ»ΡΡΡΠ½ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Debian 8 ΠΈ Ubuntu 15.10.
Π Ubuntu 14.04 Π΅Π³ΠΎ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Prometheus, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ β node_exporter ΠΈ alertmanager. Node_exporter ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π° alertmanager (ΠΎ Π½ΡΠΌ ΠΌΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½ΠΈΠΆΠ΅) β ΡΠ°ΡΡΡΠ»Π°Π΅Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π² ΡΠ»ΡΡΠ°Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π½Π΅Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Π½Π½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½Π°, Π½ΠΎ ΠΎΡΡΠ°Π»ΡΡ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΡΡΡΠΈΡ : Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ node_exporter ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠΎΠ±ΠΈΡΠ°Π» ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΡΡ ΡΡΡΠ»ΠΊΡ Π² /usr/bin:
ΠΠ°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» /etc/init/node_exporter.conf ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ:
Π‘ΠΎΡ ΡΠ°Π½ΠΈΠΌ Π²Π½Π΅ΡΡΠ½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ , ΠΏΠ΅ΡΠ΅ΡΠ΅Π΄ΡΠΈΡ Π½Π° systemd (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Ubuntu 15.10), Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° node_exporter Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» /etc/systemd/system/node_exporter.service ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ:
Π‘ΠΎΡ ΡΠ°Π½ΠΈΠ² Π²Π½Π΅ΡΡΠ½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ°ΡΡΡΠΎΠ΅ΠΊ Prometheus ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° Π²ΡΠ΅ΠΌ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠΌ Π½Π° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ /etc/prometheus/prometheus.yml. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅Π³ΠΎ ΡΡΡΡΠΊΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ. ΠΠ°ΡΠΈΠ½Π°Π΅ΡΡΡ ΠΎΠ½ Ρ ΡΠ΅ΠΊΡΠΈΠΈ globals:
ΠΠ½Π° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
ΠΠ°Π»Π΅Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ΅ΠΊΡΠΈΡ scrape_configs Ρ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ ΡΠ±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅:
Π ΡΡΠΎΠΉ ΠΆΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
ΠΡΡΠ΅ ΠΌΡ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΡΠ½ΡΠ»ΠΈ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ»Π°ΡΡ Π½Π° ΡΠ°ΠΉΠ»Ρ ΠΏΡΠ°Π²ΠΈΠ». ΠΡΠ°Π²ΠΈΠ»Π° ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΡΠΈΡΠ»ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΈΠ»ΠΈ ΡΡΠ΅Π±ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·Π°ΡΡΠ°Ρ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈΡ Π² Π²ΠΈΠ΄Π΅ Π½ΠΎΠ²ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ². ΠΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΡΡΡΠΈΡΠ°Π½Π½ΡΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠ΅, ΡΠ΅ΠΌ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ Π·Π°Π½ΠΎΠ²ΠΎ Π²ΡΡΠΈΡΠ»ΡΡΡ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π΄Π°ΡΠ±ΠΎΡΠ΄Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ.
Π ΠΎΠ±ΡΠ΅ΠΌ Π²ΠΈΠ΄Π΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΏΡΠ°Π²ΠΈΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΡΠ°ΠΊ:
ΠΡΠΈΠ²Π΅Π΄ΡΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ:
Prometheus ΡΠ²Π΅ΡΡΠ΅ΡΡΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎΡΡΡΡ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ evaluation_interval). ΠΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ²Π΅ΡΠΊΠΈ Prometheus ΠΏΠ΅ΡΠ΅ΡΡΠΈΡΡΠ²Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ Π΅Π³ΠΎ ΠΏΠΎΠ΄ Π½ΠΎΠ²ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ΅ΡΠΊΠΎΠΉ.
ΠΡΠ°ΠΊ, ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΌΡ Π² ΠΎΠ±ΡΠΈΡ
ΡΠ΅ΡΡΠ°Ρ
ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ. Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²ΡΡΡΠΏΠΈΠ»ΠΈ Π² ΡΠΈΠ»Ρ, Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ (Π²ΠΌΠ΅ΡΡΠΎ path/to/prometheus.yml ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΏΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ):
ΠΠ΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠ΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Prometheus Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ: http://[IP-Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°]:9090:
Π ΠΏΠΎΠ»Π΅ Expression ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΌΠ΅ΡΡΠΈΠΊΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π³ΡΠ°ΡΠΈΠΊ. ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ±ΡΡΠΌ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΌΠ΅ΡΡΠΈΠΊΡ node_memory_active ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ Execute:
ΠΠ°Π΄ Π³ΡΠ°ΡΠΈΠΊΠΎΠΌ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ
ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ.
Π¨Π°Π±Π»ΠΎΠ½Ρ ΠΊΠΎΠ½ΡΠΎΠ»Π΅ΠΉ
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΈΠΌΠ΅ΡΡΠΈΡ
ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Π΅ΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π½ΡΠΆΠ½ΡΡ Π²Π°ΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ. ΠΠ»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΎΠ»Π΅ΠΉ Π² Prometheus ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ HTML-ΡΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΎΡ Go. ΠΠΎΠ΄ΡΠΎΠ±Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΡ
ΠΊΠΎΠ½ΡΠΎΠ»Π΅ΠΉ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
Π Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΏΠΎ ΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π½Π΅ ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Prometheus Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Grafana.
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Prometheus ΡΠΎΠ·Π΄Π°Π»ΠΈ ΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄Π°ΡΠ±ΠΎΡΠ΄ΠΎΠ² ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Promdash (ΡΠΌ. ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° GitHub), ΠΏΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΠΈΠΉ Grafana. ΠΠ° Π½Π°Ρ Π²Π·Π³Π»ΡΠ΄, ΠΎΠ½ Π΅ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Β«ΡΡΡΠΎΠΌΒ» ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠΊΠ° ΡΡΠΎ ΡΠ°Π½ΠΎ.
Alertmanager: Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ
ΠΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π½Π΅ΠΌΡΡΠ»ΠΈΠΌ Π±Π΅Π· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π΄Π»Ρ ΡΠ°ΡΡΡΠ»ΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ. Π Prometheus Π΄Π»Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ alertmanager. ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ Ρ
ΡΠ°Π½ΡΡΡΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ alertmanager.conf.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ:
ΠΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ½ΡΡΠ΅Π½: ΠΌΡ ΡΠΊΠ°Π·Π°Π»ΠΈ, ΡΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΏΡΠΈ Π½Π°ΡΡΡΠΏΠ»Π΅Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΠΎ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΠ΅ Π½Π° Π°Π΄ΡΠ΅Ρ test@example.org.
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠ°ΠΉΠ»Ρ ΠΏΡΠ°Π²ΠΈΠ» (ΠΏΠΎ ΡΡΡΠΈ ΠΎΠ½ΠΈ Π½ΠΈΡΠ΅ΠΌ Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠ°Π²ΠΈΠ» Π΄Π»Ρ ΡΠ±ΠΎΡΠ° ΠΌΠ΅ΡΡΠΈΠΊ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π²ΡΡΠ΅). Π ΠΏΡΠ°Π²ΠΈΠ»Π°Ρ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ.
Π ΠΎΠ±ΡΠ΅ΠΌ Π²ΠΈΠ΄Π΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ°Π²ΠΈΠ» Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
.
ΠΡΠΈΠΌΠ΅Ρ1:
ΠΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ½ΡΡΠ°Π½Ρ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 5 ΠΌΠΈΠ½ΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅.
Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΡΠΎΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Ρ, ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ»Π°ΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π·Π°ΠΏΡΠΎΡΡ ΠΊ API ΠΏΡΠ΅Π²ΡΡΠΈΡ 1 ΠΌΡ.
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²ΡΡΡΠΏΠΈΠ»ΠΈ Π² ΡΠΈΠ»Ρ, Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π΅Π³ΠΎ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π² Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ»ΡΡΠ°Π΅Π².
Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Prometheus ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ JSON. ΠΡΠ³Π»ΡΠ΄ΡΡ ΠΎΠ½ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
ΠΡΠΏΡΠ°Π²ΠΊΠ° ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΠ΅, ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-Ρ
ΡΠΊ, Π° ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ²: PagerDuty, HipChat ΠΈ Π΄ΡΡΠ³ΠΈΡ
.
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Prometheus ΠΎΡΠΌΠ΅ΡΠ°ΡΡ, ΡΡΠΎ ΠΏΠΎΠΊΠ° ΡΡΠΎ alertmanager Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π² Β«ΡΡΡΠΎΠΌΒ» ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ
ΠΎΡΠΈΠ±ΠΊΠ°Ρ
. ΠΠΏΡΠΎΡΠ΅ΠΌ, ΠΌΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ
Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ Π² ΡΠ°Π±ΠΎΡΠ΅ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Prometheus β ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΠΈ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ, ΠΈ Π½Π° Π½Π΅Π³ΠΎ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. Π ΡΠΈΡΠ»Π΅ Π΅Π³ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π½ΡΠΆΠ½ΠΎ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π²ΡΠ΄Π΅Π»ΠΈΡΡ:
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ ΡΠΆΠ΅ Π΅ΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΎΠΏΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Prometheus, ΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΡΠΌΠΈ. ΠΡΠ΄Π΅ΠΌ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½Ρ Π·Π° Π»ΡΠ±ΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ»Ρ ΠΆΠ΅Π»Π°ΡΡΠΈΡ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΡΡΠ»ΠΎΠΊ:
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎ ΡΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π·Π΄Π΅ΡΡ β ΠΏΡΠΈΠ³Π»Π°ΡΠ°Π΅ΠΌ Π² Π½Π°Ρ Π±Π»ΠΎΠ³.
Π£ΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠ°Π±ΠΎΡΡ Prometheus Operator Π² Kubernetes
Π ΠΎΡΠ½ΠΎΠ²Ρ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ Π»Π΅Π³Π»Π° Π½Π°ΡΠ° Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π»Ρ DevOps-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ², ΠΎΠ±ΡΡΡΠ½ΡΡΡΠ°Ρ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Prometheus ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Prometheus Operator Π² ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ°Ρ Kubernetes.
Π‘ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π²Π·Π³Π»ΡΠ΄Π° Prometheus ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ, Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈ Π»ΡΠ±Π°Ρ Ρ ΠΎΡΠΎΡΠΎ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΎΠ½Π° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ²Π½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈ ΠΏΠΎ ΡΡΡΠΈ Π΄Π΅Π»Π°Π΅Ρ Π²ΡΠ΅Π³ΠΎ ΡΡΠΈ Π²Π΅ΡΠΈ: Π°) ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, Π±) Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°, Π²) ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² (time series). Π‘ΡΠ°ΡΡΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Π° Π½Π΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΌΠΎΠΌΡ Prometheus, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΡΡΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ Kubernetes, Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΌΡ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Prometheus Operator. ΠΠΎ Π½Π°ΡΠ°ΡΡ Π²ΡΡ ΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ Prometheusβ¦
Prometheus: ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ?
ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π½Π° Π΄Π²ΡΡ ΠΏΠ΅ΡΠ²ΡΡ ΡΡΠ½ΠΊΡΠΈΡΡ Prometheus, ΡΠΎ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Prometheus: ΠΊΠ°ΠΊ ΠΎΠ½ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ?
Π£ ΡΠ΅ΡΠ²Π΅ΡΠ° Prometheus Π΅ΡΡΡ config ΠΈ rule files (ΡΠ°ΠΉΠ»Ρ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ).
Π config ΠΈΠΌΠ΅ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ:
Prometheus: ΠΎΡΠΊΡΠ΄Π° Π±Π΅ΡΡΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅Π»Π΅ΠΉ?
ΠΠ±ΡΠΈΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΠ°Π±ΠΎΡΡ Prometheus Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Prometheus ΡΠ°ΠΌ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ:
Prometheus Operator: ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ?
ΠΠ»Ρ ΠΏΡΠ΅ΡΠ»ΠΎΠ²ΡΡΠΎΠ³ΠΎ Β«ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡΒ», Π²ΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π² Prometheus Operator Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° CRD (Custom Resource Definitions) Π·Π°Π΄Π°Π½Ρ ΡΡΠΈ ΡΠ΅ΡΡΡΡΠ°:
Π§ΡΠΎ Π² ΠΏΠΎΠ΄Π΅ Ρ Prometheus?
ΠΠΎΠ΄ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ²:
ΠΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΈ ΡΠΎΠΌΠ° (volumes):
ΠΠ°ΠΊ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Service Monitors?
ΠΠ°ΠΊ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ConfigMaps Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ?
ΠΠΎΡ ΠΈ Π²ΡΡ!
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Prometheus (ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ) Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π² Kubernetes, Ρ ΠΏΠ»Π°Π½ΠΈΡΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ RootConf 2018, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ 28 ΠΈ 29 ΠΌΠ°Ρ Π² ΠΠΎΡΠΊΠ²Π΅, β ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΠ΅ ΠΏΠΎΡΠ»ΡΡΠ°ΡΡ ΠΈ ΠΏΠΎΠΎΠ±ΡΠ°ΡΡΡΡ.
ΠΠΎΠ»Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Prometheus Π² 2019 Π³ΠΎΠ΄Ρ
DevOps- ΠΈ SRE-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ ΡΠΆΠ΅, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, Π½Π΅ ΡΠ°Π· ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎ Prometheus.
Prometheus Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π½Π° SoundCloud Π² 2012 Π³ΠΎΠ΄Ρ ΠΈ Ρ ΡΠ΅Ρ ΠΏΠΎΡ ΡΡΠ°Π» ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΡΠΈΡΡΠ΅ΠΌ. Π£ Π½Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠΊΡΡΡΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, ΠΎΠ½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π΅ΡΡΡΠΊΠΈ ΡΠ°Π·Π½ΡΡ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠΎΠ², Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π·Π° ΡΡΠΈΡΠ°Π½Π½ΡΠ΅ ΠΌΠΈΠ½ΡΡΡ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π²ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ.
Prometheus ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠΉ ΡΠ΅Π½Π½ΠΎΡΡΡΡ ΠΈ ΡΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½ΠΎΠ²Π°ΡΠΎΡΠ°ΠΌΠΈ Π² ΠΎΡΡΠ°ΡΠ»ΠΈ, Π²ΡΠΎΠ΄Π΅ DigitalOcean ΠΈΠ»ΠΈ Docker, ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Prometheus?
ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ Π½ΡΠΆΠ΅Π½?
Π§Π΅ΠΌ ΠΎΠ½ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌ?
ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΠ²ΡΠ΅ΠΌ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅ ΠΎ Prometheus ΠΈΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅ Π»ΡΡΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² Π½Π΅ΠΌ, Π² Π΅Π³ΠΎ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈ Π²ΡΠ΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡΡ , ΡΡΠ° ΡΡΠ°ΡΡΡ ΠΊΠ°ΠΊ ΡΠ°Π· Π΄Π»Ρ Π²Π°Ρ.
ΠΡ ΡΠ°Π·Π΄Π΅Π»ΠΈΠ»ΠΈ ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π° 3 ΡΠ°ΡΡΠΈ, ΠΊΠ°ΠΊ ΠΏΠΎΡΡΡΠΏΠΈΠ»ΠΈ Ρ InfluxDB.
Π§Π°ΡΡΡ I. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Prometheus?
Prometheus β ΡΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ². ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π² ΠΊΡΡΡΠ΅, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ², ΠΏΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°ΡΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ InfluxDB.
ΠΠΎ Prometheus β Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ².
Π Π½Π΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ΅Π»ΡΡ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π».
Prometheus ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡ ΡΠ°ΠΌΡΠ΅ ΡΠ°Π·Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ: ΡΠ΅ΡΠ²Π΅ΡΡ, Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ, Π΄Π° ΠΏΠΎΡΡΠΈ ΡΡΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Prometheus ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΡΠΊΡΠ΅ΠΉΠΏΠΈΡ ΡΠ²ΠΎΠΈ ΡΠ΅Π»Π΅Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΊΡΠ΅ΠΉΠΏΠΈΠ½Π³?
Prometheus ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΡΠ΅ΡΠ΅Π· HTTP-Π²ΡΠ·ΠΎΠ²Ρ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌ ΡΠΎΡΠΊΠ°ΠΌ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Prometheus.
ΠΠΎΠ·ΡΠΌΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://localhost:3000. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ URL. ΠΠΎΠΏΡΡΡΠΈΠΌ, http://localhost:3000/metrics.
ΠΠΎ ΡΡΠΎΠΌΡ Π°Π΄ΡΠ΅ΡΡ Prometheus Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°ΠΌΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ΅Π»Π΅Π²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
1. ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Prometheus?
ΠΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ ΡΠΊΠ°Π·Π°Π»ΠΈ, Prometheus ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ².
ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π» ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈΠ· Π²Π°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌ. Π’ΡΡ Π΅ΡΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ:
ΠΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ ΠΏΠΎΠ½ΡΠ»ΠΈ, Prometheus ΡΠ°ΠΌ ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ (ΠΈΡΠΊΠ»ΡΡΠ°Ρ ΡΠ΅Π΄ΠΊΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Pushgateway).
Π§ΡΠΎ ΡΡΠΎ Π·Π½Π°ΡΠΈΡ?
ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ?
2. Π‘Π±ΠΎΡ vs. ΠΎΡΠΏΡΠ°Π²ΠΊΠ°
Π£ Prometheus Π΅ΡΡΡ Π·Π°ΠΌΠ΅ΡΠ½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ²: ΠΎΠ½ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ ΡΠ΅Π»Π΅Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.
InfluxDB, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈΠ½Π°ΡΠ΅: Π²Ρ ΡΠ°ΠΌΠΈ Π½Π°ΠΏΡΡΠΌΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ Π΅ΠΌΡ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ±Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΈ ΠΏΠ»ΡΡΡ ΠΈ ΠΌΠΈΠ½ΡΡΡ. ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΌΡ ΡΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠΈΡΠΈΠ½, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠΎΠ·Π΄Π°ΡΠ΅Π»ΠΈ Prometheus Π²ΡΠ±ΡΠ°Π»ΠΈ ΡΠ°ΠΊΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ:
Prometheus ΡΠ°ΠΌ ΡΠ΅ΡΠ°Π΅Ρ, Π³Π΄Π΅ ΠΈ ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΡΠΊΡΠ΅ΠΉΠΏΠΈΠ½Π³.
ΠΡΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠ°ΠΌΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π΄Π°Π½Π½ΡΠ΅, Π΅ΡΡΡ ΡΠΈΡΠΊ, ΡΡΠΎ ΡΠ°ΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΡΠ±ΠΎΠΉ. ΠΠΎΠ³Π΄Π° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΡΡΠΎΡΡ ΡΠ±ΠΎΡΠ° ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ ΡΠΊΡΠ΅ΠΉΠΏΠΈΠ½Π³Π°, ΡΡΠΎΠ±Ρ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΠ°Π·Π½ΡΡ ΡΠ°ΡΡΠΎΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
ΠΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ, Π³Π΄Π΅ ΠΌΡ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΈ ΡΠΎΠ»Ρ Prometheus.
Prometheus Π½Π΅ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΡΠΎΠ±ΡΡΠΈΡΡ ΠΈ ΡΡΠΈΠΌ ΡΠΈΠ»ΡΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ². ΠΠ½ Π½Π΅ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠ²Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΎΠΉ ΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ΅Π±ΠΎΠΈ Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠΌ), Π° ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΎ Π²Π°ΡΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ .
ΠΡΠ»ΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ, Π²Π΅Π±-ΡΠ΅ΡΠ²ΠΈΡ Π½Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ 404 ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠ°ΠΊΡΠ΅, ΡΡΠΎ ΡΠ΅ΡΠ²ΠΈΡ ΠΏΠΎΠ»ΡΡΠΈΠ» ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ 404 Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΏΡΡΡ ΠΌΠΈΠ½ΡΡ.
ΠΡΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ±ΠΈΡΠ°ΡΡ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΈ ΡΠ΅ΠΌΠΈ, ΡΡΠΎ ΡΠΎΠ±ΠΈΡΠ°ΡΡ Π½Π΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.
3. Π Π°Π·Π²ΠΈΡΠ°Ρ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ° Prometheus
ΠΠΎ ΡΡΡΠΈ Prometheus β Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ².
ΠΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ ΡΠ°ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΏΠΎ Π½ΠΈΠΌ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ.
Prometheus ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΡΠ°ΡΡΠΈΡΡΡΡΠΈΠ΅ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»:
Π§Π°ΡΡΡ II. ΠΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ Prometheus
ΠΠ°ΠΊ ΠΈ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΏΠΎ InfluxDB, ΠΌΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°Π·ΡΡΡΠ½ΠΈΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Prometheus.
1. ΠΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ Β«ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅Β»
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌ Prometheus, Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΡΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½ΡΡ .
Prometheus ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΏΠ°ΡΠ°ΠΌΠΈ Β«ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅Β». ΠΠ»ΡΡ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΠΌ, Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ°Π½ΠΈΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π² Π²ΠΈΠ΄Π΅ ΡΠΈΡΠ»Π°.
ΠΠΎΠΌΠ½ΠΈΡΠ΅: Prometheus Π½Π΅ ΡΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π½Π΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π²ΡΠΎΠ΄Π΅ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°. ΠΠ½ Ρ ΡΠ°Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ»ΡΡΠΎΠΌ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠ°. ΠΡΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈΠ»ΠΈ Π·Π°Π½ΡΡΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π΄Π΅ΡΠ°Π»Π΅ΠΉ ΠΎ ΠΌΠ΅ΡΡΠΈΠΊΠ΅?
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° 4 ΡΠ΄ΡΠ°, ΠΈ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ 4 ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΠΌΠ΅ΡΡΠΈΠΊΠΈ?
Π Π·Π΄Π΅ΡΡ Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΡΡ ΡΡΠ»ΡΠΊΠΈ. Π―ΡΠ»ΡΠΊΠΈ Π΄Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ ΠΌΠ΅ΡΡΠΈΠΊΠ°Ρ , Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΠ΅ Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, Π° ΡΠΊΠΎΡΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΄ΡΠ° ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ IP.
ΠΠΎΡΠΎΠΌ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΏΠΎ ΡΡΠ»ΡΠΊΠ°ΠΌ ΠΈ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½ΡΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
2. Π’ΠΈΠΏΡ ΠΌΠ΅ΡΡΠΈΠΊ
ΠΡΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π΅ Ρ Prometheus ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΡΠ΅ΡΡΡΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. ΠΡΡΡΠ΅ Π΄ΠΎΡΠΈΡΠ°ΠΉΡΠ΅ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π·Π΄Π΅ΡΡ Π΅ΡΡΡ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½ΡΠ΅ ΠΊΠ°ΠΌΠ½ΠΈ.
Π‘ΡΠ΅ΡΡΠΈΠΊ
ΠΡΠΎ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠΏ ΠΌΠ΅ΡΡΠΈΠΊ. Π‘ΡΠ΅ΡΡΠΈΠΊ, ΠΊΠ°ΠΊ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, ΡΡΠΈΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡΠΈΠ±ΠΊΠΈ HTTP Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ ΠΈΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΠ΅Π½ΠΈΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠ΅ΡΡΠΈΠΊ.
Π ΠΏΠΎ Π»ΠΎΠ³ΠΈΠΊΠ΅, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΡΠ΅ΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΡΠ»ΡΡΡ ΡΠΈΡΠ»ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡΡΡ, ΠΈΠ»ΠΈ Π΄Π»Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΡΠΈΡΠ°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½Π°ΡΡΡΠΏΠ»Π΅Π½ΠΈΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Ρ. Π΅. ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ.
Π Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠΈΡΡ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΏΠ°ΠΌΡΡΡ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄?
ΠΡΠ° Π²Π΅Π»ΠΈΡΠΈΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡΡΡ. ΠΠ°ΠΊ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ Π΅Π΅ Ρ Prometheus?
ΠΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ
ΠΠ½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ β ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ!
ΠΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ Π΄Π΅Π»ΠΎ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΌΠΎΠ³ΡΡ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡΡΡ. ΠΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ Ρ ΡΠ΅ΡΠΌΠΎΠΌΠ΅ΡΡΠ°ΠΌΠΈ β Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠ΅ΡΠΌΠΎΠΌΠ΅ΡΡ, ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ΅ΠΊΡΡΡΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ.
ΠΠΎ Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ ΠΈ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡΡΡ ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΎ Π²ΡΡ
ΠΎΠ΄ΠΈΡ, ΠΎΠ½ΠΈ Π»ΡΡΡΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠ²?
ΠΠ½Π°ΡΠΈΡ, ΡΡΠ΅ΡΡΠΈΠΊΠΈ β Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½Ρ?
ΠΠΎΠ½Π°ΡΠ°Π»Ρ ΠΈ Ρ ΡΠ°ΠΊ Π΄ΡΠΌΠ°Π». Π Π°Π· ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ΅, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ Π²Π΅Π·Π΄Π΅. ΠΠΎΠ³ΠΈΡΠ½ΠΎ?
Π Π²ΠΎΡ ΠΈ Π½Π΅Ρ.
ΠΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡΡΡ.
ΠΠΎΡ ΡΡΡ-ΡΠΎ ΠΈ ΠΊΡΠΎΡΡΡΡ ΡΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½ΡΠ΅ ΠΊΠ°ΠΌΠ½ΠΈ: ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»Ρ Π½Π΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡΡΡΠΈΡΡ Π½Π΅ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ.
ΠΠΎΡΠ΅ΠΌΡ? ΠΠΎΡ ΡΡΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ /u/justinDavidow:
Β«ΠΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π΅Π»ΡΡΡ ΡΡΠ΅ΡΡΠΈΠΊΠ° Π΄Π»Ρ Π΅Π΄ΠΈΠ½ΠΈΡΡ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π‘ΡΠ΅ΡΡΠΈΠΊ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΡ (Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ, ΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΡΠΈΠΊΠ»Ρ ΠΈΠ»ΠΈ ΡΠ°ΠΊΡΡ), Π° ΠΏΠΎΡΠΎΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ, ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π·Π° ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ.
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»Ρ, ΡΠ°ΡΡΠΎΡΠ° Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΎΡΠ½ΠΎΠΉ. ΠΡΠ»ΠΈ ΡΠ°ΡΡΠΎΡΠ° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ Ρ ΠΎΡΡ Π±Ρ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π½Π΅Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΡΠΌ. ΠΡΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΏΡΠΈ Π±ΠΎΠ»ΡΡΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠ΅, Π³Π΄Π΅ Π²ΡΠ΅ΠΌΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π² Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠΈΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π΅ ΡΡΠΏΠ΅Π²Π°Π΅Ρ ΡΠ΄Π΅Π»ΡΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°Β».
ΠΡΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΡΠ΅ 5 ΡΠ΅ΠΊΡΠ½Π΄, Π° Prometheus ΡΠΊΡΠ΅ΠΉΠΏΠΈΡ ΡΠ΅Π»Π΅Π²ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ°ΠΆΠ΄ΡΠ΅ 15, Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ΅ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ. ΠΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΡΡΠΈΠΌΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠ°ΠΌΠΈ, ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π΅ΡΠ΅ Π½ΠΈΠΆΠ΅.
Π£ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΎ. ΠΠΎΠ³Π΄Π° Prometheus ΡΠΎΠ±ΠΈΡΠ°Π΅Ρ Π΅Π³ΠΎ, ΠΎΠ½ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π».
Π’Π΅ΠΏΠ΅ΡΡ Π½Π΅ Π·Π°ΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ.
ΠΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°
ΠΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° β ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΡΠΈΠΏ ΠΌΠ΅ΡΡΠΈΠΊΠΈ. ΠΠ½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΌΠΌΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ.
ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π²Π΅ΡΡ Π½Π΅ΠΉ Π³ΡΠ°Π½ΠΈΡΠ΅ΠΉ. ΠΠΎΡΡΠΎΠΌΡ Π³ΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ:
Π ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΌΠΈΡΠ΅ Ρ Π±Ρ Ρ ΠΎΡΠ΅Π» ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Ρ 20% ΠΌΠΎΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΎΡΠΊΠ»ΠΈΠΊ Π±ΠΎΠ»ΡΡΠ΅ 300 ΠΌΡ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΠΈΠΊ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Π±ΠΎΠ»ΡΡΠ΅ 300 ΠΌΡ Π±ΠΎΠ»Π΅Π΅ 20% Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΡΠ»ΠΈ Π²Ρ ΠΈΠΌΠ΅Π΅ΡΠ΅ Π΄Π΅Π»ΠΎ Ρ ΠΏΡΠΎΠΏΠΎΡΡΠΈΡΠΌΠΈ, Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ Π³ΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
Π‘Π²ΠΎΠ΄ΠΊΠΈ
Π‘Π²ΠΎΠ΄ΠΊΠΈ β ΡΡΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π³ΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ½ΠΈ ΡΠΎΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΡΠΌΠΌΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, Π° Π΅ΡΠ΅ ΠΊΠ²Π°Π½ΡΠΈΠ»ΠΈ Π·Π° ΡΠΊΠΎΠ»ΡΠ·ΡΡΠΈΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄.
ΠΠ²Π°Π½ΡΠΈΠ»ΠΈ, Π΅ΡΠ»ΠΈ ΡΡΠΎ, β ΡΡΠΎ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΠΈ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠΈ Π½Π° ΠΎΡΡΠ΅Π·ΠΊΠΈ ΡΠ°Π²Π½ΠΎΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ°ΠΊ: Π³ΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ»ΠΈ ΡΠ²ΠΎΠ΄ΠΊΠΈ?
ΠΡΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠΈΡΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΡΠΌΠΌΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠΈ.
Π‘Π²ΠΎΠ΄ΠΊΠΈ, Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΠ²Π°Π½ΡΠΈΠ»ΠΈ Π·Π° ΡΠΊΠΎΠ»ΡΠ·ΡΡΠΈΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ (Ρ. Π΅. Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ΅ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ).
ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ 95% Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π·Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄.
3. ΠΠ°Π΄Π°Π½ΠΈΡ ΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ
Π£ΡΠΈΡΡΠ²Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠΏΠ΅Ρ ΠΈ Π² ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ ΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, Π²ΡΡΠ΄ Π»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ΠΎΠΊΠΈΠΉ ΡΠ΅ΡΠ²Π΅Ρ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅.
Π‘Π΅ΡΠ²Π΅ΡΡ ΡΠ΅ΠΏΠ»ΠΈΡΠΈΡΡΡΡΡΡ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΈΡΡ.
Π§ΡΠΎΠ±Ρ ΡΡΠΎ ΠΏΡΠΎΠΈΠ»Π»ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈΠ· Π΄Π²ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² HAProxy, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ ΠΏΠΎ Π΄Π΅Π²ΡΡΠΈ Π±ΡΠΊΠ΅Π½Π΄-Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌ (ΠΠ΅Ρ-Π½Π΅Ρ, Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΡΠ΅ΠΊΠΎΠ² Stackoverflow.)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΠ· ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ ΠΌΡ ΠΎΡΡΠ»Π΅Π΄ΠΈΠΌ ΡΠΈΡΠ»ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ HTTP, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΡ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ.
ΠΠ° ΡΠ·ΡΠΊΠ΅ Prometheus ΠΎΠ΄ΠΈΠ½ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠΌ. ΠΠ°Π΄Π°Π½ΠΈΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ Π²Ρ ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΡΠ΅ ΡΠΈΡΠ»ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ HTTP Π½Π° Π²ΡΠ΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ .
ΠΡΠ΅Π»Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π·Π°Π΄Π°Π½ΠΈΡ ΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ β ΡΡΠΎ ΠΏΠΎΠ»Ρ Π² ΡΡΠ»ΡΠΊΠ°Ρ , ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΠΈΠ»ΠΈ Π·Π°Π΄Π°Π½ΠΈΡ.
Π£Π΄ΠΎΠ±Π½ΠΎ ΠΆΠ΅?
4. PromQL
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ InfluxDB, Π²Ρ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ InfluxQL. ΠΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ SQL Π² TimescaleDB.
Π£ Prometheus ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΡΠ²ΠΎΠΉ ΡΠ·ΡΠΊ Π΄Π»Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ²: PromQL.
ΠΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ Β«ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅Β». PromQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π² Π²ΠΈΠ΄Π΅ Π²Π΅ΠΊΡΠΎΡΠΎΠ².
Π Prometheus ΠΈ PromQL Π΅ΡΡΡ Π΄Π²Π° Π²ΠΈΠ΄Π° Π²Π΅ΠΊΡΠΎΡΠΎΠ²:
PromQL API ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ .
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊ Π½ΠΈΠΌ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠ΅ ΠΈΠ»ΠΈ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΡ) ΠΈ Π΄Π°ΠΆΠ΅ ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΠ³Π½ΠΎΠ·Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π₯ΠΎΠ»ΡΡΠ°-Π£ΠΈΠ½ΡΠ΅ΡΡΠ°).
5. ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΡΡΠΎ Π΅ΡΠ΅ ΠΎΠ΄Π½Π° Π²Π°ΠΆΠ½Π°Ρ ΡΠ°ΡΡΡ Prometheus. ΠΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΠΈΠ· Π½ΠΈΡ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ° ΡΠ·ΡΠΊΠ΅ Prometheus ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ»ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Prometheus.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Python, Java, Ruby, Go ΠΈ Π΄Π°ΠΆΠ΅ Node ΠΈΠ»ΠΈ C#.
ΠΠΎ ΡΡΡΠΈ, Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΠ°ΠΌΡΡΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·ΠΌΠ΅ΡΠΈΡΠ΅Π»ΠΈ ΠΈΠ»ΠΈ ΡΡΠ΅ΡΡΠΈΠΊΠΈ), ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΠΎΡΠΎΠΌ Π²Ρ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅, Π³Π΄Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΌΠ΅ΡΡΠΈΠΊΠΈ. Prometheus Π·Π°Π±Π΅ΡΠ΅Ρ ΠΈΡ ΠΎΡΡΡΠ΄Π° ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡ Π² ΡΠ²ΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ².
6. ΠΠΊΡΠΏΠΎΡΡΠ΅ΡΡ
Π Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Π²Π°ΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈ ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ»Ρ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Prometheus ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ ΡΠ΅Π»Π΅Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ.
ΠΡΠΈ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ² Docker ΠΈ Π»Π΅Π³ΠΊΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ. ΠΠ½ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ Π½Π°Π±ΠΎΡ ΠΌΠ΅ΡΡΠΈΠΊ ΠΈ ΡΠ°ΡΡΠΎ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π·Π° ΡΡΠΈΡΠ°Π½Π½ΡΠ΅ ΠΌΠΈΠ½ΡΡΡ.
ΠΠ°ΡΠ° ΡΠ»ΠΎΠ² ΠΎ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π²Π·Π°ΠΈΠΌΠ½ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΡΠΈΡΡΠ΅ΠΌ.
Prometheus Π½Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΈΠΊ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ InfluxDB (ΡΠ΅ΡΠ΅Π· Telegraf), CollectD, StatsD ΠΈ Nagios ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΡΠ²ΠΎΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΡ.
ΠΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΡ. ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Telegraf ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π½Π΅ Π² ΡΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Prometheus, Telegraf ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΠ»Π°ΡΡ ΡΡΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π² ΡΠΊΡΠΏΠΎΡΡΠ΅Ρ InfluxDB, ΠΎΡΠΊΡΠ΄Π° ΠΈΡ ΠΏΠΎΡΠΎΠΌ Π·Π°Π±Π΅ΡΠ΅Ρ Prometheus.
7. ΠΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² Π²Π°ΠΌ Π½ΡΠΆΠ½Π° ΠΎΠ±ΡΠ°ΡΠ½Π°Ρ ΡΠ²ΡΠ·Ρ ΠΎΡ Π΄Π°Π½Π½ΡΡ , ΠΈ Π·Π° ΡΡΠΎ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠΉ.
Π Grafana ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎΠ΅ Π΄Π΅Π»ΠΎ, Π½ΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΈ Π² Prometheus ΡΠ΅ΡΠ΅Π· ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠΉ.
ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠΉ β ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΡΡ ΠΊ Prometheus ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΠΎΠΏΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΠΈ.
ΠΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ Π·Π°Π΄Π°ΡΡ Π½Π°Π±ΠΎΡ ΠΏΡΠ°Π²ΠΈΠ» Π΄Π»Ρ ΠΌΠ΅ΡΡΠΈΠΊ. ΠΡΠ»ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Ρ, ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡΠΈΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»ΡΠΌ.
ΠΠ°ΠΊ ΠΈ Π² Grafana, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠΉ Π°Π΄ΡΠ΅Ρ, Π²Π΅Π±Ρ ΡΠΊ Slack, PagerDuty ΠΈ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ HTTP-ΠΎΠ±ΡΠ΅ΠΊΡΡ.
Π§Π°ΡΡΡ III. ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Prometheus
Π, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ. ΠΠ°ΠΊ Ρ Π»ΡΠ±Π»Ρ Π³ΠΎΠ²ΠΎΡΠΈΡΡ, ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ β Π½Π΅ ΡΠ°ΠΌΠΎΡΠ΅Π»Ρ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π°Π΄Π°ΡΡ.
ΠΠ± ΡΡΠΎΠΌ ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ.
1. DevOps
Π‘ΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΡΠΈΠΌΠΈ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΠ°ΠΌΠΈ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ, Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Prometheus ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, Π΄Π»Ρ ΡΡΠ΅ΡΡ DevOps.
ΠΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π² ΡΡΠΎΠΉ ΡΡΠ΅ΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ½ΠΊΡΡΠΈΡΡΡΡΠΈΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ.
Prometheus ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ DevOps.
ΠΠ»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΠΏΠΎΡΡΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΠΈΠ»ΠΈΠΉ, ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ Π»ΡΠ±ΠΎΠΉ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π»Π΅Π²ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΡΠΊΡΠΏΠΎΡΡΠ΅Ρ, βΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΠ΅ΠΊΠΎΠ², Π³Π΄Π΅ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ.
Π ΡΡΠ΅Π΄Π΅, Π³Π΄Π΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΡΠΎ ΠΈ Π΄Π΅Π»ΠΎ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡΡΡ, Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΡΡΠ΅ΠΊ DevOps Π½Π΅ ΠΎΠ±ΠΎΠΉΠ΄Π΅ΡΡΡ Π±Π΅Π· ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ².
2. ΠΠ΄ΡΠ°Π²ΠΎΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅
Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π½ΡΠΆΠ½Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΠ’. ΠΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈ Π² ΠΊΡΡΠΏΠ½ΡΡ ΠΎΡΡΠ°ΡΠ»ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π³ΠΈΠ±ΠΊΠΈΠ΅ ΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π΄Π»Ρ Π·Π΄ΡΠ°Π²ΠΎΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ.
Π‘ΠΏΡΠΎΡ ΡΠ°ΡΡΠ΅Ρ, ΠΈ ΠΠ’-Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΎΠ±ΡΠ·Π°Π½Ρ Π΅ΠΌΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π²ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, Π²Ρ ΡΠΈΡΠΊΡΠ΅ΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠΌΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠΌΠΈ Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ. Π£ΠΆ Π² ΡΡΠ΅ΡΠ΅ Π·Π΄ΡΠ°Π²ΠΎΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΊΡΡ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΡΠΎΡΠ½ΠΎ Π½Π°Π΄ΠΎ ΡΠ²Π΅ΡΡΠΈ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΡ.
3. Π€ΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΡΡ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ InfoQ, Π³Π΄Π΅ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Prometheus Π² ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ ΡΡΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡ .
ΠΠΆΠ΅ΠΉΠΌΠΈ ΠΡΠΈΡΡΠΈΠ°Π½ (Jamie Christian) ΠΈ ΠΠ»Π°Π½ Π‘ΡΡΠ΅ΠΉΠ΄Π΅Ρ (Alan Strader) ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Prometheus Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΡΠ²ΠΎΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π² Northern Trust. ΠΡΠ΅Π½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠΎΠ²Π΅ΡΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ.
Π§Π°ΡΡΡ X. Π§ΡΠΎ Π΄Π°Π»ΡΡΠ΅?
ΠΠΎΡΠ° ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΎΡ ΡΠ΅ΠΎΡΠΈΠΈ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅.
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π²Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠ»ΠΈΡΡ Ρ ΠΎΡΠ½ΠΎΠ²Π°ΠΌΠΈ Prometheus, ΡΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ, Ρ ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ.
Π’Π΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΅ΡΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
Π§ΡΠΎΠ±Ρ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Ρ Prometheus, ΠΈΠ·ΡΡΠΈΡΠ΅ Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΡΠΊΡΠΏΠΎΡΡΠ΅ΡΡ.
ΠΠΎΡΠΎΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π½ΡΠΆΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΡ ΠΏΠ΅ΡΠ²ΡΡ ΠΏΠ°Π½Π΅Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° β ΠΈ Π²ΠΏΠ΅ΡΠ΅Π΄!
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²Π΄ΠΎΡ Π½ΠΎΠ²Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΠΌΠΎΡ ΡΡΠ°ΡΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ ΠΌΠ°ΡΠΈΠ½Ρ Linux Ρ Prometheus ΠΈ Grafana. Π’Π°ΠΌ Π΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°.
ΠΠ°Π΄Π΅ΡΡΡ, Π²Ρ ΡΠ·Π½Π°Π»ΠΈ ΡΡΠΎ-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ΅ΠΌΠ° Π΄Π»Ρ ΠΌΠΎΠ΅ΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΠ°ΡΡΠΈ, ΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ.