云计算架构技术与实践(第2版)
上QQ阅读APP看书,第一时间看更新

4.3 计算高可靠性保障

在云计算的条件下,业务运行所需要的资源是通过软件模拟或者软件管理分配的方式提供的,也就是说在业务运行负载和物理硬件之间引入了Hypervisor作为管理层,保证业务运行的可靠性。

在通过虚拟化技术保障云计算条件下的业务运行可靠性方面,当前业界发展出来的技术主要有以下两种。

基于冷备机制的虚拟化HA保护,这种方式主要提供了在物理硬件故障的条件下,选择资源池中的其他健康物理主机重新部署虚拟机,并在原有数据不丢失的条件下,尽快恢复虚拟机业务。

基于虚拟机热备机制的虚拟机容灾方案,这种方式主要是在不同的物理主机上,提供虚拟机业务运行的容灾,在一台物理主机发生故障的时候,自动由另外一台主机上的虚拟机业务运行镜像接管以进行业务处理,从而保证虚拟机的业务不发生中断。

上述两种方式实现的技术难度和工程化部署的要求限制不一样。其中冷备机制实现技术难度较低,对工程化部署的限制和要求较少,在业界得到广泛的应用。热备机制的实现难度较大,同时,因需要提供虚拟机运行业务镜像冗余,虚拟机的性能会有额外的占用,同时也需要在工程化部署时保证虚拟机的业务组网能够在切换的条件下平滑过渡,对于业务组网的要求较高,所以现阶段的应用还处于逐步走向成熟的过程。

4.3.1 基于冷备机制的虚拟机HA保护

当物理服务器宕机或者重启时,系统可以将具有HA属性的故障虚拟机迁移到其他物理服务器,保证虚拟机快速恢复。

由于单个集群内可以运行上千个虚拟机,当某个或某些服务器宕机后,为避免大量虚拟机迁移造成网络拥塞和目的服务器过载,系统会根据网络流量、目的服务器负荷选择将虚拟机迁移到不同的目的服务器。

当虚拟资源管理器与物理服务器上的计算代理心跳中断超过30秒时,会触发虚拟机HA,当一个虚拟机由运行状态突然异常消失时,也会触发HA在其他正常的计算节点上快速恢复业务。

通过存储层面的锁机制可防止同一个虚拟机实例在多个物理机器上同时启动。

当一个物理服务器节点掉电恢复后,业务进程开机自启动恢复,之前运行的虚拟机全部故障迁移至其他物理节点。

4.3.2 基于热备机制的虚拟机运行业务容灾方案

在虚拟环境下设置主备虚拟机,在备节点上创建主虚拟机的完整拷贝。主节点上虚拟机的CPU状态、内存、磁盘操作、QEMU等与备节点虚拟机保持低延迟的定时同步。备节点虚拟机定时检测主节点虚拟机心跳,在指定时间内收不到心跳即认为异常发生,备虚拟机切换到正常运行状态。这个方案的优势是主备节点可以保持状态完全同步,数据完全一致,缺点是会带来一些性能开销。当一处系统因意外(如火灾、地震等)停止工作时,整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。

基于热备机制的虚拟机容灾方案可以实现主机层复制容灾,该方案主要通过在虚拟化平台主机层进行虚拟机卷I/O的实时捕获与复制,实现数据的远程复制和容灾管理,实现容灾保护策略制定、容灾计划制定、容灾切换、容灾回切及有计划性的虚拟机迁移等。

基于热备机制的虚拟机容灾方案是基于I/O分流技术,实现捕获生产端VM的实时I/O数据并异步复制到容灾端VM卷中。VM的整个I/O数据流向为:生产端捕获,代理转发至容灾站点。通过在源端捕获虚拟机I/O,使用代理进程分别部署在生产站点和容灾站点负责I/O转发至容灾端,再分发到指定主机的写入代理进程上,由写入代理进程写入VM的卷中,完成虚拟机I/O的远程异步复制。