虚拟化: 虚拟化将软硬件解耦,将内存、CPU、网卡等计算资
  

宋壮普 870110人觉得有帮助

{{ttag.title}}
虚拟化:
虚拟化将软硬件解耦,将内存、CPU、网卡等计算资源,通过软件抽象后提供给虚拟机使用,极大的提升了资源利用率以及灵活度
使用虚拟化技术,将多台服务器的应用整合到一台服务器上的多个虚拟机上运行
虚拟化的几个概念:
Guest OS:
运行在虚拟机之上的操作系统
Guest Machine:
虚拟出来的虚拟机
Hypervisor(Virtual Machine Monitor):
虚拟化软件层/虚拟机监控器
Host OS:
运行在物理机之上的OS
Host Machine:
物理机
Hypervisor架构:
计算虚拟化的软件层,通常叫Hypervisor,即虚拟化层,也叫虚拟机监控器(VirtualMonitor,VMM),负责Guest OS所有硬件资源调用
TYPE-I(裸金属架构):
VMM直接运行在裸机上,使用和管理底层硬件资源,Guest问都需通过VMM完成,VMM拥有硬件驱动程序
TYPE-II(宿主型、寄居型):
VMM之下还有一层宿主操作系统,Guest主操作系统,带来额外开销,所有硬件驱动、内存管理、进程调度等由宿主操作系统执行
CPU指令系统:
内核态:操作系统访问硬件,关键数据结构,运行中断等
用户态:用户运行应用进程
最初的x86架构不适用于虚拟化,因为存在17条敏感的非特权指令,这些指令在虚拟化环境中执行时可能会导致系统异常
全虚拟化:
工作原理:
Guest OS指令段在执行前进行整段翻译,将其中的敏感非特权指令替换为Ring0中执行对应特权指令。非特权指令直接执行
特权指令首先被陷入到VMM,VMM通过一系列的模拟操作来实现此特权指令,然后返回给Guest OS,Guest OS从上次中断的地方继续执行
优点:
Guest OS无需修改,可移植性和兼容性好
缺点:
当负载较大,敏感指令频繁被执行时CPU性能低下
半虚拟化:
工作原理:
在Hypervisor上运行的Guest OS已经集成了与半虚拟化有关的代码,使得Guest OS能够非常好地配合Hypervisor来实现虚拟化
Hypervisor提供Hypercall接口来满足Guest OS的关键内核操作如内存管理、中断和时间同步等
优点:
性能非常接近虚拟机
缺点:
不支持未修改的操作系统,兼容性和可移植性差
硬件辅助虚拟化:
工作原理:
引入新的CPU运行模式和新的指令集,使得VMM和GuestOS运行于不同的模式下
GuestOS运行于受控模式,原来的一些敏感指令在受控模式下会全部陷入VMM,由VMM来实现模拟,这样就解决了部分非内核态敏感指令的陷入,而且模式切换时上下文的保存恢复由硬件来完成,这样就大大提高了陷入的效率
该技术的引入使X86 CPU可以很容易的完全虚拟化
内存页表:
在物理机中,操作系统需要维护内存页表,该页表上记录了应用所使用的虚拟地址到实际内存物理地址的映射
虚拟内存页表:
物理服务器经过虚拟化之后,VMM需要维护由宿主机虚拟地址(HVA)到客户物理地址(GPA)的内存页表,同时Guset OS也会有自己的系统页表。那么此时从Guest OS下发的内存请求,到物理服务器的硬件这个过程就会消耗大量的性能,甚至会发生故障
MMU虚拟化:
传统MMU(内存管理单元)负责虚拟地址映射为物理地址
软件层面的影子页表技术
硬件层面的 EPT(intel)/RAI(AMD)
影子页表:
VMM在宿主机内核中为虚拟机进程维护了一个虚拟机的虚拟地址到宿主机物理地址的页表(将三张页表进行整合),这个页表和虚拟机内核的页表同步更新
Intel EPT/AMD RVI:
利用TLB转换查找缓冲器实现虚拟机虚拟地址到物理地址“一步到位”的自动映射
IO全虚拟化:
工作原理:
由虚拟机设备驱动发出的I/O请求先通过设备模型转化为物理I/O设备的请求,再通过调用物理设备驱动来完成相应的I/O操作
反过来,设备驱动将I/O操作结果通过设备模型,返回给虚拟机的虚拟设备驱动
优点:Guest OS无需修改,可移植性和兼容性好
缺点:大量的上下文切换时,造成的开销较大
IO半虚拟化:
工作原理:
采用I/O环机制,使得 Guest端和Host端可也共享内存,减了虚拟机与VMM之间的交互
采用事件和回调的机制来实现 Guest与Host VMM之间的通信,这样,在进行中断处理时,就可以直接采用事件和回调机制,无需进行上下文切换,减少了开销
优点:性能较I/O全虚拟化有了较大的提升
缺点:存在移植性问题,导致其使用受限
IO直通或透传:
工作原理:
通过硬件的辅助可以让虚拟机直接访问物理设备,而不需要通过VMM或被VMM所截获
通过IOMMU技术来隔离虚拟机对内存资源的访问
通过intel的VT-d技术对芯片进行改造,提升性能
优点:性能提升最大,接近于物理主机
缺点:资源是虚拟机独占的,仅限于物理资源丰富的机器
软硬件结合的SR-LOV:
工作原理:
SR-IOV允许多个虚拟机共享单个I/O设备硬件
Host通过SR-IOV将包括发送,接受队列在内的物理资源依据VF数目划分成多个子集
PF驱动将这些资源子集抽象成VF设备,映射给虚拟机使用
PF:
包含轻量级的 PCIe功能,负责管理SR-IOV设备的特殊驱动,其主要功能是为Guest提供设备访问功能和全局贡献资源配置的功能
VF:
包含轻量级的 PCIe,其功能包含三个方面:向虚拟机操作系统提供的接口;数据的发送、接收功能,与PF进行通信,完成全局相关操作
asV虚拟化性能的优化:
NUMA:vCPU访问远地内存需要经过QPI总线才能访问,通过NUMA优化尽可能访问本地内存
气泡内存:在虚拟机运行时动态地调整它所占用的宿主机内存资源,而不需要关闭虚拟机
大页内存支持:虚拟机支持hugepages技术,可以有效提高30%的数据库性能
内核同页合并KSM:就将多个相同的内存合并,并将其标记为“写时复制”,优化内存使用,让虚拟机享用到更多内存
MUMA:
当虚拟机使用少量vCPU资源时,尽量将其分配到同一块物理CPU上
当使用大量vCPU资源时,将其拆分到不同物理CPU上,同时为其分配“Local”
内存气泡:
通过内存气泡将较为空闲的虚拟机内存释放给内存使用率较高的虚拟机,从而提升内存利用率
同页内存合并:
KSM,即共享内存或相同页内存合并技术,把相同的内存页合并,减少内存浪费,让物理主机跑更多的虚拟机
大页内存:
“大内存页”有助于 Linux系统进行虚拟内存管理。顾名思义,除了标准的 4KB大小的页面外,它们还能帮助管理内存中的巨大的页面。使用“大内存页”,最大可以定义 1GB的页面大小

在系统启动期间,“大内存页”可以为应用程序预留一部分内存。这部分内存,即被“大内存页”占用的这些存储器永远不会被交换出内存。它会一直的保留其中,除非修改了配置。这会极大地提高像Oracle数据库这样的需要海量内存的应用程序的性能

在虚拟内存管理中,内核维护一个将虚拟内存地址映射到物理地址的表,对于每个页面操作,内核都需要加载相关的映射。如果内存页很小,那么需要加载的页就会很多,导致内核会加载更多的映射表。而这会降低性能

使用“大内存页”,意味着所需要的页变少了。从而大大减少由内核加载的映射表的数量。这提高了内核级别的性能最终有利于应用程序的性能
asV特色技术:
故障自动重启:
主机根据虚拟机发出的心跳、磁盘IO、网络流量状态,判断虚拟机的Guest系统是否无响应了,持续数分钟后,可认为该虚拟机发生了黑屏或者蓝屏,将该虚拟机执行HA操作,关机并重启
虚拟化HA:
实现整体数据中心业务高可用,无需使用昂贵、复杂的传统集群解决方案
最大限度地减少硬件、软件故障造成的业务中断时间
提高整个基础架构范围内的保护力度
虚拟机热迁移:
通过热迁移可以实现虚拟机的在线动态迁移
零宕机时间
支持带存储的热迁移和跨集群的热迁移
动态调度DRS:
设置阈值,在一定的时间内,当(cpu和内存)利用率超出范围后,触发虚机位置调度,实现集群业务负载自动均衡,降低集群内高负载的主机资源利用率
动态资源扩展DRX:
可自动热添加vCPU、vRAM,业务不中断,DRX功能对软件架构无要求,适用于所有应用对
应的虚拟机
内置WAF
快速备份:
通过快速的无代理磁盘备份保护您的数据,使用增量备份减少备份所需空间,降低备份成本
无需备份软件和备份服务器,实现增量的备份
快速备份比普通基于快照备份性能提升60%,且备份完成后,性能无损失
提供手工备份和定时备份功能,保证虚拟机文件的数据安全
备份及恢复:
提供按周、按天、按小时的自动备份周期,根据实际业务需求灵活配置
提供自动清理备份功能,最大限度节省备份存储空间
CDP持续数据保护:
对指定虚拟机开启实时CDP保护,通过IO镜像方式跟踪记录虚拟机IO变更情况,当虚拟机数据丢失或故障时,可使用备份的任意历史时间点进行恢复(RPO≈0,RTO<5min)
数据备份的目标端可以为超融合存储、SAN和NAS存储
分布式管理平台
可视化资源管理
一键检测
aSAN:
深信服分布式存储是一款自主开发的分布式存储系统,利用虚拟化技术“池化”集群存储卷内通用X86服务器中的本地硬盘,实现服务器存储资源的统一整合、管理及调度,最终向上层提供NFS/iSCSI存储接口,供虚拟机根据自身的存储需求自由分配使用资源池中的存储空间
aSAN概念:
IOPS:
每秒钟的IO数,该指标主要用于评价小块IO性能,体现存储系统的IO演示能力和并发能力,业界一般默认IOPS指的是4K块大小的IO性能,该值越大说明性能越好
吞吐:
每秒钟的IO吞吐,单位MB/s,该指标主要用于评价大块IO性能,体现存储系统的IO带宽能力,该值越大说明性能越好
镜像格式:
深信服超融合平台使用qcow2镜像格式作为虚拟机的虚拟磁盘文件。简单而言,虚拟机中看到的一块磁盘,实际在aSAN中是以一个qcow2文件的形式存在的
缓存盘和数据盘:
固态硬盘(SSD)性能高,但价格高,容量小,机械硬盘(HDD)价格低,容量大,但性能低
为了实现存储系统在性能,容量,成本三者之间达到最佳均衡,一般会使用混合硬盘配置,以SSD缓存盘作为缓存层,HDD数据盘作容量层
磁盘组:
在混合硬盘配置下,缓存盘和数据盘以磁盘组的关系进行配对,每个磁盘组由1个SSD和n个HDD组成(n<7),每个磁盘组的SSD仅为其磁盘组下的HDD提供缓存加速的能力,以此来减少SDD故障所影响的范围
aSAN存储特性:
数据分片:
虚拟磁盘的大小是不固定的,可以小到几个G,大到几十T。为了能够更灵活地存放和处理这些数据,aSAN通过数据分片技术对单个qcow2文件按照固定单位大小进行切分成若干个颗粒度更小的分片。 aSAN的诸多存储策略都是基于颗粒度更小的分片进行的,让数据在存储卷中分布更加地均衡,数据管理更加灵活
分片的优点:
单个qcow2文件(即单个虚拟磁盘)的大小可达到整个存储卷的可用容量大小
颗粒度小,策略灵活。例如分布均匀,断点续修
多盘性能(结合条带化)
条带化:
条带化技术的普遍定义是将一块连续的数据切分成很多个小的数据块,然后并发地存储到不同物理硬盘上,实现对数据进行写入或读取时可以获得最大程度上的I/O并发能力,从而获得优异的性能
多副本:
多副本是指将数据保存多份的一种冗余技术,aSAN支持两副本、三副本,副本所存放的位置必须满足主机互斥原则。存储池可用空间= (集群数据盘总空间 - 数据盘预留总空间)/副本数。通常情况下,每块数据盘预留的空间为16G
aSAN存储高可靠性:
数据平衡:
1、计划内平衡
计划内平衡是在用户所计划的时间范围发起的数据平衡。当存储卷内不同硬盘的容量使用率差异较大时,将对使用率较高的硬盘执行数据平衡,迁移部分数据到容量使用率较低的硬盘上
平衡触发的条件:
卷内最高和最低的磁盘容量使用率之差超过一定阈值时(默认是30%)即触发平衡,直至卷内任意两块硬盘的使用率不超过一定阈值(默认是20%)
2、自动平衡
自动平衡是无需用户进行干预,由系统自动发起的数据平衡。是为了避免存储卷内某块磁盘的空间已用满,而其他磁盘仍有可用空间
平衡触发的条件:
当存储卷内存在某块磁盘空间使用率已超过风险阈值时(默认是90%)即触发自动平衡,直至卷内卷内最高和最低的磁盘容量使用率小于一定阈值(默认是3%)
平滑扩容:
灵活。支持单块硬盘或单台物理主机扩容
快捷。需扩容的组件准备就绪后,存储卷的扩容仅需几分钟
透明。扩容过程对上层的业务无任何影响
异构。可以容量异构无浪费,但最优是推荐同构
差异数据修复:
系统检测到磁盘离线后,系统将预留一段时间便于用户确认磁盘是否出现真实故障,如磁盘出现松动离线,人为拔插后恢复上线,此时只需对该磁盘进行修复即可,所需修复的数据为离线时间内的另一数据副本新增/修改的数据,即差异数据修复
场景:存储网络中断后短时间内重新上线/某台主机在计划内离线进行维护并重新上线等
数据重建:
以数据两副本为例,当存储卷内的组件(磁盘或主机)发生物理故障时,故障组件上的数据在另一个副本仍然可以保障虚拟机的正常读写,但此时存储卷的冗余度实际上已变低,假如此时另一副本所在的组件也发生故障,就会导致数据丢失
通过数据重建功能,在组件发生故障后,将以故障组件上数据的另一副本作为修复源,以分片为单位在目的组件上重建出新的副本,恢复副本的完整性,实现系统自愈
定时坏道扫描:
系统将定时扫描硬盘上的数据,当检测到存在坏道时,将自动修复坏道上的数据。为了提高扫描效率,建议在业务空闲时段进行。自动修复会将坏道的数据修复至保留扇区
IO超时处理:
当虚拟机的读IO延时超过设定的阈值,为了保证业务连续,系统将自动从其他副本读取,也就是说当数据在副本1的读取动作超过3秒之后,则会自动将读数据的源修改到另一个副本上去,以保证业务正常运行
链接克隆设置:
由于链接克隆生成的虚拟机会引用同一份数据,为了保证业务的性能和连续性。当检测到一份数据呗引用的虚拟机数超过设定的阈值时,系统会自动将这份数据通过源数据拷贝生成另一份数据,以实现读写的负载均衡
aSAN存储高性能特性:
SSD分层:
分层(Tier)是aSAN缓存系统中最主要的性能层。分层的核心思想是:虚拟机的写操作可以直接地、快速地写入到分层中,之后立即向上层返回写入成功,从而显著地减少写I/O延迟以及提升写入速度。而后,分层上已有的数据再回写到容量层的HDD中,从而释放出分层上的空间用于接纳后续的写操作。——分层提供写缓冲能力
虚拟机的读操作尽可能地直接从分层中读取到所需访问的数据(即缓存命中),无需从容量层的HDD中读取,从而显著地减少读I/O的延迟。——分层提供读缓冲能力
分层热力图:
分层提供读、写缓冲能力的核心目标是:
1、让虚拟机的写操作可以直接地、快速地写入到分层中,避免等待,减少写I/0的延迟
2、尽量保证虚拟机的读操作直接从分层中读取,即提高缓存命中率,减少读I/O的延迟
分层的空间是有限的,能够驻留在分层上的数据也是有限的,因此要实现以上两个目标,则需要将:
最有价值的的数据驻留在分层上以保证数据读取时能够命中分层
价值不高的数据则淘汰出分层腾出空间使得数据写入时无需等待即可写入分层
最有价值的数据是指用户需要频繁访问的数据,即热数据
而价值不高的数据指的是用户无需经常访问的数据,即冷数据
分层淘汰:
分层淘汰机制的核心是:
当数据写入至分层时,将会优先淘汰clean状态中热度最低的数据,腾出空间使得数据可快速写入分层,并且能够保护需要访问的数据大概率仍然存在于分层中
当数据读取命中分层时,该数据的热度会继续增加,进一步提高该数据在分层中的地位,即更不容易被淘汰
当数据读取未命中分层时,该数据的热度也会增加,并且当该数据的热度高于Tier已有的数据时,该数据也将重新从容量层HDD中进入到SSD分层,淘汰掉热度更低的数据
分层优势:
传统缓存机制的局限性:传统的缓存机制中也是将高性能的SSD作为缓存层,低性能容量大的HDD作为容量层。但在SSD中一般只分为固定两个缓存区:写缓存区(wcache)和读缓存区(rcache),两个区分工明确

数据写入的开销大:数据写入到写缓存区时,要保证写入一份到读缓存区

SSD的效能低下:读写同时进行时,写入缓存的速度大于回写至容量层的速度,当缓存区占满时需要等待写缓存空间释放才能写入,即写入速率下降为缓存回写至容量的速率,当缓存区占满时需要等待写缓存空间释放才能写入,即写入速率下降为缓存回写至容量的速率,而且有70%的读缓存区被浪费,无法用于写缓存

无法抵抗扫描读:传统的LRU)缓存淘汰算法,遇到扫描性的读操作时,将导致缓存区内
有价值的数据被这些仅有一次读取的无效的数据完全挤占掉,失去缓存价值

分层的先进性:分层既可以提供写缓冲能力,也可以提供读缓冲的能力,因此可以很好地解决传统缓存机制的问题

数据一次写入,开销更小:数据写入到分层后,可以直接用于数据的下次读取,即使数据回写到容量层HDD后,仍然驻留在SSD的分层中

SSD的效能高:首先整个分层空间都是可以用于读缓存,并且当数据写入量较大时,整个分层都可以申请空间用于写缓存,可以更好地满足业务读写的弹性需求

可以抵抗扫描读:由于aSAN的缓存系统是根据数据被访问的次数以及最近被访问的时间来区分数据热冷,从而定义数据在分层中被淘汰的优先级。对于扫描性的读操作,虽然其被访问的时间上是最近的,但其被访问的次数仅有一次,因此数据热度并不是最高的,不会挤占由于访问次数较多而热度更高的数据

aSAN存储其他特性:
虚拟iSCSI:
aSAN可以提供标准的iSCSI协议,将aSAN存储资源开放给其他的物理服务器或者虚拟化平台作为纯粹的外置iSCSI存储使用
aSAN的iSCSI服务器则通过接入IP重定向为虚拟IP池的方式,实现iSCSI服务器的高可用和负载均衡特性
存储分卷:
aSAN支持在同一个超融合集群内选择不同的主机组成不同的卷,即划分为不同的存储资源池
不同的存储卷之间,数据的存储策略是完全隔离,互不干扰的,虚拟机的数据存储位置选择了存储卷A,那么该虚拟机所产生的数据都只会存在于卷A中,在卷A中执行分片、条带化、副本等策略。但注意,虚拟机的运行位置是可以在任意一个卷的,但一般优先在本卷上运行
虚拟共享盘:
虚拟共享盘是aSAN在虚拟iSCSI磁盘的基础上进行优化的,专用于Oracle RAC场景。利用共享盘方式的部署可以大幅简化Oracle RAC传统部署模式下的复杂度和成本
传统的Oracle RAC环境部署需要至少两台物理主机,并且同时也需要外置的共享存储设备,如外置iSCSI存储和外置FC存储。那么在超融合平台上,通过虚拟机类比于物理服务器,而虚拟共享盘则类比如置iSCSI存储
存储策略:
aSAN支持用户自定义编辑虚拟机的参数项——也就是存储策略,这样在部署多台具有相同参数配置的虚拟机时,大大简化了用户的操作流程与部署时间。存储策略的灵活性体现在以下特点:
内置常用策略以及支持用户自定义策略。系统会根据集群的环境条件内置常用的策略,用户可以直接使用
存储策略支持灵活修改。存储策略被引用后,后续仍然可以修改,满足业务灵活变化的需求
支持以虚拟机粒度或虚拟磁盘粒度选择不同的存储策略。满足不同的业务,不同的磁盘对性能、可靠性不同的要求
aNET:
虚拟交换机:
没有虚拟交换机的情况下,当主机1失效之后,主机1上的虚拟机移动到主机3之后,网络就会中断
所有相同网段的虚拟机在互相访问的时候,直接通过分布式虚拟交换机走VXLAN网络进行访问
基于主机vxlan隧道的分布式交换架构
虚拟路由器:
VMA与VMC若不同网段互相访问时,流量会经过serverB的虚拟路由器,再回到分布式虚拟交换机到达VMC
分布式虚拟防火墙:
分布式虚拟防火墙类似于一个在分布式虚拟交换机上的ACL策略
分布式防火墙可实现面向业务虚拟机的安全策略部署
快速部署,架构简单,配置随虚拟机迁移
无须安装任何插件,不影响平台及业务性能
可基于虚拟机,配置访问控制策略,实现安全微隔离
虚拟机迁移运行位置,安全策略自动跟随
简化网络结构,排障方便
提供BYPASS与拦截日志显示功能,快速确认规则有效性
与连通性探测相结合,快速排障,缩短定位问题时间
所画即所得
aSEC组件:
vNGAF, vSSL VPN, vAD, vWOC
aSEC虚机安全病毒防护:
服务端(云端安全中心)
以虚机的模式部署在Hypervisor之上,起到全局安全中心的调度
客户端(微代理安装)
轻客户端软件部署在VM的OS内,对OS进行精细化监控

打赏鼓励作者,期待更多好文!

打赏
119人已打赏

你行不行a_细狗 发表于 2023-4-13 12:26
  
感谢楼主分享,学习一下
angelccn 发表于 2023-4-13 13:12
  
谢谢分享,有助于工作!
李大帅气 发表于 2023-4-13 13:44
  
感谢楼主分享,学习一下
如沐清风 发表于 2023-4-13 14:28
  
果然是高手在民间,楼主帖子写的不错,很有参考价值,还想看更多精彩分享,期待楼主下一篇好帖!
新手276056 发表于 2023-4-13 14:40
  
临兵斗者 发表于 2023-4-13 14:51
  

感谢楼主分享,学习一下
王学文 发表于 2023-4-13 15:42
  
乀糖果 发表于 2023-4-13 18:03
  
感谢楼主分享,学习一下
SXFA 发表于 2023-4-13 18:21
  
果然是高手在民间,楼主帖子写的不错,很有参考价值,还想看更多精彩分享,期待楼主下一篇好帖!
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
技术咨询
功能体验
新版本体验
产品连连看
GIF动图学习
标准化排查
自助服务平台操作指引
运维工具
2023技术争霸赛专题
通用技术
秒懂零信任
技术晨报
信服课堂视频
用户认证
安装部署配置
深信服技术支持平台
安全攻防
SDP百科
设备维护
社区帮助指南
答题自测
每日一记
玩转零信任
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

217
274
151

发帖

粉丝

关注

本版达人

皮皮虾·真

本周建议达人

郑州网络

本周分享达人

二进制网络

本周提问达人