3.6. 关于机器自动扩展

机器自动扩展会调整您在 OpenShift Container Platform 集群中部署的机器集中的 Machine 数量。您可以扩展默认 worker 机器集,以及您创建的其他机器集。当集群没有足够资源来支持更多部署时,机器自动扩展会增加 Machine。对 MachineAutoscaler 资源中的值(如最小或最大实例数量)的任何更改都会立即应用到目标机器设置中。

重要

您必须部署机器自动扩展才能使用集群自动扩展功能来扩展机器。集群自动扩展使用机器自动扩展集上的注解来确定可扩展的资源。如果您在没有定义机器自动扩展的情况下定义集群自动扩展,集群自动扩展永远不会扩展集群。

3.6.1. MachineAutoscaler 资源定义

MachineAutoscaler 资源定义显示了机器自动扩展器的参数和示例值。

apiVersion: "autoscaling.openshift.io/v1beta1"
kind: "MachineAutoscaler"
metadata:
  name: "worker-us-east-1a" 1
  namespace: "openshift-machine-api"
spec:
  minReplicas: 1 2
  maxReplicas: 12 3
  scaleTargetRef: 4
    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet 5
    name: worker-us-east-1a 6
1
指定机器自动扩展名称。为了更容易识别此机器自动扩展会扩展哪些机器集,请指定或注明要扩展的机器集的名称。机器集名称的格式如下: < clusterid>-<machineset>-<region&gt;。
2
指定在机器自动扩展启动集群扩展后必须保留在指定区域中的指定类型的最小机器数量。如果在 AWS、GCP 或 Azure 中运行,则该值可设置为 0。对于其他供应商,请不要将此值设置为 0

对于用于特殊工作负载的高价或有限使用硬件,或者扩展具有额外大型机器的机器集,您可以将此值设置为 0 来节约成本。如果机器没有使用,集群自动扩展会将机器集缩减为零。

重要

对于安装程序置备的基础架构,请不要将 OpenShift Container Platform 安装过程中创建的三台计算机器集的 spec.minReplicas 值设置为 0。

3
指定集群自动扩展启动集群扩展后可在指定区域中部署的指定类型的最大机器数量。确保 ClusterAutoscaler 资源定义的 maxNodesTotal 值足够大,以便机器自动扩展器可以部署这个数量的机器。
4
在本小节中,提供用于描述要扩展的现有机器集的值。
5
kind 参数值始终为 MachineSet
6
name 值必须与现有机器集的名称匹配,如 metadata.name 参数值所示。