一、华为FusionCompute虚拟化套件介绍
华为FusionCompute虚拟化套件是业界领先的虚拟化解决方案,能够帮助客户带来如下的价值,从而大幅提升数据中心基础设施的效率。
- 帮助客户提升数据中心基础设施的资源利用率;
- 帮助客户成倍缩短业务上线周期;
- 帮助客户成倍降低数据中心能耗;
- 利用虚拟化基础设施的高可用和强恢复能力,实现业务快速自动化故障恢复,降低数据中心成本和增加系统应用的正常运行时间。
FusionCompute虚拟化套件通过在服务器上部署虚拟化软件,使一台物理服务器可以承担多台服务器的工作。通过整合现有的工作负载并利用剩余的服务器以部署新的应用程序和解决方案,实现较高的整合率。
应用场景:虚拟化场景适用于企业只采用FusionCompute作为统一的操作维护管理平台对整个系统进行操作与维护的应用场景。包含资源监控、资源管理、系统管理等。
- FusionCompute主要负责硬件资源的虚拟化,以及对虚拟资源、业务资源、用户资源的集中管理。
- 它采用虚拟计算、虚拟存储、虚拟网络等技术,完成计算资源、存储资源、网络资源的虚拟化。
- 同时通过统一的接口,对这些虚拟资源进行集中调度和管理,从而降低业务的运行成本,保证系统的安全性和可靠性。
1、FusionCompute产品定位
FusionCompute是云操作系统软件,主要负责硬件资源的虚拟化,以及对虚拟资源、业务资源、用户资源的集中管理。它采用虚拟计算、虚拟存储、虚拟网络等技术,完成计算资源、存储资源、网络资源的虚拟化。
通过统一的接口,对虚拟资源进行集中调度和管理,从而降低业务的运行成本,保证系统的安全性和可靠性,协助运营商和企业构筑安全、绿色、节能的云数据中心能力。
2、FusionCompute在虚拟化套件中位置
- 云机房:为云数据中心运营所提供的一系列基本配套设施和空间,主要包括供电系统、消防系统、布线系统、制冷系统等。
- 硬件基础设施层:
- 硬件资源包括服务器、存储、网络、安全等全面的云计算基础物理设备,支持用户从中小规模到大规模的新建或扩容,可运行从入门级到企业级的各种企业应用。设备类型丰富,可为客户提供灵活的部署选择。
华为分布式块存储(FusionStorage Block)
是一种存储与计算高度融合的分布式存储软件,在通用服务器上部署该软件后,可以把所有服务器的本地硬盘组织成一个虚拟存储资源池,提供块存储功能。
- FusionCompute虚拟化套件:通过在服务器上部署虚拟化软件,将硬件资源虚拟化,从而使一台物理服务器可以承担多台服务器的工作。通过整合现有的工作负载并利用剩余的服务器以部署新的应用程序和解决方案,可以实现较高的整合率。
- FusionCompute是云操作系统软件,主要负责硬件资源的虚拟化,以及对虚拟资源、业务资源、用户资源的集中管理。它采用虚拟计算、虚拟存储、虚拟网络等技术,完成计算资源、存储资源、网络资源的虚拟化。同时通过统一的接口,对这些虚拟资源进行集中调度和管理,从而降低业务的运行成本,保证系统的安全性和可靠性,协助运营商和企业构筑安全、绿色、节能的云数据中心能力。
- FusionCompute Pro: 多资源站点统一管理组件,实现不同地域下的多个资源站点统一管理,通过虚拟数据中心(VDC)给不同用户实现资源分域管理能力。
- eBackup:eBackup是虚拟化备份软件,配合FusionCompute快照功能和CBT(Changed Block Tracking)备份功能实现FusionCompute的虚拟机数据备份方案。
- UltraVR:容灾业务管理软件,利用底层SAN存储系统提供的异步远程复制特性,提供虚拟机关键数据的数据保护和容灾恢复。
3、FusionCompute产品架构
CNA英文全称:Compute Node Agent
,CNA部署在需要虚拟化的服务器上。
VRM英文全称:Virtual Resource Management
,VRM可以部署在VM上或者部署在物理服务器上;VRM对外提供网页操作界面给管理维护人员。
模块 | 介绍 | 功能 |
---|---|---|
CNA | CNA(Compute Node Agent),部署在需要虚拟化的服务器上。 | - 提供虚拟计算功能。 - 管理计算节点上的虚拟机。 - 管理计算节点上的计算、存储、网络资源。 |
VRM | VRM(Virtual Resource Management),可以部署在VM上或者部署在物理服务器上;VRM对外提供网页操作界面给管理维护人员。 | - 管理集群内的块存储资源。 - 管理集群内的网络资源(IP/VLAN),为虚拟机分配IP地址。 - 管理集群内虚拟机的生命周期以及虚拟机在计算节点上的分布和迁移。 - 管理集群内资源的动态调整。 - 通过对虚拟资源、用户数据的统一管理,对外提供弹性计算、存储、IP等服务。 - 通过提供统一的操作维护管理接口,操作维护人员通过WebUI远程访问FusionCompute对整个系统进行操作维护,包含资源管理、资源监控、资源报表等。 |
4、FusionCompute产品功能
(1)虚拟化计算
FusionCompute支持将服务器物理资源 抽象 成逻辑资源,让一台服务器变成几台甚至上百台相互隔离的虚拟服务器,不再受限于物理上的界限,让CPU、内存、磁盘、I/O等硬件变成可以动态管理的“资源池”,从而提高资源的利用率,简化系统管理。同时硬件辅助虚拟化技术提升虚拟化效率,增加虚拟机的安全性。
对于最终用户,虚拟机比物理机的优势在于:它可以很快速地发放,很方便地调整配置和组网。对于维护人员来讲,虚拟机复用了硬件,这样硬件更少,加上云平台的自动维护能力,维护成本显著降低。对于系统管理员,可以很直观地知道资源使用的总量及变化趋势,以便决策是否扩容。
(2)虚拟化存储
FusionCompute存储虚拟化技术可以更好地管理虚拟基础架构的存储资源,使系统大幅提升存储资源利用率和灵活性,提高应用的正常运行时间。
FusionCompute支持将SAN设备、计算节点本地硬盘以及华为分布式块存储提供的虚拟存储空间统一管理,以虚拟卷的形式分配给虚拟机使用。
存储设备的能力、接口协议等差异性很大,存储虚拟化技术可以将不同存储设备进行格式化,将各种存储资源转化为统一管理的数据存储资源,可以用来存储虚拟机磁盘、虚拟机配置信息、快照等信息。用户对存储的管理更加同质化。
华为提供基于主机的存储虚拟化功能,用户不需要再关注存储设备的类型和能力。存储虚拟化可以将存储设备进行抽象,以逻辑资源的方式呈现,统一提供全面的存储服务。可以在不同的存储形态,设备类型之间提供统一的功能。
(3)虚拟化网络
FusionCompute支持分布式虚拟交换,可以向虚拟机提供独立的网络平面。像物理交换机一样,不同的网络平面间通过VLAN进行隔离。
分布式交换机的功能类似于普通的物理交换机,每台主机都连接到分布式交换机中。分布式交换机的一端是与虚拟机相连的虚拟端口,另一端是与虚拟机所在主机上的物理以太网适配器相连的上行链路。通过它可以连接主机和虚拟机,实现系统网络互通。另外,分布式交换机在所有关联主机之间作为单个虚拟交换机使用。此功能可使虚拟机在跨主机进行迁移时确保其网络配置保持一致。
5、FusionCompute带来的价值
- 资源共享
- 虚拟化前,需要3台物理机器运行独立应用,每台物理服务器资源利用率都很低;投资回报率低。
- 虚拟化后,3个独立应用运行在一台服务器上面,需购置的服务器大大减少;且服务器的资源使用率明显提高;投资回报率高。
- 分时共享
- 虚拟化前,由于应用运行于不同服务器上,其中一个应用业务压力大时,另一台业务压力小的服务器富裕的计算资源不能转移给这台服务器;从整体来看,服务器资源使用不均衡,资料利用不合理。
- 虚拟化后,应用共享一个服务器资源;其中一个应用业务压力大,另外一台压力小的情况下,FusionCompute会协助服务器动态地将资源合理分配给各个应用,不仅能满足业务压力的需求,而且保持服务器资源处于高利用率状态。
- 高可用
- 当业务虚拟机所在的主机发生故障或需要人工维护时,FusionCompute能够第一时间检测到异常,并把异常机器上运行的虚拟机在集群中其他正常的主机上面重新启动,保障业务连续性。
- FusionCompute通过智能算法还能够维持主机间负载的均衡;从而提供整体的可靠性。
通过资源共享和分时共享,虚拟化能够明显提高资源利用率,降低投资成本并提高投资回报率。通过使用和合理配置FusionCompute,可极大提高系统及运营业务的可靠性。
二、FusionCompute部署
安装FusionCompute时,本地PC需要满足一定要求,才能保证正确安装。
软件包可以从http://support.huawei.com/enterprise下载。
产品文档链接:https://support.huawei.com/hedex/hdx.do?docid=EDOC1100215352&lang=zh。
- BMC平面:主机BMC网口所使用的平面。通过BMC平面可远程访问服务器的BMC系统。
- 管理平面:管理系统统一管理所有节点,以及节点间内部通信所使用的平面。使用管理平面的IP地址包括:
- 所有主机的管理IP地址,即主机管理网口使用的IP地址;
- 管理节点虚拟机的IP地址;
- 存储设备控制器的IP地址。
- 存储平面:主机与存储设备的存储单元互通所使用的平面。使用存储平面的IP地址包括:
- 所有主机的存储IP地址,即主机存储网口使用的IP地址;
- 存储设备的存储IP地址。
- 业务平面:用户虚拟机业务数据在网络中使用的平面。
1、FusionCompute部署流程
- 开始
- 安装CNA(Compute Node Agent,计算节点代理)
- 通过PXE方式批量安装主机
- 通过ISO挂载手动安装单台主机
- 安装VRM(Virtual Resource Management,虚拟资源管理)
- 可以使用FusionCompute安装工具虚拟化部署VRM
- 可以在物理机上挂载ISO方式手动安装VRM,过程同ISO手动安装主机
2、实机部署(略)
三、FusionCompute虚拟化平台管理与使用
FusionCompute是云操作系统软件,主要负责硬件资源的虚拟化,以及对虚拟资源、业务资源、用户资源的集中管理。
1、虚拟化的特点
- 分区:分区意味着虚拟化层为多个虚拟机划分服务器资源的能力;每个虚拟机可以同时运行一个单独的操作系统(相同或不同的操作系统),使用户能够在一台服务器上运行多个应用程序;每个操作系统只能看到虚拟化层为其提供的“虚拟硬件”(虚拟网卡、CPU、内存等),以使它认为运行在自己的专用服务器上。
- 隔离:虚拟机是互相隔离的:
- 一个虚拟机的崩溃或故障(例如,操作系统故障、应用程序崩溃、驱动程序故障,等等)不会影响同一服务器上的其它虚拟机;
- 一个虚拟机中的病毒、蠕虫等与其它虚拟机相隔离,就像每个虚拟机都位于单独的物理机器上一样;
- 可以进行资源控制以提供性能隔离:用户可以为每个虚拟机指定最小和最大资源使用量,以确保某个虚拟机不会占用所有的资源而使得同一系统中的其它虚拟机无资源可用;
- 可以在单一机器上同时运行多个负载/应用程序/操作系统,而不会出现我们刚才讨论传统x86服务器体系结构的局限性时所提到的那些问题(应用程序冲突、DLL 冲突等)。
- 封装:封装意味着将整个虚拟机(硬件配置、BIOS 配置、内存状态、磁盘状态、CPU 状态)储存在独立于物理硬件的一小组文件中。这样,用户只需复制几个文件就可以随时随地根据需要复制、保存和移动虚拟机。
- 相对于硬件独立:因为虚拟机运行于虚拟化层之上,所以只能看到虚拟化层提供的虚拟硬件;此虚拟硬件也同样不必考虑物理服务器的情况;这样,虚拟机就可以在任何x86服务器(IBM、Dell、HP等)上运行而无需进行任何修改。这打破了操作系统和硬件以及应用程序和操作系统/硬件之间的约束。
1、计算虚拟化介绍
(1)虚拟机资源管理 - CPU/内存在线调整
支持主流Linux系统虚拟机在线调整CPU和内存;支持主流Windows系统虚拟机在线调整内存,在线调整CPU后重启生效。
(2)虚拟机资源管理 - CPU QoS
- QoS:Quality of Service,服务质量,虚拟机的CPU QoS用于保证虚拟机的计算资源分配,最大程度复用资源,降低成本。
- CPU QoS包含如下三个参数:
- CPU资源份额:CPU份额定义多个虚拟机在竞争物理CPU资源的时候按比例分配计算资源。
- CPU资源预留:CPU预留定义了多个虚拟机竞争物理CPU资源的时候分配的最低计算资源。
- CPU资源限额:控制虚拟机占用物理CPU资源的上限。
- IT管理员可以对虚拟机设定资源的使用上限,防止非关键应用和恶意用户争抢共享资源。
- 虚拟机的CPU QoS用于保证虚拟机的计算资源分配,隔离虚拟机间由于业务不同而导致的计算能力相互影响,满足不同业务对虚拟机计算性能的要求,最大程度复用资源,降低成本。
- 创建虚拟机时,可根据虚拟机预期部署业务对CPU的性能要求而指定相应的CPU QoS。不同的CPU QoS代表了虚拟机不同的计算能力。指定CPU QoS的虚拟机,系统对其CPU的QoS保障,主要体现在计算能力的最低保障和资源分配的优先级。
(3)虚拟机资源管理 - 主机内存超分配
支持虚拟机总配置内存超过物理主机实际运行内存,通过虚拟机之间使用内存气泡、内存交换以及内存共享等技术实现物理内存超规格使用。
- Host Memory和Guest Memory之间并不是一一对应
- 可以超额分配内存给VM,例如,物理内存共4 G,但上层三个GuestOS的分配的总内存达到了6 G。
- 通过内存复用技术实现超分配功能
(4)虚拟机HA
当计算节点上的虚拟机出现故障时,系统自动将故障的虚拟机在正常的计算节点上重新创建,使故障虚拟机快速恢复。
- 支持主机、虚拟平台、虚拟机内部多种故障场景的检测和虚拟机恢复。
- 支持集中控制HA和集群自治HA两种机制,可自选。
- 可设置HA心跳消息的网络平面,降低网络压力。
- 多种故障判断机制,避免漏判、误判故障。
- 支持共享存储与本地存储虚拟机HA。
(5)虚拟机资源管理 - 内存复用
- 内存气泡:系统主动回收虚拟机暂时不用的物理内存,分配给需要复用内存的虚拟机。内存的回收和分配均为系统动态执行,虚拟机上的应用无感知。整个物理服务器上的所有虚拟机使用的分配内存总量不能超过该服务器的物理内存总量。
- 内存交换:将外部存储虚拟成内存给虚拟机使用,将虚拟机上暂时不用的数据存放到外部存储上。系统需要使用这些数据时,再与预留在内存上的数据进行交换。
- 内存共享:多台虚拟机共享数据内容相同的内存页。
2、存储虚拟化介绍
存储虚拟化是将存储设备抽象为数据存储,虚拟机在数据存储中作为一组文件存储在自己的目录中。
数据存储是逻辑容器,类似于文件系统,它将各个存储设备的特性隐藏起来,并提供一个统一的模型来存储虚拟机文件。
存储虚拟化技术可以更好地管理虚拟基础架构的存储资源,使系统大幅提升存储资源利用率和灵活性。
- 存储资源:表示物理存储设备,例如IPSAN、FusionStorage、NAS等。
- 存储设备:表示存储资源中的管理单元,类似LUN、FusionStorage存储池、NAS共享目录等。
- 数据存储:数据存储表示虚拟化平台中可管理、操作的存储逻辑单元。
FusionCompute存储虚拟化技术定位于构建针对电信业务环境的高竞争力的虚拟化平台,通过对开源KVM进行安全加固、功能扩展、性能优化和可靠性保障,具备如下特点:
- 存储设备兼容性:对于不同的存储设备,包括IPSAN、FCSAN、NAS、本地磁盘。可以做到以文件系统进行屏蔽,统一提供文件级别的业务操作。
- 丰富的功能:提供了包括精简磁盘、增量快照、存储冷热迁移、链接克隆虚拟机、虚拟机磁盘扩容等众多功能。
- 业务能力同质化:业务是在虚拟化层进行,基于各种存储设备可以提供相同的能力,对存储设备无特殊要求 。
(1)FusionCompute存储虚拟化架构
FusionCompute存储虚拟化架构如下图所示:
FusionCompute存储虚拟化平台主要由文件系统、磁盘驱动和磁盘工具组成。SAN设备和本地磁盘等块设备连接到服务器上后,经过设备驱动层和通用块层后,对主机呈现一个磁盘设备。
文件系统建立在主机能够访问的存储设备上,创建文件系统的过程就是主机对存储设备执行格式化,在存储设备上写入文件系统的元数据和iNode信息,建立文件到裸设备块的映射,并负责裸设备块的管理,包括空间分配和释放。对于虚拟化来说,文件系统屏蔽了块层的操作,提供了文件级的抽象操作。虚拟机磁盘就是放在文件系统中的文件。
虚拟机磁盘在使用时,需要由磁盘驱动挂载给虚拟机,并通过QEMU管理起来,用户虚拟机的所有读写IO都会由前端驱动截获,转发给QEMU进程,并转换为用户态驱动的读写操作,最终写入磁盘文件中。
虚拟机磁盘中包含了属性信息和数据区域,磁盘工具提供了一系列对虚拟机磁盘的操作,可以解析磁盘文件的文件头,读取或修改磁盘的属性信息,创建磁盘的数据区等操作。
(2)VIMS虚拟集群存储文件系统
VIMS是一种高性能的集群文件系统,使虚拟化技术的应用超出了单个存储系统的限制,可让多个虚拟机共同访问一个整合的集群式存储池,从而显著提高了资源利用率。
VIMS是跨越多个存储服务器实现虚拟化的基础,它可启用存储热迁移、DRS(Storage Dynamic Resource Scheduler)和High Availability等各种服务。
3、FusionCompute磁盘技术
在存储虚拟化中,所有用户存储都是以文件形式呈现,虚拟机磁盘、快照、虚拟机配置都对应一个独立的文件,常见的磁盘文件配置模式分为以下几种:
- 普通磁盘:立即分配所有空间
- 普通延迟置零磁盘:立即分配所有空间,写前置零
- 精简磁盘:写前空间分配,用多少分多少
(1)普通磁盘
普通磁盘创建时大小与虚拟磁盘大小相同,并将文件所有位置填0,占用空间较大,置备时间较长。
- 普通磁盘立即分配磁盘空间,并将所有空间填0。
- 该磁盘用于FusionCompute系统中的普通磁盘。
- 普通磁盘使用普通磁盘技术,创建时会进行全空间分配和置零操作,能够提供最好的性能体验和数据安全性。
- 适用于对IOPS要求较高的场景。该磁盘创建所需时间会比创建其他类型的磁盘长。
(2)普通延时置零磁盘
普通延迟置零卷创建时大小与虚拟磁盘大小相同,但不会进行填0操作,占用空间较大,置备时间较普通卷短。
- 该磁盘用于FusionCompute系统中的普通延迟置零磁盘,可以提高存储设备的利用率。
- 普通延迟置零磁盘创建很快,创建时进行全空间分配,但未进行全置零动作,性能较普通磁盘有所下降。
- 适用于对发放速度要求高,但对IOPS(Input Output Per Second)要求不高的场景。
(3)精简磁盘
精简磁盘创建时大小为0,精简磁盘创建时含少量元数据信息,大小一般为几十K,创建时间均非常短。随着用户写入数据,精简磁盘的大小与实际占用空间将逐步增加。
- 该磁盘用于FusionCompute系统中的精简磁盘,可以提高存储设备的利用率。
- 精简磁盘使用动态磁盘技术,可以节省存储空间。
- 该磁盘在创建时不进行空间分配,而是在用户IO写入磁盘文件时才进行空间动态分配,性能较普通磁盘有所下降。
- 适用于用户对存储需求不明确,或是规划的容量比实际使用的容量多的场景。