第 5 章 启用 Windows 容器工作负载
在向集群中添加 Windows 工作负载前,您必须安装由 OpenShift Container Platform OperatorHub 提供的 Windows Machine Config Operator(WMCO)。WMCO 在集群中管理部署和管理 Windows 工作负载的过程。
WMCO 管理的 Windows 实例不支持双 NIC。
先决条件
-
可以使用具有
cluster-admin
权限的账户访问 OpenShift Container Platform 集群。 -
已安装 OpenShift CLI(
oc
)。 -
已使用安装程序置备的基础架构安装集群,或使用用户置备的基础架构在
install-config.yaml
文件中设置了platform: none
字段。 - 您已为集群配置了带有 OVN-Kubernetes 的混合网络。这必须在集群安装过程中完成。如需更多信息,请参阅配置混合网络。
- 运行 OpenShift Container Platform 集群版本 4.6.8 或更高版本。
WMCO 部署的 Windows 实例使用容器运行时配置。因为 WMCO 安装和管理运行时,所以请不要在节点上手动安装容器。
其他资源
- 有关 Windows Machine Config Operator 的完整先决条件,请参阅 Windows Machine Config Operator 先决条件。
5.1. 安装 Windows Machine Config Operator
您可以使用 Web 控制台或 OpenShift CLI(oc
)安装 Windows Machine Config Operator。
- 使用集群范围代理 的集群中不支持 WMCO,因为 WMCO 无法通过工作负载的代理连接路由流量。
-
由于 Windows 操作系统中的一个限制,类 E 的
clusterNetwork
CIDR 地址(如240.0.0.0
)与 Windows 节点不兼容。
5.1.1. 使用 Web 控制台安装 Windows Machine Config Operator
您可以使用 OpenShift Container Platform Web 控制台安装 Windows Machine Config Operator(WMCO)。
WMCO 管理的 Windows 实例不支持双 NIC。
流程
-
从 OpenShift Container Platform Web 控制台中的 Adminstrator 视角进入 Operators
OperatorHub 页面。 -
使用 Filter by keyword 复选框在目录中搜索
Windows Machine Config Operator
。点 Windows Machine Config Operator 标题。 - 查看 Operator 信息并点 Install。
在 Install Operator 页面中:
- 选择 stable 频道作为 更新频道。stable 频道允许安装 WMCO 的最新稳定版本。
- 安装模式 被预先配置,因为 WMCO 只能在单一命名空间中可用。
-
为 WMCO 选择 Installed Namespace。默认 Operator 建议命名空间为
openshift-windows-machine-config-operator
。 - 点 Enable Operator recommended cluster monitoring on the Namespace 为 WMCO 启用集群监控。
选择一个批准策略。
- Automatic 策略允许 Operator Lifecycle Manager(OLM)在有新版本可用时自动更新 Operator。
- Manual 策略需要拥有适当凭证的用户批准 Operator 更新。
点 Install。WMCO 现在列在 Installed Operators 页中。
注意WMCO 会自动安装到您定义的命名空间中,如
openshift-windows-machine-config-operator
。- 验证 Status 显示为 Succeeded 以确认成功安装了 WMCO。
5.1.2. 使用 CLI 安装 Windows Machine Config Operator
您可以使用 OpenShift CLI(oc
)安装 Windows Machine Config Operator(WMCO)。
WMCO 管理的 Windows 实例不支持双 NIC。
流程
为 WMCO 创建命名空间。
为 WMCO 创建一个
Namespace
对象 YAML 文件。例如,wmco-namespace.yaml
:apiVersion: v1 kind: Namespace metadata: name: openshift-windows-machine-config-operator 1 labels: openshift.io/cluster-monitoring: "true" 2
创建命名空间:
$ oc create -f <file-name>.yaml
例如:
$ oc create -f wmco-namespace.yaml
为 WMCO 创建 Operator 组。
创建
OperatorGroup
对象 YAML 文件。例如,wmco-og.yaml
:apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: windows-machine-config-operator namespace: openshift-windows-machine-config-operator spec: targetNamespaces: - openshift-windows-machine-config-operator
创建 Operator 组:
$ oc create -f <file-name>.yaml
例如:
$ oc create -f wmco-og.yaml
为 WMCO 订阅命名空间。
创建
Subscription
对象 YAML 文件。例如,wmco-sub.yaml
:apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: windows-machine-config-operator namespace: openshift-windows-machine-config-operator spec: channel: "stable" 1 installPlanApproval: "Automatic" 2 name: "windows-machine-config-operator" source: "redhat-operators" 3 sourceNamespace: "openshift-marketplace" 4
创建订阅:
$ oc create -f <file-name>.yaml
例如:
$ oc create -f wmco-sub.yaml
WMCO 现已安装到
openshift-windows-machine-config-operator
中。
验证 WMCO 安装:
$ oc get csv -n openshift-windows-machine-config-operator
输出示例
NAME DISPLAY VERSION REPLACES PHASE windows-machine-config-operator.2.0.0 Windows Machine Config Operator 2.0.0 Succeeded