参考
制作ECS自定义镜像--实操
- 0.在虚拟机中安装好环境
- 1.安装virtio驱动
- 2.将虚拟机镜像文件格式转换为qcow2
- 3.使用工具检测镜像规范--检测云平台是否兼容该镜像
- 4.阅读镜像规范检测报告
- 5.将自定义镜像上传到oss
- 从KVM中制作自定义镜像
- 0.安装依赖包
- 1.重置虚拟机设置
- 2.压缩虚拟机镜像
- 自定义镜像常见问题
- 1.ECS实例启动慢
- 2.开机界面中VNC查看到启动过程大量的Errno
- 解决办法
参考
请您参考 以下文档 导入自定义镜像 https://help.aliyun.com/document_detail/25464.html 定制Linux自定义镜像 https://help.aliyun.com/document_detail/51138.html 转换镜像格式 https://help.aliyun.com/document_detail/57187.htm自定义镜像检测项说明https://help.aliyun.com/document_detail/439819.html#section-o52-wv5-af9
制作ECS自定义镜像–实操
需要您先在本地的 虚拟机系统中安装好; 然后 通过转换为 阿里云支持 的镜像格式; 导入 阿里云; 在创建实例时选择这镜像, 就可以使用这个系统了.
制作自定义镜像:https://help.aliyun.com/document_detail/463499.html?spm=a2c4g.11186623.0.0.279f6226YiXGI2
0.在虚拟机中安装好环境
使用VMware或virtualbox装好需要封装的OS,然后把需要的环境都装一下;为保证运行镜像的ECS实例能成功完成初始化配置。
如果您在制作用于阿里云的Linux类型ECS自定义镜像时,建议在源服务器上安装cloud-init,请参见[安装cloud-init](https://help.aliyun.com/document_detail/57803.html)。
1.安装virtio驱动
Linux系统一般不用安装virtio驱动;Windows系统请参考下文。
https://help.aliyun.com/document_detail/62423.html
2.将虚拟机镜像文件格式转换为qcow2
https://help.aliyun.com/document_detail/57187.htm原文链接:
阿里云的镜像文件只支持RAW和qcow2格式。要将VMware的VMDK转换为qcow2;
# Windows安装qemu-img磁盘文件格式转换工具
choco install qemu-img -y
# Debian安装qemu-img工具
apt install qemu-utils -y
# qemu-img convert如果不-f指定输出格式,默认转换为raw格式
# 将raw磁盘转换为qcow2磁盘
# 转换镜像为qcow2格式
## -c 压缩镜像
## -f:参数值为源镜像文件的格式。
## -O(大写):参数值分别为输出镜像格式、源镜像文件名称和输出镜像文件名称。
qemu-img convert -c -f vmdk -O qcow2 source-name.vmdk target-name.qcow2
如果要将VBox的VHD转换为qcow2,请找到VHD格式的镜像文件, 然后将镜像VHD转换成QCOW2
# 转换镜像为qcow2格式
## -c 压缩镜像
## -f:参数值为源镜像文件的格式。
## -O(大写):参数值分别为目标镜像格式、源镜像文件名称和目标文件名称。
qemu-img convert -c -f vhd -O qcow2 source-name.vhd target-name.qcow2
3.使用工具检测镜像规范–检测云平台是否兼容该镜像
来源: https://help.aliyun.com/document_detail/73848.html制作要导入的自定义镜像前,建议您使用镜像规范检测工具,自动检测Linux操作系统设置是否符合导入条件。工具主要检测导入的自定义镜像是否为有效镜像、自定义镜像是否可以创建出功能齐全的ECS实例等。本文通过操作示例、参数和输出项详细为您介绍如何使用镜像规范检测工具。
目前检测工具仅支持检测Linux类型镜像,包括:
- Ubuntu
- CentOS
- Debian
- RedHat
- SLES(SUSE Linux Enterprise Server)
- OpenSUSE
- FreeBSD
- CoreOS
- 及其它Linux发行版本。
本文以CentOS 7.4 64位操作系统为例,介绍检测工具的操作步骤。
# 下载规范检测工具
wget https://ecs-image-tools.oss-cn-hangzhou.aliyuncs.com/imagecheck/image_check --no-check-certificate
# 赋予执行权限
chmod +x image_check
# 使用检测工具生成检测报告
sudo <检测工具所在路径>/image_check –p [检测报告的生成路径]
# 检测报告生成在当前路径
sudo ./image_check
4.阅读镜像规范检测报告
报告详解参考: https://help.aliyun.com/document_detail/73848.html检测报告文件为:image_check_report.json或image_check_report_日期_时间.txt.
5.将自定义镜像上传到oss
然后将QCOW2上传到OSS上.
从KVM中制作自定义镜像
0.安装依赖包
# 安装依赖包
yum install -y libguestfs-tools
1.重置虚拟机设置
清理虚拟机临时及缓存文件,用于将现有的虚拟机镜像进行系统级别的重置和准备。例如:
- 重置主机名、
- 清除网络配置、
- 重置 SSH 密钥、
- 重置用户账户、等
# 进入kvm的镜像目录
cd /var/lib/libvirt/images/
# 建议先备份要操作的kvm虚拟机文件
cp vm_name.qcow2{,.bak}
# 重置虚拟机设置
virt-sysprep -d vm_name
2.压缩虚拟机镜像
# virt-sparsify压缩虚拟机镜像
## 删除虚拟机镜像中未使用的空间来减小镜像文件的大小
## –compress 压缩输出文件。只在输出格式为qcow2有效
virt-sparsify --compress source_VM.qcow2 target_VM-base.qcow2
自定义镜像常见问题
1.ECS实例启动慢
ECS自定义镜像第一次启动慢是正常现象,会安装cloud_init,和执行dracut,安装完成后,后续重启速度都是正常的.第一次启动大约要花10分钟左右.
2.开机界面中VNC查看到启动过程大量的Errno
网卡没配置自动连接,下发不了地址.
解决办法
Centos7配置DNS