机器配置操作员 (MCO) 使用启动镜像来启动 Red Hat Enterprise Linux CoreOS (RHCOS) 节点。默认情况下,OpenShift Container Platform 不管理启动镜像。
这意味着集群中的启动镜像不会随着集群一起更新。例如,如果您的集群最初使用 OpenShift Container Platform 4.12 创建,则集群用于创建节点的启动镜像仍然是 4.12 版本,即使您的集群已升级到更高版本也是如此。如果集群随后升级到 4.13 或更高版本,新节点将继续使用相同的 4.12 镜像进行扩展。
为了避免这些问题,您可以配置集群在更新集群时更新启动镜像。通过修改 `MachineConfiguration` 对象,您可以启用此功能。目前,更新启动镜像的功能仅适用于 Google Cloud Platform (GCP) 集群,并且作为技术预览功能适用于 Amazon Web Services (AWS) 集群。集群 CAPI 运算符管理的集群不支持此功能。
|
AWS 的更新启动镜像功能仅为技术预览功能。技术预览功能不受 Red Hat 生产服务级别协议 (SLA) 支持,并且可能功能不完整。Red Hat 不建议在生产环境中使用它们。这些功能可让您抢先体验即将推出的产品功能,从而能够在开发过程中测试功能并提供反馈。
|
如果您未在机器集中使用名为 worker-user-data
的默认用户数据密钥,或者您已修改 worker-user-data
密钥,则不应使用托管启动镜像更新。这是因为机器配置操作符 (MCO) 会更新机器集以使用密钥的托管版本。通过使用托管启动镜像功能,您将放弃自定义存储在机器集对象中的密钥的功能。
包含启动镜像引用的示例机器集
apiVersion: machine.openshift.io/v1beta1
kind: MachineSet
metadata:
name: ci-ln-hmy310k-72292-5f87z-worker-a
namespace: openshift-machine-api
spec:
# ...
template:
# ...
spec:
# ...
providerSpec:
# ...
value:
disks:
- autoDelete: true
boot: true
image: projects/rhcos-cloud/global/images/rhcos-412-85-202203181601-0-gcp-x86-64 (1)
# ...
1 |
此启动镜像与最初安装的 OpenShift Container Platform 版本相同,在此示例中为 OpenShift Container Platform 4.12,与集群的当前版本无关。启动镜像在机器集中的表示方式取决于平台,因为 providerSpec 字段的结构因平台而异。 |
如果您将集群配置为更新启动镜像,则机器集中引用的启动镜像将与集群的当前版本匹配。