避免告警疲劳:每个 K8s 工程团队的 8 个技巧

2022-09-15 10:21:18 浏览数 (1)

监控 Kubernetes 集群并不容易,告警疲劳通常是一个问题。

阅读这篇文章,了解减少告警疲劳的有用提示。如果你是oncall团队的一员,你一定知道什么是警觉性疲劳以及它对你的健康有何影响。而当涉及到Kubernetes时,告警源的数量会迅速飙升。本文将反思一些引起告警疲劳的常见原因,并分享有助于减少它的技巧。

什么是告警疲劳?

简单来说,当你在一天内收到大量与工作相关的告警时,就会发生告警疲劳,即使它们是不可操作的。不合理的大量告警会降低你的工作效率,因为你会从工作中抽出太多时间来不时确认告警。如果你在工作时间之外收到此类告警,它们将开始扰乱你的工作与生活平衡。为了建立一个高效和快乐的团队,关键是要减少不必要的告警,并专注于提供价值和可操作的内容。

如何减少告警疲劳

让我们讨论一些实用的技巧和技巧,以减少你和你的团队成员的告警疲劳。

明确定义你的指标和阈值

解决任何问题的第一步是清楚地定义它。在我们的例子中,告警的原因是指标的阈值;因此,为它们确定正确的指标和适当的阈值至关重要。对于基于 Kubernetes 的项目,你需要超越标准的指标集。你应该监控 Pod 的生命周期以及节点和集群的单个资源消耗,以保持对系统的控制。当涉及到标准指标时,你应该设置额外的阈值和告警,以了解何时出现异常行为。例如,你可以设置多个磁盘使用警告告警并根据严重性对它们进行分类,以了解何时介入并检查你的系统是否存在问题。同样,你可以使用其他指标,例如CPU 消耗、内存消耗等。

根据严重性定义告警层次和优先级

从大量数据中获取有用信息的最佳方法之一是对其进行组织。同样,你应该将告警组织成类别并根据它们修改告警行为。首先,你可以根据系统事件对服务正常运行时间的影响,将系统事件分为严重、警告和异常类别。然后,你可以将告警工具配置为仅针对关键事件发送告警。这样,你将减少团队收到的告警总数,并且每个告警都要求他们采取行动,而不是简单地予以确认。你还可以为每个事件类别分配不同的团队,以密切关注系统。

将类似的告警组合在一起

虽然对事件进行分类有助于组织告警,但它仍然不能解决一个主要问题:重复。你可能会收到系统中重复发生的事件的重复告警。或者,你可能会收到针对已解决问题的重复告警,因为你的告警工具不够智能。唯一的解决方案是切换到智能监控解决方案,在团队和成员之间可靠地同步告警。对于源自重复事件的重复告警,你还可以考虑应用过滤器和规则将类似的告警组合在一起。你可以依靠事件提供的信息来确定它们是否重复发生。这样,你可以针对许多类似问题发出更少的告警,并且你的成员可以在需要时通过监控平台访问所有其他告警。

尽可能多地收集有关告警的上下文数据

要增强告警分类和聚合,你需要数据。因此,你应该集中精力收集有关系统中发生的事件的尽可能多的信息。此信息将帮助你区分重复事件,并帮助你确定外观相似的事件是否需要特别注意。除了提高告警策略的质量外,它还可以在以后解决问题时为你提供帮助。

在你的团队中定义明确的角色并相应地直接发出告警

只有当你对你的团队执行相同操作时,对告警进行分类才有效。每当你的基础设施遇到警告时,向整个团队发送告警是没有意义的。你需要设计一个事件管理层次结构,并使你的告警工具与其保持一致,以逻辑地升级问题。如前所述,你可以将错误类别与团队进行匹配,或者根据错误源自的基础架构部分将错误与团队进行匹配。只有你才能确定哪种层次结构最适合你的特定用例。

断开与不相关的告警来源的连接

这适用于每个人,你的所有团队成员都应遵守。团队在多个项目上工作并且其中一些项目被转移到另一个团队或完全退役是很自然的。但是,这些项目的告警订阅可能没有及时更新,从而导致不时向你发送不相关的告警。确保尽快取消订阅,以减少告警噪音。对于分配给你的项目,可能会将问题分配给其他团队成员,但会向整个团队发送告警。为了清理你的告警收件箱,最好也尽快取消订阅。

抑制非工作时间以外的非紧急告警

告警疲劳不仅仅发生在工作时间;它也会让你在他们之外感到沮丧。理想情况下,你的团队应该选择一种告警工具,该工具允许在设定的持续时间内抑制和推迟告警。如果该工具可以根据告警分类(发送关键告警并推迟其他告警)来做到这一点,那就更好了。这将帮助你在工作场所之外保持健康的心理生活方式。如果抑制告警对你来说太过分了,你可以考虑将它们委派给在你离开时处于活动状态的另一个团队成员。大多数随叫随到的团队成员分散在世界各地,以保持 7x24 全天候监视系统运行状况。将告警转移给活跃成员有助于其他人在不工作时放松。

在重大中断时,取消所有告警以专注于恢复

如果你大部分事情都做对了,并且你的告警游戏是正确的,你可以考虑在努力从重大中断中恢复的同时抑制所有告警。在发生重大事件时,许多基础设施组件可能会出现故障并立即向你发送大量告警。一旦找到了中断的原因,就可以抑制其他一切并专注于修复它。但是,你仍有可能错过中断期间发生的其他重要告警。因此,最好将你的告警转发给不与你一起进行修复的其他团队成员。

总结

告警疲劳是真实存在的,如果不及时检查,它会迅速影响你的身心健康和工作效率。因此,你应该始终选择一种工具,以减少不必要的告警噪音,同时让你了解应用程序的最新基本更新。将有效的工具与有效的告警策略相结合将提高你团队的输出,同时保持身心健康。

原文:https://dzone.com/articles/avoiding-alert-fatigue-8-tips-for-every-k8s-engine

0 人点赞