Как собрать информацию об уровне стручка с помощью Prometheus Kubernetes?
Я пытаюсь очистить информацию об уровне стручка, используя Прометей Кубернец. Вот конфиг, который я использую:
- job_name: 'kubernetes-pods'
kubernetes_sd_configs:
- api_servers:
- 'https://kubernetes.default'
role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
action: keep
regex: true
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
action: replace
target_label: __metrics_path__
regex: (.+)
- source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
action: replace
regex: (.+):(?:\d+);(\d+)
replacement: ${1}:${2}
target_label: __address__
- action: labelmap
regex: __meta_kubernetes_pod_label_(.+)
- source_labels: [__meta_kubernetes_pod_namespace]
action: replace
target_label: kubernetes_namespace
- source_labels: [__meta_kubernetes_pod_name]
action: replace
target_label: kubernetes_pod_name
Но я не вижу никакой информации о графане. Нужно ли вносить какие-либо изменения в мои приложения? снимок
3 ответа
При такой конфигурации первое действие запрашивает аннотирование модуля prometheus.io/scrape=true
, Вы установили эту аннотацию на рассматриваемых стручках?
Знать,
здесь есть ошибка конфигурации:__meta_kubernetes_pod_namespace не существует и должен быть __meta_kubernetes_namespace
С наилучшими пожеланиями,
Барт
Вы должны убедиться, что данные, которые используют ваши графики Grafana, действительно присутствуют в Prometheus.
Я предполагаю, что вы используете эту панель Grafana по умолчанию.
Ваш запрос Grafana может выглядеть так:
sum (container_memory_working_set_bytes{pod_name=~"^$Pod$"}) / sum (machine_memory_bytes{kubernetes_io_hostname=~"^$Node$"}) * 100
Таким образом, вы должны убедиться, что container_memory_working_set_bytes
метрика записана и что у нее есть поле pod_name
,
В случае, если метрика не записана, вам нужно будет покопаться в логах прометея, чтобы проверить, может ли он сканировать API.
Если метрика есть, но метки неверны, вы можете либо изменить запрос в Grafana, либо добавить другой relabel_config
в Прометея. Смотрите официальную документацию.