基于RHEL的Openstack 映像制作
1 ISO文件拷贝
将64位12.04版本的ubuntu系统拷贝到制作机10.240.0.133
2 软链接制作
在/usr/bin目录下制作qemu的软链接
3 创建空白映像文件
创建一个 8GB 大小的 “硬盘”(qcow2 格式):
sudo qemu-img create -f qcow2 ubuntu.img 8G
4 填充映像文件
使用ubuntu的 “安装盘” 和刚创建的 “硬盘” 引导启动系统,为了简单起见,在这里使用 kvm 虚拟技术。-vnc 参数代表打开 vnc 访问,以便可以用其他机器远程登录到这个引导界面进行安装操作:
sudo qemu -m 1024 -cdrom ubuntu-12.04.4-desktop-amd64.iso -drive file=ubuntu.img -boot d -nographic -vnc :10
vncserver: http://www.cnblogs.com/lanxuezaipiao/p/3724958.html
sudo vncserver开启root用户的session
vncserver开启某个普通用户的session
vncserver :1 代表使用5801端口,依次递增
5 VNC远程系统安装
用 vncviewer 登录引导界面后按照屏幕的提示完成 ubuntu 的安装工作(和在自己电脑上安装 ubuntu 过程一样)。需要注意的是在分区阶段把 10GB 硬盘全部划分成一个 ext4 root 分区,不要创建多个分区也不要创建 swap 区
sudo vncviewer localhost:10
6 映像定制
安装完后退出(必要时 kill 掉 qemu 进程),按照下面命令启动刚刚安装好的虚拟机映像 ubuntu.img。安装一些必要工具(因为这个映像将会是模板,所以最好保持最简最小化,不要乱装东西):
a) sudo qemu -m 1024 -drive file=ubuntu_img/ubuntu.img -boot c -nographic -vnc :10
b) sudo vncviewer localhost:10
c) apt-get update
d) apt-get upgrade
e) apt-get install openssh-server cloud-init
persistent-net.rules 会自动添加其他的网络接口,需要删除这个文件避免自动添加除了 eth0 以外的接口。删除后系统基本就准备好了,关闭虚拟机:
sudo rm -rf /etc/udev/rules.d/70-persistent-net.rules
sudo shutdown -h now
7 Glance添加Openstack映像
利用glance命令将刚刚创建好的映像添加到OpenStack中
glance image-create --name ubuntu_12.04_64 --file ubuntu.img --min-ram 1024 --min-disk 10 –is-public True --container-format bare --disk-format qcow2 –progress
8 Nova添加Openstack实例
利用nova命令创建该映像的实例
nova boot ubuntu_test --image ubuntu_12.04_64 --flavor m1.small --nic net-id=04cf3786-ad5b-4890-b008-b74e6f952337