您的位置:首页 > 其它

KVM安装配置

2015-06-25 17:51 351 查看
KVM 全称 Kernel-based Virtual Machine

qemu 全称 Quick Emulator

virsh 全称 Virtual Shell

一、安装准备

1.确定机器有VT
终端输入命令:
grep vmx /proc/cpuinfo (INTEL芯片)
grep svm /proc/cpuinfo (AMD芯片)
不知道芯片的生产厂商则输入:egrep '(vmx|svm)' /proc/cpuinfo
如果flags: 里有vmx 或者svm就说明支持VT;如果没有任何的输出,说明你的cpu不支持,将无法成功安装KVM虚拟机。
2. 确保BIOS里开启VT
Intel(R) Virtualization Tech [Enabled]
如有必要,还需在BIOS中开启VT-d
3. 确保内核版本较新,支持KVM
用uname –r查看内核版本,如果在2.6.20以下的linux版本,需升级内核。

二、安装KVM
1、 安装 KVM 和 virtinst (一个创建 virtual machines 的工具 )# yum install kvm qemu libvirt python-virtinst -y
2、重启后确认libvirtd是否正常启动
# /etc/init.d/libvirtd restart
3、装完后记的重起,重起后检查模块是否有加载
# lsmod |grep kvm
kvm_intel 53484 0
kvm 316506 1 kvm_intel
4、检查KVM是否成功安装,出现以下信息说明安装成功了
# virsh list --all ##--all关闭的也会显示
Id Name State
----------------------------------------------------

5、安装桥接管理的工具
# yum install bridge-utils
6、安装 GUI 的管理软件
# yum install virt-manager
7、版本信息查询
# virsh --version
8、修改qemu.conf配置
# vim /etc/libvirt/qemu.conf
vnc_listen = "0.0.0.0" 修改vnc监听端口

参考资料: http://lvmy.iteye.com/blog/1297409 http://www.server110.com/kvm/201404/10467.html

三、KVM网卡桥接设置
1、关闭 virbr0

安装完成支持虚拟化相关包后,会自动建立一个名称为virbr0的虚拟网卡,在多网卡情况下,此网卡默认与eth1或em1网卡绑定,使用的是 NAT 模式(采用 IP Masquerade)。它支持主机与虚拟机的互访,同时也支持虚拟机访问互联网,但不支持外界访问虚拟机。所以说这个virbr0不是必须的,不用的情况下为避免混乱建议关闭。

默认的网络连接是virbr0,它的配置文件在/var/lib/libvirt/network目录下。

# virsh net-list
Name State Autostart
-----------------------------------------
default active yes
# virsh net-destroy default
Network default destroyed
# virsh net-undefine default
Network default has been undefined
# service libvirtd restart
Stopping libvirtd daemon: [ OK ]
Starting libvirtd daemon: [ OK ]

2、另外一种方式是bridge方式,可以使虚拟机成为网络中具有独立IP的主机。创建将要使用的br0虚拟网卡。

#cd /etc/sysconfig/network-scripts/

#cp ifcfg-em1 ifcfg-br0

修改成如下效果:

#cat ifcfg-em1 (IP地址、网关、DNS1等信息移至br0)

DEVICE=em1
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
BRIDGE=virbr0
HWADDR=C8:1F:66:F7:29:C8

#cat ifcfg-br0 (HWADDR去除)

DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.100.0.3
NETMASK=255.255.255.0
GATEWAY=10.100.0.254

#service network restart

3、查看修改后的网卡桥接信息和路由信息

#brctl show



#route



配置完毕后通过ifconfig命令,em1口则不会显示地址信息,新配置的br0口会代替em1口成为真机网口,装好的虚拟机em1口将与真机br0口互相通信。

四、利用virsh工具管理生成虚拟机,virt-manager是RedHat共享的一个开源虚拟化管理软件,它是用Python编写的GUI程序,底层使用了Libvirt对各类Hypervisor进行管理。

# virsh list //查看现有虚拟机信息

# virt-manager //打开图形化管理窗口

新生成虚拟机硬盘img文件默认位置:/var/lib/libvirt/images/jia.img

新生成虚拟机的配置文件默认位置:/etc/libvirt/qemu/jia.xml 这个文件只能用virsh edit 编辑用vi无效,修改相应的文件即可重新配置虚拟机。

Virsh语法参考:

Autostart 自动开始一个域
Create 从一个 XML 文件创建一个域
Define 从一个 XML 文件定义(但不开始)一个域
edit 编辑某个域的 XML 配置
shutdown 关闭一个域
start 开始一个(以前定义的)非活跃的域
reboot 重新启动一个域
suspend 挂起一个域
resume 重新恢复一个域
vncdisplay vnc 显示

autostart #自动加载指定的一个虚拟机

connect #重新连接到hypervisor

console #连接到客户会话

create #从一个SML文件创建一个虚拟机

start #开始一个非活跃的虚拟机

destroy #删除一个虚拟机

define #从一个XML文件定义一个虚拟机

domid #把一个虚拟机名或UUID转换为ID

domuuid #把一个郁闷或ID转换为UUID

dominfo #查看虚拟机信息

domstate #查看虚拟机状态

domblkstat #获取虚拟机设备快状态

domifstat #获取虚拟机网络接口状态

dumpxml #XML中的虚拟机信息

edit #编辑某个虚拟机的XML文件

list #列出虚拟机

migrate #将虚拟机迁移到另一台主机

quit #退出非交互式终端

reboot #重新启动一个虚拟机

resume #重新恢复一个虚拟机

save #把一个虚拟机的状态保存到一个文件

dump #把一个虚拟机的内核dump到一个文件中以方便分析

shutdown #关闭一个虚拟机

setmem #改变内存的分配

setmaxmem #改变最大内存限制值

suspend #挂起一个虚拟机

vcpuinfo #虚拟机的cpu信息

version #显示virsh版本

1、图形化配置:

从菜单中启动,或者运行virt-manager进入图形管理界面,比较简单,不过img的位置需要注意一下,kvm安装后会有一个默认位置,不注意的话容易占满空间。或者直接硬盘分区时单独给/var分一个区。
2、虚拟机重新配置:
虚拟机的配置文件保存在/etc/libvirt/qemu目录下,扩展名是xml。修改相应的文件即可重新配置虚拟机。
3、虚拟机备份及恢复:
备份:拷贝/etc/libvirt/qemu目录下的xml配置文件,以及xml中设置的img文件。
恢复:进入virsh,执行define 目录下的xml文件路径
virsh # define /etc/libvirt/qemu/winxp.xml
4、开机自动启动虚拟机:
[root@vfeelit qemu]# virsh autostart Winxp
5、克隆KVM虚拟机:
[root@vfeelit ~]# virt-clone -o Winxp -n winxpclong -f /var/lib/libvirt/images/winxpclong.img
(-o 原始客体的名称,-n新客户端的名称,-f作为新客户端磁盘映像的新文件)
6、虚拟机意外关机报下述错误:
[root@vfeelit qemu]# virsh start winxp
错误:开始域 winxp 失败
错误:Unable to read from monitor: Connection reset by peer
解决方法:virsh managedsave-remove winxp

参考资料:
http://blog.51yip.com/linux/1633.html http://blog.51yip.com/linux/1627.html http://www.showerlee.com/archives/309 http://www.server110.com/kvm/201404/10467.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: