APP下载

基于容器技术的电力系统业务应用资源池系统设计研究

2017-04-25耿贞伟权鹏宇李少华

数字技术与应用 2017年1期
关键词:资源整合电力系统

耿贞伟+权鹏宇+李少华

摘要:云南电网有限责任公司以资源池为基础、以IT服务为核心,以集约、高效和可靠为目标建设“南网云”重点企业,电力系统的业务平台规模不断扩大,传统的基础架构平台已不适用企业信息化业务发展的要求,在电力系统中使用容器虚拟化技术建设云计算业务应用资源池,通过有效整合、管理和調度物理机、虚拟机和网络等系统资源,成为必然选择。本文首先阐述了容器技术的相关概述,其次介绍了传统电力系统存在的一些问题以此引出其相关业务需求,并通过结合Docker容器技术对云南电网信息中心业务资源池和容器封装进行相关设计开发,实现应用环境的封装隔离以及CPU、内存等资源限制;结合集群管理方案,能够实现资源的统一调度和动态调整,并给出业务应用资源池的弹性资源调度。并针对相关工作提出下一步研究方向。

关键词:电力系统;业务应用资源池;容器技术;资源整合

中图分类号:TP315 文献标识码:A 文章编号:1007-9416(2017)01-0045-03

1 前言

随着信息化建设的不断深入,电力信息系统复杂性和运行压力日益增长,云南电网有限责任公司已经认识到软硬件资源结合紧密带来的潜在运行风险,并在2012年开始通过云计算基础设施(即IaaS层)试点建设实现了计算资源池、存储资源池和网络资源池承载77.6%业务系统云化迁移工作。随着智能电网技术的不断发展,会有越来越多的数据及业务应用引入到电力系统中,与之相匹配的数据的存储、软硬件资源适配的压力也越来越高,同时运维的成本也会加大。本研究力图通过对业务系统容器话改造,并研发一套基于电力系统及容器技术的资源池系统来实现软硬件解耦提高系统敏捷性和稳定性。云计算与容器技术作为21世纪信息技术发展趋势,能够有效改善数据中心多种业务应用共享硬件资源,具有效率高、易管理、能耗低、投资低的优势,为建设数据中心业务应用资源池提供了有效的解决途径,满足当前急剧增长的业务需求。

2 容器技术概述

容器技术是一个在单一主机上提供多个隔离运行环境的操作系统级虚拟技术。容器技术提供的隔离运行环境,与虚拟机(Virtual Machine)提供的隔离环境,存在明显的差异。容器并不需要运行专用的访客操作系统(Guest OS),而虚拟机则必须在主操作系统(Host OS)上通过硬件虚拟化等技术运行一个访客操作系统(Guest OS)。因此,同一个操作系统上的多个容器共享宿主机的操作系统内核。由于不需要运行额外专用的操作系统,容器相比虚拟机而言,启动速度存在巨大的优势。Docker基本架构介绍图1所示。

容器技术相较于虚拟机技术,优势十分明显,比如轻量级、高性能、便捷性等。容器的管理操作(启动、停止、开始、重启等)往往耗时都非常小,一般秒级即可完成,甚至有些场景是毫秒级。传统的虚拟机技术则很难达到这样的高效,由于虚拟机镜像的庞大与冗余,访客操作系统(Guest OS)的加载等,往往启动时间都在分钟级。一些要求响应速度要求特别高的特殊场景下,虚拟机很难达到要求,比如一些秒杀系统的弹性扩展等。

以Docker为代表的容器技术,除了在资源层面做了很好的规划,同时在应用层面体现出了难以估量的潜力。Docker的镜像技术可以做到以应用为中心,同时保证镜像内部的绝对环境一致性,保证镜像的一次打包,随处应用。从软件交付流程而言,Docker大大降低了运维成本,传统的应用运维不再以普适性弱的应用为中心,而是以普适性更强的容器为中心,效率大大提高。

3 传统部署存在的问题及业务需求

3.1 传统部署的问题

(1)资源成本较高。各业务前期准备时强调专机专用,使得各个业务系统之间独立部署,而部分核心业务配置主、副两台服务器,使得成本大大提升。(2)资源利用效率低。各业务系统独立部署,有的业务系统所需硬件资源多,而有的所需就很少,导致其无法合理的分配和利用系统资源。(3)数据安全隐患。电力系统数据中心最为突出的要求就是安全性,而现在很多数据都存储在客户机端,一旦出现网络安全问题那么数据丢失或者篡改问题将无可避免,这对于整个云南电力系统来说将造成无法挽救的危机。

3.2 需求分析

云南电网公司云计算IaaS层资源池已经建设投运四年时间,大量的业务系统在资源池提供的虚拟机上运行良好,IaaS层资源池的建设改变了以往IT硬件资源投入的竖井架构构,有效的整合了资源的综合使用率,同时为业务系统上线提供了快速部署服务器、灵活的资源调整需求等云计算特性。但应用业务系统在虚拟机上的部署还是以传统的方法通过人工在上面进行部署,由于环境差别的原因,从虚拟机建好到应用部署完成还是需要一定时间,且受到人员、部署文档的因素部署后还需要进行微调才能满足系统运行要求。通过引入Linux下容器的概念和技术,来建设一个业务应用系统池,通过这个池能满足大部分业务系统的运行需求,并提供应用系统的快速部署、快速升级发布、快速维护、与现场无关等特性,向“十三五”规划中提出的“大平台、深应用、云互联”全面实现混合云建设及运营的规划目标演进。

容器管理工具应具有可视化、可操作的图形交互界面,能够方便管理员通过图形界面来展示、管理平台的各项功能,并高效的发布业务应用,丰富用户体验。其主界面应包括系统总览、主机管理、容器管理、存储卷管理及网络管理等。

统一的管理平台,友好的图形界面。管理员可通过该界面实现整个生命周期各项功能的管理:(1)支持自动的资源调配功能。客户通过统一的界面指定特定的要求,系统自动完成服务器与容器的自动化制备与绑定。(2)完整信息展示功能。通过图形化界面能够查看应用及容器的完整信息,包括但不限于名称、镜像、发布时间、版本、状态、日志和性能监控等信息。(3)标准化。由于整个生态环境巨大并且仍在火热发展中,运维管理技术必须以标准化的接口与各组件交互,保证整个架构的灵活可替换。

容器平台管理系统是一个新的项目,在开发的时候需要自己定义功能,提前设定好目标才能成功,这也是项目刚启动时的一个技巧。从给它定义来看,除了应用编排、日志监控、网络管理这三大块,还有插件的管理,一些辅助信息、Docker本身对主机的管理也加进去了。但是重点关注了其中最核心的功能,就是应用编排、日志监控、网络管理,这是DevOps最关心的三个点,也是该项目的亮点。

容器平台管理系统设计过程定义功能集如图2所示。

4 业务资源池设计

根据电力系统业务应用资源分区,将资源池划分为X86虚拟服务器池、X86物理服务器池、小型机池X86虚拟资源池适合大规模的虚拟化,抽象形成可管理、可调度的逻辑资源;X86物理资源池不经虚拟化适用于部署数据库服务器或其他必须采用物理服务器实现的业务平台模块;小型机资源池采用虚拟多台逻辑设备供多个业务平台使用,适用于数据处理等服务。在业务部署时优先考虑X86虚拟资源池,对于有特殊外设需求的考虑X86服务器整机承载,对于有高计算要求或特殊数据库要求的,可将其部署在X86物理机资源池或小型机资源池。虚拟机部署时根据业务特点统筹规划,尽量避免同一台服务器上运行的虚拟机忙时集中。具体设计如图3所示。

5 容器封装设计

随着电力系统业务规模的扩大,其业务应用对于计算资源的快速伸缩有了强烈的需求,内部服务化的架构推进,需要更好的环境隔离以及更细力度的计算资源隔离和调度能力,在此我们采用了Docker技术来构建弹性计算平台。

在Docker平台搭建中,采用DevOps这种模式来解决各层运维效率问题。对业务用户层面,容器平台明确业务开发能够完成的工作都由业务开发人员来操作,如日常的服务发布、配置变更。通过这种方式,既充分满足业务开发人员操作的便捷性,同时也减轻平台维护人员的日常工作量。对平台内部层面,也是通过开发的思路来解决运维问题,即日常的处理尽量自动化完成。容器集群扩容:在新服务器安装系统时,会运行 Salt 配置、安裝并运行 Docker 相关后台进程和Mesos-Slave节点,这样机器就自动加入到了容器集群。服务运行的容器数量:可以通过预定义的指标实现自动的伸缩,业务流量增长和正常的流量波动无须人工调整资源。在容器平台加载业务应用本身的系统运维工作(如业务资源变更,物理机异常处理)之后,加重了容器平台工作负担,对此我们设计集群的容错机制,自动处理物理机故障,避免人工相应,其次总结业务通用需求,例如业务容量的动态变更来开发新的平台功能来满足。

在Docker集群方案设计中引入一些其他的系统组件,如Consul、HAProxy等,增加其系统复杂性。由于规模的扩大,出线异常状况的概率也大大增加,对此我们通过避免性能单点及设计监控集群性能来保证其稳定性。具体监控指标分为如下几类:业务容器实例监控:容器的CPU、内存、网络、磁盘;业务容器组监控:容器组内容器重启次数,容器组内健康容器比例等指标;平台层面监控:Mesos集群指标,Docker进程及附属组件状态等监控;服务器层面监控:服务器的CPU、内存、硬盘、网络等指标。具体容器平台弹性计算架构如图4所示。

6 结语

业务系统资源池的应用和开发对于电力系统而言是一个必然的趋势,其具备了有弹性资源调度的容器平台架构,能够根据业务应用需求对资源进行合理搭配利用,并能够对业务应用系统负载的变化做出反应,能够有效降低运维成本,增强电力系统业务可用性,资源池的建设逐步实现了资源管理的自动化和轻便化,不再需要IT人员进行琐碎的低端故障处理,使有限的人力资源参与到其他业务中去。

本次研究通过容器业务的封装并将其加入到资源池中,实现应用环境的封装隔离以及CPU、内存等资源限制;结合集群管理方案,能够实现资源的统一调度和动态调整。利用容器技术实现了对业务系统轻量级改造,较好的明确了微服务的技术方向。

通过本系统尚存在一些不完善的地方,比如服务器域的设计还需要进一步加强以及下一步完善存储域和业务应用入池的设计。

参考文献

[1]鲁松.计算机虚拟化技术及应用[M].北京:机械工业出版社,2008.

[2]赵华茗.基于虚拟机的高可用信息服务平台[J].现代图书情报技术,2009(12):18-24.

[3]马越,黄刚.基于Docker的应用软件虚拟化研究[J].软件,2015(3).

[4]宋可为.云计算在电信业务平台中的应用[D].北京邮电大学,2011.

[5][美]Joe Jhonston, [西]Antonio Bathelli, [英]Justin Cormack,[美]John Fiedler, [英]Milos Gajdos. Docker生产环境实践指南[M].吴佳兴,梁晓勇.译.北京:人民邮电出版社,2016.

猜你喜欢

资源整合电力系统
少先队活动与校外资源整合的实践与探索
“五育并举”下家校社资源整合的价值意义
海外并购中的人力资源整合之道
智慧高速资源整合方式实践
电力系统继电保护技术常见问题及对策
电力系统的继电保护与安全自动控制
中小学信息化教育资源整合的4.0时代初探
铁路货物运输资源整合优化研究