当前位置:首页 > 虚拟化 > 正文

虚拟化是如何诞生的


一、计算机虚拟化技术的四种虚拟化技术

虚拟化技术(Virtualization)和分区技术(Partition)紧密结合
自20世纪60年代Unix诞生以来,虚拟化技术和分区技术就开始发展,并经历了从“硬件分区”到“硬件分区”的转变。->“虚拟机”->“准虚拟机”->“虚拟操作系统”发展历史最早的分区技术诞生于人们增加大型机使用的需要,例如在金融、科学等领域。,大型Unix服务器通常价值千万甚至上亿元,但在实际使用中,有些部门不能很好地共享算力,这往往会导致需要算力的部门无法获得不需要算力的部门需要大量的计算能力占用过多的资源目前出现了分区技术,可以将一台大型服务器划分为若干个分区,每个分区分配给生产部门、测试部门、研发部门等部门。为了提高虚拟机技术(VirtualMachineMonitor)的性能,一种新的半虚拟化技术(Para-Virtualizion)诞生了。这种虚拟化技术以Xen为代表,其特点是修改操作系统的内核,增加XenHypervisor层。它允许安装在同一硬件设备上的多个系统同时启动,资源分配由XenHypervisor完成。在这个虚拟环境中,仍然需要模拟硬件设备,安装Guest操作系统,修改操作系统内核。与传统的VirtualMachineMonitor相比,Xen的性能略有提升,但并不显着。为了进一步提高性能,Intel和AMD分别开发了VT和Pacifica虚拟化技术,为CPU添加虚拟指令。利用CPU支持的硬件虚拟化技术,无需修改操作系统内核,而是由CPU特有的指令集执行相应的转换操作。——与单个物理资源单元相比,虚拟资源可以以更小的单元进行分配。与物理资源相比,虚拟资源在系统崩溃后可以更快地恢复,因为它们不存在硬件和操作系统问题。


二、网络虚拟化技术

数据包从虚拟机到物理机的过程:

半虚拟化技术可以让数据包跳过QEMU虚拟网卡,直接从虚拟机进入虚拟化层。
虚拟网卡性能排名:

简化虚拟化环境中的交换网络,取代传统的LinuxTAP设备和桥接设备的组合。
MacVTap设备具有三种不同的工作模式:

创建MacVTap端口进程

KVM虚拟机使用MacVTap网络
配置XML文件如下

虚拟机给主机上电后系统自动创建一个MacVTap设备供虚拟机使用。MacVTap设备连接父设备eth0,工作模式为Bridge

物理网卡的xml文件配置

1检查网络是否通支持卡RSS:
ls/sys/class/net/eth0/queues/

3。Virtio多队列网卡
检查是否支持:
grepIFF_MULTL_QUEUE/usr/include/Linux/if_tun.h
Virtio多队列网卡配置:

N1-8最多支持8个队列。要启用它,请在虚拟机上运行以下命令:
ethtool-Leth0combinedM
M1-N,M小于或等于N

PCIPassthrough配置
1。查看网卡设备信息:
lspci或virshnodedev--list--tree

2pci_0000_02_00_0的配置信息
virshnodedev-dumpxmlpci_0000_02_00_0

3.编辑虚拟机XML文件并添加PCI设备信息。

SR-IOV上有两种类型的功能。

SR-IOV标准可以实现PCI-E设备的高效共享,具有以下优势:

2.网卡SR-IOV配置
首先需要配置SR-IOV的配置。然后,主机PF使用虚拟机专用的子网卡。
(1)加载SR-IOV内核模块。
通过modprobe命令加载IGB模块。
modprobeigb
实际加载时,必须激活虚拟功能(VF)。
modprobeigbmax_vfs=7

如果需要重置VF,可以删除并重新加载该模块。
modprobe-rigb
将配置永久写入配置文件。
echo"optionsigbmax_vfs=7">>/etc/modprobe.d/
通过lspci命令可以查看多个主网卡和子网卡。

(2)子网卡的使用
虚拟机只能通过网卡来使用子网卡。
virshnodedev-list|grep0b
虚拟机网卡XML配置文件如下:

虚拟机需要安装网卡驱动才能使用子网卡。许多Linux系统可以自动识别子网卡。Windows系统只能是2008Severer以上并且必须安装最新的Intel网卡驱动。