7.4. 使用 CLI 安装 OpenShift Virtualization
安装 OpenShift Virtualization 以便在 OpenShift Container Platform 集群中添加虚拟化功能。您可以使用命令行将清单应用到集群,以订阅和部署 OpenShift Virtualization Operator。
要指定 OpenShift Virtualization 安装其组件的节点,请配置节点放置规则。
7.4.1. 先决条件 复制链接链接已复制到粘贴板!
- 在集群上安装 OpenShift Container Platform 4.12。
-
安装 OpenShift CLI (
oc) 。 -
以具有
cluster-admin特权的用户身份登录。
7.4.2. 使用 CLI 订阅 OpenShift virtualization 目录 复制链接链接已复制到粘贴板!
在安装 OpenShift Virtualization 前,需要订阅到 OpenShift Virtualization catalog。订阅会授予 OpenShift virtualization Operator 对 openshift-cnv 命名空间的访问权限。
为了订阅,在您的集群中应用一个单独的清单(manifest)来配置 Namespace、OperatorGroup 和 Subscription 对象。
先决条件
- 在集群上安装 OpenShift Container Platform 4.12。
-
安装 OpenShift CLI (
oc) 。 -
以具有
cluster-admin特权的用户身份登录。
流程
创建一个包含以下清单的 YAML 文件:
apiVersion: v1 kind: Namespace metadata: name: openshift-cnv --- apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: kubevirt-hyperconverged-group namespace: openshift-cnv spec: targetNamespaces: - openshift-cnv --- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: hco-operatorhub namespace: openshift-cnv spec: source: redhat-operators sourceNamespace: openshift-marketplace name: kubevirt-hyperconverged startingCSV: kubevirt-hyperconverged-operator.v4.12.20 channel: "stable"1 - 1
- 使用
stable频道可确保您安装与 OpenShift Container Platform 版本兼容的 OpenShift Virtualization 版本。
运行以下命令,为 OpenShift Virtualization 创建所需的
Namespace、OperatorGroup和Subscription对象:$ oc apply -f <filename>.yaml
验证
您必须验证订阅创建是否成功,然后才能安装 OpenShift Virtualization。
检查
ClusterServiceVersion(CSV)对象是否已成功创建。运行以下命令并验证输出:$ oc get csv -n {CNVNamespace}如果成功创建 CSV,输出会显示一个条目,其中包含
kubevirt-hyperconverged-operatorchannel、DISPLAY值、OpenShift Virtualization的 DISPLAY 值和PHASE值Succeeded,如下例所示:输出示例
NAME DISPLAY VERSION REPLACES PHASE kubevirt-hyperconverged-operator.v4.12.20 OpenShift Virtualization 4.12.20 kubevirt-hyperconverged-operator.v4.11.0 Succeeded检查
HyperConverged自定义资源(CR)是否具有正确的版本。运行以下命令并验证输出:$ oc get hco -n {CNVNamespace} kubevirt-hyperconverged -o json | jq .status.versions输出示例
{ "name": "operator", "version": "4.12.20" }验证
HyperConvergedCR 条件。运行以下命令并检查输出:$ oc get hco kubevirt-hyperconverged -n {CNVNamespace} -o json | jq -r '.status.conditions[] | {type,status}'输出示例
{ "type": "ReconcileComplete", "status": "True" } { "type": "Available", "status": "True" } { "type": "Progressing", "status": "False" } { "type": "Degraded", "status": "False" } { "type": "Upgradeable", "status": "True" }
您可以在 YAML 文件中配置证书轮转参数。
7.4.3. 使用 CLI 部署 OpenShift Virtualization Operator 复制链接链接已复制到粘贴板!
您可以使用 oc CLI 部署 OpenShift Virtualization Operator。
先决条件
-
在
openshift-cnv命名空间中的一个有效的 OpenShift virtualization 目录订阅。
流程
创建一个包含以下清单的 YAML 文件:
apiVersion: hco.kubevirt.io/v1beta1 kind: HyperConverged metadata: name: kubevirt-hyperconverged namespace: openshift-cnv spec:运行以下命令来部署 OpenShift Virtualization Operator:
$ oc apply -f <file_name>.yaml
验证
通过观察
openshift-cnv命名空间中集群服务版本(CSV)的PHASE来确保 OpenShift Virtualization 已被成功部署。运行以下命令:$ watch oc get csv -n openshift-cnv如果部署成功,则会显示以下输出:
输出示例
NAME DISPLAY VERSION REPLACES PHASE kubevirt-hyperconverged-operator.v4.12.20 OpenShift Virtualization 4.12.20 Succeeded
7.4.4. 后续步骤 复制链接链接已复制到粘贴板!
您可能还需要额外配置以下组件:
- hostpath 置备程序是设计用于 OpenShift Virtualization 的本地存储置备程序。如果要为虚拟机配置本地存储,您必须首先启用 hostpath 置备程序。