Внешняя система мониторинга
Contents
Внешняя система мониторинга#
Система мониторинга состоит из Prometheus, Loki, Tempo и Grafana.
Сервер Global, развёрнутый в кластере Kubernetes, отправляет метрики, трейсы и логи во внутреннюю систему мониторинга. Также возможно настроить кластер Global так, чтобы он отсылал телеметрию во внешнюю систему. Для этого, при конфигурировании кластера Global требуется:
В визарде установки характристик (./resgroup.sh init_spec) задать значение true для полей «Отслеживать метрики» и «Дополнительно отсылать метрики во внешнюю систему».
В визарде установки значений (./resgroup.sh init_values) задать параметры для полей «Введите адрес доступа к внешнему prometheus», «Введите адрес доступа к внешнему loki» и «Введите адрес доступа к внешнему tempo» для каждой книги ресурсов.
Настройка Prometheus#
Prometheus устанавливается по официальной документации. Для получения метрик сервера Global дополнительные настройки не требуются.
Пример config.yaml
global:
scrape_interval: 5s
evaluation_interval: 5s
Настройка Loki#
Loki устанавливается по официальной документации.
Простейший конфиг приведён ниже. При его использовании требуется задать корректные значения параметров path_prefix, chunks_directory и rules_directory.
Пример config.yaml
auth_enabled: false
server:
http_listen_port: 3100
grpc_listen_port: 9096
common:
instance_addr: 127.0.0.1
path_prefix: {path} #/mnt/data/loki
storage:
filesystem:
chunks_directory: {path} #/mnt/data/loki/chunks
rules_directory: {path} #/mnt/data/loki/rules
replication_factor: 1
ring:
kvstore:
store: inmemory
query_range:
results_cache:
cache:
embedded_cache:
enabled: true
max_size_mb: 100
schema_config:
configs:
- from: 2020-10-24
store: tsdb
object_store: filesystem
schema: v13
index:
prefix: index_
period: 24h
ruler:
alertmanager_url: http://localhost:9093
analytics:
reporting_enabled: false
Настройка Tempo#
Tempo устанавливается по официальной документации. Простейший конфиг приведён ниже. При его использовании требуется задать корректные значения параметров path.
Пример config.yaml
stream_over_http_enabled: true
server:
http_listen_address: 0.0.0.0
http_listen_port: 3200
distributor:
receivers:
otlp:
protocols:
http:
endpoint: 0.0.0.0:3201
storage:
trace:
backend: local
wal:
path: {path} #/mnt/data/tempo/wal
local:
path: {path} #/mnt/data/tempo/blocks
Настройка Grafana#
Grafana устанавливается и настраивается по официальной документации.