5.4. 配置 MachineAutoscaler
部署 ClusterAutoscaler 后,请部署 MachineAutoscaler 资源来引用用于扩展集群的 MachineSet。
重要
部署 ClusterAutoscaler 资源后,您必须至少部署一个 MachineAutoscaler 资源。
注意
您必须为每个 MachineSet 配置单独的资源。请记住,每个地区中的 MachineSet 都不同,因此请考虑是否要在多个地区中启用机器扩展。您要扩展的 MachineSet 中必须至少有一台机器。
5.4.1. MachineAutoscaler 资源定义
此 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
- 指定
MachineAutoscaler
名称。为了更容易识别此 MachineAutoscaler 会扩展哪些 MachineSet,请指定或注明要扩展的 MachineSet 的名称。MachineSet 名称采用以下形式:<clusterid>-<machineset>-<aws-region-az>
- 2
- 指定在 ClusterAutoscaler 启动集群扩展后必须保留在指定 AWS 区域中的指定类型的最小 Machine 数量。不要将此值设置为
0
。 - 3
- 指定 ClusterAutoscaler 初始化集群扩展后可在指定 AWS 区域中部署的指定类型的最大 Machine 数量。确保
ClusterAutoscaler
定义中的maxNodesTotal
值足够大,以便 MachineAutoscaler 可以部署这个数量的机器。 - 4
- 在这一部分,请提供用于描述要扩展的现有 MachineSet 的值。
- 5
kind
参数值始终为MachineSet
。- 6
name
值必须与现有 MachineSet 的名称匹配,如metadata.name
参数值中所示。
5.4.2. 部署 MachineAutoscaler
要部署 MachineAutoscaler,请创建 MachineAutoscaler
资源的实例。
流程
-
为
MachineAutoscaler
资源创建一个 YAML 文件,其中包含自定义的资源定义。 在集群中创建资源:
$ oc create -f <filename>.yaml 1
- 1
<filename>
是您自定义的资源文件的名称。