Kubernetes déploie une fosse secrète de règle de Thanos envoyant des alarmes répétées

1. Vue d'ensemble:

1.1 Environnement

La règle et le gestionnaire d'alertes de Thanos sont déployés dans le cluster kubernetes, les informations de version sont les suivantes:
a, cluster kubernetes: v1.18.5
b, règle de thanos: v0.11.0
c, alertmanager: v0.20.0

Introduction au fichier yaml de la règle thanos:

apiVersion: apps/v1
kind: StatefulSet
metadata:
  labels:
    app.kubernetes.io/name: thanos-rule
  name: thanos-rule
  namespace: monitoring
spec:
  replicas: 2
  selector:
    matchLabels:
      app.kubernetes.io/name: thanos-rule
  serviceName: thanos-rules
  template:
    metadata:
      labels:
        app.kubernetes.io/name: thanos-rule
    spec:
      containers:
      - image: registry.cn-shenzhen.aliyuncs.com/gzlj/thanos-reloader:v0.1
        imagePullPolicy: Always
        name: reloader
        resources:
          limits:
            cpu: 100m
            memory: 100Mi
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      - args:
        - rule
        - --grpc-address=0.0.0.0:10901
        - --http-address=0.0.0.0:10902
        - --rule-file=/etc/thanos/rules/*rules.yaml
        - --data-dir=/var/thanos/rule
        - --label=rule_replica="$(NAME)"
        #请注意--alert.label-drop这行记录,值是带""
        - --alert.label-drop="rule_replica"
        - --query=dnssrv+_http._tcp.thanos-query.monitoring.svc.cluster.local
        - --alertmanagers.url=http://alertmanager-main.monitoring.svc.cluster.local:9093
        env:
        - name: NAME
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.name
        image: quay.mirrors.ustc.edu.cn/thanos/thanos:v0.11.0
        imagePullPolicy: IfNotPresent
        livenessProbe:
          failureThreshold: 24
          httpGet:
            path: /-/healthy
            port: 10902
            scheme: HTTP
          periodSeconds: 5
          successThreshold: 1
          timeoutSeconds: 1
        name: thanos-rule
        ports:
        - containerPort: 10901
          name: grpc
          protocol: TCP
        - containerPort: 10902
          name: http
          protocol: TCP
        readinessProbe:
          failureThreshold: 18
          httpGet:
            path: /-/ready
            port: 10902
            scheme: HTTP
          initialDelaySeconds: 10
          periodSeconds: 5
          successThreshold: 1
          timeoutSeconds: 1
        volumeMounts:
        - mountPath: /var/thanos/rule
          name: data
        - mountPath: /etc/thanos/rules
          name: thanos-rules
      restartPolicy: Always
      serviceAccount: thanos-rules
      serviceAccountName: thanos-rules
      terminationGracePeriodSeconds: 30
      volumes:
      - configMap:
          defaultMode: 420
          name: thanos-rules
        name: thanos-rules
      - emptyDir: {}
        name: data

Les captures d'écran clés sont les suivantes
Insérez la description de l'image ici


1.2 Phénomène

Alertmanager reçoit des alarmes en double. La seule différence entre les deux alarmes en double est que la valeur de l’étiquette personnalisée rule_replica est différente, comme illustré dans la figure:
Insérez la description de l'image ici


Solution 2

J'ai essayé de passer à la version en miroir de la règle de thanos (v0.15.0), mais le phénomène reste le même.
Quand j'étais sur le point d'abandonner, j'ai changé le paramètre de commande de démarrage de la règle de thanos --alert.label-drop = "rule_replica" en --alert.label-drop = rule_replica, c'est-à-dire que je viens de supprimer les guillemets doubles et alertmanager a reçu à plusieurs reprises des alertes pour résoudre le problème.


3 Phénomène après résolution

La règle de Thanos jette l'étiquette rule_replica dans le message d'alerte, puis envoie l'alerte à alertmanager. Pour le moment, il n'y a qu'un seul message d'alerte dans alertmanager au lieu des deux précédents.
Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/nangonghen/article/details/109186245
conseillé
Classement