管理 OpenShift 虚拟化扩展

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

openshift-virtualization 插件提供了一键式操作体验,可在 OpenShift 虚拟化服务集群上快速部署虚拟化平台。 该附加组件在所有虚拟化服务集群上默认自动启用。

了解 OpenShift 虚拟化扩展组件

OpenShift 虚拟化附加组件负责协调以下操作器的部署和管理,以便在您的虚拟化服务集群中启用虚拟机功能:

OpenShift 虚拟化运维工程师(超融合)
提供运行和管理虚拟机的核心虚拟化功能。 如需了解更多信息,请参阅 《安装 OpenShift 虚拟化》。
新墨西哥州立大学接线员
管理虚拟机和节点的网络配置。 如需了解更多信息,请参阅 《关于 Kubernetes NMState 操作员》。
Node 维护操作员
负责处理虚拟机工作负载的节点维护操作。 如需了解更多信息,请参阅 Node 维护操作员。

来自 Red Hat OperatorHub 的这些操作符在虚拟化服务集群上无法安装。 该插件负责管理所有运营商版本的安装和更新。

附加功能

OpenShift 虚拟化扩展具有以下特点:

自动启用
创建虚拟化服务集群时,该附加组件会自动启用。 您无法通过 CLI 或控制台手动启用该插件。
无法禁用
不支持禁用该插件。 控制台中没有此选项,且尝试通过命令行界面(CLI)禁用它会导致错误。
无配置选项
该插件没有用户可配置的参数。
版本绑定
该附加组件版本与虚拟化服务集群版本相关联(例如,4.21 )。 该插件支持当前的小版本以及下一个小版本( n+1 )。 例如,附加组件版本 4.21 可与虚拟化服务版本 4.21 和 4.22 配合使用。
自动补丁更新
系统将使用 “自动批准”策略自动将补丁更新应用到您的集群。 IBM 将在生产环境上线前至少一周通知您变更详情。 如果镜像的操作符目录中存在新版本,所有依赖的操作符都会自动更新。 该插件使用 stable 频道发布所有操作员更新。
手动版本升级
若要将插件升级到新版本(例如,从 4.20 升级到 4.21 ),您必须先将虚拟化服务集群升级到目标版本,然后使用 CLI 命令 ibmcloud ks cluster addon update openshift-virtualization --cluster CLUSTER_NAME_OR_ID --version VERSION 手动更新插件版本。
更新通道
该插件通过 stable 通道获取更新,该通道提供用于修复漏洞和解决安全问题的Z-stream更新。
版本兼容性
每个附加组件版本均支持当前的虚拟化服务版本(n)及其下一个次要版本( n+1 )。 例如,附加组件版本 4.20 支持虚拟化服务版本 4.20 和 4.21。
定制目录
在启用插件期间,系统会自动创建一个包含镜像相关运算符的自定义目录,并将其放置在 openshift-marketplace 命名空间中。

已安装的资源

启用该插件后,将创建以下资源:

父操作符命名空间
ibm-openshift-virt-operator 命名空间包含与父级运营商相关的所有资源,其中包括一个类型为 ibmopenshiftvirtualizations.openshiftvirt.ibm.io 的自定义资源。
定制目录
该自定义目录位于 openshift-marketplace 命名空间中。
从属运算符
父运算符充当元运算符,并在协调过程中安装以下依赖运算符:
  • OpenShift 虚拟化(位于 openshift-cnv 命名空间中)
  • NMState(位于 openshift-nmstate 命名空间中)
  • Node 维护操作员(位于 openshift-operators 命名空间中)

查看附加组件信息

如果您的账户已启用该功能标志,则可以通过 CLI 查看有关“OpenShift 虚拟化”附加组件的信息。 如果该功能开关未启用,请改用控制台和集群详细信息来查看插件状态。

列出已安装的插件

列出虚拟化服务集群中已安装的所有附加组件。

ibmcloud ks cluster addon ls --cluster CLUSTER_NAME_OR_ID

示例输出:

Name                       Version   Health State   Health Status
ibm-storage-operator       1.0       normal         Addon Ready. For more info: http://ibm.biz/addon-state (H1500)
openshift-virtualization   4.21      normal         Addon Ready. For more info: http://ibm.biz/addon-state (H1500)

查看扩展程序详情

如果您的账户已启用该功能开关,请查看有关“OpenShift 虚拟化”附加组件的详细信息。

ibmcloud ks cluster addon get --addon openshift-virtualization --cluster CLUSTER_NAME_OR_ID

示例输出:

name:            openshift-virtualization
Version:         4.21
Health State:    normal
Health Status:   Addon Ready. For more info: http://ibm.biz/addon-state (H1500)

列出可用的附加组件版本

如果您的账户已启用该功能开关,请列出 OpenShift 虚拟化插件的可用版本。

ibmcloud ks cluster addon versions --addon openshift-virtualization

示例输出:

Name                       Version   Supported Kubernetes Range   Supported OpenShift Range   Kubernetes Default   OpenShift Default
openshift-virtualization   4.19      unsupported                  >=4.19.0 <4.21.0            -                    >=4.19.0 <4.21.0
openshift-virtualization   4.21      unsupported                  >=4.21.0 <4.23.0            -                    >=4.21.0 <4.23.0

此输出显示了每个附加组件版本支持哪些虚拟化服务版本。

检查配置选项

如果您的账户已启用该功能开关,您可以确认“OpenShift 虚拟化”附加组件不支持配置选项。

ibmcloud ks cluster addon options --addon openshift-virtualization

示例输出:

FAILED
No addon installation options are available for openshift-virtualization.

更新扩展程序

OpenShift 虚拟化扩展支持两种类型的更新:

自动补丁更新

补丁更新(例如从 4.21.1 到 4.21.2 )会自动应用到所有集群。 这些更新包含错误修复和安全补丁。 IBM 在将补丁更新部署到生产环境之前,至少提前一周发出通知。

自动补丁更新过程将执行以下操作:

  1. 重新启动父操作符
  2. 核对目录来源
  3. 根据 stable 频道订阅更新所有子操作符

手动版本升级

若要将 OpenShift 虚拟化附加组件升级到较新的次要版本(例如从 4.20 升级到 4.21 ),您必须先将虚拟化服务集群升级到目标版本。 如果您的账户未启用该功能开关,请在尝试通过命令行界面(CLI)进行更新之前,联系 IBM 支持团队。

  1. 将您的虚拟化服务集群升级到目标版本。 如需更多信息,请参阅“更新集群”。

  2. 集群升级完成后,请将插件更新至对应版本。

    ibmcloud ks cluster addon update openshift-virtualization --cluster CLUSTER_NAME_OR_ID --version VERSION
    

    例如,要更新到版本 4.21:

    ibmcloud ks cluster addon update openshift-virtualization --cluster my-rovs-cluster --version 4.21
    

为了确保最佳兼容性和支持,强烈建议将插件版本更新至与您的集群版本一致。

禁用该插件

在虚拟化服务集群(第 1 阶段)上,不支持禁用“OpenShift”虚拟化附加组件。 该插件是虚拟化服务的核心组件,无法卸载。 如果您的账户已启用该功能开关,且您尝试执行该 CLI 命令,则该命令会引发错误。

ibmcloud ks cluster addon disable openshift-virtualization --cluster CLUSTER_NAME_OR_ID

计划在第二阶段为标准 ROKS 集群添加卸载插件的功能。

附加组件故障排除

如果您在使用 OpenShift 虚拟化附加组件时遇到问题,请在提交支持工单前收集以下信息。

收集插件信息

运行以下命令,以获取有关 OpenShift 虚拟化附加组件及其相关操作器的详细信息。

  1. 获取 IBM 上的 OpenShift 虚拟化自定义资源。

    oc get ibmopenshiftvirtualizations.openshiftvirt.ibm.io -n ibm-openshift-virt-operator -o yaml
    
  2. 列出父操作符命名空间中的所有资源。

    oc get all -n ibm-openshift-virt-operator
    
  3. 检查 OpenShift 虚拟化操作员的状态。

    oc get csv -n openshift-cnv
    
  4. 查看 HyperConverged 的资源详情。

    oc get hco -n openshift-cnv kubevirt-hyperconverged -o yaml
    
  5. 列出 OpenShift 虚拟化命名空间中的所有资源。

    oc get all -n openshift-cnv
    
  6. 查看 NMState 运营商的状态。

    oc get csv -n openshift-nmstate
    
  7. 列出 NMState 命名空间中的所有资源。

    oc get all -n openshift-nmstate
    
  8. 获取 NMState 的资源详情。

    oc get nmstate nmstate -o yaml
    
  9. 列出 NodeNetworkConfigurationPolicy 的相关资源。

    oc get nncp
    
  10. 请检查 Node 维护操作员的状态。

    oc get csv -n openshift-operators
    
  11. 列出 operators 命名空间中的所有资源。

    oc get all -n openshift-operators
    
  12. 请检查自定义目录源。

    oc get catalogsource custom-redhat-operators-openshiftvirt -n openshift-marketplace
    
  13. 列出自定义目录中的包清单。

    oc get packagemanifests -n openshift-marketplace | grep "Custom Redhat Operators for Openshift Virtualization"
    

提交支持工单

如果问题仍未解决,请提交支持工单,并附上故障排除命令的执行结果。 有关更多信息,请参阅获取支持。

后续步骤