改革开放以来,我国能源电力取得了举世瞩目的发展成就,发电装机、用电量、电网规模均位列世界***。如何响应国家号召,加强供给侧结构性改革,增强持续增长动力,以提高供给体系的结构和效率,是电力行业的当务之急。作为国家电网公司全资的黑龙江省电力公司(以下简称:黑龙江电力),在负责建设、运行维护省电网及保障全区安全可靠供电任务的同时,积极拥抱云计算技术,通过技术创新实现自身的战略使命成为了当务之急。
作为国家经济命脉,电力系统任何中断都会造成巨大的社会和经济影响。因此国家电网实时监控着各个省电力公司的业务系统运行情况。这对原本主要依靠专有硬件设备堆砌来解决系统可靠性的省电力系统向灵活敏捷的云化转型,提出巨大挑战。
经过审慎的评估、选型,黑龙江电力与在OpenStack领域拥有丰富中大规模企业级实践经验及技术实力的EasyStack合作建起首期即超过200节点的电力云计算平台,率先在电力行业走出核心业务拥抱云计算的***步!目前,包括营销、财务管控、电能量现代化应用、移动作业管理、全国电力市场技术支撑、电网GIS等业务生产系统均已在黑龙江电力云平台顺利上线,同期上线的还包括大数据分析、数据交换等数据处理系统。整个云平台计划达到700台物理节点,成为电力系统内***、示范性云平台系统。
黑龙江电力云平台初期设备规划
考虑到整个云平台的设计规模将达到700台物理服务器,同时所承载的是电力行业核心生产系统,云平台的可靠性和可用性要求成为首要设计指标,针对这一现状,黑龙江电力公司与EasyStack一道对整个云平台的总体架构进行了充分探讨,对影响整个平台可靠性的关键组件提出了针对性设计与优化方案。
黑龙江电力云平台网络架构示意图
具备OpenStack控制平面高可用与高性能的云管理平台
整个OpenStack云平台的高可用主要依赖控制平面的高可用,设计难点在于如何平衡关键服务可靠性与平台可扩展性之间的矛盾,同时从计算、网络、存储等模块优化OpenStack平台消息机制,经过优化后,平台组件间的冗余消息大幅减少,消息转发效率大幅提升,为承载千台规模计算节点打下了基础。
电力行业需要稳定可靠的IT系统。在黑龙江电力云平台方案中,通过使用集群/主备/负载均衡等HA方式,对MySQL/Message Queue/API服务/Web访问等服务配置起全方位高可用方案。
通过HA以及云平台的高可靠设计等方案的实施使之区别并领先于其它OpenStack发行版,可用于承载核心业务的中大规模云计算环境,轻松应对电力系统传统与创新的业务挑战。
深入优化计算、存储以及网络性能,从KVM、OVS、Ceph等***层技术开始源代码级优化,最终提供接近物理硬件能力的计算、存储和网络性能,为黑龙江电力各个核心业务系统提供了高性能、可靠的服务平台。
计算虚拟化
采用传统的单台物理服务器部署单台OS的方式,单台物理机也只能部署一套应用,这样就会造成部分业务系统的资源压力利用率不足或者资源压力过大。如果一台物理机机故障或宕机也会造成业务无法迁移,SLA能力下降,对业务连续性产生重大影响。
通过实施OpenStack云计算,可以按照黑龙江电力各个业务所需的计算能力的规模,将各个业务部署到合适的物理中,有效整合物理机资源,提高资源利用率。通过每个VM隔离应用,保证单个VM的资源需求得到满足。在单台物理机故障或宕机的情况下,将业务系统按计划迁移到其他物理机或者尽快在其他物理机恢复,保证SLA,降低业务连续性风险。通过与黑龙江各个业务系统应用软件集群相结合,实现整个业务系统的高可靠性、高连续性、快速扩展性。
此次实施采用的基础架构中的服务器为黑龙江电力原有的联想、曙光、戴尔、华为等数百台不同型号与采购周期的物理服务器,尚未专门采购过新的服务器设备。部署在这些X86的操作系统为开源的Linux操作系统软件Centos6.5,计算虚拟化软件为Linux平台下广泛使用、性能优异、稳定可靠的KVM,同样为开源软件。
在黑龙江电力云平台方案中,使用OpenStack,Centos,KVM这样的开源软件可以避免厂商锁定,对几乎所有的x86服务器均开放,同时对MySQL,Oracle,Weblogic等数据库和中间件应用服务器也能开放性的支撑,达到自主、可控的目的,同时降低软硬件的CAPEX(资本支出)和OPEX(运营支出)。
分布式存储Ceph
在OpenStack中,Cinder组件可以支持管理多种后端存储,包括传统的商业存储,如EMC,HP,IBM等存储产品。但黑龙江电力如使用上述商业存储产品存在以下诸多问题:
1 商业存储产品采购周期长,成本高,维护贵
2 需要同时采购配套的SAN交换机,光纤线,机柜,配套电力、空调等基础设施
3 需要服务器同时采购HBA卡,不同厂商服务器采购时需要考虑HBA卡的兼容性,每台服务器系统还需要安装相应的HBA卡驱动
4 部署前需要重新布置光纤线缆
5 与存储厂商配合划Zone、联调测试等耗时费力、成本高
鉴于以上原因,同时考虑黑龙江电力业务系统对性能和可靠性,扩展性的要求以及目前设备环境现状(尽量避免由于实施需要采购新设备、增加部署工作量、延长云平台方案实施周期等,只要对目前设备环境做少许变更即可实施),黑龙江电力采用利用开源技术实现的分布式存储Ceph,并使用Cinder可以使用Ceph作为后端存储。Ceph主要特点:
1 统一存储,提供对象存储,块存储及文件系统
2 无任何单点故障
3 数据多份冗余
4 存储容量可扩展
5 自动容错及故障自愈。
6 支持快照、备份、恢复,支持QEMU及Libvirt虚拟化
Ceph底层是RADOS(可靠、自动、分布式对象存储)。RADOS分发策略依赖CRUSH(基于可扩展哈希算法的可控复制)算法。该算法负责数据对象实际分布与数据恢复,处理比如数据和负载分布、性能***化,当存储设备发生故障、添加或移除存储设备时,最小化迁移数据来恢复来恢复故障,有效减少热点盘对Ceph集群性能的影响。
黑龙江电力在实际部署时,每台机器的SATA盘和SSD盘数量不同,将两块SSD做成RAID1,保证主机系统的可靠性和性能。每台机器剩余的SSD和SATA分别作为SSD极速、HDD高容量两个资源池的OSD。两个资源池的数据副本均设置为3份。SSD极速资源池为将随机性访问较多、单次访问数据块较小,响应时间要求短的业务提供数据服务。HDD高容量为连续访问较多、单次访问数据块较大,响应时间要求不高的业务提供数据服务。
部署了基于Ceph的分布式高性能存储方案,极大的提高了云主机的IO性能,足以应对各种苛刻的企业应用需求。黑龙江电力云平台现状可以在10秒内完成一台云主机的创建;支持实时快照,对1T硬盘的快照的操作耗时不超过2秒。
由于数据量增长迅猛,黑龙江电力在方案部署期间进行了多次存储扩容, 在扩容过程中 ,由于数据量较大, 为保证不影响已上线业务的正常运行, 通过降低Ceph rebalance优先级的方式, 在不影响业务的情况下, 实现了存储的在线扩容,这也证明了Ceph的良好的性能、可靠性、可扩展性。
网络虚拟化
OpenStack中的网络虚拟化服务由Neutron提供。基于可插拔的架构,Neutron提供租户隔离的从二层到七层的虚拟网络服务。Neutron目前实现了FLAT(根据Mac地址转发)、VLAN(根据VLAN和Mac地址转发)、GRE(overlay技术,在三层网络上封装三层数据包)、VxLAN(overlay技术,在三层网络上封装二层数据帧)四种网络拓扑和多种Mechenism Driver,比如OpenVSwitch,Linuxbridge。
黑龙江电力原来生产系统使用VLAN隔离各个业务系统,要求网络转发延迟低。VLAN对比GRE和VxLAN实现简单,同时不用多次封装、解封装数据包,延迟低,性能好。OpenVSwitch对比Linuxbridge,可以通过编程扩展让大型网络的管理自动化,同时支持多种标准协议,比如NetFlow,Lacp,802.1ag等。
为了满足业务对网络性能和扩展性,可靠性的需求,此次虚机网络没有通过L3 router转发, 而是直接连接至对应VLAN网关,来保证用户实际的使用性能与感受。最终方案通过使用VLAN+OpenVSwitch方式配置网络,合理分配不同网络平面的流量。
黑龙江电力云平台网络逻辑示意图
其中:
通信网——用于云内部虚拟机间通信;
业务网——用于虚拟机提供外部业务访问;
存储网——用于Ceph集群间数据拷贝;
部署网——用于物理主机云环境部署;
管理网——用于OpenStack与被管理主机间通信;
通过多个网络节点,实现公网的负载均衡及HA,高性能和高可用, 网络节点使用Router级别的Active/Standby方式实现HA,使用独立的网络路由监控服务确保网络HA的稳定性。
按照网络规划,在交换机上设置VLAN以对应不同网络平面。生产,存储网络通过高性能的万兆网卡传输。
OpenStack云环境运维
大规模集群的部署涉及到资产管理的问题,黑龙江电力方案中所有物理机机器均已登记在册,并在机架的固定位置标号。EasyStack安装工具Roller为指定固定IP地址,保证新集群部署完毕之后与现有资产表保持完全一致。后期运维同样可以使用Roller灵活扩展集群规模。
通过运用Python脚本,黑龙江电力云平台实现了公司内部IM平台(合创圈)的自动化部署,运维人员仅需发送文字,即可实现交互完成部署。此外,方案中还运用了自动运维、巡检脚本, 来定期设置与执行运维任务。
OpenStack云计算监控——业务连续性的保障
黑龙江电力方案中还集成了Zabbix监控, 配置了OpenStack相关监控项。一旦物理机、OpenStack服务、或Ceph集群出现异常, Zabbix均能监控到并自动报警. 将报警信息以短信、微信的形式发送到相关运维人员的手机上。通过与EasyStack 的Zabbix监控集成,实现现场大屏幕、指示灯,及自动化短信发送。
为集群定制监控项目,通过直观的Web Dashboard,查看集群各项指标的当前及历史运行状态。设置异常告警阈值,即时通知管理员,修复异常状况。通过各项数据的规律提前判断是否需要扩容等。
OpenStack安全
黑龙江电力对OpenStack安全是主要从权限管理(Keystone)和网络(Neutron)安全管理来控制对云平台安全的保证。实现对OpenStack各个组件之间的API调用进行身份识别;通过用户(User),租户或项目(Tenant、Project),角色(Role)控制服务消费者对各个服务资源的访问权限。
此外,黑龙江电力还运用OpenStack实现三层分级账户权限管理, 为不同权限级别的用户呈现不同的导航界面,Admin云管理员管理整个OpenStack集群,每个业务项目组拥有自己的账户,来部署自己的虚机与修改。
结语:电力+互联网 拥抱云计算正当时
目前,黑龙江电力云计算平台共计部署物理主机272台,完成营销系统、财务管控、PMS2.0、电力交易、GIS平台等80%系统迁移。营销系统已连续运行13个月,运行效率提升近30%,100%业务系统完成入云。
其中,营销月结时计算时长从原12小时缩短到72分钟,效率提升900%; 营销系统合帐报表耗时从原1小时47分钟缩短到4分钟效率提升2575%;高峰页面访问响应时长由6-8秒缩短至1-2秒,效率提升300%。
黑龙江电力云平台系统迁移前后测试对比表
借电力云平台的搭建,黑龙江电力还完成了Hadoop平台搭建,实现离线数据分析;以在线统一日志分析平台(基于SPARK)实现对服务器、网络设备、安全设备、数据库、系统中间件、权限管理系统、端设备的日志收集,对即时通讯系统信息分析。
黑龙江电力信通公司副总经理赵威表示,“本次国家电网黑龙江公司的OpenStack云平台,实现了计算、存储、网络资源彻底的云化,并将全部业务系统迁移到云计算平台中,在1年的运营过程中,不仅稳定可靠,更大幅提升了运行效率。我们还将在此基础上开展运维自动化相关工具的研究,并实现与大数据平台相结合。该OpenStack云平台将为黑龙江电力进一步实现业务创新提供稳定灵活、自主可控的基础架构支撑。”
“十三五”期间,在云计算、大数据等相关技术的推动下,各行各业都在谋求变化,试图构建新的产业格局,占据产业发展的制高点的时机,而黑龙江电力敢为天下先,以创新的态度与稳健的方式将电力核心业务系统与OpenStack云平台+互联网的结合,将会在电力系统中投映出更加璀璨的未来。