Kubernetes 告警的通病是:一次部署失败会级联出几十条通知,CrashLoopBackOff、节点 NotReady、下游服务报错各发各的,值班的人打开 Slack 看到五十条消息,还是不知道是谁先坏的。
kwatch 的做法
在集群里跑一个 Pod,构建实时的依赖关系图,出问题时反向追溯,找到共同原因——比如「四分钟前有个 ConfigMap 改动」——然后只发一条消息,包含坏了什么、谁改的、该跑哪条命令。支持 Slack、Discord 等 50 多个渠道。
数据不出集群
事件和日志在本地分析,不外发。唯一的出站流量是可选的匿名统计(每周最多一次,一个开关关掉)和 Pro 版的许可证校验(每天一次)。集群名、命名空间、Pod 名、日志内容都不离开你的基础设施。
许可要注意
用的是 Elastic License 2.0,属于 source-available 而不是 OSI 认证的开源。如果你的合规要求明确写了「监控组件本身必须是 OSI 开源协议」,这条会卡住。
适合谁
没有专职 SRE 的中小团队最合适——它的消息是用大白话写的,不需要很深的 K8s 经验也能看懂下一步该干什么。已经有一套成熟可观测体系、痛点在工作流而不是诊断的团队,用不上。
局限
它做的是检测和解释,不做修复执行。别指望它替你跑 runbook。
本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。