【问题标题】:Is it possible to monitor the number of pod-replicas in a Kubernetes cluster over time with StackDriver?是否可以使用 StackDriver 随着时间的推移监控 Kubernetes 集群中的 pod-replicas 数量?
【发布时间】:2019-04-15 10:55:29
【问题描述】:

我已向 Kubernetes 集群添加了几个 Horizontal Pod Autoscalers (HPA)。我想随着时间的推移监控每个 pod 的副本数。

StackDriver 是否可以选择监控每个 pod 随时间变化的副本数量?创建指标时,我找不到允许我执行此操作的选项。

【问题讨论】:

    标签: kubernetes stackdriver google-cloud-monitoring


    【解决方案1】:

    我不认为你可以计算 pod,但你可以计算容器。通过复制的 Pod 中的容器数量恒定并进行适当的过滤,您将获得所需的内容。

    在 Stackdriver 中,转到仪表板 -> 创建仪表板。选择以下设置:

    Resource type: GKE Container
    Metric: Uptime
    Filter: (that's actually up to you, probably some label would work)
    Group by: (use this if you want to have several lines on the chart at once)
    Aggregator: count
    

    这基本上是收集集群中容器的所有正常运行时间,通过您的标准过滤这些数据,并计算剩余的条目数。这为您提供了在给定时间启动的容器数量。当一个容器不存在时,它没有入口,所以入口的数量较少。

    如果每个 pod 只有一个容器,那么就是这样。如果您有更多,只需将其考虑在内,然后将图表上的值除以每个 pod 的容器数。

    【讨论】:

    • 当我将此指标用作堆栈驱动程序警报的基础时(如果小于 1 则发出警报),堆栈驱动程序监视不会触发。你知道这是什么原因吗?
    • 正常运行时间指标没有我的数据。但是聚合可以分配给给定 pod 的任何其他指标也可以。就我而言,我使用了 Requst cores 指标
    • 知道如果 GCP 破折号将 GKE Con​​tainer 显示为非活动指标意味着什么吗?
    • 不错。但请注意,一旦图表被对齐更大的间隔,它将对计数求和。 (在 GKE 中,我找不到对齐函数和分组函数的任何组合来得到我,比如说,无论是渲染的最小周期的平均值还是最大值,如果这是人们想要看到的。)
    【解决方案2】:

    与我上面的答案类似,但我使用了这个参数

    Resource type: Kubernetes Container
    Metric: Uptime
    Filter: (that's actually up to you, probably some label would work)
    Group by: (use this if you want to have several lines on the chart at once)
    Aggregator: count
    

    【讨论】:

      猜你喜欢
      • 2019-12-26
      • 2016-10-09
      • 1970-01-01
      • 1970-01-01
      • 2020-03-26
      • 2018-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多