侯晓东 韩思祺
中国电信内蒙古分公司信息化部 010010
摘 要:随着5G、物联网和人工智能的兴起,电信业IT支撑系统处理的数据量呈指数级增长,传统基于IOE的系统面临着高并发性能瓶颈、扩展能力不足和扩容费用昂贵等难题;此外,“棱镜门”事件爆发后,网络信息安全上升到国家高度,电信业核心系统“去IOE”的进程加速。PaaS作为一种关键的云服务,能够为开发运维人员提供高度稳定、规范和便利的基础软硬件环境,在电信业去IOE的“上云”进程中发挥着重要的作用。中国电信新一代BSS3.0系统基于PaaS平台,采用“平台+应用”全新IT架构,集合大数据、虚拟化等前沿技术,完成了对现有平台的技术升级。
关键词:PaaS 集群 分布式 云原生
0. 引言
近年来,内蒙古电信CRM、计费等系统的性能和访问量正在逐渐接近瓶颈,存储、WEB响应及数据检索等方面已经很难满足应用的要求;营销决策需要采集分析更为海量的数据;欧美国家对华的技术封锁与“斯诺登”事件等安全事件反映出一批域外IT产品普遍存在的“后门”问题,以上这些问题无不反映出现有的系统架构已经无法满足当前环境对系统的需求。
为实现电信行业数字基础设施的“去IOE”战略,升级现有系统架构,内蒙古电信采用PaaS平台与开源程序来替代现有系统架构。所谓“上云”,即将企业的IT系统从传统封闭的、垂直集成的IOE架构,转变为开放、水平分层的分布式云化架构,整体采用“平台+应用”的云化架构,基于通用的分布式PaaS技术平台,构建应用能力中心。
1. PaaS层关键技术探讨
内蒙古电信IT支撑系统上云结合了业界主流技术发展和企业自身战略,基于自主建设的统一PaaS平台实现更为弹性和敏捷的云化应用架构,更为可靠和高效集约的应用运维,更为精准和自动化的应用生命周期管理。
PaaS平台方面,使用了分布式数据库(UDAL+TeleDB)、小文件系统、分布式缓存(Ctg-Cache)、分布式消息(Ctg-MQ)等关键技术,实现了核心PaaS组件的自主可控,解决了行业数据库“去O”、小文件存取效率低、应用弹性扩展能力差等难题。

1.1分布式数据库
电信自研分布式数据库(TeleDB+UDAL)采用InnoDB数据库引擎,兼容MySQL的数据库编程架构,能够有效降低了开发难度。其中,统一数据访问层UDAL对外界提供透明读写的能力;TeleDB数据库通常采用一主两从的主备架构,提供健康检查、备份恢复、弹性扩容等功能点,适用于高I/O、高容量的数据场景。
(1)整体架构

图2 高可用数据库框架
① Keeper集群:keeper是TeleDB的调度器,根据主备同步延迟、数据库进程状态等信息决定是否进行主从切换。
② Zookeeper集群:Zookeeper是TeleDB集群信息存储和交互的中心。存储信息基本是由agent和scheduler写入,并供Keeper集群监控调用。
③ Agent:agent 用于收集底层DB 服务器的状态信息,并将相关信息写入zookeeper。当数据库出现问题是,agent无法心跳上报信息引起主从切换。
④ Keepalived:Keepalived的作用是检测服务器的状态。
⑤ Gateway:记录并监控SQL执行信息,分析SQL执行效率。
(2)功能特性
① 增强的半同步复制
数据库提交事务时,只有当备机同步事务数据并返回ACK确认给主机时,主机才向应用返回事务应答,克服了异步复制可能导致的数据丢失问题。
② 高可用自动切换功能
TeleDB具备秒级检测,分钟级切换,快速路由变更的能力,能够实现故障节点与正常节点间自动切换;由于未同步数据不会返回事务响应,因此切换过程保障主备数据完全一致,有效保证了数据安全。
③ 高性能读写
分布式数据库摒弃了MySQL传统理解模式,运用连接池技术解决了最大连接数限制问题以及过多线程带来的系统开销。

图3 连接池技术性能测试数据
1.2分布式小文件系统
分布式小文件系统,是中国电信基于开源组件HDFS、 HBase、 ZooKeeper等自主研发的分布式文件系统组件,尤其适用于海量小文件场景下HDFS处理能力不足的情况。
电信业务话单与多媒体数据文件数量多、体积小,如果直接将这些数据存入HDFS会对平台的整体造成影响。
(
图4 小文件系统架构图
① Zookeeper:分布式协调组件,在小文件系统中用于配置维护、域名服务、分布式同步、组服务等。
② HDFS:开源分布式文件系统,适用于海量大文件的存取与离线分析。
③ Hbase:基于HDFS的分布式开源列数据库,非结构化数据存取能力强。
(2)功能特性
电信集团自研小文件系统在HDFS的基础上,增加了Hbase层用于存储小文件的元数据信息。当进行写操作时,小文件先缓存到服务器本地内存中,达到HDFS文件块大小(128MB)时,再集中存入HDFS文件系统。Hbase建立了小文件与HDFS文件块之间的映射关系,客户端根据Hbase服务器反馈的HDFS文件块元数据信息,直接从HDFS的Data Node获取相应文件,再根据偏移量等信息定位到相应的小文件。
经过改进的小文件系统有效减轻了HDFS中NameNode存储元数据时带来的内存压力,和磁盘中DataNode中的分块数量,提高了文件的读取效率。
1.3云原生
云原生具备两个概念,一个是云,另一个是运行在云环境的原生系统。云与本地相对,云包含了IaaS、PaaS和SaaS三层应用分布架构。原生就是土生土长的意思,应用设计的时候就考虑到应用是运行云环境里的。[1]
云原生作为一种方法论或是一种理念,在未来发展中要向四个方面发展:容器化、持续交付、DevOps、微服务。

图5 云原生架构
(1)微服务
微服务是一种基于容器技术的软件架构设计模式,倡导将应用分割为一系列独立的服务,每个服务专注于单一的业务功能点,运行在独立的容器之中,服务之间相互隔离,并且采用HTTP协议进行通信[2]。
功能特性
相比于单机服务与其他架构,微服务架构的主要特征是组件化、松耦合、独立、去中心化。主要表现在如下几个方面:
① 服务间高内聚,低耦合,逻辑易于理解,易于大型系统的开发和维护。
② 应用可以拆分部署,便于分阶段交付和持续集成
③ 扩容便利,服务能力弹性伸缩,资源按需分配。
④ 容错性提升,单个服务因内存泄漏等原因崩溃,不会导致整个应用崩溃。
⑤ 应用开发于版本升级速度快,不需要对全量服务进行重新开发。
(2)DevOps
DevOps是Development和Operations的组合词,涵盖了软件的开发、测试和交维的全生命周期,软件开发者能够及时得到测试和交维阶段反馈的问题,并参与实际的生产环节,有效提升了软件的开发效率,降低了软件运维的工作量[3]。
功能特性
DevOps的核心原则是快速流动、快速反馈与持续学习,其主要优势表现在以下几方面:
① 可以实现应用的快速部署,简化了开发者的适配操作系统、依赖环境时繁琐程度,有效兼容底层各类异构的运行环境,开发者可以更加专注于应用逻辑的开发,提高应用开发效率。
② 提高了系统的运维的效率,PaaS平台可以带来应用底层运行环境的高一致性,运维的工作重点从基础的节点设施转移到应用软件本身。
③ 为应用提供了灰度发布的能力,在应用测试阶段,可以根据地域、工号和登录时间等信息,灵活选择一部分用户参与新版本应用的测试,并根据测试进度将新版应用的使用范围逐渐过渡到全体用户。
(3)持续交付
持续交付(Continuous delivery,缩写为 CD),是一种软件工程方法,让软件产品的产出过程在一个短周期内完成,以保证软件可以稳定、持续的保持在随时可以发布的状况。它的目标在于让软件的编译、测试与发布变得更快更频繁。这种方式可以缩小软件开发的成本与时间,缩小风险。[4]
功能特性
① 提升版本发布频率:实施持续交付的主要好处是能够加快应用程序的发布时间。在竞争激烈的行业中,速度的提高将会使你处于主要优势。
② 持续系统调优:持续不断的软件版本发布也会根据用户对应用程序的反馈,允许开发团队对其进行微调使应用带来更好的用户反馈。
③ 减低发布风险:持续交付能保证每个发行版本的风险较低。
总的来说,持续交付是采用小步快跑代替原有集中交付模式,从而更快地得到市场反馈,推动产品的商业价值的实现。在互联网应用盛行、速度为王的今天,持续交付的价值更被突显出来。
(4)容器化
容器是一种基于Linux内核的虚拟化技术,可以提供轻量的虚拟化能力,提供进程隔离能力。相较于传统虚拟机,能够降低硬件接口虚拟化带来的复杂性,降低启动多份操作系统带来的内存开销,有效平衡了宿主机资源利用效率与进程隔离之间的关系。容器技术的优势集中体现在以下四个方面:
① 轻量化:容器内可以只封装应用和必要的依赖环境,占用存储少;
② 部署快:相比虚拟机小时级的部署速度,容器部署通常数秒就可以完成;
③ 易移植:容器镜像封装好之后,可以部署于任意一台Linux主机之上;
④ 弹性伸缩:依托于Kubernetes、Swam等开源容器编排管理工具,可以根据容器利用率自动实现容器数量的扩增,提高主机资源利用率。
容器化实践
基于 Docker + Kubernetes 的容器云平台,中国电信研发的TeleDCOS提供了可扩展、高性能的容器管理服务,是一种以应用为中心的容器云产品和解决方案,涵盖轻量级容器虚拟化、微服务、DevOps、持续交付等,可以在托管的云服务器实例集群上轻松运行应用程序,最大化地帮助企业实现业务应用的快速交付与持续创新。
TeleDCOS底层以docker为基础,通过kubernetes进行分布式资源调度与协调,将底层资源进行集中管理。以应用为中心,确保各类资源随着应用的需求而动态调度,提高资源利用率、简化应用管理、提升运维效率。
2 PaaS平台的优势
内蒙古电信拥有庞大的IT基础设施,例如运营支撑系统、客户关系管理系统和办公系统等,按照云计算架构搭建私有PaaS平台,面向企业内部提供云计算服务,可以有效提高资源利用率,大大降低系统投资和运营的成本。其次,随着5G核心网的建设,配套的IT系统需要在短时间内完成建设,PaaS平台组件高度规范化的Open API,基于容器化的部署方式,以及应用容器的集中管理、统一监控的特性,提高了开发和运维的效率,助力加速了5G SA等一批项目的火速上线。此外,PaaS平台的优势还体现在如下方面:
2.1 优化的开发流程
在PaaS模式下采用了全新的开发流程,PaaS平台虚拟化与自动化的应用,大大优化了程序版本的发布过程。相较于原有的开发流程,PaaS平台为其带来了更多的优势:
① 版本发布变更范围缩小:每次发布包含的变化少。频繁部署使每一次变更的内容范围缩小,因此每次部署不会对生产系统造成巨大影响,应用程序会以平滑的速率逐渐生长。
② 部署自动化:强大的部署自动化手段确保部署任务的可重复性、缩小部署出错的可能性。
③ 发布时间缩短:PaaS模式下将上线时间缩小了50%,尤其可以应用程序在线“热发布”。
④ 弹性扩缩容:软件系统的运行状态更加稳定、安全,并且变更是可审查的。
⑤ 代码拆分:基于PaaS模式下的版本发布,它允许将较大的代码库分解为较小的、可管理的模块。
2.2 高负载性
PaaS平台应用部署采用虚拟化技术进行部署,全新的Docker容器技术缩小了程序部署的复杂度,同时容器部署对硬件资源的需求极少,所以在同等条件下部署应用,应用所反馈的响应时间更短。运用容器部署应用可以极大地提高应用的负载能力,应用的部署可以随时跟随需求量的大小进行快速扩缩容,减轻因应用压力而导致的应用访问缓慢。
容器部署具备松散耦合、分布式、弹性、自由的特点:应用程序被分解成更小的、独立的部分,可以动态部署和管理,而不是运行在一台大型单用途机器上的单一堆栈,使应用之间的调用更为灵活,高效。
2.3 版本无感知切换
全新的PaaS平台采用灰度发布概念,做到版本无感知升级。灰度发布使一种能够平滑过渡的发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,当用户对B没有什么反对意见,逐步扩大范围,把所有用户都迁移到B上面来。
灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。采用灰度进行版本发布与升级可以降低发布风险,缩小影响范围,更方便出问题时的版本回滚。对于灰度发布采用Nginx控制缩小了对业务的入侵性,使灰度发布和正式上线都非常方便。
2.4 高可用能力强
相较传统的烟囱式架构,PaaS架构具备更好的高可用性解决方案与更好的处理能力。传统模式下,各应用与各组件见存在巨大的壁垒,使各系统间的沟通非常的繁琐与复杂,原有的系统架构高可用性差,无论是主机方面或是应用程序的高可用性都处在一个较低的水平。
PaaS平台的部署采用虚拟化、集群方式部署,大大提高了应用与系统的整体容灾能力。采用容器化部署,可以使应用分布于不同的主机之下,保证应用随时具有可用的应用容器。与此同时,平台层面采用了分布式集群的方式部署,增加了冗余主机,同时采用LVS高可用机制保证了平台稳定高效的运行。
2.5 经济成本低
对于一个企业来讲,经济成本与效率是更着重考虑的方面,PaaS平台采用更为廉价的X86主机结合虚拟化技术,在很大程度上降低了系统部署成本。虚拟化的应用杜绝了硬件资源的浪费,可以更为有效的利用资源。虚拟化的运用可以使很多不依赖硬件资源的系统进行容器化部署,这样可以在很大程度上节省硬件资源的使用,相较于大型机、小型机昂贵的购买与维护费用X86主机具有更为廉价的成本。
随着国产技术的不断提升,未来X86主机将更加稳定,并且随着技术本土化成本也会更加低廉。PaaS运用集群模式与虚拟化达到与大型机、小型机同样稳定的效果与计算能力,同时在一些方面也超越了大型机与小型机。PaaS平台以其廉价高效的性能将越来越受到大型企业和系统的青睐。
3 内蒙古BSS3.0系统基于PaaS平台的实践
3.1 实践
内蒙古电信积极响应集团部署智慧BSS3.0的战略,于2018年组建PaaS平台小组,赴各地学习PaaS平台知识,组织每次学习后的小组讨论,消化知识,整理知识树,保证在平台部署前具备扎实的平台知识。
2019年,进入内蒙古BSS3.0系统部署的关键年,PaaS小组积极参与硬件设备的需求整理与订购。同时确定平台架构的合理性,在设备到货后根据架构规划主机硬件与分布,做到同组件主机不同柜,使系统在物理层面具备最大的高可用性。根据规划方案,PaaS小组在运维社区下载最新版本自行部署PaaS平台组件,积累了宝贵的平台部署经验。部署完成后配合业务完成应用对接、调优、压力测试、破坏性测试等上线准备工作,为BBS3.0平台顺利割接打下了坚实的基础。在BSS3.0上线期间7×24实时现场保障,完成了BSS3.0的顺利割接。
3.2带来变化
随着新一代基于PaaS平台的BSS3.0稳定上线运行,为内蒙古电信带来了一次里程碑式的变革。新一代BSS 3.0采用“平台+应用”模式,构建云化架构、能力中心化的智慧BSS系统。新一代BSS3.0将依托大数据注智,实现为客户经营赋能,为渠道管理赋能,为一线和客户体验提升赋能,更将大幅提升市场运营效率,突破业务发展瓶颈。3.0平台的上线使内蒙古电信实现了BSS的3.0智慧化转型,同时为内蒙古电信带来了全云化架构、能力中心化、智慧营销、智慧运维等诸多好处。
(1)业务能力更强
伴随BSS3.0平台的上线,内蒙古电信依托良好的前端交互和后端快速运算,使门店坐席的效率提升300%;在厅店业务受理方面,借助BSS3.0的预受理功能,包括清晰分类的一键甩单功能,有些用户不需要到坐席就可以处理完,复杂业务的处理也能够缩短到20分钟以内。
借助3.0大数据平台,通过数据的精准分析,帮助客服人员完成业务的提升。数据显示,借助BSS3.0的智能化,内蒙古电信10000客服人员电信平均通话时长比原来缩短了40-50秒,转单率降低1分钟左右,客户满意度提升了0.4%。不仅如此,伴随着上线,计费性能提升了10倍,账务实时预处理能力提升2.5倍。智能化改变了原有的工作方式,改变了洞察客户的方式,改变了服务客户的方式,改变了客户的体验。
(2)经济收益提高
BSS3.0依托PaaS平台部署,为内蒙古电信带来了全新的运营模式,完成了智慧营销的部署,精准营销提升了内蒙古客服的营销能力,能够根据用户的需要推荐更为适合的营业套餐。智慧平台的推出大大提升了客户的满意度,牢固了客户粘性,为内蒙古电信业务营收带来了保障。同时,相较于以前IOE传统部署架构,新平台架构采用更为廉价的X86主机,虚拟化技术的应用节省了不少主机资源,采用开源系统节省了大量的系统维护成本。基于PaaS平台的3.0平台,不仅在业务上带来收益,还在平台运维方面节约30%左右的资金。全新的平台将助力内蒙古电信焕发新的生命。
(3)培养精英团队
新平台的部署为内蒙古电信培养出了一批精于新平台的技术人员,增加了内蒙古电信的人才储备。同时BSS3.0平台的割接锤炼了各团队的意志,凝聚了各团队。新平台的上线不仅使个人的能力与知识得到提升,还考验着个人综合能力与协调能力,组件的成功部署成功的为内蒙古电信培养出一批业务能手与平台技术人才。为内蒙古电信后续科技上新与发展奠定了基础。随着未来科技的不断进步与发展,人才的储备至关重要,伴随人才队伍的不断壮大,内蒙古电信的竞争力将与日俱增。
4 结束语
内蒙古电信目前正在推进存量IT系统的“上云”进度,例如企业OA办公系统、OSS系统等。依托于本省电信PaaS平台提供的分布式数据库、缓存、文件系统等组件的API,有效提高了应用的开发和运维效率,降低了IT系统的投资成本。此外,基于具有自主知识产权PaaS平台的IT系统能够有效推动国内厂商在主机、数据库、中间件等领域的发展,建立中国自主的IT产业链,对于网络和信息安全也具有重要意义。
参考文献:
[1] 朱建军, 方琰崴. 面向服务的5G云原生核心网及关键技术研究[J]. 数字通信世界, 2018, 000(002):111.
[2] 王磊. 微服务架构与实践[M]. 电子工业出版社, 2016.
[3] 梁奂, 陈春华, 姚文胜. 电信DevOps探索与实践[J]. 广东通信技术, 2019, 039(001):36-40.
[4] 张文林. 持续交付及其在大型项目中的应用[J]. 软件导刊, 2017, 16(010):159-161.
[5] 樊伟钰, 朱晓民. 一种PaaS系统的数据监控平台的设计方案[J]. 电信工程技术与标准化, 2013(11):80-84.
作者简介
侯晓东(1979-),男,硕士研究生,主要研究方向:云计算专业,主要从事PaaS平台的建设运营工作




