This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.7.15.4.4. 使用 CLI 导入虚拟机
您可以通过 CLI 创建 Secret
和 VirtualMachineImport
自定义资源(CR)来导入虚拟机。Secret
CR 存储 RHV Manager 凭证和 CA 证书。VirtualMachineImport
CR 定义 VM 导入过程的参数。
可选:您可以创建一个与 VirtualMachineImport
CR 分开的 ResourceMapping
CR。ResourceMapping
CR 提供了更大的灵活性,例如导入额外的 RHV VM。
默认目标存储类必须是 NFS。Cinder 不支持 RHV VM 导入。
流程
运行以下命令来创建
Secret
CR:Copy to Clipboard Copied! Toggle word wrap Toggle overflow openssl s_client -connect :443 -showcerts < /dev/null
$ openssl s_client -connect :443 -showcerts < /dev/null
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:运行以下命令,创建
ResourceMapping
CR,以将资源映射与VirtualMachineImport
CR 分开:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来创建
VirtualMachineImport
CR:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 如果创建一个
ResourceMapping
CR,取消resourceMapping
部分的注释。 - 2
- 指定目标虚拟机名称。
- 3
- 指定源虚拟机 ID,例如
80554327-0569-496b-bdeb-fcbbf52b827b
。您可以通过在 Manager 机器的网页浏览器中输入https://www.example.com/ovirt-engine/api/vms/
来列出所有虚拟机来获取虚拟机 ID。找到您要导入的虚拟机及其对应的虚拟机 ID。您不需要指定虚拟机名称或集群名称。 - 4
- 如果指定源虚拟机名称,还必须同时指定源集群。不要指定源虚拟机 ID。
- 5
- 如果指定源集群,还必须指定源虚拟机名称。不要指定源虚拟机 ID。
- 6
- 如果创建一个
ResourceMapping
CR,注释掉mappings
部分。 - 7
- 指定源虚拟机的逻辑网络和 vNIC 配置集。
- 8
- 指定 OpenShift Virtualization 网络。
- 9
- 如果在
ResourceMapping
和VirtualMachineImport
CR 中都指定了存储映射,则VirtualMachineImport
CR 将具有优先权。 - 10
- 指定源存储域。
- 11
- 指定目标存储类。
- 12
- 指定
ReadWriteOnce
、ReadWriteMany
或ReadOnlyMany
。如果没有指定访问模式,{virt} 会根据 RHV VM 的 HostMigration 模式 或虚拟磁盘访问模式决定正确的卷访问模式: -
如果 RHV VM 迁移模式是
Allow manual and automatic migration
,则默认访问模式为ReadWriteMany
。 -
如果 RHV 虚拟磁盘访问模式是
ReadOnly
,则默认访问模式为ReadOnlyMany
。 -
对于所有其他设置,默认的访问模式为
ReadWriteOnce
。
-
如果 RHV VM 迁移模式是
- 13
- 指定源虚拟机磁盘 ID,例如
8181ecc1-5db8-4193-9c92-3ddab3be7b05
。您可以通过在 Manager 机器的网页浏览器中输入https://www.example.com/ovirt-engine/api/vms/vm23
并查看虚拟机详情来获取磁盘 ID。 - 14
- 指定目标存储类。
按照虚拟机导入的过程,以验证导入是否成功:
oc get vmimports vm-import -n default
$ oc get vmimports vm-import -n default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示成功导入的输出结果类似如下:
输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.15.4.4.1. 创建用于导入虚拟机的配置映射 复制链接链接已复制到粘贴板!
如果要覆盖默认的 vm-import-controller
映射或添加额外的映射,您可以创建一个配置映射来将 Red Hat Virtualization(RHV)虚拟机操作系统映射到 OpenShift Virtualization 模板。
默认 vm-import-controller
配置映射包含以下 RHV 操作系统,及其对应的通用 OpenShift Virtualization 模板。
RHV 虚拟机操作系统 | OpenShift Virtualization 模板 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
流程
在网页浏览器中,进入
http://<RHV_Manager_FQDN>/ovirt-engine/api/vms/<VM_ID>
找到RHV 虚拟机操作系统的 REST API 名称。操作系统名称会出现在 XML 输出的<os>
部分,如下例所示:... <os> ... <type>rhel_8x64</type> </os>
... <os> ... <type>rhel_8x64</type> </os>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查看可用 OpenShift Virtualization 模板列表:
oc get templates -n openshift --show-labels | tr ',' '\n' | grep os.template.kubevirt.io | sed -r 's#os.template.kubevirt.io/(.*)=.*#\1#g' | sort -u
$ oc get templates -n openshift --show-labels | tr ',' '\n' | grep os.template.kubevirt.io | sed -r 's#os.template.kubevirt.io/(.*)=.*#\1#g' | sort -u
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 如果与 RHV 虚拟机操作系统匹配的 OpenShift Virtualization 模板没有出现在可用的模板列表中,使用 OpenShift Virtualization Web 控制台创建一个模板。
创建配置映射将 RHV VM 操作系统映射到 OpenShift Virtualization 模板:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 配置映射示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证是否已创建自定义配置映射:
oc get cm -n default os-configmap -o yaml
$ oc get cm -n default os-configmap -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对
vm-import-controller-config
配置映射进行补丁以应用新的配置映射:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 如果在配置映射中更改了命名空间,请更新它。
验证模板是否出现在 OpenShift Virtualization web 控制台中:
-
从侧边菜单中点 Workloads
Virtualization。 - 点 Virtual Machine Templates 标签页,在列表中找到模板。
-
从侧边菜单中点 Workloads