3.7. 已知问题
如果您在 OpenShift Container Platform 4.9.4 或更早版本中使用 OpenShift Virtualization,且带有 BPG 路由条目的 Border Gateway Protocol 守护进程修改网络接口,则 BPG 路由将转换为静态路由。
nmstate-1.0.2-14.el8_4.noarch
随 OpenShift Container Platform 4.9.4 一起提供,无法正确处理 Bird Internet Routing Daemon 协议。您可以通过将集群升级到 OpenShift Container Platform 4.9.5 或更高版本来防止这个问题。如果 BGP 路由已经转换为静态路由,则必须从网络接口中删除静态路由,并手动添加路由。
更新至 OpenShift Virtualization 4.9.6 会导致一些虚拟机(VM) 处于实时迁移循环中。如果虚拟机清单中的
spec.volumes.containerDisk.path
字段设置为相对路径,会出现这种情况。-
作为临时解决方案,删除并重新创建 VM 清单,将
spec.volumes.containerDisk.path
字段的值设置为绝对路径。然后您可以更新 OpenShift Virtualization。
-
作为临时解决方案,删除并重新创建 VM 清单,将
-
如果您热插虚拟磁盘,然后强制删除
virt-launcher
pod,则可能会丢失数据。这是因为一个竞争条件可能会导致虚拟机磁盘的内容从持久性卷中擦除。(BZ#2007397)
- 如果虚拟机在版本 4.8 之前引用 OpenShift Virtualization 提供的已删除模板,则编辑虚拟机会失败。在 OpenShift Virtualization 4.8 及更新的版本中,OpenShift Virtualization Operator 会自动重新创建已删除的 OpenShift Virtualization 提供的模板。
如果在源可用前启动克隆操作,则操作会无限期停止。这是因为克隆授权在克隆操作启动前过期。(BZ#1855182)
-
作为临时解决方案,删除正在请求克隆的
DataVolume
对象。当源可用时,重新创建您删除的DataVolume
对象,以便克隆操作可以成功完成。
-
作为临时解决方案,删除正在请求克隆的
如果您的 OpenShift Container Platform 集群使用 OVN-Kubernetes 作为默认 Container Network Interface(CNI)供应商,则无法将 Linux 网桥或绑定附加到主机的默认接口,因为 OVN-Kubernetes 的主机网络拓扑发生了变化。(BZ#1885605)
- 作为临时解决方案,您可以使用连接到主机的二级网络接口,或切换到 OpenShift SDN 默认 CNI 供应商。
运行无法实时迁移的虚拟机可能会阻止 OpenShift Container Platform 集群升级。这包括使用 hostpath-provisioner 存储或 SR-IOV 网络接口的虚拟机。
作为临时解决方案,您可以重新配置虚拟机以便在集群升级过程中关闭它们。在虚拟机配置文件的
spec
部分中:-
删除
evictionStrategy: LiveMigrate 字段
。有关如何配置驱除策略的更多信息,请参阅配置虚拟机驱除策略。 -
将
runStrategy
字段设置为Always
。
-
删除
作为临时解决方案,请运行以下命令设置默认 CPU 模型:
注意您必须在启动支持实时迁移的虚拟机前进行此更改。
$ oc annotate --overwrite -n openshift-cnv hyperconverged kubevirt-hyperconverged kubevirt.kubevirt.io/jsonpatch='[ { "op": "add", "path": "/spec/configuration/cpuModel", "value": "<cpu_model>" 1 } ]'
- 1
- 将
<cpu_model>
替换为实际 CPU 型号值。要确定此值,您可以为所有节点运行oc describe node <node>
并查看cpu-model-<name>
标签。选择所有节点上出现的 CPU 型号。
在导入 RHV 虚拟机的过程中,如果您为 RHV Manager 输入了错误的凭据,Manager 可能会锁定 admin 用户帐户,因为
vm-import-operator
会尝试多次连接到 RHV API。(BZ#1887140)要解锁帐户,请登录到 Manager 并输入以下命令:
$ ovirt-aaa-jdbc-tool user unlock admin
如果您使用 OpenShift Container Platform 4.8 或更高版本运行 OpenShift Virtualization 2.6.5,则会出现各种问题。您可以通过将 OpenShift Virtualization 升级到 4.8 或更高版本来避免这些问题。
在 web 控制台中,如果您导航到 Virtualization 页面并选择 Create
With YAML,会显示以下错误消息: The server doesn't have a resource type "kind: VirtualMachine, apiVersion: kubevirt.io/v1"
作为临时解决方案,编辑
VirtualMachine
清单,使apiVersion
为kubevirt.io/v1alpha3
。例如:apiVersion: kubevirt.io/v1alpha3 kind: VirtualMachine metadata: annotations: ...
当使用 OpenShift Virtualization web 控制台连接到 VNC 控制台时,VNC 控制台总是无法响应。
作为临时解决方案,请通过 CLI 创建虚拟机或升级到 OpenShift Virtualization 4.8。