Прометей следит за Nginx без данных - PullRequest
0 голосов
/ 10 июля 2019

все. Я переписываю образ nginx и добавляю nginx-module-vts через двоичную компиляцию. Через контейнер вспомогательной машины nginx-vts-exporter я получаю данные JSON из основного сервисного контейнера и преобразую их в метрики. Мне удалось получить данные вручную, но на странице Прометея не было найдено ни одного индекса запроса, только nginx_vts_exporter_build_info. Может кто-нибудь дать мне несколько идей для решения проблемы? Пожалуйста. Спасибо

enter image description here

enter image description here

Вот мой файл yaml для nginx

apiVersion: apps/v1
kind: Deployment
metadata:
  name: zx-official-website
  namespace: monitoring
spec:
  replicas: 3
  selector:
    matchLabels:
      app: zx-official-website
      function: nginx
  template:
    metadata:
      labels:
        app: zx-official-website
        function: nginx
    spec:
      containers:
      - name: zx-official-website
        image: zx-official-website:1.0.1
        imagePullPolicy: Always
        livenessProbe:
          httpGet:
            path: /
            port: 80
          initialDelaySeconds: 180
          timeoutSeconds: 5
        readinessProbe:
          httpGet:
            path: /
            port: 80
          initialDelaySeconds: 5
          timeoutSeconds: 1
      - name: nginx-exporter
        image: sophos/nginx-vts-exporter:latest
        env:
        - name: NGINX_STATUS
          value: http://localhost/status/format/json
        - name: METRICS_ENDPOINT
          value: /metrics
        - name: METRICS_ADDR
          value: :9913
        - name: METRICS_NS
          value: monitoring
        ports:
        - containerPort: 9913
          hostPort: 9913
          name: metrics

Вот мой файл yaml для службы nginx

apiVersion: v1
kind: Service
metadata:
  labels:
    k8s-app: nginx-exporter
  name: nginx-exporter
  namespace: monitoring
spec:
  clusterIP: None
  ports:
  - name: metrics
    port: 9913
    targetPort: metrics
  selector:
    function: nginx

Вот мой yaml-файл для nginx serviceMonitor

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  labels:
    k8s-app: nginx-exporter
  name: nginx-exporter
  namespace: monitoring
spec:
  endpoints:
  - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
    interval: 30s
    port: metrics
    scheme: http
    tlsConfig:
      insecureSkipVerify: true
  jobLabel: k8s-app
  selector:
    matchLabels:
      k8s-app: nginx-exporter
...