使用virt-manager创建openstack qcow2镜像
virt-manager是图像化虚拟机管理软件,由于我使用mac,所以首先安装xquartz,xquartz就是mac下面的x window,作用如同unix下面的X11。去官网下载xquartz,一路next安装,安装好后,使用命令:ssh –X 192.168.60.116登陆服务器,进而运行:virt-manager命令,界面如下图:
点击新建虚拟机,基于已经下载好的iso镜像进行安装:
选择已经下载好的iso镜像,选择os类型为linux以及版本
设置内存大小和cpu数量:
选择存储磁盘大小:
为镜像起名字,勾选自定义配置:
点击finish,弹出配置框,选择磁盘启动:
确保存储格式为qcow2:
连接磁盘:
选择键盘模式:
然后点击apply,开始安装,若下面安装步骤中有跳跃步骤,说明该步骤默认next:
选择skip,跳过检查:
选择语言:
填写hostname:
时区选择上海:
设置root权限密码:
选择自定义分区进行安装:
添加两个区:vda1用作/boot,格式:ext4,200M;vda2用作/,格式ext4,8000M:
一路按照默认next,开始按照:
装成功后,界面如下:
重启前,点击配置,选择下一次从虚拟硬盘启动,然后apply:
如果有需要添加网卡,在配置界面点击add hardware:
选择network,进行网卡的添加:
然后重新开启image虚拟机:
然后open image:
至此,安装完毕,就可以使用了。在目录/var/lib/libvirt/images/查看生成的qcow2镜像。
遇到的问题:
将qcow2镜像上传到openstack后,发现网卡mac不对,在制作过程中,分配了一个虚拟网卡的mac地址,写在/etc/sysconfig/network-scripts/ifcfg-eth0文件里。然而,每次从image boot up时,虚拟网卡都被分配一个新的Mac地址。
解决办法:
首先将/etc/sysconfig/network-scripts/ifcfg-eth0文件里面的mac地址删除,然后shutdown虚拟机,最后敲命令virt-sysprep -d image
参考源自:https://docs.openstack.org/image-guide/centos-image.html