如何在prometheus中省略Promql标签以避免重复通知

如何在prometheus中省略Promql标签以避免重复通知,prometheus,prometheus-alertmanager,promql,Prometheus,Prometheus Alertmanager,Promql,我有一个多区域kubernetes集群,它有3个区域,其中prometheus监控部署了replicaset=3。每个区域有1个alertmanager、1个kubestate metrics、1个grafana和1个prometheus操作员吊舱运行 例如,当我收到警报时,一个警报部署ReplicasUpdated,我收到三个警报-每个kube state metric pod中有一个警报。警报仅因实例标签不同而不同,即kube state metric pod的ip地址。 警报格式如下所示

我有一个多区域kubernetes集群,它有3个区域,其中prometheus监控部署了replicaset=3。每个区域有1个alertmanager、1个kubestate metrics、1个grafana和1个prometheus操作员吊舱运行

例如,当我收到警报时,一个警报部署ReplicasUpdated,我收到三个警报-每个kube state metric pod中有一个警报。警报仅因实例标签不同而不同,即kube state metric pod的ip地址。 警报格式如下所示

alertname="DeploymentReplicasNotUpdated" app="kube-state-metrics" deployment="mydeployment" instance="172.30.83.127:8080" job="kubernetes-service-endpoints" kubernetes_name="kube-state-metrics" kubernetes_namespace="mykubenamespace" namespace="myns" severity="critical"

alertname="DeploymentReplicasNotUpdated" app="kube-state-metrics" deployment="mydeployment" instance="172.30.83.125:8080" job="kubernetes-service-endpoints" kubernetes_name="kube-state-metrics" kubernetes_namespace="mykubenamespace" namespace="myns" severity="critical"

alertname="DeploymentReplicasNotUpdated" app="kube-state-metrics" deployment="mydeployment" instance="172.30.83.127:8080" job="kubernetes-service-endpoints" kubernetes_name="kube-state-metrics" kubernetes_namespace="mykubenamespace" namespace="myns" severity="critical"
有人可以帮我在alertmanager中将这3个警报分组为单个警报,因为它们引用的是同一个警报吗?基本上,我需要排除实例标签,如图所示,只返回1个警报,而不是3个

alertname="DeploymentReplicasNotUpdated" app="kube-state-metrics" deployment="mydeployment"job="kubernetes-service-endpoints" kubernetes_name="kube-state-metrics" kubernetes_namespace="mykubenamespace" namespace="myns" severity="critical"
promql如下所示

 ((kube_deployment_status_replicas_updated != kube_deployment_spec_replicas)
      or (kube_deployment_status_replicas_available != kube_deployment_spec_replicas))
      unless (kube_deployment_spec_paused == 1)