安装 OpenShift 虚拟化操作器

虚拟私有云 4.17 后来 仅限裸机工作节点 仅限RHCOS

为群集设置存储后,安装 OpenShift Virtualization Operator 以启用虚拟机管理功能。

OpenShift 虚拟化服务 已预装操作员,因此无需手动安装。 OpenShift 虚拟化服务 集群中预装了 OpenShift 虚拟化、NMState和 Node 维护操作员,并由 openshift-virtualization 插件进行管理。 本页面仅适用于通过手动安装 OpenShift 虚拟化功能构建的标准 OpenShift 集群。

准备工作

在安装 OpenShift 虚拟化操作器之前,请完成以下步骤:

  1. 创建 Red Hat OpenShift on IBM Cloud 集群,要求如下:

    • 裸机工作节点:虚拟化工作负载所需
    • RHCOS 操作系统:需要(非 RHEL)
    • OVN- Kubernetes CNI:高级网络功能需要
    • OpenShift 4.20 或更高版本:需要全面虚拟化支持
    • 出站流量保护:必须禁用(可在创建群集时设置,也可在创建后禁用)

    您可以在 UI 或 CLI 中创建群集时禁用出站流量保护,或在创建群集后使用步骤 3 中的命令禁用它。

  2. 为 OpenShift 虚拟化设置存储。 您的群集必须有一个正确配置的存储解决方案(ODF 或 VPC File Storage )。

  3. 如果在创建群集时未禁用出站流量保护,请现在禁用。

    ibmcloud oc vpc outbound-traffic-protection disable -c CLUSTER_NAME
    

    只有在创建群集时未禁用出站流量保护的情况下,才需要执行此步骤。

  4. 启用默认目录源。

    ibmcloud ks cluster config --admin -c CLUSTER_NAME
    oc patch operatorhub cluster --type json -p '[{"op": "add", "path": "/spec/disableAllDefaultSources", "value": false}]'
    
  5. 验证目录源是否可用。

    oc get catalogsource -n openshift-marketplace
    
  6. 确认 OpenShift 虚拟化软件包可用。

    oc get packagemanifests -n openshift-marketplace | grep kubevirt
    

从控制台安装 OpenShift 虚拟化操作器

  1. 登录 IBM Cloud 控制台并导航至群集。

  2. 单击 OpenShift 网络控制台,打开 OpenShift 控制台。

  3. 在 OpenShift 控制台中,导航至生态系统 > OperatorHub (或 Operators > OperatorHub )。

  4. 搜索 OpenShift 虚拟化

  5. 单击 OpenShift 虚拟化磁贴,然后单击安装

  6. 在“安装操作员”页面上,请配置以下设置:

    • 更新频道:选择适合您的 OpenShift 版本的频道
    • 安装模式:群集上的所有命名空间(默认)
    • 安装的命名空间:OPENSHIFT-CNV(默认)
    • 更新批准:自动(推荐)
  7. 单击安装以开始安装。

  8. 请等待运营商安装完成。 准备就绪后,状态将变为“成功”。

从 CLI 安装 OpenShift 虚拟化操作器

  1. 为“OpenShift”虚拟化操作员创建一个命名空间。
    oc create namespace openshift-cnv
    
  2. 创建一个 OperatorGroup。
    cat <<EOF | oc apply -f -
    apiVersion: operators.coreos.com/v1
    kind: OperatorGroup
    metadata:
      name: kubevirt-hyperconverged-group
      namespace: openshift-cnv
    spec:
      targetNamespaces:
      - openshift-cnv
    EOF
    
  3. 创建订阅以安装操作员。
    cat <<EOF | oc apply -f -
    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.20.8
      channel: "stable"
    EOF
    
  4. 验证操作器的安装。
    oc get csv -n openshift-cnv
    
    直到 PHASE 栏显示 Succeeded

创建 HyperConverged 自定义资源

安装操作员后,创建 HyperConverged 自定义资源,以部署 OpenShift 虚拟化组件。

了解节点位置

Red Hat OpenShift on IBM Cloud 集群中没有标为 master 的节点。 您必须配置节点放置策略,以指定虚拟化组件和 VM 工作负载的运行位置。

从控制台创建 HyperConverged CR

  1. 在 OpenShift 控制台中,导航至生态系统 > 已安装的操作符 (或早期版本中的操作符 > 已安装的操作符 )。

  2. 单击 OpenShift 虚拟化

  3. 点击 HyperConverged 选项卡。

  4. 单击创建 HyperConverged

  5. 为基础架构组件配置节点位置:

    • 单击 Infra 选项卡
    • 为目标 VSI 节点添加节点选择器或容限
  6. 为 VM 工作负载配置节点位置:

    • 单击“工作量”选项卡
    • 为目标裸机节点添加节点选择器或容限
  7. 单击创建

从 CLI 创建 HyperConverged CR

使用默认配置创建 HyperConverged 自定义资源。

cat <<EOF | oc apply -f -
apiVersion: hco.kubevirt.io/v1beta1
kind: HyperConverged
metadata:
  name: kubevirt-hyperconverged
  namespace: openshift-cnv
spec:
EOF

验证安装

  1. 检查 HyperConverged 资源状态。

    oc get hyperconverged -n openshift-cnv
    

    直到 PHASE 栏显示 Deployed

  2. 验证虚拟化 pod 是否正在运行。

    oc get pods -n openshift-cnv
    
  3. 检查 OpenShift 控制台中的虚拟化菜单。

    • 登录 OpenShift 控制台
    • 在主导航菜单中查找 " 虚拟化
  4. 验证已创建存储配置文件。

    oc get storageprofile
    
  5. 如果使用 VPC File Storage,请按照 为 OpenShift 虚拟化设置存储 中的说明配置存储配置文件。

诊断安装问题

HyperConverged 资源部署失败

如果 HyperConverged 资源部署失败并出现节点放置错误:

  1. 检查节点标签。
    oc get nodes --show-labels
    
  2. 使用正确的节点选择器更新 HyperConverged CR。
    oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
    
  3. 查看 HyperConverged 操作员日志。
    oc logs -n openshift-cnv -l name=hyperconverged-cluster-operator
    

操作员安装失败

如果操作员安装失败:

  1. 确认目录源已启用。
    oc get catalogsource -n openshift-marketplace
    
  2. 检查操作员订阅状态。
    oc get subscription -n openshift-cnv
    
  3. 查看操作员日志。
    oc logs -n openshift-cnv -l app=kubevirt-hyperconverged-operator
    

后续步骤

安装 OpenShift Virtualization 后:

有关完整的安装说明,请参阅 Red Hat 文档中的安装 OpenShift Virtualization