KVM虚拟化学习总结之安装
0.VMware开启虚拟化:
如果你不是是在windows上使用VMware进行的,可以忽略此步。
配置如下图:
1.查看CPU是否支持虚拟化:
grep -E -o ‘vmx|svm‘ /proc/cpuinfo |
VMX:它是Intel处理器虚拟机技术标志;
SVM:它是AMD处理器虚拟机技术的标志。
注:linux发行版本必须在64bit环境中才能使用KVM。
[root@localhost ~]# grep -E -o ‘vmx|svm‘ /proc/cpuinfo vmx |
2.安装kvm:
yum源使用的是Centos 6.4的光盘镜像,无需网络环境。
yum install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v qemu-kvm acpid -y |
安装包简介:
kvm :安装kvm模块
python-virtinst :安装python组件,主要用来记录创建vm时的xml文件
libvirt :安装虚拟机管理工具,使用virsh来管理虚拟机
bridge-utils :安装网络支持工具
virt-manager :安装图形界面管理虚拟机(对于远程的被管理主机,可以不安装)
qemu-kvm-tools :安装kvm调试工具(可以不安装)
virt-viewer :安装virt-viewer 图形查看功能
virt-v2v :自动化将创建在Xen,KVM和ESX上的虚拟机拷贝到virt-v2v的主机
3.修改vnc的监听端口:
vnc默认的监听127.0.0.1。
因为,在创建虚拟机时,需要连接vnc,去手动完成新系统的安装。
cp /etc/libvirt/qemu.conf /etc/libvirt/qemu.conf.bak sed -i ‘s/#vnc_listen/vnc_listen/‘ /etc/libvirt/qemu.conf /etc/init.d/libvirtd start /etc/init.d/acpid start chkconfig libvirtd on chkconfig acpid on |
4.关闭SELinux并重启:
sed -i ‘/SELINUX/s/enforcing/disabled/‘ /etc/selinux/config reboot |
5.检查KVM是否加载成功:
如果没有输出信息,则表示没有加载成功。
lsmod | grep kvm |
[root@localhost ~]# lsmod | grep kvm kvm_intel 53484 0 kvm 316506 1 kvm_intel |
6.检查KVM是否成功安装:
--all :关闭的也会显示,这个参数很重要。
virsh list --all |
[root@localhost ~]# virsh list --all Id Name State ---------------------------------------------------- |
7.各软件版本的查询:
可忽略此步。
但是,不同版本的命令,尤其是virt-install这个,参数会不兼容的。
virt-install --version virsh --version |
[root@Localhost ~]# rpm -qa | grep kvm qemu-kvm-0.12.1.2-2.295.el6_3.1.x86_64 qemu-kvm-tools-0.12.1.2-2.295.el6_3.1.x86_64 [root@Localhost ~]# rpm -qa | grep libvirt libvirt-client-0.9.10-21.el6_3.3.x86_64 libvirt-python-0.9.10-21.el6_3.3.x86_64 libvirt-0.9.10-21.el6_3.3.x86_64 [[email protected] ~]# rpm -qa | grep qemu qemu-img-0.12.1.2-2.295.el6_3.1.x86_64 gpxe-roms-qemu-0.9.7-6.9.el6.noarch [[email protected] ~]# rpm -qa | grep virt virt-manager-0.9.0-14.el6.x86_64 virt-v2v-0.8.7-6.el6.x86_64 virt-viewer-0.5.2-9.el6.x86_64 [[email protected] ~]# virt-install --version 0.600.0 [[email protected] ~]# virsh --version 0.10.2 |
8.将网卡配置成桥接模式:
配置桥接网卡br0后,物理网卡eth0不需要获得ip地址,其功能被br0取代,因此在配置的时候无论是静态ip还是动态获取都用br0取代eth0的ip地址,实际上数据发送还是通过本机的物理网卡。
例如桥接前eth0的静态ip是172.22.2.92那么配置桥接br0的静态ip应为172.22.2.92,而桥接后eth0没有ip。
yum install -y tunctl cat << EOF > /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 TYPE=Bridge BOOTPROTO=static IPV6INIT=no ONBOOT=yes IPADDR=172.22.2.92 NETMASK=255.255.0.0 GATEWAY=172.22.1.3 DNS1=8.8.8.8 DELAY=0 EOF cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/bak_ifcfg-eth0 cat << EOF > /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none BRIDGE=br0 IPV6INIT=no EOF /etc/init.d/network restart #查看桥接网络 brctl show |
9.安装kvm的第一个guest系统:
Linux系统安装时,内存最低512M(字符界面安装Linux),,我在win7的vmw开了1G的内存。
virt-install的参数就先不介绍了,详见后面。
virt-install --name=centos --ram=512 --vcpus=1 --disk path=/data/kvm/images/centos.img,cache=writeback,size=10,bus=virtio --cdrom /dev/cdrom --accelerate --vnclisten=172.22.2.92 --vncport=6900 --vnc --network bridge=br0 --force --autostart |
[email protected] ~]# virt-install --name=centos --ram=512 --vcpus=1 --disk path=/data/kvm/images/centos.img,cache=writeback,size=10 --cdrom /dev/cdrom --accelerate --vnclisten=172.22.2.92 --vncport=6900 --vnc --network bridge=br0 --force --autostart Starting install... Creating Creating domain... Cannot open display: Run ‘virt-viewer --help‘ to see a full list of available command line options Domain installation still in progress. You can reconnect to the console to complete the installation process. |
看到这里,你需要使用vnc去连接172.22.2.92的6900端口,手动完成剩余的安装步骤。
10.查看新建的虚拟机信息:
使用virt-install 工具,工具自动创建磁盘,默认是raw格式,此格式不能使用快照功能。
qemu-img info img文件 |
[[email protected] ~]# qemu-img info /data/kvm/images/centos.img image: /data/kvm/images/centos.img file format: raw virtual size: 10G (10737418240 bytes) disk size: 1.5G [[email protected] ~]# virsh list --all Id Name State ---------------------------------------------------- 2 centos running [[email protected] ~]# |
11.查看新建虚拟机的配置文件:
可以根据需求,修改虚拟机的配置,但需要重启虚拟机。
[[email protected] ~]# cat /etc/libvirt/qemu/centos.xml <domain type=‘kvm‘> #虚拟机类型 <name>centos</name> #虚拟机名称 <currentMemory unit=‘KiB‘>524288</currentMemory> #内存大小 <vcpu placement=‘static‘>1</vcpu> #CPU个数 <type arch=‘x86_64‘ machine=‘rhel6.4.0‘>hvm</type> #虚拟系统架构 <boot dev=‘hd‘/> #虚拟机默认启动为硬盘 <emulator>/usr/libexec/qemu-kvm</emulator> #kvm驱动 <disk type=‘file‘ device=‘disk‘> #磁盘类型 <driver name=‘qemu‘ type=‘raw‘ cache=‘writeback‘/>#虚拟机硬盘格式 <source file=‘/data/kvm/images/centos.img‘/> #虚拟机文件 <interface type=‘bridge‘> #网络类型为桥接 <mac address=‘52:54:00:fe:d7:22‘/> #网卡MAC地址,可以自己修改 <graphics type=‘vnc‘ port=‘6900‘ autoport=‘no‘ listen=‘172.22.2.92‘> #vnc的配置 </domain> |
具体的解释,可以参考这篇文章:http://my.oschina.net/guol/blog/73300
到此,kvm环境就介绍完了。