[原创]Linux系统下kvm虚拟化环境安装 – 21运维
通知: .-...

[原创]Linux系统下kvm虚拟化环境安装

KVM 21运维 3361浏览 0评论

1,宿主机操作系统安装。
由于测试使用,我这里宿主机使用的是vmware workstation 12并开启了cpu虚拟化,vm虚拟机可以设置。 网上下载了一个centos 64系统做宿主机系统支撑。
注意:如宿主机安装32系统,将无法安装64位虚拟机。 如采用64位宿主机系统,则32位、64位虚拟机都可以运行。
1.1修改内核模式为兼容内核启动

#boot=/dev/sda
default=1  //这里改成1
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu

1.2 关闭selinux和 处理iptables
selinux关闭请参考《linux如何查看 SELinux状态及关闭SELinux
处理iptables:

service iptables stop
chkconfig iptables off

2,虚拟化环境配置
2,1 查看是否支持虚拟化

如物理机,请BIOS先开启cpu虚拟化支持,如虚拟机,也请cpu配置管理处开启cpu虚拟化支持。开启以后显示如下内容:

[[email protected] ~]# egrep '(vmx|svm)' --color=always /proc/cpuinfo
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx hypervisor lahf_lm arat epb pln pts dts tpr_shadow vnmi ept vpid

2.2 安装KVM以及一些包

[[email protected] ~]# yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools

3,查看虚拟化环境
查看虚拟机环境、kvm模块加载情况以及工具版本

[[email protected] ~]# lsmod | grep kvm
kvm_intel              54285  0 
kvm                   333172  1 kvm_intel
[[email protected] ~]# service libvirtd restart
正在关闭 libvirtd 守护进程:                               [确定]
启动 libvirtd 守护进程:2016-05-10 11:24:27.062+0000: 3505: info : libvirt version: 0.10.2, package: 54.el6_7.6 (CentOS BuildSystem <http://bugs.centos.org>, 2016-03-22-16:55:18, c6b8.bsys.dev.centos.org)
2016-05-10 11:24:27.062+0000: 3505: warning : virGetHostname:2279 : getaddrinfo failed for 'kvmmaster': 未知的名称或服务
                                                           [确定]
[[email protected] ~]# virsh -c qemu:///system list
 Id    名称                         状态
----------------------------------------------------

[[email protected] ~]# virsh --version
0.10.2
[[email protected] ~]# virt-install  --version
0.600.0

4,配置虚拟网桥
4.1 关闭NetworkManager服务,否则会报错master connection not found or invalid。主要是因为NetworkManager接管了网卡启动,将NetworkManager停掉,并启动 network 服务来接管网卡服务

chkconfig NetworkManager off
chkconfig network on
service NetworkManager stop
service network start

4.2 创建网桥并重启网卡

cd  /etc/sysconfig/network-scripts/
cp ifcfg-eth0  bakifcfg-eth0  // 备份原始网卡,修改文件之前最好备份一道。


DEVICE=eth0
BOOTPROTO=none
BRIDGE=br0
HWADDR="00:0C:29:DB:74:CC"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="d4ae28b3-fc27-4d83-83dd-9fd4c0c132fa"

cp ifcfg-eth0 ifcfg-br0
vi  ifcfg-br0
DEVICE=br0
BOOTPROTO=static
NM_CONTROLLED="yes"
ONBOOT=yes
TYPE=Bridge
IPADDR=192.168.1.8
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=223.5.5.5

修改完以后重启下网卡服务。
4.3查看网桥

[[email protected] network-scripts]# ifconfig
br0       Link encap:Ethernet  HWaddr 00:0C:29:8C:12:98  
          inet addr:192.168.1.8  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe8c:1298/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:988 errors:0 dropped:0 overruns:0 frame:0
          TX packets:288 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:61205 (59.7 KiB)  TX bytes:62394 (60.9 KiB)

eth0      Link encap:Ethernet  HWaddr 00:0C:29:8C:12:98  
          inet6 addr: fe80::20c:29ff:fe8c:1298/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:98837 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24067 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:95769292 (91.3 MiB)  TX bytes:1979914 (1.8 MiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:24 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1592 (1.5 KiB)  TX bytes:1592 (1.5 KiB)

virbr0    Link encap:Ethernet  HWaddr 52:54:00:EF:7F:78  
          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

到此,基本的kvm环境安装完毕。

 

学习过程中异常报错整理:学习期间遇到了几个问题,可以这里记录下
1,一开始宿主机安装的是32系统,由于安装kvm等模块出错,更换yum源等都没有很好地解决,源码编译也比较麻烦,就直接换成64系统解决了。况且即使我安装了32位系统,那么以后64位的虚拟机也是无法建立,所以干脆做成64系统。
2,手工配置网桥出错。原因NetworkManager一开始我关闭,后边由于配置我重启过服务器,导致又启动。当时应该直接关闭服务,于是chkconfig NetworkManager off 又停止服务,再重启网卡服务才好的。下边做了一个解决办法链接以此记录《弹出界面eth0错误 激活连接失败 master connection not found or invalid 解决办法

参考学习资料:
阿铭kvm教程  :https://www.apelearn.com/bbs/thread-8299-1-1.html(这个参考更正确清晰)
koumm这个51cto前辈  : http://koumm.blog.51cto.com/703525/1288795 (部分有错误,不适合初学者)

转载请注明:21运维 » [原创]Linux系统下kvm虚拟化环境安装

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址