陈春华,李军,梁奂
(1.中国电信股份有限公司广州研究院,广东 广州 510630;2.中国电信股份有限公司,北京 100033)
电信运营商现有IT架构主要采用以IBM、Oracle、EMC为代表的小型机、集中式关系型数据库和高端存储的IOE架构进行构建,其架构主要特点是稳定、可靠和数据的一致性好。但随着业务量的快速增长,带来的大数据量、高并发使原有基于IOE架构的应用日益成为瓶颈,其扩展灵活性差,对大型IT厂商依赖和成本过高的矛盾突出。为了应对新的挑战,电信运营商启动对现有IT架构的变革,主要体现在以下2个方面:
(1)现有系统进行去IOE的实践,以提高基础设施共享水平及应用系统弹性,降低IT总体拥有成本:即对于B/S的Web服务器和应用服务器向X86服务器迁移;同时推进非核心系统的数据库向X86服务器迁移,并优先选择虚拟机部署,尽可能保障故障快速恢复;对于大型核心系统的数据库服务器暂保留IOE架构,将历史订单、历史客户资料、历史话单、计费清单等只读数据剥离到云计算环境,降低核心数据库处理压力等;数据分析类应用全面基于Hadoop等分布式技术进行构建。
(2)构建新的“集中、开放和云化的IT架构”,基于互联网化思维,以平台化、服务化、组件化的方式构建IT架构,平台与硬件解耦,硬件与软件解耦,基础设施云化,对内实现按角色提供个性化应用和数据,对外通过服务组装快速支撑价值链合作。
为适应上述转变,首先需要在IT基础设施层面进行整合、建设形成统一的资源池,既满足Web和应用服务器云化迁移到X86服务器(包括物理机和虚拟机)的需求,又满足核心数据库的小型机需求,同时还要满足分布式计算架构的需求,这样资源池就形成多种计算能力混合的资源池(包括X86虚拟机资源池、X86物理机资源池、UNIX小型机资源池)。其典型混合架构的云资源池架构如图1所示。
如何构建合理的资源池来满足上述不同特征系统的不同计算能力需求,是运营商IT部门面临的一项重要挑战。云资源池主要包括计算资源、存储资源和网络资源,总体部署策略应体系化、集约化和自动化,以降低资源池部署与运营成本,保障资源池的安全。
根据计算功能和资源提供方式不同,可将计算资源分为3类,即虚拟计算资源池、物理计算资源池(包括X86和UNIX物理资源池)和分布式计算资源池。在资源分配过程中,可根据承载业务类型和需求不同,又将资源池划分为不同的区域,如内网生产区、公网DMZ(Demilitarized Zone,隔离区)区和开发测试区等。不同资源分类、区域划分主要是为了满足不同应用的计算需求,并在保障安全的前提下降低计算资源部署成本。
(1)虚拟计算资源池:基于X86服务器部署主流虚拟化技术,以虚拟机方式提供计算能力,并以集群方式部署,按集群扩展。由于目前不同虚拟化技术资源无法共享,需分别部署在不同集群,建议同一资源池中尽量采用相同的虚拟化技术和CPU架构,以保持良好的资源调度能力,主要适用于各系统Web服务器、APP服务器、接口服务器等。
(2)X86物理计算资源:基于X86服务器直接以物理整机方式提供计算能力,主要满足部分资源要求较高的数据库和大型应用模块部署需求。
(3)小型机物理计算资源:基于UNIX小型机直接以整机方式或者以分区的方式提供计算能力,主要满足核心系统的数据库部署需求。
图1 混合架构的云资源池
(4)分布式计算资源:基于X86服务器集群部署分布式计算技术,主要满足大规模数据存储与处理需求,按集群部署和扩展。
另外,由于各类计算资源服务对象和资源形态的不同,资源间不能共享,需要统筹考虑资源的部署布局,按照功能又可分为以下3类,不同类型的区域需要按其特性进行计算能力的部署:
(1)生产区:生产类的系统资源稳定、可靠、安全性要求较高,可配置稳定性、可靠性、性能较高的虚拟计算和物理计算资源,以虚拟计算资源为主。针对大数据分析类应用,根据分布式计算特点,可配置中低端定制化X86物理服务器,部分场景(对性能要求不高)可配置虚拟计算资源。对于核心系统的数据库,可沿用现有高可靠的小型机计算资源。
(2)开发测试类区:由于用于开发测试的资源配置、环境等调整较频繁,稳定性和性能要求不高,为满足各类系统的测试需要,可同时配置虚拟计算、物理计算和分布式计算3类资源,以虚拟计算资源为主,可配置中低端物理计算资源及分布式计算资源。
(3)DMZ区:以提供对外访问的Web和应用平台为主,应以虚拟计算资源为主。
存储资源分为集中式存储和分布式存储。其中,集中式存储是资源池存储的主要提供方式,主要通过硬件保障性能和可靠性,主流技术包括FC-SAN、IPSAN、NAS(Network Attached Storage,网络附加存储)等,但部署成本较高、扩容不灵活;分布式存储是可基于X86服务器部署的新兴存储技术,主要通过软件保障性能和可靠性,主流技术包括分布式对象存储、分布式块存储、分布式文件存储等,具备低成本、灵活扩容、高并发访问等优势。应根据不同存储需求提供分级存储手段,以降低存储资源部署成本。
由于混合的资源池规模、存储量都较大,承载不同特征的应用类型较多,所以应根据不同业务特性和存储需求(如高I/O存储、高容量冷温数据存储、大数据存储、备份和归档存储等),配置不同的存储(集中式、分布式的不同存储技术选择),实现分级存储,差异化利用资源,从而降低成本以及提升资源利用率。
由于集中式存储存在多种不同技术架构(如FCSAN和IP-SAN),难以实现资源共享,需相对独立部署,但同一技术架构产品可通过存储虚拟化技术实现资源整合共享;分布式存储本质上可实现底层硬件资源共享,通过软件方式提供差异化存储能力和接口,但其中分布式块存储对I/O要求较高,需要特殊考虑硬件配置,如配置SSD(Solid State Disk,固态硬盘)、万兆卡等。
资源池网络主要包括节点内网络、节点间网络和对外访问网络3部分。
(1)节点内网络主要承载业务流量、存储流量以及虚机间流量,应实现流量之间的隔离,节点内网络架构尽量扁平化。
(2)节点间网络应充分考虑多个资源池节点间的双活、异地容灾、跨节点虚机迁移等需求,规模不大的资源池可选择星形网络结构,后续随着资源池规模不断扩大和二层广域互联技术基本成熟,资源池网络可向环形结构调整。
(3)对外访问网络主要考虑防火墙、负载均衡方案设计。
建设资源池运营管理能力,是资源池运营管理的重要技术手段。对资源池的运营管理功能一般包括采集与控制域、监视管理域、资源调度域以及服务门户等关键功能,具体如图2所示。
其中,最基础、最关键的能力就是要建立接口适配层,屏蔽不同类型的资源池的接口差异,能通过统一的接口适配来接入不同的计算资源池的资源。
与不同计算资源互联适配的方式主要如下:
(1)小型机、X86物理机适配方式:一般通过第三方管理软件、SNMP(Simple Network Management Protocol,简单网络管理协议)采集方式、安装Agent代理采集方式、自定义采集脚本方式来收集小型机的配置信息、采集性能数据和告警信息。
图2 混合架构的云资源池管理能力
(2)虚拟机接口适配方式:根据虚拟化软件提供的接口可以有2种适配方式。第1种是与虚拟化厂商管理软件提供的接口进行互联(如图2中的管理接口2),即通过如VMware的vCenter、Xen的XenServer提供的开放API(Application Programming Interface,应用程序编程接口)来进行基本配置信息、性能数据和告警数据的收集;第2种是通过与虚拟化厂商Hypervisor提供的接口进行互联(如图2中的管理接口1)。由于第1种接口在稳定性、全面性、开放性和后向兼容性方面都优于第2种,所以尽可能优先采用第1种。但对于虚拟化软件提供接口不够丰富、不能满足运维要求的(如KVM),可能根据管理需要还要自行开发Agent部署到虚机上(与管理物理机方式类似)。
资源池运营管理的另一个重要方面就是采集各类资源的关键性能指标,通过不断地优化性能阈值设置,及时发现异常或潜在的风险,便于运维人员及时进行处理。
UNIX小型机、X86物理机资源的性能指标都有一些共性,主要关注CPU、内存和I/O等主要性能数据,这方面的技术比较成熟,其性能数据也是主要通过与第三方管理平台或者自行部署Agent的方式进行性能数据的采集。
但虚拟机有一些特殊的性能指标需要特别注意。由于虚拟机的性能与宿主机(物理机)有关联,因此不能单纯从虚拟机的性能指标来判断其性能,需要与宿主机的性能指标进行关联分析。其中需要特别关注的性能指标如下:
(1)虚拟机的CPU就绪时间:是指虚机准备就绪、但无法安排在物理CPU上运行的时间所占的百分比,取决于宿主机上的虚拟机数量及CPU负载。即若宿主机上虚机较多且虚机CPU超额分配,会导致虚机在申请CPU资源时产生额外开销;若宿主机CPU过载,会导致虚机申请不到足够的CPU资源。
虚拟机CPU是否不足的判断:若宿主机CPU未过载,可根据虚机CPU使用情况判断虚机CPU是否分配不足,如CPU就绪时间占比过高,可适当减少虚机CPU分配或迁移部分虚机来减少CPU就绪时间;若宿主机CPU过载,会导致虚机得不到足够的CPU,虚机CPU就绪时间增大,应及时优化最耗CPU的虚机或迁移虚机至负载较轻的宿主机。
(2)气泡内存和内存换入/换出速率:以VMware为例,气泡内存是指VMkernel从虚机回收的内存,回收的内存会以文件的形式存放在数据存储上,扩展名为vswp。内存换入速率是指内存交换到虚机中的平均速率;内存换出速率是指内存从虚机中交换出的平均速率。
虚拟机内存是否充足的判断:不能仅从虚机CPU使用率来单纯判断,此项指标只能作为虚机内存繁忙程度的依据,还需要另外采集虚机操作系统内存使用情况关系,即虚机操作系统内存使用率和交换区使用率这2项指标。若气泡内存较多且内存换入/换出速率较高,则说明虚机内存不足,应及时考虑迁移虚拟机或扩容宿主机。
通过合理构建部署混合的IT云资源池,可以适应不同特征的应用需要;构建中应加强对资源池的运营管理能力建设,实现对资源池进行统一的管理;在运营过程中要关注虚拟化资源池的特殊性能指标的关联,及时发现运营过程潜在的风险,优化资源配置,提升资源池运营能力。
[1]陈春华,梁奂,李军. 云资源池环境下的IT服务管理系统优化及实施策略[J]. 移动通信, 2013(16): 83-87.
[2]陈春华,李军,梁奂,等. 资源池环境下的IT服务管理实施策略[J]. 电信科学, 2012(9): 142-147.
[3]陈春华,梁奂. 全业务电信运营商的IT服务管理实践探讨[J]. 电信科学, 2011(3): 118-125.
[4]秦润锋,樊勇兵,唐宏,等. 电信运营商开放式IaaS云平台研究[J]. 电信科学, 2013(10): 5-9.
[5]杨经纬,胡林,李金岭,等. 支撑电信运营商集约管理的云计算平台研究探索与实践[J]. 电信科学, 2013(8): 136-145.
[6]燕杰,樊勇兵,金华敏,等. 电信运营商的云计算资源池部署方法概述[J]. 电信科学, 2011(10): 13-19.
[7]韦赟. 浅析云计算及其在电信运营商中的应用[J]. 广西通信技术, 2014(3): 18-23.
[8]Peter Brooks. IT服务管理指标[M]. 丰祖军,译. 北京: 清华大学出版社, 2008.
[9]Theo Thiadens. IT管理的知识体系[M]. 李东,牛芳,译. 北京: 清华大学出版社, 2007.
[10]Jan van Bon. 基于ITIL的全球最佳实践[M]. 章斌,译.北京: 清华大学出版社, 2006.