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虚拟化支持。开启以后显示如下内容:
[root@kvmmaster ~]# 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以及一些包
[root@kvmmaster ~]# yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools
3,查看虚拟化环境
查看虚拟机环境、kvm模块加载情况以及工具版本
[root@kvmmaster ~]# lsmod | grep kvm kvm_intel 54285 0 kvm 333172 1 kvm_intel [root@kvmmaster ~]# 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': 未知的名称或服务 [确定] [root@kvmmaster ~]# virsh -c qemu:///system list Id 名称 状态 ---------------------------------------------------- [root@kvmmaster ~]# virsh --version 0.10.2 [root@kvmmaster ~]# 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查看网桥
[root@kvmmaster 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虚拟化环境安装