公司开始部署KVM,KVM的全称是kernel base virtual machine,对KVM虚拟化技术研究了一段时间,
KVM是基于硬件的完全虚拟化,跟vmware、xen、hyper-v是同一个级别的,而且已经内置在Linux内核
而且KVM是开源产品,最新的虚拟化技术都会优先应用在KVM上,KVM的定制和配置项也很多,比封闭的hyper-v好玩多了
一直觉得微软的产品太封闭,之前一直用hyper-v,可配置项相比于KVM实在太少,而且KVM性能比hyper-v要好
KVM各个组件的关系
libvirt(virt-install,API,服务,virsh)-》qemu(qemu-kvm进程,qemu-img)-》KVM虚拟机-》kvm.ko 内核模块
libvirt:红帽提供的一个管理KVM虚拟机的API库,提供了virsh命令和一些python API
qemu:KVM的用户空间管理工具,用于管理内核空间kvm.ko
kvm.ko:KVM的核心,提供了虚拟CPU的工具,centos6系统安装的时候默认已经自带kvm.ko,只需要加载这个内核模块
安装流程
物理机部署流程
安装KVM组件
1、首先检查系统是否支持kvm,有两个先决条件
a、系统是x86的,通过命令
1.uname -a
b、CPU 支持虚拟化技术
1.egrep 'vmx|svm'/proc/cpuinfo
其中intel cpu支持会有vmx,amd cpu支持会有svm
如果看到有输出结果,即证明cpu 支持虚拟化。同时特别注意需要检查 BIOS 中是否开启VT,如果没有启用,虚拟机将会十分慢。
2、使用yum安装kvm
安装kvm内核
1.yum install -y qemu-kvm.x86_64 qemu-kvm-tools.x86_64 qemu-img
安装virt管理工具
1.yum -y install libvirt.x86_64 libvirt-cim.x86_64 libvirt-client.x86_64 libvirt-java.noarch libvirt-python.x86_64 python-virtinst bridge-utils
说明:
kvm:软件包中含有KVM内核模块,它在默认linux内核中提供kvm管理程序
libvirts:安装虚拟机管理工具,使用virsh等命令来管理和控制虚拟机。
bridge-utils:设置网络网卡桥接。
qemu-img:安装qemu组件,使用qemu命令来创建磁盘等。
加载kvm 内核
1.modprobe kvm
2.modprobe kvm-intel
查看内核是否开启
1.modprobe -ls | grep kvm
3、配置网络桥接,
进入目录 /etc/sysconfig/network-scripts,复制一份原有的ifcfg-eth0 为 ifcfg-br0
cp ifcfg-eth0 ifcfg-br0
修改ifcfg-br0,内容如下:1.DEVICE='br0'
2.BOOTPROTO=static
3.ONBOOT='yes'
4.TYPE='Bridge'
5.IPADDR=10.11.30.52
6.NETMASK=255.255.255.0
7.GATEWAY=10.11.30.1
8.DEFROUTE=yes
IPADDR、GATEWAY、NETMASK根据自己的实际情况修改。
修改 ifcfg-em1 内容如下:
01.DEVICE='em1'
02.BOOTPROTO=none
03.NM_CONTROLLED='no'
04.ONBOOT=yes
05.TYPE=Ethernet
06.BRIDGE='br0'
07.HWADDR=34:17:EB:F0:01:1F
08.DEFROUTE=yes
09.IPV4_FAILURE_FATAL=yes
10.NAME='System em1'
重启网络服务即可。
1./etc/init.d/network restart
如果出现问题,关闭 NetworkManager 后重试。
1.chkconfig NetworkManager off
2.service NetworkManager stop
4、启动或重启libvirtd服务和messagebus 服务
1./etc/init.d/libvirtd start
2./etc/init.d/messagebus restart
此时可以查看网络接口列表
brctl show 结果如下:
bridge name bridge id STP enabled interfaces
br0 8000.000c2955a70a no eth0
virbr0 8000.52540014efd5 yes virbr0-nic
生成虚拟机流程(在物理机上执行)
1 安装screen 工具
1.yum install -y screen
2 生成qcow2 格式的镜像文件
1.qemu-img create -f qcow2 /data/kvmimg/gzwtest01.qcow2 60G
3 在screen里面新开一个
1.screen -S instSys
4 安装一台Windows虚拟机
1.virt-install --name=gzwtest01 --ram 4096--vcpus=16--autostart --hvm
2.--disk path=/data/kvmimg/gzwtest01.qcow2,size=60,format=qcow2
3.--cdrom /data/download/cn_windows_server_2012_r2_with_update_x64_dvd_6052725.iso
4.--graphics vnc,listen=0.0.0.0,port=5902
5.--network bridge=br0,model=e1000 --force --connect qemu:///system
name:虚拟机名称
ram:内存,单位MB
vcpus:逻辑CPU数
autostart:随母鸡开机启动而启动,母鸡开机,虚拟机也一起开机
hvm:完全虚拟化
model:指定网卡为千兆
disk path:镜像文件位置
size:虚拟机磁盘大小,单位GB
format:镜像文件格式
accelerate:
force:跳过所有交互提示,相当于yum install -y里的-y选项
cdrom:操作系统安装文件路径
graphics: 指定安装通过哪种类型,可以是vnc,也可以没有图形,这里是VNC,如果是文本graphics none
listen:0.0.0.0表示侦听所有来源地址,可以修改/etc/libvirt/qemu.conf
port:vnc端口号
vncport:VNC端口
network:指定网络类型
bridge:宿主机的桥接网卡是br0
connect:连接到一个非默认的hypervisor
5 使用VNC软件连接虚拟机进行系统安装
VNC软件名称 vnc-4_1_2-x86_win32_viewer
10.11.30.53:5902
10.11.30.53:物理机的IP
5902:虚拟机对应端口
至此,一台Windows的KVM虚拟机部署完毕
最新评论
Hey! I could have sworn I've been to this blog before but after checking through some of the post I realized it's new to me. Anyways, I'm definitely delighted I found it and I'll be book-marking and checking back often!
Heya i am for the primary time here. I came across this board and I to find It really helpful & it helped me out much. I'm hoping to give something back and help others like you helped me.
Pretty element of content. I simply stumbled upon your website and in accession capital to claim that I acquire in fact enjoyed account your weblog posts. Any way I’ll be subscribing for your augment and even I success you access persistently rapidly.
Would love to perpetually get updated outstanding weblog! .
Some really nice stuff on this internet site, I like it.
Can I simply say what a reduction to find somebody who actually knows what theyre talking about on the internet. You positively know find out how to carry an issue to mild and make it important. Extra individuals have to read this and understand this facet of the story. I cant believe youre not more fashionable because you positively have the gift.
I like this post, enjoyed this one appreciate it for posting.
Definitely, what a splendid blog and enlightening posts, I surely will bookmark your site.Best Regards!