Prometheus — инструмент мониторинга для сбора и анализа данных о работе системы. Мониторинг позволяет поддерживать стабильность и надежность инфраструктуры.
Предварительно установите средства мониторинга. Затем настройте внутренние компоненты Kubernetes для передачи метрик в Prometheus.
Настройка состоит из четырёх этапов:
- Настроить компонент kube-proxy.
- Настроить компонент kube-scheduler.
- Настроить компонент etcd.
- Настроить компонент kube-controller-manager.
Шаг 1: Настроить компонент kube-proxy
- Внесите изменения в ConfigMap.
kubectl edit cm/kube-proxy -n kube-system
- Установите значение
0.0.0.0:10249
в строкеmetricsBindAddress
.
kind: KubeProxyConfiguration
metricsBindAddress: "0.0.0.0:10249"
- Примените изменения.
kubectl -n kube-system rollout restart daemonset kube-proxy
Шаг 2: Настроить компонент kube-scheduler
- Внести изменения в манифест файл
kube-scheduler.yaml
.
nano /etc/kubernetes/manifests/kube-scheduler.yaml
- Установите значение
0.0.0.0
в строке--bind-address
. Настройка применится автоматически после сохранения манифеста.
- --bind-address=0.0.0.0
Шаг 3: Настроить компонент etcd
- Внесите изменения в манифест файл
etcd.yaml
.
nano /etc/kubernetes/manifests/etcd.yaml
- Установите значение
http://0.0.0.0:2381
в строке--listen-metrics-urls
. Настройка применится автоматически после сохранения манифеста.
- --listen-metrics-urls=http://0.0.0.0:2381
Шаг 4: Настроить компонент kube-controller-manager
- Внесите изменения в манифест файл
kube-controller-manager.yaml
.
nano /etc/kubernetes/manifests/kube-controller-manager.yaml
- Установить значение
0.0.0.0
в строке--bind-address
. Настройка применится автоматически после сохранения манифеста.
- --bind-address=0.0.0.0
Если настройки компонентов выполнены, в Prometheus будут доступны их метрики.
Визуализация данных
В программной системе визуализации данных Grafana вы можете просмотреть графики с результатами мониторинга:
- пример графика 1:
- пример графика 2:
- пример графика 3:
- пример графика 4:
Также доступны пользовательские дэшборды. Для их активации включите опцию dashboards.enabled
в файле values
для установки средств мониторинга.
## Включение импорта графиков
grafana-custom-dashboards:
dashboards:
enabled: true
- пример дэшборда 1:
- пример дэшборда 2:
- пример дэшборда 3:
- пример дэшборда 4: