centos7部署KVM虚拟化平台详解

  

Linux KVM自2.6.20版本后就直接整合到Linux内核,它依托CPU虚拟化指令集实现高性能的虚拟化支持。它与Linux内核高度整合,因此在性能,安全性,兼容性、稳定性上都有很好的表现。
在KVM环境中运行的每个虚拟化操作系统都将表现为单个独立的系统进程。因此它可以很方便地与Linux系统中的安全模块进行整合(SELinux),可以灵活的实现硬件资源的管理和分配,KVM虚拟化的架构图如下:

  

 centos7部署KVM虚拟化平台详解

  

话不多说,开始搭建KVM虚拟化平台:

  

<强> 1,安装:

  
 <代码> [root@localhost媒体]# yum - y groupinstall“GNOME桌面”#安装GNOME桌面环境
  [root@localhost媒体]# yum - y安装qemu-kvm # KVM模块
  [root@localhost媒体]# yum - y安装qemu-kvm-tools # KVM调试工具,可不安装
  [root@localhost媒体]# yum - y安装virt-install #构建虚拟机的命令行工具
  [root@localhost媒体]# yum - y安装qemu-img # qemu组件,创建磁盘,启动虚拟机等
  [root@localhost媒体]# yum - y安装bridge-utils #网络支持工具
  [root@localhost媒体]# yum - y安装libvirt #虚拟机管理工具
  [root@localhost媒体]# yum - y安装virt-manager #图形界面管理虚拟机
  [root@localhost媒体]# yum - y安装libguestfs-tools #用来管理虚拟机磁盘格式
  (root@localhost ~) # ls科幻/lib/systemd/system/graphical.目标/etc/systemd/system/default.target
  #将系统默认运行的目标更改为graphical.target,若不执行该命令,重启时可能会报的错。
   
  

<强> 2,安装完毕后,需重启系统,执行下面命令对系统进行检查:

  
 <代码> [root@localhost ~] #猫/proc/cpuinfo | grep vmx
  #查看英特尔的CPU是否支持虚拟化,若是AMD的CPU,需“猫/proc/cpuinfo | grep smv”
  (root@localhost ~) # lsmod | grep kvm #检查kvm模块是否安装
  kvm_intel 170181 0
  kvm 554609 1 kvm_intel
  kvm irqbypass 13503 1
  (root@localhost ~) # systemctl开始libvirtd #启动libvirtd服务
  (root@localhost ~) # systemctl启用libvirtd  
  

<强> 3,设置KVM网络:

  

在libvirt中运行KVM网络有两种方法:NAT和桥,默认是NAT。
关于两种模式的说明如下:
(1) NAT模式:也是用户模式,数据包由NAT方式通过主机的接口进行传送,可以访问外网,但是无法从外部访问虚拟机网络,所以一般不会用的到。
(2)桥:也就是桥接模式,这种模式允许虚拟机像一台独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机内部,但需要网卡支持,一般有线网卡都支持。

  

我这里以桥(桥接模式)为例:

  
 <代码> root@localhost ~ # vim/etc/sysconfig/network-scripts/ifcfg-ens33
  
  类型=以太网
  BOOTPROTO=#没有将这项改为没有
  DEFROUTE=yes
  PEERDNS=yes
  PEERROUTES=yes
  IPV4_FAILURE_FATAL=没有
  IPV6INIT=yes
  IPV6_AUTOCONF=yes
  IPV6_DEFROUTE=yes
  IPV6_PEERDNS=yes
  IPV6_PEERROUTES=yes
  IPV6_FAILURE_FATAL=没有
  IPV6_ADDR_GEN_MODE=stable-privacy
  NAME=ens33
  设备=ens33
  ONBOOT=yes
  桥=br0 #添加该行,若有UUID的配置项,建议删除。
  
  #将网卡ens33的文件复制一份改名为br0
  # vim/etc/sysconfig/network-scripts/ifcfg-br0 root@localhost ~
  
  类型=桥#将类型改为桥
  BOOTPROTO=静态#这里根据实际情况改为静态或dhcp
  DEFROUTE=yes
  PEERDNS=yes
  PEERROUTES=yes
  IPV4_FAILURE_FATAL=没有
  IPV6INIT=yes
  IPV6_AUTOCONF=yes
  IPV6_DEFROUTE=yes
  IPV6_PEERDNS=yes
  IPV6_PEERROUTES=yes
  IPV6_FAILURE_FATAL=没有
  IPV6_ADDR_GEN_MODE=stable-privacy
  NAME=br0 #改名字
  设备=br0 #改名字
  ONBOOT=yes
  IPADDR=192.168.1.1 #该ip将为宿主机的ip地址
  网关=192.168.1.254
  
  (root@localhost ~) # systemctl重启网络#重启网络服务
  (root@localhost ~) # ifconfig #确认IP地址信息
  
  br0:旗帜=4163 & lt;,广播,跑步,MULTICAST>mtu 1500
  inet 192.168.1.1子网掩码255.255.255.0 192.168.1.255播出
  64年inet6 fe80:: db0f: ab79:54a1:241b prefixlen scopeid 0 x20<每日
  醚00:0c: 29:1a: e0:46 txqueuelen 1000(以太网)
  RX包50字节4155(4.0简约)
  RX错误0 0超支0框架0下降
  TX数据包58 7046字节(6.8简约)
  TX错误0下降0超支0载体0碰撞0
  
  ens33:旗帜=4163 & lt;,广播,跑步,MULTICAST>mtu 1500
  醚00:0c: 29:1a: e0:46 txqueuelen 1000(以太网)
  RX 1062字节数据包95264(93.0简约)
  RX错误0 0超支0框架0下降
  TX包81579 688字节(79.6简约)
  TX错误0下降0超支0载体0碰撞0
  

centos7部署KVM虚拟化平台详解