APP下载

虚拟化技术在12306双活数据中心中的应用

2015-06-28刘相坤徐东平李聚宝

铁路计算机应用 2015年11期
关键词:群集虚拟化数据中心

刘相坤,李 琪,徐东平,李聚宝

(中国铁道科学研究院 电子计算技术研究所,北京 100081)

虚拟化技术在12306双活数据中心中的应用

刘相坤,李 琪,徐东平,李聚宝

(中国铁道科学研究院 电子计算技术研究所,北京 100081)

介绍12306互联网售票系统如何使用虚拟化技术从单数据中心发展为双数据中心高可用方面的实践经验。通过实践证明,采用虚拟化技术解决双活数据中心高可用问题,无论是从前期投入还是从后期维护角度看,都具有良好的经济效益和社会效益。

客票系统;12306网站;虚拟化;数据中心;高可用

随着互联网技术的迅猛发展,通过网络进行铁路客票的发售和预定的呼声越来越高。12306作为中国铁路客户服务中心唯一运营网站,承担着为全社会和铁路客户提供客货运输业务和公共信息查询服务的重任。网站数据中心庞大,软硬件资源众多,出于管理和安全性考虑,针对基础架构的虚拟化整合以及实现双活数据中心已经势在必行。

1 铁路互联网售票系统面临的挑战

12306 作为一个万众瞩目的网站,停顿1 min都会给全国人民的出行造成影响。因此12306互联网售票系统(简称:12306)的高可用非常重要。

高可用解决方案很多,概括起来分为2类:(1)狭义高可用,仅仅用于避免系统级故障,使用冗余的硬件资源,去接管失效的资源。(2)广义高可用,指整个系统的高可用,不仅可以避免系统级故障,还能避免天灾人祸造成的故障。

狭义高可用是在单数据中心内实现硬件资源的冗余,保证在系统失效的情况下可以有资源接管应用。在传统的 IT 环境中高可用涉及系统、网络、数据库、业务等方方面面,实现方式也是多种多样,因此实施、配置和后期运行维护都非常的麻烦。比如要实现高可用一般需要配置心跳、写 HA 的触发脚本等,这些工作在各个系统都不尽相同不具有通用性;HA解决方案涉及的环节多,部署时间长;上线后的维护工作点多、面广,出现故障后操作步骤也不统一,势必要求维护人员熟悉IT环境的各种产品,给运行维护带来很大的压力。

初期的12306就是运行在由单数据中心使用小型机组建的高可用环境中,随着业务量的增加,这种架构不能方便地进行横向扩展,更不能避免天灾人祸,这与12306的重要地位不相匹配。为此经多次研究决定建立双活数据中心,让12306运行在2个数据中心组成的高可用环境中,最大限度地避免各种故障对系统造成的影响。

铁路客票互联网发售比例逐年提高,12306承载的压力越来越大。因此改造方向是:(1)能够随着业务量增加更加便利地扩能;(2)实现在2个数据中心的高可用。

2 解决面临问题的思路选择

根据面临的问题,对当前业内主流技术进行了论证分析和实测,最终选定使用VMware 软件定义数据中心解决方案的设计思想,解决横向扩展和双活数据中心的问题。

软件定义数据中心的解决方案是基于虚拟化技术的整体解决方案,其中包含了计算资源虚拟化、网路资源虚拟化和存储资源虚拟化产品。系统的改造借用其设计思路和虚拟化产品(vSphere)并结合12306的实际情况进行方案设计,为将来建立云数据中心打好基础。

横向扩展能力一直是 IT 界的梦想,希望如果一台服务器的性能不够,再增加一台服务器性能就可以提升一倍。一直以来,纵向扩展(如在计算机内增加内存、磁盘)比较容易,但是纵向扩展有限度,不能无限扩展。而横向扩展是无限的,虚拟化技术产生后,使扩展更加简便,成本也更低。

虚拟化技术除了可以帮助12306快捷地扩能,还能帮助12306实现双活数据中心。单数据中心高可用就相当复杂,双数据中心的高可用复杂度更是陡然增加。除了在单数据中心高可用面临的问题以外,同时还会有2个中心网络高可用、存储高可用等众多问题。为此希望找到一种能够屏蔽众多底层技术细节,极大减轻部署和运行维护强度的方案。虚拟化技术可以帮助实现这个目标。虚拟机在2个数据中心进行迁移,不修改现有应用,也不用重新配置。这样就能屏蔽众多配置细节从而实现高可用,这种解决方案无论是实施和后期运行维护都比较方便。经过慎重评估最终选择以虚拟化技术为基础建立跨数据中心的高可用集群。

X86虚拟化技术近年来发展迅速,几乎成了IT系统的基本配置。利用虚拟化技术,可以在一个物理服务器上运行多个操作系统实例,可以有效提升硬件的利用率。同时虚拟机都是以文件形式存在的,可以实现高可用,假如运行虚拟机的物理机出现意外宕机,则集群中的另外物理机就会自动启动这台虚拟机,继续对外提供服务。这种功能无论是在单数据中心还是在跨数据中心都是可以实现的。

在虚拟化平台上部署中间件。因为中间件是无状态的,且同一业务系统配置相同,因此容易形成模板。使用模板克隆出虚拟机,只需简单配置一下网络即可上线工作,省去了中间件安装、配置、测试的时间,真正实现了快速部署,同时也减轻了运行维护压力。

因此虚拟化对于我们最大的吸引力在于:

(1)无需安装软件。新的物理服务器,必须安装平台软件;而虚拟化服务器采用模板克隆技术生成,模板中已经包含了需要的软件,不用再次安装,省时省力。

(2)实现高可用更加简单。物理机的高可用必须手工配置,而虚拟机可以依靠虚拟化平台的 HA功能保证高可用,不用在操作系统内进行特殊配置。当虚拟化集群中的一台物理机发生故障,虚拟机可以在另外一台物理机上重启,继续对外提供服务。

3 虚拟化技术发展及应用情况

虚拟化(Virtualization)技术最早出现在 20 世纪 60 年代的 IBM 大型机系统,在70年代的 System 370 系列中逐渐流行起来,这些机器通过一种叫虚拟机监控器(VMM ,Virtual Machine Monitor)的程序在物理硬件之上生成许多可以运行独立操作系统软件的虚拟机(Virtual Machine)实例。随着近年多核系统、集群、网格甚至云计算的广泛部署,虚拟化技术在商业应用上的优势日益体现,不仅降低了IT 成本,而且还增强了系统安全性和可靠性,虚拟化的概念也逐渐深入到人们日常的工作与生活中。

虚拟化是一个广义的术语,对于不同的人来说可能意味着不同的东西,这要取决他们所处的环境。在计算机科学领域中,虚拟化代表着对计算资源的抽象,而不仅仅局限于虚拟机的概念。从早期的例如对物理内存的抽象,产生了虚拟内存技术,使得应用程序认为其自身拥有连续可用的地址空间(Address Space),而实际上,应用程序的代码和数据可能是被分隔成多个碎片页或段),甚至被交换到磁盘、闪存等外部存储器上,即使物理内存不足,应用程序也能顺利执行。到近期的对网络、存储的抽象,产生了网络虚拟化和存储虚拟化。

当前虚拟化技术已经被广泛应用到 IT 基础设施的建设中 ,已经形成了丰富的产品和解决方案。2012年又提出了软件定义的数据中心的概念。也就是说未来的数据中心要虚拟化、池化一切资源(包括计算资源、网络资源和存储资源等),完全用软件控制数据中心的运行。

图1 12306双活数据中心虚拟化体系结构图

4 虚拟化在12306双活数据中心的实践

4.1 方案设计

2012年 开 始 使 用VMware vSphere虚拟化平台后,虚拟化的优势日益明显。2013年开始测试将数据库运行在虚拟化平台上,以保证数据库高可用。测试效果比较理想,于是在2013年底开始规划使用VMware vSphere 作为双活数据中心核心数据库的基础平台。

方案的设计理念基于“软件定义数据中心”的思想。架构设计结合并汲取了各项相关建议和需求,参考VMware虚拟化架构最佳实践,针对VMware vSphere虚拟化基础架构、网络规划、存储规划、ESXi服务器和vCenter管理服务器的配置等方面,进行了深入地分析和探讨。

针对业务系统的特点,利用虚拟化技术可以将标准的X86服务器资源进行池化并分配给多台虚拟机,以此实现在1台物理服务器上运行多台独立的虚拟机。在虚拟化主机层面选用若干台PC SERVER作为ESXi主机,HDS VSP G1000 作为虚拟化架构数据存储存放虚拟机及其数据。体系结构如图1所示。

设计5个群集,其中关键应用分为4个群集,另外1个群集为管理群集;每个群集跨2个数据中心;2个中心均为每组机器配置2台冗余主机用于本地群集内故障转移或者接管另一中心故障转移;所有管理主机配置一个专有群集,共4台主机,2个中心各2台,主要运行管理虚拟机。

4.2 环境及典型场景说明

双活数据中心,应包括计算环境双活、网络环境双活和存储环境的双活。

4.2.1 计算环境

计算资源双活也就是实现虚拟机可以在2个数据中心自由迁移,为此2个数据中心应保持相同的计算资源。每个中心配置m台物理服务器,共使用2m台物理服务器。每个中心Sybase数据库虚拟机n台,分别运行在n台主机上;vCenter server虚拟机2台,主备域控制器2台,vCops vApp中共有2台虚拟机,以及其他管理用的虚拟机共6台左右,运行在4台管理主机上;2(m-n)台主机作为应用虚拟机的备用资源,其中,m>n;每7台一个业务群集,5台运行2台备份的模式。

4.2.2 网络环境

如果实现双活数据中心,网络作为重要的IT资源必须做到2个数据中心的高可用,也就是要将2个数据中心的客票网组成1个大的局域网,无论虚拟机在哪个数据中心运行都无须更改网络设置。根据双活数据中心的总体架构,网络需要满足要求:物理链路层实现2个数据中心2层网络互通;群集跨数据中心存在,同一个群集中的主机之间均采用同样的vMotion网络,实现跨数据中心的vMotion。

系统中通过 OTN 技术进行2层打通;2层打通后,2个数据中心的 vMontion VLAN 进行合并,实现跨数据中心的vMotion。

同时为了保证整个方案没有单点故障,在每个物理机上的网卡均为冗余配置,也就是无论是存储网、业务网、管理网还是 vMotion 网络都是双网卡。这样无论是数据中心的网络还是服务器的网络都是冗余网络,真正实现了没有单点故障,增强了整个系统的抗风险能力。

4.2.3 存储环境

采用HDS VSP G1000存储,2个数据中心各1台,按照不同业务划分为5个资源池,分别给5个相对独立应用的虚拟机使用。通过划分资源池进行各个业务之间的存储I/O隔离,以减小业务I/O之间的相互影响。

规划每个虚拟机对应单独的1个LUN。在设置空间时需要合理分配LUN大小、虚拟机空间的大小、虚拟机内存的大小,每个机器的空间余量应能承担内存的swap文件所需的空间,使虚拟机能够正常启动,一般要求:LUN空间-虚拟机空间≥虚拟机内存。阵列规划参考如图2所示。

图2 12306双活数据中心阵列规划

4.3 方案特点

4.3.1 第1次将数据库运行在虚拟化平台上

以往因为担心虚拟化的性能问题,不敢将数据库运行在虚拟机中。这次通过前期的充分论证和测试,证明数据库运行在 VMware 虚拟化环境中是完全可行的,性能和纯物理环境相比不会有太多的下 降,而带来整个系统的高可用和管理上的简便性与传统物理环境比较优势是明显的。

4.3.2 实现了基于虚拟化技术的双活数据中心

传统的双活数据中心环节多,实施和后续管理都极其复杂;而基于虚拟化的双活数据中心,虚拟化层可以帮助用户屏蔽众多的底层技术细节,实施和管理都比传统方式更加简便。

4.3.3 资源充分利用

通过虚拟化技术将2个数据中心的资源整合到1个资源池中,2个中心同时对外提供服务。不像主备数据中心,灾备数据中心的资源平时不使用,只有在主中心失效的时候才启用,资源浪费严重;而双活数据中心可以同时利用2个中心的资源对外提供服务,资源利用率更高。

5 结束语

虚拟化技术在12306双活数据中心中的应用说明,以虚拟化技术为基础建设双活数据中心是可行的。软件定义数据中心的思想可以指导双活数据中心的建设,虚拟机可以支持数据库系统的稳定运行。X86虚拟化集群方便横向扩展,这种能够随着业务量进行弹性扩展的能力是小型机所不具备的。虚拟化集群的整体性能比较好,且要达到同样的性能,小型机的成本要高于 X86 虚拟化集群,因此虚拟化运行的成本更低,经济效益更为突出。

[1]黄怡君.银行业的存储虚拟化系统设计与实现[D]. 上海:上海交通大学,2012.

[2]曹巍巍.数据中心虚拟化技术研究与实现[D].上海:华东理工大学,2011.

[3]施 庆.基于VMware vSphere的高校数据中心虚拟化建设研究[D].上海:复旦大学,2012.

[4]李 聪. 服务器、网络、存储虚拟化技术在数据中心的应用研究[D].天津:天津大学, 2009.

[5]王 欣.VMware软件虚拟化研究及应用[J].数据通信,2013(6).

责任编辑 方 圆

Virtualization technology in dual active data center of 12306 Internet Ticketing and Reservation System

LIU Xiangkun, LI Qi, XU Dongping, LI Jubao
( Institute of Computing Technologies, China Academy of Railway Sciences, Beijing 100081, China )

Virtualization technology was used in 12306 Internet Ticketing and Reservation System to develop the date center from single data center to dual active data center. Practice had proved, solving the problem of high availability was totally feasible through this technology. It had good economic and social benefits whether from the initial investment or from the late maintenance.

Ticketing and Reservation System(TRS); 12306 Website; virtualization; data center; high availability

U293.22∶TP39

A

1005-8451(2015)11-0017-04

2015-04-10

刘相坤,副研究员;李 琪,副研究员。

猜你喜欢

群集虚拟化数据中心
酒泉云计算大数据中心
浅析数据中心空调节能发展趋势
中餐女王的传奇人生
Cecilia Chiang, pioneer of Chinese cuisine
基于强化学习的低时延车联网群密钥分配管理技术
浅析Windows Server 2016四种数据恢复方案
关于建立“格萨尔文献数据中心”的初步构想
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
浅析虚拟化技术的安全保障