通过 KVM 安装虚 Centos 和 Windwos 2008 R2_x86_64 操作系统步骤并将磁盘文件作为镜像上传到 openstack glance,作为批量创建虚拟机的镜像文件,其中 windowsn 2008 安装 virtio 半虚拟化驱动,以实现网络 IO 和磁盘 IO 的半虚拟化提升速度,Centos 7 默认即支持半虚拟化,不需要安装驱动,Virtio 最初由澳大利亚的一个天才级程序员 Rusty Russell 编写,是一个在 hypervisor 之上的抽象 API 接口,让客户机知道自己运行在虚拟化环境中,从而与hypervisor 根据 virtio 标准协作,从而在客户机中达到更好的性能(特别是 I/O 性能),目前,有不少虚拟机都采用了 virtio 半虚拟化驱动来提高性能。具体过程如下:
1、网络环境准备:
#因镜像虚拟机需要连接外网安装 rpm 包,需要网络桥接,因此将 bondX 桥接到 brX:
[root@linux-image ~]# hostname
linux-image.exmaple.com
[root@linux-host5 ~]# yum install bridge-utils –y #安装网卡桥接工具
#1:bond0 配置: [root@linux-image ~]# cd /etc/sysconfig/network-scripts/
[root@linux-image network-scripts]# vim ifcfg-bond0
BOOTPROTO=static
NAME=bond0
DEVICE=bond0
ONBOOT=yes
BONDING_MASTER=yes
BONDING_OPTS="mode=1 miimon=100" #指定绑定类型为 1 及链路状态监测间隔时间
BRIDGE=br0 #桥接到 br0
#2:br0 配置: [root@linux-image network-scripts]# cat /opt/ifcfg-br0
TYPE=Bridge
BOOTPROTO=static
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.10.50
NETMASK=255.255.255.0
GATEWAY=192.168.10.2
DNS1=202.106.0.20
#3:bond1 配置:
[root@linux-image network-scripts]# cat ifcfg-bond1
BOOTPROTO=static
NAME=bond1
DEVICE=bond1
ONBOOT=yes
BONDING_MASTER=yes
BONDING_OPTS="mode=1 miimon=100" #指定绑定类型为 1 及链路状态监测间隔时间
BRIDGE=br1
#4:br1 配置:
[root@linux-image network-scripts]# cat ifcfg-br1
TYPE=Bridge
BOOTPROTO=static
NAME=br1
DEVICE=br1
ONBOOT=yes
IPADDR=192.168.20.50
NETMASK=255.255.255.0
#5:网卡状态:
#6:验证内外网:
#7:安装图形桌面支持:
#后期会调用图形配置镜像网卡等。
[root@linux-image ~]# yum groupinstall "GNOME Desktop" –y
#8:重启系统:
#重启之后确保以上各网卡通信正常,然后才进行下一步镜像制作。
2、Centos 7.2 镜像制作:
做镜像就是在宿主机最小化安装系统并配置优化,做完配置之后将虚拟机关机,然后将虚拟机磁盘文件上传至 glance 即可启动虚拟机。
#1:安装基础环境:
[root@linux-host1 ~]# yum install -y qemu-kvm qemu-kvm-tools libvirt virt-manager virt-install
#2:创建磁盘:类型为 qcow2,跟使用量动态增长,也可以是 raw 格式,openstack 支持很多类型的磁盘格
式。
[root@linux-image ~]# qemu-img create -f qcow2 /var/lib/libvirt/images/CentOS-7-x86_64.qcow2 10G
#3:验证磁盘文件:
[root@linux-image ~]# file /var/lib/libvirt/images/CentOS-7-x86_64.qcow2
/var/lib/libvirt/images/CentOS-7-x86_64.qcow2: QEMU QCOW Image (v3), 10737418240 bytes
[root@linux-image ~]# ll -h /var/lib/libvirt/images/CentOS-7-x86_64.qcow2
-rw-r--r-- 1 root root 193K Sep 28 09:21 /var/lib/libvirt/images/CentOS-7-x86_64.qcow2
#4:下载 ISO 镜像并安装:
[root@linux-image ~]# virt-install --virt-type kvm --name CentOS7-x86_64 --ram 1024 --cdrom=/opt/CentOS-7-x86_64-Minimal-1511.iso --disk path=/var/lib/libvirt/images/CentOS7-x86_64.qcow2 --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
#5:验证端口:
#6:使用 VNC 客户端连接虚拟机端口:
#7:连接后状态如下:
#8:传递内核参数重命名网卡:
#9:语言选择:
#10:磁盘分区:
#11:时区及语言等:
#12:安装过程中:
#13:添加一个网卡:虚拟机安装完成系统重启之后给虚拟机新添加一块网卡,最终实现镜像虚拟机有两块网卡以实现内外双网通信。
#13.1:打开控制台:
[root@linux-image