0

我的一些 HPA 出现了奇怪的问题。由于未知原因,他们报告需要扩展到最大副本数 - 即使他们现有的目标是 2%/80% ......他们已经运行了 3 个多月,其中 2 个服务一个多月以来,HPA 都变得糟糕透顶了。同一集群和命名空间中的其他 HPA 运行良好。

我试图找出如何查看 HPA 正在计算的内容。他们有写在某处的日志吗?我在哪里可以找到它们?

谢谢

- 更新 -

这再次发生,几乎相同的场景。尽管实际 CPU 消耗大大低于阈值,但我们的一些 HPA 已再次扩大到最大。我们还能够看到历史利用率也没有超过目标百分比,所以我真的不知道为什么会这样。

在此处输入图像描述

我真正想知道的是哪些 CPU 值被发送到 HPA 计算器,但我不知道在哪里可以找到这些值。有人知道我在哪里可以找到那个吗?

谢谢

-- 更新 2 -- 我找到了源代码,它开始看起来实际上并没有将任何这些信息打印为日志数据甚至事件。所以现在真的很茫然,无法进一步解决这个问题。

4

1 回答 1

-1

您可以通过访问 Google Cloud Console 中的工作负载页面来为工作负载配置 Horizo​​ntal Pod Autoscaler,并获取有关自动扩展事件及其原因的信息。

每个 Horizo​​ntal Pod Autoscaler 作为一个 Horizo​​ntalPodAutoscaler 对象存在于集群中。您可以使用类似kubectl get hpakubectl describe hpa HPA_NAME与这些对象交互的命令(链接

集群自动扩缩器的可见性事件存储在 Cloud Logging 日志中,与 GKE 集群所在的项目位于同一项目中。

要查看日志,请执行以下操作:

1.- 在 Cloud Console 中,转到日志查看器页面。

2.- 转到日志查看器

3.- 使用基本或高级查询界面搜索日志。要使用基本查询界面搜索日志,请执行以下操作:

  • 从资源下拉列表中,选择 Kubernetes 集群,然后选择集群的位置和集群的名称。

  • 从日志类型下拉列表中,选择 container.googleapis.com/cluster-autoscaler-visibility.

  • 从时间范围下拉列表中,选择所需的时间范围。

  • 要使用高级查询界面搜索日志,请应用以下高级过滤器:

    resource.type="k8s_cluster"
        resource.labels.location="cluster-location"
        resource.labels.cluster_name="cluster-name"
        logName="projects/project-id/logs/container.googleapis.com%2Fcluster-autoscaler-visibility"
    
    where:
    
  • cluster-location是您正在检查的集群的位置。

  • cluster-name是您的集群的名称。

  • project-id是项目的 ID。

您可以在此链接中找到有关查看集群自动扩缩器事件的更多详细信息。

于 2022-01-31T22:26:52.740 回答