2.21. 使用 virtctl 工具上传本地磁盘镜像
您可使用 virtctl
命令行实用程序上传本地存储的磁盘镜像。
先决条件
-
安装
kubevirt-virtctl
软件包 - 您可能需要定义一个 StorageClass 或准备 CDI 涂销空间才能成功完成此操作。
2.21.1. CDI 支持的操作列表
此列表针对端点显示内容类型支持的 CDI 操作,以及哪些操作需要涂销空间(scratch space)。
内容类型 | HTTP | HTTPS | HTTP 基本身份验证 | Registry | 上传 |
---|---|---|---|---|---|
KubeVirt(QCOW2) |
✓ QCOW2 |
✓ QCOW2** |
✓ QCOW2 |
✓ QCOW2* |
✓ QCOW2* |
KubeVirt (RAW) |
✓ RAW |
✓ RAW |
✓ RAW |
✓ RAW* |
✓ RAW* |
Archive+ | ✓ TAR | ✓ TAR | ✓ TAR | □ TAR | □ TAR |
✓ 支持的操作
□ 不支持的操作
* 需要涂销空间
** 如果需要自定义证书颁发机构,则需要涂销空间
+ 存档不支持块模式 DV
2.21.2. 上传本地磁盘镜像至新 PersistentVolumeClaim
您可使用 virtctl
CLI 实用程序将虚拟机磁盘镜像从客户端机器上传至集群。上传磁盘镜像可创建一个 PersistentVolumeClaim (PVC),您可将其与虚拟机关联。
先决条件
-
具有 RAW、ISO 或 QCOW2 格式的虚拟机磁盘镜像,可选择使用
xz
或gz
进行压缩。 -
kubevirt-virtctl
软件包必须安装在客户端机器上。 - 客户端机器必须配置为信任 OpenShift Container Platform 路由器的证书。
流程
确定以下各项:
- 要上传的虚拟机磁盘镜像的文件位置
- 生成 PVC 的名称和大小
运行
virtctl image-upload
命令以上传您的虚拟机镜像。您必须指定 PVC 名称、PVC 大小以及文件位置。例如:$ virtctl image-upload --pvc-name=<upload-fedora-pvc> --pvc-size=<2Gi> --image-path=</images/fedora.qcow2>
小心若要在使用 HTTPS 时允许不安全的服务器连接,请使用
--insecure
参数。注意,在使用--insecure
标志时,不会验证上传端点的真实性。要验证 PVC 是否已创建,请查看所有 PVC 对象:
$ oc get pvc