企业云平台支持用户根据需求,制作自有镜像。用户可参考以下步骤,按需操作。

根据云服务器备份制作镜像

步骤一:备份云服务器

对云服务器进行备份,详细操作可参考创建云服务器备份

步骤二:基于备份制作镜像

基于云服务器备份制作镜像,详细操作可参考基于备份制作镜像

BOSS 端注册镜像

若用户需要自主注册新镜像,可参考 BOSS 操作手册的资源管理中的镜像管理内容。通过 BOSS,用户可以注册自有镜像、注册系统镜像以及将自有镜像修改为系统镜像等。

通过数据盘备份捕获的镜像

用户也可以将自定义镜像上传到云服务器挂载的硬盘中,使用硬盘的快照制作成用户自定义的镜像。

  • 在使用自定义的系统盘创建自定义镜像,需注意以下事项。

    • 在使用自定义的系统盘创建自定义镜像时,务必保证 /etc/fstab 的信息和系统盘内分区一致。

    • 确保 /boot/grub/grub.cfg/boot/grub/menu.list 等文件可以正确引导启动。不同操作系统对应的文件名可能不一样。

    • 确保网口配置为 DHCP 能够自动获取 IP 地址。

  • 通过该方式创建的镜像,使用时需注意以下事项。

    • 用户自定义的镜像创建的云服务器不能重置密码。

    • 不支持使用 lvm 分区的镜像;

    • 根据自定义的镜像文件创建的云服务器在挂载硬盘后硬盘的映射关系无法显示,即 vol-XXX/dev/sdX 之间的映射关系。

    • 自定义的镜像的大小不能超过设置的值。

步骤一:上传镜像文件

这里是将本地的 20G 系统盘的镜像上传到云平台环境上,本地系统盘上的 /etc/fstab/etc/network/ 等文件信息正确。

  1. 云服务器创建新的硬盘,大小为 20G,与本地系统盘的大小保持一致。若本地系统盘的大小小于 20G,这里也需要创建 20G 的云硬盘。

  2. 挂载新创建的云硬盘至目标云服务器上。

  3. 拷贝本地的镜像文件 test2.img 至云服务器上。

    scp -i $KEY_PATH test2.img root@eip:~/
  4. 云服务器安装 qemu 软件支持使用 qemu-img 转换格式。若用户在本地进行格式转换,则此步骤可省略。

    sudo apt-get install qemu kernel-package linux-source build-essential
  5. test2.img,假定是 qcow2 格式的镜像,转化为 raw 格式,并放到云硬盘中;也可以直接转化成 raw 格式后拷贝到云服务器。

    qemu-img convert -f qcow2 test2.img -p -O raw test_raw.img
  6. 如果镜像的大小小于所创建的云硬盘,使用如下指令修改镜像的大小。当镜像的大小和云盘一致时,忽略此步骤。

    说明

    必须保证 raw 格式的镜像大小和云硬盘大小一致,之后才能使用 dd 拷贝镜像到硬盘

    例如,镜像的大小只有 128M,此时将镜像的大小调整为云硬盘的大小 20G,命令行示例如下。

    qemu-img resize test.img +19G
    qemu-img resize test.img +896M
  7. raw 格式的镜像文件拷贝到硬盘中;

    dd if=test_raw.img of=/dev/vdc
  8. 使用 lsblk 查看 vdc 分区信息。若没有显示 vdc 分区信息,则执行以下命令行,更新下硬盘的分区信息。

    partprobe /dev/vdc

步骤二:将云硬盘制作备份

将存储有系统镜像的云硬盘制作为备份,详情可参考创建云硬盘备份