Prometheus отслеживает разницу между Podmonitor и additionalScrapeConfigs

#kubernetes #prometheus #kubernetes-helm #strimzi

#kubernetes #prometheus #kubernetes-рулевой #strimzi

Вопрос:

Я пытаюсь отслеживать Strimzi, используя диаграмму руля kube-prometheus-stack. Я настроил его, следуя руководству из официальной документации Strimzi. В этом руководстве они оба используют Podmonitors и конфигурацию Prometheus для получения некоторых показателей. Но я не совсем понимаю, зачем мне нужно настраивать Podmonitor для некоторых показателей и добавлять задания в prometheus.prometheusSpec.additionalScrapeConfigs для других. Может кто-нибудь объяснить мне разницу?

Ответ №1:

Они PodMonitor используются для выбора показателей из модулей из пользовательских ресурсов, предоставляемых Strimzi, таких как, например, Kafka, ZooKeeper, KafkaBridge и так далее. Оператор Prometheus преобразует эту конфигурацию в соответствующие задания с kubernetes_sd_configs помощью having role: pod . prometheus-additional.yaml Файл, который используется для дополнительного поля scrape configs, содержит «сырую» конфигурацию заданий для связанных с Kubernetes метрик непосредственно с узлов и предоставляется cadvisor и kubelet (т.е. Объем дискового пространства, использование процессора и памяти). В операторе Prometheus нет соответствующей вещи для role: node , не существует ничего подобного NodeMonitor . Я надеюсь, что теперь это имеет больше смысла.

Комментарии:

1. Да, это проясняет ситуацию. Зачем prometheus-additional.yaml тогда нужно, поскольку объем дискового пространства, использование процессора и памяти также могут быть собраны другими заданиями Prometheus, независимыми от Strimzi. (Я использую диаграмму управления Prometheus, где некоторые цели уже определены). Или эти дополнительные показатели каким-то образом особенные?

2. если у вас уже есть эти метрики, вам не нужно применять дополнительный YAML. Например, в OpenShift, 4.x эти показатели доступны через уже запущенный экземпляр Prometheus, поэтому нам не нужны дополнительные.