你知道如何在 Kubernetes 中调整工作负载吗?如果您不确定,我们有一个好消息要分享给您!今天,我们推出了一种完全嵌入式、开箱即用的体验,来帮助您完成这项复杂的任务。当您在 Google Kubernetes Engine (GKE) 上运行您的应用程序时,您可以获得一个端到端的工作流,可帮助您发现优化机会、了解特定于工作负载的资源请求建议,最重要的是,在几秒钟内采取这些建议。

该工作负载优化工作流通过查看 Kubernetes 资源请求和限制来帮助调整应用程序的大小,这通常是资源浪费的最大来源之一。正确配置您的资源请求可能是空闲集群和根据实际资源使用情况而降低规模的集群之间的区别。

如果您是 GKE 的新手,您可以通过遵循合理设定容量功能所推荐的资源请求设置来节省时间和费用支出。如果您已经在 GKE 上运行工作负载,您还可以使用它来快速评估现有部署的优化机会。

然后,为了进一步优化您的工作负载,将这些新的工作负载合理化功能与 GKE Autopilot 相结合,后者根据 Pod 资源请求定价。使用 GKE Autopilot,您对 Pod 资源请求所做的任何优化(假设它们超过最小值)都会直接反映在您的账单上。

我们还为 Cloud Monitoring 引入了一项新指标,该指标根据一段时间内的实际使用情况为每个符合条件的工作负载提供资源请求建议。

使用 GKE 无缝调整工作负载

当您在 GKE 上运行工作负载时,您可以使用成本优化见解来直接在控制台中发现集群和工作负载的调整机会。

在这里,您可以看到工作负载的实际使用情况,并获取可能规模过小的工作负载信号,这些工作负载由于资源请求较少而面临可靠性或性能影响的风险。

然而,采取下一步行动并正确对应用程序进行大小调整一直是一个挑战——尤其是在规模上。GKE 的新工作负载合理化功能使其不在成为问题。

首先选择要优化的工作负载。通常情况下,最好选择那些资源请求和限制与实际使用之间存在明显差异的工作负载。在 GKE 工作负载控制台的成本优化选项卡中,只需查找带有大量亮绿色的工作负载即可。

选择工作负载后,转到工作负载详细信息页面,并选择“操作”=>“扩缩”=>“编辑资源请求”以获得更多逐步优化指导。

您所收到的指导在很大程度上依赖于新的“每个副本建议请求核心数”和“每个副本建议请求字节数”指标(与 Cloud Monitoring 中提供的指标相同),它们均基于实际工作负载使用情况。您可以为每个符合条件的 GKE 部署访问此视图,而无需进行任何配置。

确认最适合您的部署的值后,您可以直接在 GKE 控制台中编辑资源请求和限制,它们将直接应用于您的工作负载。

注意:建议基于观察到的工作负载使用模式所生成,可能并不都是最适合您的应用程序。每种情况都有其极端情况和特定需求。我们建议全面检查和了解最适合您特定工作负载的值。

注意:由于对 Java 工作负载使用内存的方式的可见性有限,我们不支持基于 JVM 的工作负载的内存建议。

或者,如果您更愿意从 GKE 控制台外部设置资源请求和限制,您可以生成一个包含推荐设置的 YAML 文件,用于配置部署。

注意:启用横向 pod 自动扩缩的工作负载将不会收到关于配置了横向 pod 自动扩缩的同一指标的建议值。例如,如果您的工作负载为 CPU 配置了 HPA,则只会显示内存建议。

有关特定工作负载资格以及与其他扩缩机制(例如横向 Pod 自动扩缩)兼容性的更多信息,请点击此处查看功能文档。

通过 GKE Autopilot 和工作负载合理化提高效率

我们已经详细介绍了将 GKE Autopilot 作为 GKE 的关键成本优化的其中一种机制。GKE Autopilot 提供完全托管的基础架构解决方案,无需节点池和 VM 级优化,从而消除了与运行 VM 相关的装箱优化挑战,以及不必要的资源浪费和日常的运维工作。

在 GKE Autopilot 中,您按需付费即可。结合主要针对资源请求优化的工作负载调整,您现在可以轻松解决导致优化差距的三大主要问题中的两个:应用程序调整和装箱。通过在 GKE Autopilot 上运行符合条件的工作负载并优化它们的资源请求,您会立即看到对您的账单产生的直接且积极的影响!

优化GKE的合理化指标和更多资源为了支持新的优化工作流程,我们还推出了两个新指标,称为“每个副本建议请求核心数”和“每个副本建议请求字节数”。在“Kubernetes 扩缩”=>“自动扩缩器”=>“每个副本请求推荐”下以及 Cloud Monitoring 的 Kubernetes 扩缩指标组中都提供了相关指标信息。您还可以使用这些指标来构建您自己的自定义和排名视图和体验,并导出最新的优化机会。


相关推荐