C.7. 完成 Red Hat Enterprise Linux 6 镜像
流程
更新系统:
# yum update
安装
cloud-init
软件包:# yum install cloud-utils-growpart cloud-init
编辑
/etc/cloud/cloud.cfg
配置文件并在cloud_init_modules
add 下:- resolv-conf
resolv-conf
选项在第一次启动时自动配置resolv.conf
配置文件。此文件包含与实例相关的信息,如名称服务器
、域
和其他选项。要防止网络问题,请创建
/etc/udev/rules.d/75-persistent-net-generator.rules
文件,如下所示:# echo "#" > /etc/udev/rules.d/75-persistent-net-generator.rules
这可防止
/etc/udev/rules.d/70-persistent-net.rules
文件被创建。如果创建了/etc/udev/rules.d/70-persistent-net.rules
,则在从快照引导时网络可能无法正常工作(网络接口创建为 "eth1" 而不是 "eth0",没有分配 IP 地址)。在
/etc/sysconfig/network
中添加以下行,以避免访问 EC2 元数据服务时出现问题:NOZEROCONF=yes
取消注册虚拟机,以便生成的镜像不包含基于该虚拟机克隆的每个实例的相同订阅详情:
# subscription-manager repos --disable=* # subscription-manager unregister # yum clean all
关闭实例:
# poweroff
在 Red Hat Enterprise Linux 工作站中,以 root 身份登录并使用
virt-sysprep
命令重置并清理镜像,以便其可用于在没有问题的情况下创建实例:# virt-sysprep -d rhel6
使用
virt-sparsify
命令减少镜像大小。这个命令将磁盘镜像中的任何可用空间重新转换为主机中的可用空间:# virt-sparsify --compress rhel6.qcow2 rhel6-cloud.qcow2
这会在您输入以下命令的位置创建一个新的
rhel6-cloud.qcow2
文件。注意您必须根据应用到实例的类别中的磁盘空间,手动调整实例的分区大小。
C.7.1. 后续步骤
- 对您要使用 Satellite 置备的每个镜像重复这个过程。
- 将镜像移动到您要存储的位置,以备将来使用。