HUAWEI CLOUD STACK系统架构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JP1ewXR3-1661072359566)(C:\Users\Arrogantgirlxy\AppData\Roaming\Typora\typora-user-images\image-20220821013242393.png)]

二、私有云FusionCloud 6.5改名叫华为云stack
1、展现层
2、云服务层:IAAS(ECS、BMS、IMS、EIP、ELB、SG、VBS等)、PAAS、SAAS、DAAS四种类型的云服务。
3、资源池层:IAAS、PAAS、SAAS、DAAS。FusionSphere openstack(nova\cinder\neutron\swift\keystone等)通过驱动对接硬件、软件,构造出以上四种类型的资源池。资源层(计算资源、网络资源、灾备资源、数据库资源等)
4、硬件基础设施层:多数据中心(服务器、存储、交换机、路由器、防火墙、制冷、供电等),数据中心之间通过DCI。

5.运营、运维:ManageOne(SC运营 SO 运维)

虚拟化与私有云的区别?

虚拟化只是简单资源虚拟化,一虚多,大虚小。私有云除了能够实现虚拟化外,更重要的是服务自助化,自动化。

虚拟化通常是小规模,私有云较大规模。

私有云可以实现高级云服务

FC:发放一个虚拟机的话

​ 1.创建空的虚拟机,挂载ISO

​ 2.安装操作系统

​ 3.配置IP 4.安装软件

根据使用场景划分为三个类型
type1:软SDN,由两个服务器部署网络组件,还可以实现SDN功能。还具备级联能力

type2:硬SDN,由三个服务器部署华为AC控制器对接网络设备,对接配套硬件网络设备实现SDN能力。不具备级联能力

type3:又叫无SDN,不需要额外的服务器(最少三个控制节点+一个以上的计算节点)没有SDN能力。只能实现简单二层网络虚拟化,不具备级联能力

级联:通过级联,可以 扩大openstack的规模。级联层,对接多个被级联层

级联作为统一管理(部署一些组件的proxy),被级联接入资源(服务器、VM等等)

FusionAcess桌面云

HDP:华为桌面协议

RDP:微软远程桌面协议

接入和访问控制层

WI:提供用户一个登录虚拟机的页面 负载负担

ITA:提供给管理员一个管理界面 主备

HDC:华为桌面控制器,主要与ITA交互,完成ITA下发的配置 负载分担

License:授权服务器。两种类型license:最大用户数和并发用户数 单点

GaussDB:高斯数据库。主要存储ITA,HDC的数据 主备

(WI、ITA、HDC、License、GaussDB部署在同一台虚拟机上)

vAG:虚拟接入网关(HDP),自助维护网关(VNC) 负载分担

vLB:虚拟负载均衡器,负载后端的多个WI 主备

(vAG/vLB部署在同一台虚拟机上)

TCM:瘦终端管理 单点

Backup Server:备份服务器,备份各个组件的关键数据和文件 单点

以上组件当时部署在Linux虚拟机上

AD:服务目录,计算机与用户的绑定,用户密码验证DNS

DNS:地址解析,域名与IP的转换

DHCP:动态地址分配,给计算机分配IP地址

这三个部署在windows server虚拟机上 全部是主备

HDA 部署在VM中的一系列组件的统称

SVN 硬件设备,具备AG、LB两者的功能,当大规模桌面时,需要用到SVN

FusionAcess架构图

1.终端(通过HDP协议连接到VM中的HDA)

2.FusionAcess(Linux组件、Windows组件)

3.FusionCompute(CNA和VRM)

4.基础设施

Tools是虚拟机的驱动程序。

安装并启动Tools后,用户无需做任何操作,Tools即可提供以下功能:

为虚拟机提供高性能的磁盘I/O和网络I/O功能
为虚拟机提供虚拟硬件监控功能
    获取虚拟机指定网卡IP信息
    获取虚拟机内部各CPU利用率、内存利用率
    获取虚拟机内各个磁盘/分区的空间使用信息
为虚拟机提供高级功能
    在线调整虚拟机的CPU规格
    创建虚拟机快照
    虚拟机蓝屏检测
    虚拟机与主机时钟同步
    虚拟机网卡的高级功能,如QoS
    自动升级虚拟机的驱动程序,如Tools驱动

为啥不直接默认集成tools?
1、OS并不是设计给VM使用。
2、tools不同虚拟化产品不一样,不兼容。

多规模的数据中心可以通过多对VRM级联,实现无极扩容,最大可管理4096个物理节点,8000虚拟机规模

华为云的GPU解决方案:

1、CPU模拟GPU:默认使用
2、GPU虚拟化:将物理GPU虚拟成GPU池子,VM可从中获取VGPU
3、GPU共享:将物理GPU绑定给某个虚拟机,其他虚拟机将工作转交给GPU虚拟机实现,目前已经不使用
4、GPU直通:将物理GPU直接绑定给虚拟机使用,并且独占

内存复用技术:默认在集群里开启
在这里插入图片描述

内存共享:虚拟机之间共享同一物理内存空间(蓝色),此时虚拟机仅对内存做只读操作
写时复制:当虚拟机需要对内存进行写操作时(红色),开辟另一内存空间,并修改映射
内存置换:虚拟机长时间未访问的内存内容被置换到存储中,并建立映射,当虚拟机再次访问该内存内容时再置换回来
内存气泡:Hypervisor通过内存气泡将较为空闲的虚拟机内存释放给内存使用率较高的虚拟机,从而提升内存利用率

默认是关闭的?
1、内存复用技术可能降低性能。
2、内存复用并不是凭空产生的。

限制条件:
1、主机需配置足够的交换空间才能保证内存复用功能的稳定运行。
2、内存复用与SRIOV直通、GPU直通、NVME SSD盘直通特性互斥。直通设备的虚拟机必须内存独占,内存独占后虚拟机的内存不会被交换到交换空间。内存复用(非100%内存预留)的虚拟机不能直通设备。

华为虚拟化平台,通过智能复用以上三种技术将内存复用比提升至130%
一旦开启内存复用技术,三个都开启

在物理内存规格一定的情况下,能够超分配给虚拟机(规格)

数据有冷、有热。
20%的数据,在80%的时间会使用。热数据,内存中
80%的数据,在20%的时间会使用。冷数据,硬盘中

单CPU架构,性能较差
多CPU架构:1、SMP:多个CPU共享内存,优点:可以实现多CPU 缺点:会有资源竞争的问题
2、MPP:扩展SMP,CPU可设置为SMP模式、非SMP模式,独占资源内存;在一定程度解决了SMP资源竞争的问题。但是带来资源分配不均衡。
3、NUMA:多个CPU,并且所有内存统一分配,所有的内存都可以共享。
将服务器的多个CPU划分为多个节点,一颗CPU一个节点。每个节点内部会有多根内存条。节点内,CPU访问内存,性能最好,CPU还可以跨节点访问内存,但会有内存访问时延。

HOST NUMA:由主机实现。在BIOS中开启,开启之后,可以让主机能够认识NUMA架构。HOST OS分配资源时,会优先分配同个节点的CPU、内存。
GUEST NUMA:由hypervisor实现。在FC的集群中开启,开启之后,可以让虚拟机认识NUMA架构。VM分配资源时,会优先分配同个节点的CPU、内存。

RDM,存储lun直接映射给VM。但是不支持迁移、HA等。

快照

为虚拟机创建快照,保存虚拟机设置和虚拟机磁盘的数据,用于虚拟机数据的还原和恢复;如果创建内存快照,还可以保存和恢复虚拟机的内存情况。

全拷贝快照:在快照之前就已经打了快照了,快照的时候就不用打快照了。 优点:性能不下降 缺点:占用更多的空间

写时复制COW,写数据时,判断原位置是否有数据,假如无数据,直接写入,假如有数据,把原数据读出,写入快照空间,最后把新数据写入原位置
优点:读性能没有下降
缺点:快照之后,由一次写,变为一次读两次写。导致写性能下降。

写时重定向ROW,写数据时,直接将新数据写入快照空间中。读数据时,如果快照空间有数据,直接读出,如果快照空间没有数据,再到原位置读取数据。
优点:写性能没有下降
缺点:快照之后,由一次读,变为,两次读。导致读性能下降。

中断
CPU处理任务的机制。
由其他设备发起任务请求,CPU处理任务。
设备称之为中断源,CPU处理任务,就叫作中断。
传统IO设备,可能会把请求集中于CPU0,造成对CPU0压力较大。
自适应,变为多线程。
批量接收小包。
DPDK

PF全局管理网卡可以管理整张物理网卡,绑定给hypervisor虚拟化层

VF最小功能集,具备数据转发功能,相当于一块虚拟网卡,绑定给虚拟机

OVS:Linux内核自带的虚拟交换机,实现服务器内部的虚拟交换

EVS:就是OVS的华为的增强版 1.由OVS单线程变为EVS多线程 2.由OVS的内核态转变为EVS的用户态。

以上两个都是单机的虚拟交换机,只能实现主机内部不同虚拟机的通信

要跨主机的话,就需要使用DVS DVS;分布式虚拟交换机(普通、用户态、SR-IOV) DVS由VRM去逻辑组织不同主机上的EVS

端口组:就是一类网络属性(vlanid、流量整形)一样的端口的集合 普通类型的虚端口只能属于一个VLAN,中继类型的虚端口可以允许多个VLAN接收和发送报文。普通虚拟机选择普通类型的端口,虚拟机的网卡启用VLAN设备的情况下选择中继类型的端口,否则虚拟机的网络可能不通。
普通类型相当于是access,中继类型相当于是trunk。
不同端口组可以设置同一个VLAN吗?可以
端口组跟vlan的区别是啥? 答案没有关系。端口组会有vlanid,普通是1个,中继可以是多个。不同端口组可以相同vlanid上行链路,DVS与CNA主机的物理网卡相连的逻辑链路,通过上行链路可以连接到物理网络

交换机根据位置分为TOR、EOR

TOR一般放置在服务器机柜的最上端,接入服务器 EOR一般会有专门机柜放置,汇总

vmware类似的产品:vmware-vswtich,与DVS一样

同CNA主机,同DVS,同二层,服务器内部通信
同CNA主机,同DVS,不同二层,出服务器到网关再回来
不同CNA,同DVS,同二层,出服务器到TOR再回来
不同CNA,同DVS,不同二层,出服务器到网关再回来
不同DVS,不能通信

对于普通网卡,绑定模式可以选择以下几种:

主备:绑定的对象为两个网口时,如需提高可靠性,建议将绑定的网口配置为主备关系。主备模式速率等同于单个网口的速率。
基于轮询的负荷分担:绑定的对象为两个或两个以上的网口时,通过对绑定的网口依次轮询来分担数据流,使绑定后的带宽高于单个网口的带宽,是一种简单的负荷分担方式。

该模式使网络流量完全均匀地发送给各个网口,但可能产生大量报文乱序。因此,建议绑定为负荷分担模式时,优先选择基于源和目的MAC的负荷分担。
基于源目的IP和端口负荷分担:绑定的对象为两个或两个以上的网口时,通过源目的IP和端口负荷分担算法使绑定后的带宽高于单个网口的带宽。

源和目的端口的负荷分担算法:当报文中有IP和端口时,使用源目的IP、端口和MAC进行负荷分担;当报文仅有IP地址时,使用IP地址和MAC进行负荷分担;当报文仅有MAC地址时,使用MAC地址进行负荷分担。
基于源目的MAC的负荷分担:绑定的对象为两个或两个以上的网口时,通过源端和目的端网口MAC地址对应关系分担数据流,使绑定后的带宽高于单个网口的带宽。

该模式一般用于网络流量大部分在二层网络内部的场景,此时网络流量可通过MAC均匀散列。
基于源目的MAC的LACP:在“基于源和目的MAC的负荷分担”的基础上,使用LACP协议,使绑定后的端口具备检测链路层故障、自动切换故障链路的功能。
基于源目的IP的LACP:绑定的对象为两个或两个以上的网口时,通过源和目的IP负荷分担算法(当报文有IP地址时,使用IP地址和MAC进行负荷分担;当报文仅有MAC地址时,使用MAC地址进行负荷分担)使绑定后的带宽高于单个网口的带宽。同时使用LACP协议,使绑定后的端口具备检测链路层故障、自动切换故障链路的功能。

该模式一般用于大部分网络流量跨三层网络的场景

QOS:服务质量,在资源发生竞争时,保证重要业务资源可用。

CPU
CPU份额:定义多个虚拟机在竞争物理CPU资源的时候按比例分配计算资源
CPU预留:定义了多个虚拟机竞争物理CPU资源的时候分配的最低计算资源
CPU限额:控制虚拟机占用物理CPU资源的上限。
内存
内存份额:定义多个虚拟机竞争内存资源的时候按比例分配内存资源
内存预留:定义多个虚拟机竞争内存资源的时候分配的内存下限
内存限额:控制虚拟机占用物理内存资源的上限。(6.3以前,也即是XEN架构,此处开关没有意义;6.3及以后的版本,也即KVM架构,当开启内存复用后,此处开关有意义,利用欺骗手段,设置内存上限)
磁盘:设置虚拟机每个磁盘的IO上限,以避免某个虚拟机的磁盘IO过大,影响其他虚拟机的性能
最大读出字节数(KB/s)
最大写入字节数(KB/s)
最大读写字节数(KB/s)
最大每秒读请求个数
最大每秒写请求个数
最大每秒读写请求个数
网络:提供带宽配置控制能力,QoS功能不支持同一主机上虚拟机之间的流量限制。包含如下方面:
基于端口组成员接口发送方向与接收方向的带宽控制
基于端口组的每个成员接口提供流量整形、带宽优先级的控制能力。

虚拟机热迁移:更改主机
实现过程:
1、将虚拟机的配置信息、描述信息发送至目的主机。此时,会在目的主机上创建空虚拟机。
2、通过内存分片+迭代迁移的方式,将初始内存、变化内存发送至目的主机。
3、当变化内存极小时,VRM会暂停源虚拟机的IO。
4、将最后一块变化内存迁移至目的主机。
5、停止源虚拟机,在目的端拉起虚拟机。
限制条件:
1、如果源主机和目标主机的CPU类型不一致,需要开启集群的IMC模式。(仅支持Intel)
2、虚拟机的状态为“运行中”。
3、虚拟机未挂载总线类型为“IDE”的磁盘。
4、源目的主机使用共享存储。
5、源目的主机正常运行,资源足够。
6、源目的虚拟机要处于同一DVS。
7、虚拟机未挂载直通设备。(SSD直通,GPU直通)
8、虚拟机未绑定设备。

如果虚拟机迁移失败,可能原因如下:
源主机和目标主机网络中断或网络不通。
目标主机无法访问虚拟机的磁盘。(有没有共享存储)
目标主机故障、被重启或已进入维护模式。
源主机和目标主机的CPU类型不兼容。
源主机和目标主机的BIOS配置项配置不一致,例如“Advanced > Advanced Processor”中的CPU特性列表的配置不一致。

热迁移的应用场景?
1、硬件更换维护。
2、进行资源的负载均衡。
3、DRS、DPM

到底有没有中断业务? 有中断,但是只中断一瞬间,业务无感知,可认为做到了热迁移。

目前IMC策略仅支持INTEL不同型号CPU的热迁移,其他厂商的CPU不能配置该功能。
IMC可以确保集群内的主机向虚拟机提供相同的CPU功能集,即使这些主机的实际CPU不同,也不会因CPU不兼容而导致迁移虚拟机失败。

HA:高可用。在虚拟机或者主机故障的情况下,在其他资源足够的主机,重新拉起虚拟机。(必须要共享存储)在业务中断的情况下才可以迁移虚拟机。
高可靠与高可用:某些情况下,业务中断,通过高可用,保持业务继续运行。
实现分钟级的恢复
限额条件:
1、源目的主机有共享存储
2、目的主机有预留足够资源
3、主机、集群、VM开启HA策略
4、虚拟机未有直通设备
5、虚拟机未有绑定设备

FT技术,vmware公司特有的。
在两个主机起完全一样的虚拟机,同时运行,实时同步。限制只能最多2个VCPU。

DRS:动态资源调度(自动迁移)依赖虚拟机热迁移
DPM:分布式电源管理(关机是通过操作系统下电,开机是通过BMC上电)
自动化级别:手动(系统给出建议(提示),确认后自动迁移)、自动
衡量因素:CPU、内存、CPU和内存 都必须依赖虚拟机热迁移 DPM还必须给主机配置BMC参数。

高级调度规则:
聚集虚拟机:列出的虚拟机必须在同一主机上运行。某个业务相关的虚拟机。
互斥虚拟机:列出的虚拟机必须在不同主机上运行。某些主备、集群的业务虚拟机。
虚拟机到主机:关联一个虚拟机组和主机组并设置关联规则,指定所选的虚拟机组的成员是否能够在特定主机组的成员上运行。
1、必须在主机组上运行:虚拟机组中的虚拟机必须在主机组中的主机上运行。
2、应该在主机组上运行:虚拟机组中的虚拟机应当(但不是必须)在主机组中的主机上运行。
3、禁止在主机组上运行:虚拟机组中的虚拟机绝对不能在主机组中的主机上运行。
4、不应该在主机组上运行:虚拟机组中的虚拟机不应当(但可以)在主机组的主机上运行。

规则的调度优先级如下:
第一优先级:规则类型为“虚拟机到主机”,规则是“必须在主机组上运行”和“禁止在主机组上运行”的。
第二优先级:规则类型为“聚集虚拟机”和“互斥虚拟机”的。
第三优先级:规则类型为“虚拟机到主机”,规则是“应该在主机组上运行”和“不应该在主机组上运行”的。

机组中的虚拟机必须在主机组中的主机上运行。
2、应该在主机组上运行:虚拟机组中的虚拟机应当(但不是必须)在主机组中的主机上运行。
3、禁止在主机组上运行:虚拟机组中的虚拟机绝对不能在主机组中的主机上运行。
4、不应该在主机组上运行:虚拟机组中的虚拟机不应当(但可以)在主机组的主机上运行。

规则的调度优先级如下:
第一优先级:规则类型为“虚拟机到主机”,规则是“必须在主机组上运行”和“禁止在主机组上运行”的。
第二优先级:规则类型为“聚集虚拟机”和“互斥虚拟机”的。
第三优先级:规则类型为“虚拟机到主机”,规则是“应该在主机组上运行”和“不应该在主机组上运行”的。

都必须要依赖于虚拟机热迁移。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐