[RH124] 15-虚拟化

1.虚拟化分类

  • 全虚拟化:virtualbox,vmware等。都是模拟出来的,性能比较低。
  • 半虚拟化:xen,真正给虚拟机使用物理资源。
  • 硬件辅助虚拟化:KVM,利用CPU的虚拟化功能。

2.KVM

kernel-base virtual machine:内核的一个模块。

内核模块对于用户空间,用户空间无法直接操作该模块,所以需要一个中间工具来操作。

 

工具包含:qemu,qemu-kvm等,但不是很好用。所以红帽开了一个libvirt接口

然后使用virtsh,virt-manager等工具来操作libvirt,从而管理KVM。

Libvirt是由一个服务来管理的,叫libvirtd

3.安装KVM

1)打开CPU虚拟化功能。

windows下使用CPU-Z软件可以查看。

Linux是在/proc/cpuinfo中,查看flags行,查看是否存在以下字段:

  #AMD CPU:svm

  #Intel CPU:vmx

 grep '(svm|vmx)' /proc/cpuinfo :查看是否开启虚拟化。

若没有开启:

物理机:去BISO中enable VT功能。

虚拟机:关闭虚拟机,开启CPU虚拟化功能。

再次检查:

2)安装KVM套件

 yum groupinstall virtual* :安装kvm套件。(不建议单独安装包)

3)使用virt-manager配置虚拟机

磁盘总线类型:

网卡设备型号:

显示协议:

4.KVM网络

桥接网络:

1)桥接之前,宿主机(物理机)的数据包是直接走eth1出去的(图中虚线)。做了桥接后,虚拟机的虚拟网卡桥接到br0上,物理机的eth1也桥接到br0上,虚拟机和物理机的数据包都通过br0来发送(图中实线)。

2)桥接后,eth1上的IP消失,IP会配置在br0上。

3)由于虚拟机和物理机处于同一二层网络,都可以通过Router上的DHCP服务器分配IP。

 

在Linux上创建一个桥:

使用图形化工具:

 nm-connection-editor & :打开图形化界面。创建网络类型选择桥接。

 

 

 

设置完毕后,重启网络服务: systemctl restart network.service 

 /etc/sysconfig/network-scripts/ifcfg-br0 中查看网桥配置:

 /etc/sysconfig/network-scripts/ifcfg-br0-slave1 中查看物理网卡桥接到网桥上的配置。

 

图中的HWADDR就是物理网卡eth0的MAC地址。

 

做好网桥br0并将物理网卡eth0桥接到br0上后,我们就可以将虚拟机的网卡桥接到br0上,实现通讯。

 

 

NAT网络: 

在安装好KVM虚拟化环境后会有一个默认的NAT网桥(default),宿主机系统 中会自动生成一个网卡virbr0。该网卡是默认提供的NAT网络的网关,IP地址是192.168.xxx.1。我们可以在virt-manager中查看并配置:

 

 可以看到,在虚拟网络页签中有一个default网络,这个是KVM默认创建的网络。在宿主机上对应一个虚拟网卡叫virbr0,该网卡默认地址是192.168.122.1(也是NAT的网关)。该网络对应的IP网段为192.168.122.0/24,转发规则是NAT类型。

 

===

posted @ 2020-03-20 15:07  风间悠香  阅读(292)  评论(0编辑  收藏  举报