Machine API 是基于上游 Cluster API 项目和自定义 OpenShift Container Platform 资源的主要资源的组合。
对于 OpenShift Container Platform 4.17 集群,在集群安装完成后,Machine API 执行所有节点主机配置管理操作。由于这个系统,OpenShift Container Platform 4.17 在公共或私有云基础设施之上提供了一种弹性的、动态的配置方法。
- 机器
-
描述节点主机的基本单元。机器具有一个providerSpec
规范,该规范描述了为不同云平台提供的计算节点类型。例如,计算节点的机器类型可能会定义特定的机器类型和所需的元数据。
- 机器集
-
MachineSet
资源是计算机器的组。计算机器集与计算机器的关系,如同副本集与 Pod 的关系。如果您需要更多计算机器或必须缩减其规模,请更改MachineSet
资源上的replicas
字段以满足您的计算需求。
|
控制平面机器集为受支持的控制平面机器提供与计算机器集为计算机器提供的类似的管理功能。
|
- 机器自动缩放器
-
MachineAutoscaler
资源会自动缩放云中的计算机器。您可以为指定计算机器集中的节点设置最小和最大缩放边界,机器自动缩放器会维护该节点范围。
MachineAutoscaler
对象在ClusterAutoscaler
对象存在后生效。ClusterAutoscaler
和MachineAutoscaler
资源都由ClusterAutoscalerOperator
对象提供。
- 集群自动缩放器
-
此资源基于上游集群自动缩放器项目。在 OpenShift Container Platform 实现中,它通过扩展计算机器集 API 与 Machine API 集成。您可以使用集群自动缩放器以以下方式管理您的集群
-
为核心、节点、内存和 GPU 等资源设置集群范围的缩放限制
-
设置优先级,以便集群优先处理 Pod,并且不会为不太重要的 Pod 在线添加新节点
-
设置缩放策略,以便您可以向上扩展节点,但不能向下扩展节点
- 机器健康检查
-
MachineHealthCheck
资源检测机器不健康时,会删除它,并在受支持的平台上创建一台新机器。
在 OpenShift Container Platform 3.11 版本中,您无法轻松推出多区域架构,因为集群不管理机器配置。从 OpenShift Container Platform 4.1 版本开始,此过程更容易。每个计算机器集都作用域到单个区域,因此安装程序代表您跨可用区发送计算机器集。然后,由于您的计算是动态的,并且在区域故障面前,您总是有一个区域用于必须重新平衡机器时。在没有多个可用区的全球 Azure 区域中,您可以使用可用性集来确保高可用性。自动缩放器在集群的整个生命周期中提供尽力而为的平衡。