26.4. 自动缩放
您可以使用 oc autoscale
命令创建 pod 横向自动扩展,并指定要运行的 pod 的最小和最大数量,以及 pod 的目标 CPU 使用率或 内存使用率 。
根据内存使用率自动缩放仅是一项技术预览功能。
创建横向 pod 自动缩放器后,它将开始尝试查询 Heapster 的指标。Heapster 获取初始指标之前,可能需要过两分钟。
在 Heapster 中提供指标后,pod 横向自动扩展会计算当前指标使用率与所需指标使用率的比率,并相应地扩展或缩减。缩放将以固定间隔进行,但可能需要一到两分钟时间,才会让其进入 Heapster。
对于复制控制器,这种缩放直接与复制控制器的副本对应。对于部署配置,缩放直接与部署配置的副本计数对应。注意,自动缩放仅应用到 Complete
阶段的最新部署。
OpenShift Container Platform 会自动考虑资源情况,并防止在资源激增期间进行不必要的自动缩放,比如在启动过程中。处于 unready
状态的 pod 在扩展时具有 0 CPU
用量,自动扩展在缩减时会忽略这些 pod。没有已知指标的 Pod 在扩展时具有 0% CPU
用量,在缩减时具有 100% CPU
用量。这在 HPA 决策过程中提供更高的稳定性。要使用这个功能,您必须配置 就绪度检查 来确定新 pod 是否准备就绪。