本页介绍了如何识别 Google Kubernetes Engine (GKE) 集群是否配置不足或过度配置。GKE 针对费用优化场景(例如过度配置的集群和空闲集群)以及可靠性提升场景(例如配置不足的集群)提供数据洞见和建议。GKE 会提供相应的建议,以便您扩容、缩容或删除集群。对于空闲集群,请参阅识别空闲的 GKE 集群。
确认所识别的集群会受益于扩容或缩容建议后,您可以进行建议的更改,以节省费用或提高集群的可靠性。建议中会尽可能包含预计每月节省或支出的费用。如需了解详情,请参阅了解费用或节省金额估算值。
GKE 不会为 Autopilot 集群提供这些数据分析,因为您只需为工作负载请求的资源付费,因此 Autopilot 集群会产生少许操作费用。如需了解详情,请参阅 Autopilot 价格。
GKE 会监控您的集群并通过 Active Assist 提供指导以优化您的使用。Active Assist 是一项服务,它会提供推荐工具,这些工具会生成有关 Google Cloud上的资源使用的分析洞见和建议。如需详细了解如何管理分析洞见和建议,请参阅利用分析洞见和建议优化 GKE 使用。
针对配置不足和配置过多的集群获取数据分析和建议
GKE 会在 Google Cloud 控制台中的以下位置显示这些数据分析和建议:
- Kubernetes 集群页面,位于以下位置:
- 在 Kubernetes 集群列表中,适用集群的通知列中
- 集群页面上特定集群的通知横幅
- FinOps 中心
在 Kubernetes 集群页面中,这些建议的标题如下:
- 过度配置的集群:“减少集群资源以降低费用”
- 集群配置不足:“增加集群资源以提高可靠性”
您还可以使用 CLUSTER_UNDERPROVISIONED
和 CLUSTER_OVERPROVISIONED
子类型通过 Google Cloud CLI 或 Recommender API 接收这些数据分析和建议。
请按照相关说明查看数据分析和建议。
确定集群是否配置不足或过度配置后,请参阅调整集群规模时的注意事项。
GKE 如何识别配置不足和配置过多的集群
下表介绍了 GKE 用于识别可扩容或缩容的配置不足和配置过剩集群的信号,以及每个信号的阈值。此外,下表显示了我们建议您在此场景中采取的操作。
子类型 | 信号 | 观察期 | 详细信息 | 建议 |
---|---|---|---|---|
CLUSTER_UNDERPROVISIONED |
CPU 或内存用量较高 | 过去 30 天 | 如果过去 30 天内,每小时的 CPU 和内存利用率平均值均超过 80%,则表示 GKE 集群预配不足。 | 扩容集群以提高可靠性 |
CLUSTER_OVERPROVISIONED |
CPU 和内存用量较低 | 过去 30 天 | 如果过去 30 天内,每小时的 CPU 和内存利用率平均值介于 7% 到 20% 之间,则表示 GKE 集群过度预配。 | 缩减集群规模以降低费用 |
GKE 不会针对创建不到 30 天的集群发送建议。
了解费用或节省金额估算
如果可能,GKE 的建议中会包含一个估算值,用于预测您合理调整集群后每月的费用或节省的费用。此预计费用是根据过去 30 天的集群费用估算的。
任何预计费用或节省金额都是基于先前支出的预测值,并不能保证未来的费用或节省金额。
如需查看这些估算值,请确保您拥有获取支出信息所需的 billing.accounts.getSpendingInformation
权限。如需了解详情,请参阅 Cloud Billing 访问权限。
如需详细了解所有 GKE 集群的费用,包括按命名空间和工作负载进行更精细的细分,请参阅获取 GKE 资源分配和集群费用的关键支出分析。
如需详细了解运行 GKE 集群的费用,请参阅 GKE 价格。
调整集群大小时的注意事项
在按照建议扩缩或缩减集群之前,请考虑以下事项:
- 查看集群上运行的应用的资源利用率,了解应用的运行状况,以及它们是否比预期多或少使用了 CPU 和内存。如需了解相关说明,请参阅分析资源请求。
- 批处理工作负载可能会有意保持集群资源的高利用率,以提高成本效率。如果分配的集群资源足以满足集群上运行的批处理作业的需求,则您无需扩容被标识为配置不足的高利用率集群。
实施调整集群规模的建议
请查看以下内容,了解如何调整集群的大小,以更好地匹配您的资源利用率。
调整配置不足的集群的大小
若要实现通过调整配置不足的集群的大小来最大限度地降低可靠性风险的建议,请增加集群上的资源。您可以通过执行以下某些操作来实现此目的:
- 启用集群自动扩缩器和节点自动预配,或调整设置以允许更大规模的扩容。
- 通过增加节点数来横向扩容集群。请按照说明通过更改节点数进行横向扩缩。
- 为节点池选择更大的机器类型。按照相关说明通过更改节点机器属性进行纵向扩缩。
- 监控和查看在集群上运行的应用的 CPU 和内存资源用量。看看是否可以缩减应用规模。如需了解如何监控资源用量,请参阅分析资源请求。
实现此建议后,您可以确保集群始终可靠,因为集群为其应用提供了适当数量的资源。
合理调整超额预配的集群的容量
如需实现通过调整过度配置的集群的规模来节省费用的建议,请减少集群上的资源。调整集群 CPU 和内存分配,以满足您的工作负载需求。为此,您可以执行以下某些操作:
- 调整集群自动扩缩器和节点自动预配,以更主动地缩减利用率不足的资源。
- 通过减���节点数量来横向缩减集群。按照说明通过更改节点数进行横向扩缩。
- 为节点池选择较小的机器类型。请按照相关说明通过更改节点机器属性进行纵向扩缩。
- 监控和查看在集群上运行的应用的 CPU 和内存资源用量。了解您是否可以扩容应用。如需了解如何监控资源使用情况,请参阅分析资源请求。
实现此建议可确保您使用的资源不会超出运行集群应用所需的资源。
后续步骤
- 查看与费用相关的优化指标
- 在非高峰时段缩减 GKE 集群以降低费用
- 利用分析洞见和建议优化 GKE 使用
- 在 GKE 上运行费用经过优化的 Kubernetes 应用的最佳实践
- 5 项 GKE 功能可帮助您优化集群