kubernetes - 在 Prometheus 中找出标签的不同值并设置警报
问题描述
我有一个案例,我想设置一个警报,其中标签的至少一个值是不同的。
例如,具有 metric 的 Kubernetes 集群 xyz(有 20 个节点)test_metric{cluster_name="xyz",os="ubuntu"}
。如果这 20 个节点中的任何一个具有不同的“os”值,我想找出/设置警报。
基本上,这个想法是在集群中所有节点的操作系统值不同时获得警报。
目前我正在测试一个我认为不正确的非常简单的规则:
count(test_metric{cluster_name="xyz",os!=""} != count(test_metric{cluster_name="xyz",os!=""})
解决方案
嵌套计数是处理此问题的方法:
count by (cluster_name) (
count by (os, cluster_name)(test_metric)
) != 1
推荐阅读
- python - 根据出现的顺序在 Python 中对列表进行编码
- angular-material - Angular Material:如何结合 ngIf、aria-label 和 i18n?
- swift - 如何快速从核心数据中删除对象
- azure - 为什么使用 Azure Active Directory 调用我的 WebAPI 的 SPA 收到“此请求的授权已被拒绝。”?
- android - 显示来自这个特定 url 的图像
- sqlite - 如何在 ChangeNotifier 中使用 Futures?
- java - 无法从 Firebase 下载图像、文本、视频
- powerbi - 基于另一列的条件列
- c# - RemoveRange 删除的行数多于过滤后的行数
- docker - 安装 ElasticSearch 时,efk_elasticsearch_1 以代码 78 退出