4.4. 将现有镜像复制到多个存储中
通过此功能,您可以使用 Red Hat OpenStack Image 服务(glance)镜像数据将现有镜像复制到边缘的多个 Ceph 存储存储中,通过使用可互操作性的镜像导入工作流。
在将镜像复制到任何边缘站点之前,该镜像必须存在于中央站点。只有镜像所有者或管理员可以将现有镜像复制到新添加的存储中。
您可以通过将 --all-stores 设置为 true,或者指定特定存储来接收镜像数据来复制现有镜像数据。
-
--all-stores选项的默认设置为false。如果--all-stores为false,您必须指定哪个存储通过使用--stores STORE1,STORE2 来接收镜像数据。如果镜像数据已存在于任何指定的存储中,则请求会失败。 -
如果将
all-stores设置为true,且镜像数据已存在于某些存储中,则这些存储会排除在列表中。
指定存储接收镜像数据后,镜像服务会将数据从中央站点复制到暂存区域。然后,镜像服务使用互操作性的镜像导入工作流导入镜像数据。如需更多信息,请参阅 导入镜像到多个存储。
使用镜像服务命令行客户端进行镜像管理。
红帽建议管理员要仔细避免时间非常接近的镜像复制请求。对同一镜像进行两个严格的 copy-image 操作会导致竞争条件和意外结果。现有镜像数据会保留原样,但将数据复制到新存储会失败。
4.4.1. 将镜像复制到所有存储中 复制链接链接已复制到粘贴板!
使用以下步骤将镜像数据复制到所有可用的存储中。
流程
将镜像数据复制到所有可用存储中:
glance image-import IMAGE-ID \ --all-stores true \ --import-method copy-image
$ glance image-import IMAGE-ID \ --all-stores true \ --import-method copy-imageCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 IMAGE-ID 替换为您要复制的镜像的名称。
确认镜像数据成功复制到所有可用的存储中:
glance image-list --include-stores
$ glance image-list --include-storesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 有关如何检查镜像导入操作的状态的详情,请参阅 检查镜像导入操作的进度。
4.4.2. 将镜像复制到特定存储中 复制链接链接已复制到粘贴板!
使用以下步骤将镜像数据复制到特定的存储中。
流程
将镜像数据复制到特定存储中:
glance image-import IMAGE-ID \ --stores STORE1,STORE2 \ --import-method copy-image
$ glance image-import IMAGE-ID \ --stores STORE1,STORE2 \ --import-method copy-imageCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 将 IMAGE-ID 替换为您要复制的镜像的名称。
- 将 STORE1 和 STORE2 替换为您要复制镜像数据的存储的名称。
确认镜像数据成功复制到指定的存储中:
glance image-list --include-stores
$ glance image-list --include-storesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 有关如何检查镜像导入操作的状态的详情,请参阅 检查镜像导入操作的进度。