【问题标题】:Kubernetes deployment update alert.?Kubernetes 部署更新警报。?
【发布时间】:2026-02-23 03:05:01
【问题描述】:

我有超过 50 个 pod 的 kubernetes 集群。当 pod 和另一个 kubernetes 资源发生更新时,我想通过电子邮件收到警报。如果有人像那样进行手动部署,我如何在 Linux 中实现这一点。

【问题讨论】:

    标签: docker kubernetes google-kubernetes-engine azure-aks


    【解决方案1】:

    如果您有 Prometheus,那么您可以创建像 changes(kube_deployment_status_observed_generation[5m]) > 0 这样的警报,这意味着在过去 5 分钟内至少更改了一次部署。

    如果你没有 Prometheus - 那么你可以使用这个 repo 快速安装:https://github.com/coreos/prometheus-operator

    【讨论】:

      【解决方案2】:

      听起来您希望收到手动kubectl 命令发起的更改的通知。据我所知,Kubernetes 不支持开箱即用的用例,但您可以使用 Auditing 来获得您想要的。这应该让您全面了解集群中谁在做什么。

      在该链接中,有各种如何使用日志的建议,例如将它们与 fluentd 聚合或通过 webhook 将它们推送到 logstash。这些应该有更多的扩展点,您可以将电子邮件警报映射到,但这在很大程度上取决于您的基础架构和当前设置。

      如果您想完全留在集群中,您甚至可以创建一个 Cron Job 以不时通过电子邮件向您发送审核日志中的任何新操作。

      希望这会有所帮助。

      【讨论】:

        【解决方案3】:

        看看 prometheus,包括警报管理器。在 prometheus 中定义规则,以便在触发更新事件时通过警报管理器发送警报。

        【讨论】: