H3C CAS高可靠性和高可用性技术白皮书目录1 技术应用背景 (1)2 H3C实现的技术特色 (2)2.1 H3C CAS云计算管理平台简介 (2)2.2 相关技术基础简介 (3)2.2.1 共享存储 (3)2.2.2 动态迁移 (4)2.3 H3C CAS高可靠性(HA)技术 (5)2.3.1 相关术语 (5)2.3.2 物理服务器主机HA工作原理 (5)2.3.3 虚拟机HA工作原理 (6)2.3.4 技术特色总结 (7)2.4 H3C CAS高可用性技术 (8)2.4.1 动态资源调整 (8)2.4.2 虚拟机资源限额 (10)2.5 应用限制 (11)3 典型组网案例 (12)3.1 组网拓扑 (12)3.2 注意事项 (13)3.2.1 对服务器硬件的要求 (13)3.2.2 整合比(单台服务器上虚拟机数量)的决定因素 (13)4 参考文献 (14)i1 技术应用背景随着虚拟化和云计算浪潮在全球IT行业的兴起,越来越多的企业、行业和运营商纷纷将自身的IT 架构切换到虚拟化环境中。
虚拟化技术对数据中心内未被充分利用的服务器进行整合,极大地降低了客户的一次性投入成本,精简了数据中心物理服务器的数量,同时,减少了供电、制冷、场地和运维人员方面的运营成本。
但是,虚拟化也为IT应用带来了单点故障问题,在未实施虚拟化技术之前,IT管理员往往遵循“根据最坏情况下的工作负载来确定所有服务器的配置”这一策略,即一台高性能物理服务器仅安装一个应用程序。
在这种情况下,即使该物理服务器出现了断电或操作系统崩溃等异常状况,最多只会影响到一个应用的运行,而在虚拟化环境下,每台物理服务器往往运行多个虚拟的应用服务器,因此,虚拟化技术的实施将使IT环境面临的灾难破坏性更严重,尤其对于一些重要的业务入口或接入点(如企业的生产服务器和金融行业的数据库服务器等),即使出现秒级的业务中断,也将遭受灾难性的后果。
在这种应用背景下,如何保证虚拟化环境下业务应用的高可靠性和高可用性,成为急需解决的一个技术问题。
VM VM VM图1物理服务器故障造成虚拟化业务全部中断传统的集群解决方案(如微软的Cluster Service和Veritas Cluster Server)致力于在发生服务器主机故障或虚拟机故障时,在最短的应用程序停机时间内实现即时恢复,要达到这个目标,IT基础架构必须进行如下设置:•每台物理服务器和虚拟机都必须有一个镜像虚拟机(可能在其它服务器主机上)。
•使用集群软件将服务器(或虚拟机及其主机)设置为互相镜像,一般情况下,由主虚拟机向镜像发送心跳信号,一旦发生故障,镜像将立即接管。
下图显示使用传统集群方法的典型的虚拟机设置:1机箱内集群跨机箱集群图2使用传统集群配置确保虚拟化应用的高可靠性设置和维护这样的集群解决方案成本昂贵,并会占用大量资源。
每添加一台新的虚拟机,可能需要更多的虚拟机甚至是更多的服务器主机才能进行故障切换。
您将不得不设置、连接和配置所有的新计算机,并更新群集应用程序的配置。
总之,传统解决方案虽然能够保证快速恢复,但却是资源和劳动密集型的,而且通常存在对应用程序和操作系统的依赖性问题。
由于集群解决方案的成本和复杂性问题,它们通常只被一小部分企业应用程序所采用,而大部分应用程序则没有任何故障切换保护。
为了解决虚拟化和云计算部署带来的单点故障问题,H3C CAS云计算软件摒弃了高成本、高复杂度的传统集群方案,通过为应用程序提供可用的、经济的高可用性,而使其更“大众化”。
2 H3C实现的技术特色2.1 H3C CAS云计算管理平台简介H3C CAS云计算管理平台是H3C公司面向企业和行业数据中心推出的虚拟化和云计算管理软件,通过精简数据中心服务器的数量,整合数据中心IT基础设施资源,精简IT操作,提高管理效率,达到提高物理资源利用率和降低整体拥有成本的目的。
同时,利用先进的云管理理念,建立安全的、可审核的数据中心环境,为业务部门提供成本更低、服务水平更高的基础架构,从而能够针对业务部门的需求做出快速的响应。
H3C CAS云计算管理平台由三个组件构成:•CVK:Cloud Virtualization Kernel,虚拟化内核平台运行在基础设施层和上层客户操作系统之间的虚拟化内核软件。
针对上层客户操作系统对底层硬件资源的访问,CVK用于屏蔽底层异构硬件之间的差异性,消除上层客户操作系统对硬件设备以及驱动的依赖,同时增强了虚拟化运行环境中的硬件兼容性、高可靠性、高可用性、可扩展性、性能优化等功能。
•CVM:Cloud Virtualization Manager,虚拟化管理系统主要实现对数据中心内的计算、网络和存储等硬件资源的软件虚拟化管理,对上层应用提供自动化服务。
其业务范围包括:虚拟计算、虚拟网络、虚拟存储、高可用性(HA)、动态资源调度(DRS)、虚拟机容灾与备份、虚拟机模板管理、集群文件系统、虚拟交换机策略等。
2•CIC:Cloud Intelligence Center,云业务管理中心由一系列云基础业务模块组成,通过将基础架构资源(包括计算、存储和网络)及其相关策略整合成虚拟数据中心资源池,并允许用户按需消费这些资源,从而构建安全的多租户混合云。
其业务范围包括:组织(虚拟数据中心)、多租户数据和业务安全、云业务工作流、自助式服务门户、兼容OpenStack的REST API接口等。
图3H3C CAS云计算管理平台系统逻辑结构图2.2 相关技术基础简介2.2.1 共享存储H3C CAS云计算管理平台中的存储用于保存虚拟机的操作系统、应用程序文件、配置文件以及与活动相关的其它数据,是虚拟机正常工作的基本前提条件。
根据存储的种类不同,可以分为本地存储和共享存储两种。
•在部署了H3C CAS云计算管理平台,并将主机作为被管理资源对象添加到H3C CAS云计算管理平台之后,该主机默认使用本地磁盘介质作为存储,其它主机不能使用。
•在数据中心中,很多用户选择使用共享存储来承载虚拟机及其数据,目前,H3C CAS云计算管理平台支持IP SAN等类型的存储。
采用共享存储的好处是:•共享存储往往比本地存储提供更好的I/O性能(尤其在多虚拟机环境下)。
•H3C CAS云计算管理平台中的高可用性功能需要共享存储作为先决条件,例如HA和动态资源调整等。
3H3C CAS中的虚拟机文件系统是一种优化后的高性能集群文件系统,允许多个云计算节点同时访问同一虚拟机存储。
由于虚拟架构系统中的虚拟机实际上是被封装成了一个档案文件和若干相关环境配置文件,通过将这些文件放在SAN存储阵列上的文件系统中,可以让不同服务器上的虚拟机都可以访问到该文件,从而消除了单点故障。
图4共享存储组网拓扑结构2.2.2 动态迁移动态迁移是实现自动化和自我优化的数据中心所必需的关键特性。
H3C CAS动态迁移支持在物理服务器之间实时迁移正在运行中的虚拟机,利用虚拟机实时迁移技术,不仅在执行硬件维护时无需安排宕机和中断业务操作,而且可以使资源池内的虚拟机不断自动优化,最大限度地提高硬件利用率、灵活性和可用性。
图5虚拟机迁移技术利用H3C CAS动态迁移技术在物理服务器之间实时迁移虚拟机的过程是通过两项底层技术实现的。
4(1) 虚拟机操作系统和应用程序的完整状态被封装在共享存储设备上的一组文件之中,这样的共享存储设备可以是iSCSI存储区域网络(SAN)或网络连接存储(NAS)。
通过H3C CAS高性能集群文件系统,多个物理服务器主机可以同时访问同一个虚拟机文件。
(2) 虚拟机的内存映像和精确执行状态可通过高速网络在各物理服务器主机之间迅速传递。
H3C动态迁移技术通过在一个位图中保存对现行内存处理过程的跟踪,使用户在数据传递期间察觉不到性能变化。
一旦整个内存和系统状态被复制到目标物理服务器主机之后,H3C CAS动态迁移技术就会中止源虚拟机的运行,随后,将位图复制到目标物理服务器,并在目标物理服务器上继续运行该虚拟机。
2.3 H3C CAS高可靠性(HA)技术H3C CAS云计算软件将一组服务器主机合并为一个具有共享资源池的集群,并持续对集群内所有的服务器主机与虚拟机运行状况进行检测,一旦某台服务器主机或虚拟机发生故障,H3C CAS HA 软件模块会立即响应并在集群内另一台服务器主机上重启所有受影响的虚拟机。
2.3.1 相关术语1. 节点(Node)运行HA心跳进程的一个独立主机,称为节点。
节点是HA软件模块的运行载体,每个节点上运行着H3C CAS云计算操作系统和心跳软件服务。
2. DC(Designated Coordinator,指定协调者)HA软件模块在开始工作前,首先在各节点间选举产生一个节点作为主节点,用于管理和控制集群HA的指令,所有配置操作都在该DC主机上进行,并由其分发到集群下的各个节点上。
3. 资源(Resource)资源是一个节点可以控制的实体,并且当节点发生故障时,这些资源能够被其它节点接管,如虚拟机镜像文件资源等。
4. 事件(Event)集群中可能发生的事情,例如节点系统故障、网络连通故障、网卡故障、应用程序故障等。
这些事件都会导致节点的资源发生转移,HA的稳定运行与检测也是基于这些事件来进行的。
5. 动作(Action)事件发生时HA的响应方式,动作是由shell脚本控制的,例如,当某个节点发生故障后,备份节点将通过事先设定好的执行脚本进行服务的关闭或启动。
进而接管故障节点的资源。
2.3.2 物理服务器主机HA工作原理H3C CAS云计算软件统一在各个物理服务器节点之间维持“心跳”(默认为3秒),节点之间通过相互发送组播报文以检测对方是否存在,当发现某个节点连续多次(默认为10次)未响应组播请求时,就认为该节点发生了节点系统故障事件,此时,集群内的DC就会重启该节点,并根据一定的策略算法,尝试在其它的服务器上重新启动所有失效的虚拟机。
HA软件模块会保证在任何时候当物理服务器发生宕机时,资源池中都有足够的硬件资源,使失效的服务器中的虚拟机在其它的服务器上顺利启动。
H3C CAS采用优化后的高性能集群文件系统,通过支持SAN/iSCSI/NFS等存储5协议,可以允许不同的服务器访问同一虚拟机磁盘文件,这一特性使得H3C CAS HA的实现非常的简单和方便。
VM VM VM图6使用H3C CAS云计算软件HA特性进行主机故障切换需要注意的是,如果发生系统故障事件的节点恰好为DC节点,那么,在检测到DC节点故障后,集群内的备份节点之间自动发起DC的选举,重新生成新的DC。
2.3.3 虚拟机HA工作原理除了对集群中的物理服务器节点进行持续检测之外,H3C CAS HA软件模块还对运行于物理服务器节点之上的虚拟机进行持续检测。