需求
在命令行,利用kvm创建虚拟机
利用虚拟机镜像文件,开出虚拟机
步骤
1、最小化安装操作系统
# cat /etc/issue
CentOS release 6.6 (Final)
最小化安装(安装过程略)
2、安装kvm
查看宿主机的cpu是否支持KVM
# grep -E -o '(vmx|svm)' --color=auto /proc/cpuinfo
vmx表示CPU支持Intel VT 技术,svm代表CPU支持AMD-v技术
安装kvm虚拟机
# yum -y install kvm kmod-kvm qemu kvm-qemu-img
安装完成后,查看kvm模块是已经被加载
# lsmod | grep kvm
kvm_amd 40735 0
kvm 337772 1 kvm_amd
安装桥接工具并桥接网卡
# yum -y install bridge-utils tunctl
# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-eth0.bak
# cp ifcfg-eth0 ifcfg-br0
br0网卡配置
#cat ifcfg-br0
DEVICE=br0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.10.233
NETMASK=255.255.255.0
GATEWAY=192.168.10.254
TYPE=Bridge
eth0网卡配置
# cat ifcfg-eth0
DEVICE=eth0
HWADDR=B8:AC:6F:12:66:3C
TYPE=Ethernet
UUID=16036f05-47b0-46e7-9fc3-b7cafe2d7a14
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE=br0
3、安装libvirt虚拟化管理工具
# yum -y install virt-manager virt-viewer libvirt libvirt-python python-virtinst
# service libvirtd start
# chkconfig libvirtd on
# virsh list
Id 名称 状态
----------------------------------------------------
4、安装VNC
# yum -y install tigervnc-server
# vncserver //设置vnc密码
配置vnc
vi /etc/sysconfig/vncservers 在末尾添加
VNCSERVERS="1:root"
# /etc/init.d/vncserver restart
# chkconfig vncserver on
5、安装虚拟机
创建磁盘文件
# qemu-img create centos6.6.img 100G
# qemu-img info centos6.6.img //默认为raw格式
image: centos6.6.img
file format: raw
virtual size: 100G (107374182400 bytes)
disk size: 0
Formatting 'centos6.6.img', fmt=raw size=107374182400
创建虚拟机
#virt-install --name=centos6.6 --ram 4096 --vcpus=2 \
--disk path=/data0/centos6.6.img,size=100 \
--accelerate --cdrom /mnt/CentOS-6.6-x86_64-bin-DVD1.iso \
--graphics vnc,listen=192.168.10.233,port=5920 \
--network bridge=br0 --force --autostart
查看虚拟机状态
# virsh list
Id 名称 状态
----------------------------------------------------
1 centos6.6 running
查看vnc链接端口,并通过vnc连接安装操作系统
# virsh vncdisplay centos6.6
192.168.10.233:20
配置操作系统
sed -i '/^HWADDR/d' /etc/sysconfig/network-scripts/ifcfg-eth0
sed -i '/^UUID/d' /etc/sysconfig/network-scripts/ifcfg-eth0
echo -n > /etc/udev/rules.d/70-persistent-net.rules
echo -n > /lib/udev/rules.d/75-persistent-net-generator.rules
#上面四条命令是为了用此系统做镜像,再建立虚拟机的时候,可以获得mac和IP。
转换镜像文件格式
操作系统完成后,关闭虚拟机
# virsh list --all
Id 名称 状态
----------------------------------------------------
- centos6.6 关闭
转换镜像格式(将raw格式转为为qcow2格式)
# qemu-img convert -O qcow2 centos6.6.img centos6.6.qcow2
raw
# qemu-img info centos6.6.img
image: centos6.6.img
file format: raw
virtual size: 100G (107374182400 bytes)
disk size: 3.1G
qcow2
# qemu-img info centos6.6.qcow2
image: centos6.6.qcow2
file format: qcow2
virtual size: 100G (107374182400 bytes)
disk size: 1.6G
cluster_size: 65536
创建完,怎么从qcow2文件中创建虚拟机呢,请看这里
如何从镜像文件开出虚拟机
更快创建出镜像文件,请看
利用oz制作启动镜像