【问题标题】:GCP Alerting - how to set uptime threshold?GCP 警报 - 如何设置正常运行时间阈值?
【发布时间】:2021-11-08 03:31:51
【问题描述】:

我们正在尝试使用新的(即非旧版)GCP 仪表板为我们的 kubernetes 集群设置 GKE 正常运行时间警报。类似的警报在 CPU/内存利用率方面工作正常,但正常运行时间有些奇怪。

下面显示的策略适用于我们的 prod 集群,并将滚动窗口设置为 10 分钟,并将计数应用为聚合函数。计数是正常运行时间分钟数。在右侧,我关闭了一项服务。您可以看到,这会导致逐步变化,从 10(完全上升)逐渐下降到零(在 10 分钟内完全下降)。当指标达到 0(即低于阈值 1)时,我们应该会收到警报。

但是,计数的值不会变为 0,而是在 UI 中显示为“-”。我认为这意味着 null 或什么?正如您在 step 函数中看到的那样,步数为 10,9,8....3,2,1,然后消失而不会变为 0。为什么计数不会变为零而是转到“-” on用户界面?指标描述本身将其显示为 Double,因此希望它变为 0...

我们是否有错误的指标,或者我们是否应该将阈值设置为低于 2 作为解决方法?或者我应该选择“Metric Absence”作为跟踪它的最佳方式?

【问题讨论】:

    标签: google-cloud-platform alert metrics


    【解决方案1】:

    我使用 Metric Absence 条件重现了该问题,该条件在指标在特定时间段内没有数据时触发警报。仅当容器启动并运行时才会生成正常运行时间警报。另一种方案是使用自定义指标并向它们添加时间序列数据。

    编辑

    如果指标中的任何时间序列没有特定 duration window 的数据,则指标缺失条件 triggers。除了由 uptime check 生成的指标外,与 TERMINATEDDELETED Google Cloud 资源 (VM) 相关的指标不被视为指标缺失政策。

    要为metric absence 条件类型创建警报策略,您需要选择指标(kubernetes 容器 - 正常运行时间)并调整滚动窗口中信号的时间长度。将滚动窗口函数设置为 count 。在配置警报触发选项中将条件类型设置为 Metric Absence。

    选择任何时间序列违规的警报触发器并将缺勤时间设置为 5 分钟,然后通过选择首选通知渠道类型来创建警报策略。因此,如果容器没有数据,则会触发指标缺失条件并将警报消息发送到相应的通知通道。

    【讨论】:

    • 我无法获得指标缺失以发送任何警报...我一定是配置错误
    • 我已经用详细步骤更新了我的答案,我用这些步骤创建了没有指标的警报策略
    • 我接受了这个答案,因为我确信它是理论上问题的正确解决方案;但是,我仍然没有收到我的特定设置的警报。在删除现有 pod 的 kubernetes pod 配置中将副本设置为 0 会触发此警报吗?还是被认为是“终止/删除”状态并且不会触发指标缺失?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-14
    • 1970-01-01
    • 1970-01-01
    • 2021-01-19
    • 2019-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多