Prometheus运算符中规则和rules1.14之间的区别

时间:2020-09-25 16:21:43

标签: prometheus-operator

Prometheus运算符中的rules和rules1.14有什么区别?何时使用rules或rules1.14?

https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack/templates/prometheus

我看到两者都有相同的规则,但有一些区别。两个文件夹中都存在类似CPUThrottlingHIGH规则,但是rule1.14将其命名为“ info”,而rules文件夹将其命名为“ warning”。

1 个答案:

答案 0 :(得分:1)

1.14一词指的是Kubernetes版本。

当您的Kubernetes版本位于1.10 <= version <1.14时,将从rules目录创建规则。

您将在rules目录中每个YAML文件的开头找到以下行:

{{- if and (semverCompare ">=1.10.0-0" $kubeTargetVersion) (semverCompare "<1.14.0-0" $kubeTargetVersion) .Values.defaultRules.create .Values.defaultRules.rules.alertmanager }}

类似地,当您的Kubernetes版本位于version >= 1.14时,将从rules-1.14目录创建规则。

{{- if and (semverCompare ">=1.14.0-0" $kubeTargetVersion) (semverCompare "<9.9.9-9" $kubeTargetVersion) .Values.defaultRules.create .Values.kubeEtcd.enabled .Values.defaultRules.rules.etcd }}