say*_*sar 8 grafana kubernetes prometheus grafana-alerts
我想在 Grafana 中为我的 Kubernetes 集群创建警报。我已经在 k8s 集群中配置了 Prometheus、节点导出器、Kube-Metrics、警报管理器。我想在无法调度或失败的 Pod 上设置警报。
Mik*_*iak 10
根据Suresh Vishnoi的评论:
\n\n\n这可能会有所帮助Awesome-prometheus-alerts.grep.to/rules.html#kubernetes
\n
是的,这可能非常有帮助。在此站点上,您可以找到失败的 Pod(不健康)的模板:
\n\n\nPod 处于非就绪状态的时间超过 15 分钟。
\n
- alert: KubernetesPodNotHealthy\n expr: min_over_time(sum by (namespace, pod) (kube_pod_status_phase{phase=~"Pending|Unknown|Failed"})[15m:1m]) > 0\n for: 0m\n labels:\n severity: critical\n annotations:\n summary: Kubernetes Pod not healthy (instance {{ $labels.instance }})\n description: "Pod has been in a non-ready state for longer than 15 minutes.\\n V\nRun Code Online (Sandbox Code Playgroud)\n或用于崩溃循环:
\n\n\nPod {{ $labels.pod }} 正在崩溃循环
\n
- alert: KubernetesPodCrashLooping\n expr: increase(kube_pod_container_status_restarts_total[1m]) > 3\n for: 2m\n labels:\n severity: warning\n annotations:\n summary: Kubernetes pod crash looping (instance {{ $labels.instance }})\n description: "Pod {{ $labels.pod }} is crash looping\\n VALUE = {{ $value }}\\n LABELS = {{ $labels }}"\nRun Code Online (Sandbox Code Playgroud)\n另请参阅有关使用 Prometheus 监控 kubernetes 集群的良好指南:
\n\n\nKubernetes API 和 kube-state-metrics (本身使用 prometheus 指标) 通过暴露 Kubernetes 内部数据(例如部署中所需/正在运行的副本数量、不可调度节点等)解决了部分问题。
\nPrometheus 非常适合微服务,因为您只需要 公开一个指标端口,并且不需要添加太多复杂性或运行额外的服务。通常,服务本身已经提供了 HTTP 接口,开发人员只需要添加一个额外的路径,例如
\n/metrics.
如果涉及到不可调度的节点,可以使用metric kube_node_spec_unschedulable。此处或此处进行了描述:\n kube_node_spec_unschedulable- 节点是否可以调度新的 pod。
另请参阅本指南。\n基本上,您需要找到要监控的指标并在 Prometheus 中进行适当的设置。或者,您可以使用模板,正如我在答案开头所示的那样。
\n| 归档时间: |
|
| 查看次数: |
14508 次 |
| 最近记录: |