Назад | Перейти на главную страницу

Kubernetes: оператор Prometheus (helm) не выполняет автоматическую очистку метрики из VerneMQ Service Monitor

Я использую Helm для установки prometheus-operator в моем кластере kubernetes, все работает нормально, и я могу получить метрики

root@k8s-master:~/vernemq# kubectl get pod
NAME                                                     READY   STATUS    RESTARTS   AGE
alertmanager-my-mon-prometheus-operator-alertmanager-0   2/2     Running   0          19m
my-mon-grafana-67d85656f5-v5pzd                          2/2     Running   0          19m
my-mon-kube-state-metrics-8f6fb588d-jwjpj                1/1     Running   0          19m
my-mon-prometheus-node-exporter-5r528                    1/1     Running   0          19m
my-mon-prometheus-node-exporter-gmx7r                    1/1     Running   0          19m
my-mon-prometheus-node-exporter-nbpxl                    1/1     Running   0          19m
my-mon-prometheus-operator-operator-858559bfc5-kmjkv     2/2     Running   0          19m
prometheus-my-mon-prometheus-operator-prometheus-0       3/3     Running   0          19m

Итак, после этого я продолжаю использовать helm для установки vernemq в свой кластер.

изменение конфигурации в values.yaml

...
serviceMonitor:
  create: true
...
...
additionalEnv:
  - name: DOCKER_VERNEMQ_ALLOW_ANONYMOUS
    value: "on"
  - name: DOCKER_VERNEMQ_ACCEPT_EULA
    value: "yes"
...
...

VerneMQ также отлично работает:

vernemq-0                                                1/1     Running   0          7m50s
vernemq-1                                                1/1     Running   0          6m11s

Но есть проблемы, оператор prometheus не очистил метрику от Vernemq servicemonitor даже тех, которые находятся в том же пространстве имен:

root@k8s-master:~/vernemq# kubectl get servicemonitors.monitoring.coreos.com 
NAME                                                 AGE
my-mon-prometheus-operator-alertmanager              21m
my-mon-prometheus-operator-apiserver                 21m
my-mon-prometheus-operator-coredns                   21m
my-mon-prometheus-operator-grafana                   21m
my-mon-prometheus-operator-kube-controller-manager   21m
my-mon-prometheus-operator-kube-etcd                 21m
my-mon-prometheus-operator-kube-proxy                21m
my-mon-prometheus-operator-kube-scheduler            21m
my-mon-prometheus-operator-kube-state-metrics        21m
my-mon-prometheus-operator-kubelet                   21m
my-mon-prometheus-operator-node-exporter             21m
my-mon-prometheus-operator-operator                  21m
my-mon-prometheus-operator-prometheus                21m
vernemq                                              10m

Я использую k8s 1.18.4

Итак, как сделать так, чтобы пром-оператор считывал метрики с монитора службы vernemq?

Безголовый vernemq также встал:

root@k8s-master:~/vernemq# kubectl get svc
NAME                                      TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE
alertmanager-operated                     ClusterIP   None             <none>        9093/TCP,9094/TCP,9094/UDP   22m
kubernetes                                ClusterIP   10.96.0.1        <none>        443/TCP                      48m
my-mon-grafana                            NodePort    10.99.93.242     <none>        80:32529/TCP                 22m
my-mon-kube-state-metrics                 ClusterIP   10.101.98.181    <none>        8080/TCP                     22m
my-mon-prometheus-node-exporter           ClusterIP   10.103.80.187    <none>        9100/TCP                     22m
my-mon-prometheus-operator-alertmanager   ClusterIP   10.107.136.232   <none>        9093/TCP                     22m
my-mon-prometheus-operator-operator       ClusterIP   10.111.245.89    <none>        8080/TCP,443/TCP             22m
my-mon-prometheus-operator-prometheus     NodePort    10.98.160.49     <none>        9090:31798/TCP               22m
prometheus-operated                       ClusterIP   None             <none>        9090/TCP                     22m
vernemq                                   ClusterIP   10.100.61.49     <none>        1883/TCP                     11m
vernemq-headless                          ClusterIP   None             <none>        4369/TCP,8888/TCP            11m