CentOSlinux 安装kvm
KVM虚拟机简介
kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。
KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己到进程调度器,存储管理模块等,所以代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列也是基于软件模拟的Para-Virtualization。
安装kvm 配置:
第一、看看cpu是否支持kvm
[root@localhost ~]# egrep '(vmx|svm)'--color=always /proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss httm syscall nx rdtscp lm constant_tsc nonstop_tsc pni monitor ds_cpl vmx est tm2ssse3 cx16 xtpr sse4_1 sse4_2 popcnt lahf_lm
[root@localhost ~]# grep -E -o 'vmx|svm' /proc/cpuinfo
vmx
第二步:安装kvm 所需要的软件包
1.yum install kvm kmod-kvm qemukvm-qemu-img virt-viewer virt-manager
或者
yum groupinstall KVM
2.安装完确认一下是否安装成功
检查模块是否有加载
[root@localhost ~]# lsmod | grep kvm
kvm_intel 85256 0
kvm 224928 2 ksm,kvm_intel
也可以使用命令检查KVM是否成功安装
virsh -c qemu:///system list
将会显示如下结果:
[root@localhost ~]# virsh -c qemu:///system list
IdName State
----------------------------------
如果在这里显示的是一个错误的信息,说明有些东西出现了问题。
3.安装桥接管理工具
yuminstall bridge-utils tunctl
4 安装gui管理工具yum installvirt-manager virt-viewer.
5.修改网卡文件
#cd/etc/sysconfig/network-scripts/
#cpifcfg-eth1 ifcfg-br0
#vimifcfg-eth1 如下:
# Broadcom CorporationNetXtreme II BCM5716 Gigabit Ethernet
DEVICE=eth1
#BOOTPROTO=none
HWADDR=84:2b:2b:6e:20:d5
ONBOOT=yes
#NETMASK=255.255.255.0
#IPADDR=192.168.1.187
#GATEWAY=192.168.1.1
TYPE=Ethernet
BRIDGE=br0
Vim ifcfg-br0 如下:
# Broadcom CorporationNetXtreme II BCM5716 Gigabit Ethernet
DEVICE=br0
BOOTPROTO=static
HWADDR=84:2b:2b:6e:20:d5
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=192.168.1.187
TYPE=Bridge
保存网卡配置 重新启动网卡
#service network restart
检查br0 是否成功
[root@localhost network-scripts]# ifconfig
br0 Link encap:Ethernet HWaddr 84:2B:2B:6E:20:D5
inet addr:192.168.1.187 Bcast:192.168.1.255 Mask:255.255.255.0
eth0 Linkencap:Ethernet HWaddr 84:2B:2B:6E:20:D4
inet addr:117.79.238.187 Bcast:117.79.238.191 Mask:255.255.255.224
eth1 Linkencap:Ethernet HWaddr 84:2B:2B:6E:20:D5
inet6 addr: fe80::862b:2bff:fe6e:20d5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
vnet0 Linkencap:Ethernet HWaddr FE:52:00:3E:41:04
inet6 addr: fe80::fc52:ff:fe3e:4104/64 Scope:Link
中间碰到的问题:
1、[root@benjr ~]# virt-manager
在一开始会看到错误信息,跳过。系统预设值为xen的hypervisor,需要手动开启kvm的Hypervisor
Unable to open a connection to the Xen hypervisor/daemon
Verify that:
- A Xen host kernel was booted
- The Xen service has been started.
这个不用管 直接跳过 其中的原因不明
2、内核不能加载kvm模块
FATAL: Error inserting kvm_amd(/lib/modules/2.6.18-194.el5/weak-updates/kmod-kvm/kvm-amd.ko):Unknown symbol in module, or unknown parameter (see dmesg)
解决办法
查看是否是因为bios中关闭了cpu的虚拟化支持 (如果开启 果断下一步)
yum update kernel 果断升级内核,重启服务器 解决
lsmod | grep kvm (重启完我偷着乐 !!!)
[root@localhost ~]# lsmod | grep kvm
kvm_intel 85256 1
kvm 224928 2 ksm,kvm_intel
modprobekvm (加载kvm模块)
kvm 安装虚拟机
图像化安装
1.应用程序--à系统工具--à虚拟化管理(或者命令调出 virt-manger)
直接图形化操作跟vm workstation 差不多
a.新建虚拟机,选择 new
b.虚拟机命名(最好命名一个跟相关应用有关的)
c.选择cpu 支持的位数和 hypervisor 模式
d.选择安装系统的方式和系统
e.选择iso文件所在位置
f.image存储的位置和image 的大小(若有单独的虚拟化分区,可以选择第一项,我默认)
g.选择网卡模式 (桥接模式)
h.设置内存大小 和cpu的个数
i.配置完成,虚拟所有信息
系统就不用再写了,太墨迹了
2.字符命令创建kvm 虚拟机(懒人没看。直接用的图像化配置)
3.Kvm虚拟机上网
1、开启宿主机的路由转发功能:
echo 1 >/proc/sys/net/ipv4/ip_forward 或者直接在 /etc/sysctl.conf 中添加 修改 net.ipv4.ip_forward = 1
2、配置宿主机iptables NAT
/sbin/iptables -t nat -A POSTROUTING -s192.168.1.0/24 -j MASQUERADE
/sbin/iptables –tnat –A POSTROUTING –s192.168.1.0/24 -o eth0 -j SNAT --to 117.79.238.187
/sbin/iptables save
3、配置虚拟机,设置网卡
到此配置完毕!~~~
此文章只供参考~