全媒体综合监测监管系统虚拟化平台可靠性技术研究及应用
2015-09-27包力伟卞景耀江苏省广播电视监测台
包力伟 卞景耀 江苏省广播电视监测台
全媒体综合监测监管系统虚拟化平台可靠性技术研究及应用
包力伟卞景耀江苏省广播电视监测台
本文主要结合江苏省广播电视监测台的项目建设情况,对如何提高全媒体综合监测监管系统虚拟化平台的可靠性进行研究,阐述、分析、比较了多种如高可用、容错、VMotion迁移等可靠性策略,并使用最优方案进行应用部署,实现了平台的稳定可靠运行。
虚拟化 可靠性策略高可用容错VMotion迁移
一、引言
随着信息技术的不断发展,计算机技术、互联网技术与传统广播电视技术飞速交融,广播电视监测部门保障安全播出的方式不断更新,力度不断加大,相应地对于设备“不间断、高质量、既经济、又安全” 运行的要求也不断提高。为了保证监测设备长时间、无故障地运行,必须要使其具有很高的可靠性。江苏省广播电视监测台(以下简称“我台”)于2015年建成全媒体综合监测监管系统,采用虚拟化平台搭建,由VMware虚拟化软件和NetApp存储,以及HP和Cisco的刀片服务器共同组成硬件资源异构虚拟化资源池[1]。全媒体综合监测监管系统将传统的广播电视和DTMB、卫星广播电视、IPTV、互联网音视频节目等新业务一同纳入监测监管统一管理范围,并实现了对各种已有及新建监测业务子系统的无缝接合。如图1所示,系统虚拟化平台采用B/S架构,构建了集中计算中心,以刀片服务器和刀箱为主要硬件构成,通过使用网络虚拟化、存储虚拟化、计算资源虚拟化、云计算及云存储技术形成了一套基于x86的私有云,为各监测监管业务系统提供计算资源和存储资源服务,并通过云计算管理平台实现了对整个软硬件资源的调度、配置和管理。
全媒体综合监测监管系统虚拟化平台运行在复杂的环境中。平台本身及所提供的服务在给我台的监测监管带来前所未有的强大功能和便利操作的同时,所属设备存在的各种故障隐患也日趋成为一个不容忽视的问题。如何提高平台可靠性,使得设备在尽量长的时间里安全稳定地运行,给我台广播电视监测监管提出了全新的课题。
二、提高平台可靠性实现方案介绍
全媒体综合监测监管系统虚拟化平台是我台整个监测业务运行的核心支撑。为了防止因平台不正常运行导致对安全监测监管的影响,保证整个平台的可靠性,可采用减小平台设备故障发生几率(甚至阻止故障产生),以及尽量缩短故障恢复时间两种途径。总体上说,在VMware环境下,结合软硬件部署实际情况,平台可靠性维护手段以VMware HA(VMware High Availablility高可用)群集为基础,有VMware FT(VMware Fault Tolerance容错)及VMware VMotion(虚拟机热迁移)等方案可供选择。
高可用性(HA)在业界被定义为:系统或者应用程序在规定的运行时间内保证无计划外的停机问题。在实际应用中,系统在某些故障不可避免的情况下,可以通过采取高可用性的某些措施或者策略来有效地减少故障持续时间[2]。VMware HA是 VMware 在企业应用环境中用来保障企业级应用不间断运行的需求所产生的一个组件,主要目的是当虚拟机运行的主机发生故障时能及时转移主机,避免长时间的停机。VMware HA提供计划外宕机保护功能,即:处于相同群集里的某物理主机异常宕机(如停电、硬盘故障等)之后,自动在这一群集里的其它物理主机上启动运行于原宕机主机上虚拟机的行为。如图2所示,在全媒体综合监测监管系统虚拟化平台上,以VMware HA群集“HA集群03”为例,该群集具有一个包括24个ESXI主机(192.168.102.93 -192.168.102.116)的逻辑队列,其中每个IP地址对应一台物理主机。VMware HA实时监控群集中所有主机,并进行故障检测。在该群集中,VMware HA检测三种类型的主机故障:1)主机停止运行(即死机);2)主机网络中断;3)主机与群集内首选主机网络中断。群集中的每台主机有一个HA代理,持续不断地检测群集中其他主机的“心跳信号”。若某台主机在连续三个时间间隔后都还没有发出“心跳信号”,那么该主机就被默认为发生了故障或者网络连接出现了问题,其中运行的虚拟机已受到影响。在这种情况下,VMware HA在监控并确保群集中有足够资源可用的基础上,迁移到其它主机运行这些虚拟机。若某台主机无法接收到来自群集的其他主机的“心跳信号”,则该主机会启动一个内部进程来检测自己跟群集中其他主机的连接是否存在故障。如果故障存在,VMware HA也将中断在这台主机上所有正在运行的虚拟机,并启动预先设定好的备用主机。如此可以确保平台在最短时间内从部分停机状态恢复正常运行。
容错(FT)指当硬件发生故障或软件产生错误时,系统可以不中断运行,能够自行采取补救措施,允许从硬件或软件错误中恢复,继续正常运行并给出正确结果的一种技术。VMware向虚拟化平台引入了FT,包括零损失容错的解决方案。VMware FT应用在ESXI主机上,其主要功能就是保证在出现故障的时候,云平台的有关应用不会出现中断[3]。VMware FT的原理是:在两台主机上创建相同两台虚拟机(主虚拟机与辅虚拟机)。对于某主机上给定的主虚拟机,在其他主机上运行一个辅虚拟机。辅虚拟机同主虚拟机共享虚拟存储,并通过在专用网络连接到被捕捉的主虚拟机日志记录信息,保持延时在1秒内的同步于主虚拟机的操作。在正常状态下,只有主虚拟机发送和接收网络数据包,辅虚拟机默认不收发网络数据,也不写入存储。当运行主虚拟机的主机发生故障时,辅虚拟机在无中断的情况下自动切换变为主虚拟机并继续运行,同时群集会在几秒内重新建立容错冗余;当故障排除后,原故障的主虚拟机变为辅虚拟机。如果运行辅虚拟机的主机发生故障,该主机也会立即被替换。在全媒体综合监测监管系统虚拟化平台上,我台首先选择VMware HA群集与VMware FT虚拟机协同的方案进行可靠性研究。在云平台管理界面建立“FT Cluster 01”群集,群集内包含四台ESXI主机:192.168.102.61-192.168.102.64,分别配置FT策略的虚拟网卡。主机192.168.102.61运行两台虚拟机,分别为FT主虚拟机“FT-Win7”以及无FT策略的普通虚拟机“HA-Win7”。主机192.168.102.62运行一台虚拟机,为FT辅虚拟机“FT-Win7(次要)”。主机192.168.102.63、192.168.102.64暂无虚拟机运行。群集内主机、虚拟机及其运行、FT情况等相互关系映射如图3所示。
“FT Cluster 01”群集中,设定受VMware FT和VMware HA保护的虚拟机“FT-Win7”、“FT-Win7(次要)”运行关键任务,仅受VMware HA保护的虚拟机“HA-Win7”运行一般任务。当主机192.168.102.61发生故障时,位于主机192.168.102.62的“FT-Win7(次要)”虚拟机接管“FT-Win7”继续工作,并升级为主虚拟机。VMware将在其余某台主机上启动新的辅虚拟机“FT-Win7(次要)”。运行于192.168.102.61的另一台虚拟机“HA-Win7”也将按HA策略重新在其它主机启动。如图4所示,远程重新启动主机192.168.102.61(模拟故障发生),系统显示FT主虚拟机切换至主机192.168.102.62上运行,同时于主机192.168.102.63上启动新的FT辅虚拟机。虚拟机“HA-Win7”转移到主机192.168.102.64上执行重启操作。
VMware虚拟机热迁移(VMotion)是VMware开发出的一项特有技术,也是VMware整个虚拟化高级功能的基础。它将服务器、存储和网络设备完全虚拟化,使得正在运行的整个虚拟机能够在计划内瞬间从一台主机迁移到另一台主机上。虚拟机的全部状态由共享虚拟存储中的一组文件进行封装,VMware开发的 VMFS群集文件系统允许源和目标ESXI主机同时访问这些虚拟机的信息。如图5所示,VMware将虚拟机的活动内存、驱动程序、操作系统、执行状态等加以保存,并通过同样被虚拟化后的网络高速传输,使虚拟机立即从源主机以察觉不到传输期的速度迅速切换到目标主机上运行。传输完成之后,保留虚拟机的网络标识和连接。VMotion在此过程中管理虚拟机的MAC地址。一旦切换到目标主机上运行的虚拟机被激活,VMotion会向网络路由器发送数据包,以确保知道迁移后的虚拟机(通过MAC地址)位于哪一台新主机。使用VMotion进行虚拟机迁移实现了零停机时间以及操作零中断,从而实现了虚拟机的无缝迁移。在全媒体综合监测监管系统虚拟化平台上,群集“HA集群03”中配置了VMotion功能,如图6所示。设定主机192.168.102.96存在故障需要进入维护模式。VMotion收到主机192.168.102.96实时迁移的请求。VMware检查该主机上运行的虚拟机“视率系统_10.7.70.50”是否处于稳定状态。VMotions收到并通过实时迁移请求后,该虚拟机的所有状态信息(操作系统、CPU、内存、网络连接等)将被复制到目标主机上。信息复制完毕后,此虚拟机将在新主机192.168.102.95上无中断地继续运行,如图7所示。
三、VMware容错和热迁移策略比较和分析
通过上述对提升平台可靠性的研究,我台以保障全媒体综合监测监管系统虚拟化平台安全稳定运行为原则,以平台软硬件设备日常维护需求为依据,对基于VMware高可用群集的虚拟机FT容错和VMotion热迁移策略进行了对比和分析。
从各自的功能来看,VMware HA和FT最大限度地延长了云平台群集正常运行数据的时间,使应用程序实现了“零数据丢失”。FT易于设置,可以支持虚拟机使用任何操作系统,支持所有应用,包括自主开发、无法用传统高可用性产品来保护的自定义应用。FT使用反关联性原则,可以确保FT主虚拟机和辅虚拟机永远不会在同一主机上,从而保证FT主、辅虚拟机不会因任何一台主机故障而全部缺失。VMware HA和VMotion则分别处理群集里主机的所有计划外和计划内的宕机。在计划内,可以手动或者自动地将虚拟机在线迁移到另外的主机上。VMotion可以提高硬件整体利用率,使虚拟机在所在主机宕机期间可以继续使用,并可以在无需安排停机、不中断业务运营的情况下执行硬件维护。VMware FT和VMotion都可以实现虚拟机在主机故障维护情况下的不间断运行。但FT策略必须把承担某个应用的虚拟机进行复制、建立冗余,以至于占用的CPU、内存等资源也将是原来的两倍。在实际应用中,考虑到云平台资源有限,不可能把群集内所有运行的虚拟机都配置成受FT保护;对于FT策略下运行非关键任务的虚拟机,一旦所在主机宕机或者需要进入维护模式,只能另外择机重启。在我台建设的虚拟化平台中,相较于VMotion策略,FT策略不能完全做到将所有虚拟机实现“零停机”的功能,同时更加占用硬件资源。
从各自配置的需求来看,VMotion策略对于系统软硬件、网络要求更加宽容。VMotion需要一个共享的存储空间,以保证虚拟机在热迁移时源主机和目标主机均可访问。此外,VMotion要求在所有启用VMotion的主机之间设置两个千兆以太网络,分别配置管理流量和虚拟机迁移流量,然后在主机之间手动配置相同的网络标签,即可实现在预定时间安排迁移,无需维护人员在场。构建FT群集则对网络及软硬件配置提出了更为严格的要求。首先,较之VMotion,需要另外准备FT专用的千兆以上的高速网络,且群集主机之间的延迟应低于毫秒级。其次,由于二者运行机制的不同,VMotion只有在虚拟机迁移的很短的时间内产生很大流量,换言之,只是瞬时占用大量带宽;FT则需要实时读取主、辅两台虚拟机的日志信息以保证同步,因此必须持续占用大量带宽,从而加重了网络运行的负担。第三,我台建设虚拟化平台,使用VMware 5.5版本,该版本使用FT策略时只能支持每个虚拟机分配1颗虚拟CPU。VMotion策略则对虚拟机没有虚拟CPU个数的限制,因此可以实现比FT更加灵活的部署。
从各自的特性来看,结合我台的实际使用情况,使用VMotion可以在不影响虚拟机运行的情况下自动将其从故障或性能不佳的主机中迁出,并在很短时间内确定虚拟机最佳迁入的主机,实现资源池中虚拟机持续自动的优化,维护起来相对方便快捷。使用FT虽然同样可以不影响虚拟机的运行,实现无缝切换,但是由于容错技术本身发展的还不够成熟,使用起来存在诸多限制。例如,相对于VMotion,FT不支持虚拟机快照,也不支持快照的备份技术。虚拟机快照是虚拟机磁盘文件在某个点即时的复本,当虚拟机操作系统崩溃,或者更新部署不成功,都可以通过使用快照来完成恢复。虚拟机快照在全媒体综合监测监管系统虚拟化平台应用中至关重要,若不能使用将对我台的日常维护及升级工作造成一定影响。FT同样不支持热插拔设备。FT虚拟机不能添加或删除光驱、硬盘、USB接口、声卡、网卡、SCSI等设备,从一定程度上降低了操作灵活性和系统可扩展性。
四、实践及应用
我台建设的全媒体综合监测监管系统虚拟化平台,采用云计算操作系统软件,并将十数个监测业务系统部署到平台之上。根据两种可靠性方案的对比结果,平台确定使用114个刀片服务器按照各监测业务分别组建HA群集,同时开启DRS实现负载均衡,配合VMotion高级功能,使虚拟机独立于硬件、操作系统和应用程序,提供更高可用性;在各业务部署到虚拟化平台后消除计划内业务宕机时间,并最大限度地减少计划外业务宕机时间,提高资源利用率。平台中群集属性设置如表1所示。
主机添加到群集时,代理将上载到该主机,并配置为与群集内的其他代理通信。添加到群集的前五台主机将指定为首选主机,随后的所有主机将指定为辅助主机。首选主机维护和复制群集所有的状况,并用于启动故障切换操作。如果从群集内移除某台首选主机,则群集中的另一台主机将被提升为首选状态。加入群集的任何主机都将与现有首选主机通信并完成配置工作。
虚拟化平台群集的网络连接、设计和部署如图8所示。群集内配置两台虚交换机vSwitch0和vSwitch1;每台主机选配4块1000 Mbps物理网卡vmnic0-vmnic3,分别做如下使用:将vmnic0和vmnic2绑定后连接到vSwitch0,并在vSwitch0上设置VMotion端口组;将vmnic1和vmnic3绑定后连接到vSwitch1,并在vSwitch1上设置管理网端口组和虚拟机端口组(虚拟机配置网络的接入选项),前者实现对网卡的管理与操作,后者建立虚拟机对外通信的网络。
五、结束语
我台建设的全媒体综合监测监管系统虚拟化平台实现了多种信号的统一监测,融合了网络化、虚拟化、云计算、云存储等一系列新技术,大大提高了对各类广播电视及互联网视音频信号的监测监管效率。在平台展现高新技术的同时,我台对其使用VMware高可用群集结合虚拟机热迁移策略,保证了平台在自身结构日趋复杂的条件下稳定可靠地运行。随着系统软硬件及网络技术的进一步发展与升级,提高平台可靠性的方案也将不断地改进和完善。
[1] 居朝军,钱卫 .构建省级广电全媒体综合监测监管平台的研究与实践 [J].北京:广播与电视技术,2014,41 (8):145-151.
[2] 蒋谢彬,李献球 .高可用系统的技术与应用[J].计算机系统应用, 2003: 31-33.
[3] 邓玉元,李少根 .提高系统容错性的软件技术[J].现代电子技术, 2006: 33-35..