收藏 分销(赏)

运营商IT系统云原生部署方案研究.pdf

上传人:自信****多点 文档编号:3056173 上传时间:2024-06-14 格式:PDF 页数:6 大小:1.65MB
下载 相关 举报
运营商IT系统云原生部署方案研究.pdf_第1页
第1页 / 共6页
运营商IT系统云原生部署方案研究.pdf_第2页
第2页 / 共6页
运营商IT系统云原生部署方案研究.pdf_第3页
第3页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、2024/02/DTPT收稿日期:2023-12-301 云原生的定义及关键技术云原生应用(Cloud Native Application)是指针对云计算基础设施进行优化设计的应用,适合部署运行在现代的云计算平台上,能充分利用云平台所提供的资源和服务,是一系列云计算技术体系和管理方法的集合。云原生应用具备良好的扩展、伸缩和容错能力。云原生涉及的技术栈十分广泛,生态十分繁荣,产品也正在被广泛应用。云原生技术由云原生计算基金会(Cloud NativeComputing Foundation,CNCF)提出,有利于各组织在公有云、私有云和混合云等新型动态环境中构建和运行可弹性扩展的应用。云原生的

2、关键技术包括不可变基础设施、容器技术、微服务和无服务器(Serverless),其技术架构如图1所示。不可变基础设施指运行服务的服务器在完成部署后,不再进行更改。采用云端虚拟化基础设施作为构建基础,通过容器来打包及构建整体服务运行环境,实现容器镜像的自动化构建及版本化管理;通过持续部署系统,实现自动化部署。容器技术包括容器运行时和编排调度。运行时是容器的运行环境,体现为各种开源容器产品,比如运营商IT系统云原生部署方案研究Research on Cloud Native Deployment Scheme of Operators IT System关键词:云原生;微服务;IT系统doi:10

3、.12045/j.issn.1007-3043.2024.02.013文章编号:1007-3043(2024)02-0068-06中图分类号:TP391文献标识码:A开放科学(资源服务)标识码(OSID):摘要:云原生技术栈统一的标准化交付能力大幅提升了云端效能。云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中构建和运行可弹性扩展的应用,将重构IT运维和开发模式。云原生和微服务是软件架构的发展趋势。运营商IT系统正积极探索云原生应用,以期避免软件厂商的绑架、支持软件系统的全网统一部署、助推业务应用的创新。结合运营商IT系统上云的需求,给出了运营商IT系统云原生的目标架构、演进路径

4、和部署要点。Abstract:The unified standardized delivery capability of the cloud native technology stack has greatly improved cloud efficiency.Cloudnative technology is beneficial for organizations to build and run flexible and scalable applications in new dynamic environ-ments such as public cloud,private

5、cloud and hybrid cloud,and will reconstruct the IT operation and maintenance and develop-ment model.Cloud native and microservices are the development trend of software architecture.The operators IT system isactively exploring cloud native applications in order to avoid the kidnapping of software ma

6、nufacturers,support the unified de-ployment of software systems across the network,and boost the innovation of business applications.It presents the cloudnative target architecture,evolution path and deployment points of operator IT systems based on their cloud requirements.Keywords:Cloud native;Mic

7、roservices;IT system蒋明燕(上海邮电设计咨询研究院有限公司,上海 200092)Jiang Mingyan(Shanghai Posts&Telecommunications Designing Consulting Institute Co.,Ltd.,Shanghai 200092,China)蒋明燕运营商IT系统云原生部署方案研究数据通信Data Commuincation引用格式:蒋明燕.运营商IT系统云原生部署方案研究 J.邮电设计技术,2024(2):68-73.68邮电设计技术/2024/02最常用的Docker。编排与调度是云原生的基石,是贯彻容器到服务实例

8、的桥梁,其中Kubernetes已成为事实标准。微服务包括服务治理工具与编排调度服务。服务治理体系目前包括 MicroService 与 ServiceMesh,以及其中采用的一系列开源工具,如ZK、API网关等。Serverless构建服务形态,包括一系列产品,其中Lambda等注册平台比较成熟,开源产品则刚刚起步。这些技术可用于构建容错性好、易于管理和便于观察的松耦合系统,让应用处于待发布状态,从而解决环境一致性问题。2 云应用模型分类及云原生应用如图 2 所示,云应用模型分为 IaaS、PaaS、Serverless及SaaS。IaaS环境中,云服务提供商提供网络、存储、服务器及虚拟化,

9、开发者则负责操作系统、中间件、运行时环境、数据及应用;PaaS环境中,云服务提供商提供网络、存储、服务器、虚拟化、操作系统、中间件及运行时环境,开发者则仅需负责数据及应用;Serverless环境中,云服务提供商提供网络、存储、服务器、虚拟化、操作系统、中间件、运行时环境及数据,而开发者则仅负责应用;SaaS环境中,从网络、存储、服务器、虚拟化、操作系统、中间件、运行时环境、数据到应用均由云服务提供商提供。一般认为 IaaS型应用属于从物理机环境直接迁移到虚拟机环境的云迁移应用,其开发、部署、管理和运维方式与传统应用类似,并非真正的云原生应用。其余3类应用才是具备敏捷交付和高度自动化管理能力的

10、真正云原生应用。目前云原生应用典型的应用交付方式包括代码式交付、镜像式交付、脚本式交付和应用包交付。基于Kubernetes的PaaS平台大多支持上述4种应用交付方式。3 云原生成熟度模型云原生架构关键架构维度用SESORA表示,即服务化能力(Service)+弹性能力(Elasticity)+无服务器化程度(Serverless)+可观测性(Observability)+韧性能力(Resilience)+自动化能力(Automation)。关键指标维度和云原生架构成熟度等级分别如表1和表2所示。云原生成熟度评估包括 2 个步骤:第一,根据SESORA对6个维度分别评分并汇总;第二,根据分值分

11、段获得评分结果。对某运营商IT应用进行云原生成熟度评估后,发现其成熟度较低,具有很大演进空间。4 运营商IT系统上云需求运营商IT系统目前存在资源利用率低、运维成本高、管理复杂、部署耗时久、开发与生产运维割裂等问图1云原生技术架构图2云应用模型分类示意云服务标准Bare Metal不可变基础设施容器技术微服务编排与调度服务服务治理应用数据运行时环境中间件操作系统虚拟化服务器存储网络应用数据运行时环境中间件操作系统虚拟化服务器存储网络应用数据运行时环境中间件操作系统虚拟化服务器存储网络应用数据运行时环境中间件操作系统虚拟化服务器存储网络开发者管理服务提供商管理图例:ServerlessIaaSP

12、aaSSaaS蒋明燕运营商IT系统云原生部署方案研究数据通信Data Commuincation692024/02/DTPT题。前期采用SOA架构进行改造的效果并不理想,采用微服务化的架构方式及容器化的承载、运维模式更符合互联网化技术发展演进和企业发展趋势。云原生核心特点是应用容器化封装、编排和交付、微服务设计、研发运营一体化。云原生应用将给运营商带来应用的敏捷构建和迭代、更顺畅的多团队协作以及更高效的云资源利用。微服务是把一个单体项目拆分为多个微服务,每个微服务可以独立技术选型、独立开发、独立部署、独立运维,并且多个服务相互协调、相互配合,最终完成用户的价值。微服务架构是一种松耦合、去中心化

13、的架构模式。大部分大型网站系统如 Twitter、Netflix、Amazon 和 eBay 都已经从传统整体型架构迁移到微服务架构。为了降低开发成本、提升软件生产率,云原生和微服务已成为软件架构的发展趋势。软件部署架构从单机到分布式再到云原生,软件组件可通过API按需调用,从而实现了基础设施的自动化以及快速的软件交付。软件系统架构也经历了从单体架构到SOA再到微服务的架构演进,实现了服务的原子特性,可以更加灵活地独立开发和部署。IT系统主要包括互联网类、OLTP、OLAP、后台数据处理、大数据交互等不同应用类别,上云的技术特点也各有不同(见图3)。a)互联网业务。异构且技术栈众多,关键应用需

14、表1关键指标维度表2云原生架构成熟度等级云原生架构/成熟度级别和定义零级完全传统架构,未使用云计算或者云技术能力基础级(L1)小于等于10分发展级(L2)1016分成熟级(L3)大于等于16分指标维度服务化能力(Service)弹性能力(Elasticity)无服务器化程度(Serverless)可观测性(Observability)韧性能力(Resilience)自动化能力(Automation)L0(0分)无(单体应用)全人工扩缩容(固定容量)未采用BaaS无无无L1(1分)部分服务化&缺乏治理(自持技术,初步服务化)半闭环(监控+人工扩缩容)无状态计算委托给云(计算、网络、大数据等)性能

15、优化&错误处理(日志分析、应用级监控、APM)十分钟级切流(主备HA、集群HA、冷备容灾)基于容器的自动化(基于容器做CI/CD)L2(2分)全部服务化&有治理体系(自持技术,初步服务化)非全云方式闭环(监控+代码伸缩,百节点规模)有状态存储委托给云(数据库、文件、对象存储等)360度SLA度量(链路级Tracing、Metrics度量)分钟级切流(熔断、限流、降级、多活容灾等)具备自描述能力的自动化(提升软件交付自动化)L3(3分)Mesh化的服务体系(云技术,治理最佳实践)基于云全闭环(基于流量等多策略,万节点规模)全无服务器方式运行(Serverless/FaaS运行全部代码)用户体验持

16、续优化(用观测大数据提升业务体验)秒级切流、业务无感(Serverless、ServiceMesh等)基于AI的自动化(自动化软件交付和运维)图3各类型IT系统上云技术实现示意Tomcat on DockerTomcat on DockerOLTP业务配置Tomcat on DockerTomcat on DockerProcess账单采集Process账单处理Tomcat on DockerTomcat on DockerWeb应用Tomcat on DockerTomcat on DockerAPP应用业务配置PostgreSQLTeleDBOLAP报表统计报表统计交互层应用层数据层统一P

17、aaS平台Process账单采集Process账单处理公网内网接入层应用层数据层OracleOracleOLTP业务配置WebLogicWebLogicOLAP报表统计Web应用APP应用上云蒋明燕运营商IT系统云原生部署方案研究数据通信Data Commuincation70邮电设计技术/2024/02容器化部署,架构易水平扩展,需着重考虑业务的安全隔离问题。b)OLTP业务。需实现集群多租户共享及应用容器化部署。c)OLAP分析报表业务。数据库采用PostgreSQL数据库进行替代,支持资源动态扩缩容。d)后台数据处理。密集计算以物理机为主,数据库根据场景可以选择PostgreSQL、Te

18、leDB、时序数据库等组件。e)数据交互类。需实现应用容器化及动态伸缩。f)公共基础类。平迁到运营商云资源池的虚机或物理机上进行部署。运营商IT系统上云有两大技术目标:第一,打造敏捷IT,提升交付效率与质量;第二,实现智慧IT,提升智能弹性计算能力、智能运维能力。云原生是云服务商、互联网企业、系统集成商、通信运营商等共同定义和遵循的应用开发、交付、运营范式,是今后云计算的主流技术方向。因此运营商IT全面上云需参考和推广云原生应用。5 运营商IT系统云原生部署方案5.1 目标架构运营商 IT 系统总体向“平台+应用”架构逐步演进,采用微服务架构,能力微服务化,统一编排、高效复用。运营商IT系统云

19、原生目标架构自底向上包括基于容器的不可变基础设施层、中间件层、能力层、微服务层、应用层以及安全管理和运营监控(见图4)。5.2 演进路径云原生落地需基于业务敏捷性、健壮性逐步实施(见图5)。最初,基础设施云化为上层应用提供计算、网络、存储基础架构资源。然后,构建 PaaS 平台实现 Devops:通过容器+微服务+Devops,构建应用架构不断迭代更新的循环。最后,实现微服务治理及API运营:复杂业务分拆、松耦合,独立更新部署,管理及流程自动化,基于API实现分布式集成管理和流程自动化。5.3 部署要点为实现上述IT系统云原生目标架构,需从构建不可变基础设施、下沉中间件统一开放服务化接口、采用

20、微服务框架构建软件系统以及软件系统架构分层解耦几个方面分别考虑部署要点。5.3.1 构建基于容器的不可变基础设施不可变基础设施里的“不可变”和程序设计中的“不可变”概念类似。程序设计中的不可变变量在完成赋值后就不能再更改,只能创建新的不可变变量来整体替换旧的。由于该特性,并发环境下也可以安全地使用变量。对于基础设施的不可变性,最基本的就是指运行服务的服务器在完成部署后,就不再进行更改。在构建云原生时,要实现不可变基础设施,需从图4运营商IT系统云原生目标架构裸金属容器/裸金属虚拟机资源管理和编排开通业务能力数据能力 标签指标位置业务系统A业务系统B网络服务器容器能力不可变基础设施远程过程调用存

21、储容器编排网络管理镜像服务容器安全虚机中间件消息队列分布对象数据访问计费网络支付其他能力业务系统C事务处理Service Mesh微服务框架微服务安全管理运营监控Serverless图像语音蒋明燕运营商IT系统云原生部署方案研究数据通信Data Commuincation712024/02/DTPT以下几点着手。a)使用云基础设施作为构建基础。标准化的敏捷基础设施通过服务化的方式对外开放,并对应用用量进行统计。底层基础设施根据容器和PaaS中间件要求进行配置和扩容,硬件配置整体保持稳定、不允许修改,通过更新模板和实例实现运行环境的变更。b)通过容器技术来打包及整体构建服务运行环境。软件系统不直

22、接操作底层基础设施,而是通过业务性能指标提交具体需求,使用IaC、工具、API方式进行配置和部署。c)实现容器镜像的自动化构建及版本化管理。软件系统可根据通用模板定制镜像运行应用,对模板有更新需求时统一提交申请。所有应用通过镜像进行发布、构建,按照统一的DevOps流程自动化构建、自动化测试、自动化发布,不允许定制发布。d)通过持续部署系统,实现自动化部署。资源统一观测和管控,根据业务运行情况和应用配置自动伸缩。5.3.2 下沉中间件,统一开放服务化接口中间件处于系统软件(操作系统和网络软件)与应用软件之间,它能使应用软件进行跨网络的协同工作。中间件为应用软件提供了操作系统所提供的服务之外的服

23、务,可以将其描述为“软件胶水”。中间件能够让软件开发者方便地处理通信、输入和输出,专注在应用本身。中间件包括消息中间件、分布对象中间件、远程过程调用中间件、数据访问中间件、事务处理中间件等。a)将标准中间件下沉到云基础设施(容器、裸金属容器),成为云原生服务的一部分。b)对中间件进行服务化改造,提供标准调用规范。c)应用与中间件解耦,不感知中间件的存在,通过API服务的方式使用中间件能力。d)中间件统一运维管理,可感知应用状态,实现计算和存储能力的自动伸缩。e)引用标准镜像方式,实现虚拟机和裸金属的标准化安装,根据应用要求实现自动化部署。应用软件根据业务要求提出性能、网络、负载均衡等业务指标要

24、求,硬件评估和扩容由不可变基础设施统筹管理。5.3.3 采用微服务框架构建软件系统采用微服务框架构建软件系统需考虑微服务能力抽取、能力分层、能力构建、能力调用和能力编排等几个方面。a)微服务能力抽取。主要包括面向客户操作的逻辑控制抽取能力和面向数据存储、计算的对象操作抽取能力。在领域层(软件所关注的主题区域)以单个、场景化的能力为主抽取,微服务不能超过单一职责。b)能力分层。区分场景和业务原子化能力,构建可复用的原子化能力。复杂逻辑按照业务需求基于原子服务组合能力在应用层实现。c)能力构建。原子化能力以完成业务的最小操作为目标,需要具备幂等性(任意多次执行所产生的影响均与一次执行的影响相同);

25、事务能力需要同时提供DO/UNDO 2种,以保障事务一致性。d)能力调用。面向客户UI操作的能力要同步调用,如果异步则需要考虑调用过程可视;事务型业务能力调用要按照统一监控要求自动埋点,跟踪标识业务流程;面向后端逻辑处理的能力尽量异步,并提供失败重试机制。e)能力编排。面向能力规格、能力对象进行能力调用时要设定优先级,以便在资源紧张时优先保障重点客户的重点业务。此外,在部分业务场景,微服务还需逐步按需引入Serverless、服务网格(Service Mesh)技术。Serverless 可以细分为后端即服务(BaaS)和函数即服务(FaaS)2类。BaaS指任何第三方提供的应用和服务,可通过

26、API的形式开放不同细分领域的功能,比如提供云数据库服务的Google Firebase和Parse、提供图5云原生演进路径基于API实现分布式集成管理及流程自动化上云基础设施云化构建PaaS平台开箱即用PaaS能力实现Devops基于PaaS实现Devops微服务治理Mesh实现服务治理微服务高级管理蒋明燕运营商IT系统云原生部署方案研究数据通信Data Commuincation72邮电设计技术/2024/02统一用户身份验证服务的 Auth0 等,让用户实现“前端+BaaS”完成整体服务的构建。FaaS应用以函数的形式存在,并由第三方云平台托管运行,函数是比微服务更小更独立的运行单元。应

27、用软件开发业务逻辑,注册触发事件,通过事件触发函数逻辑并执行,后端服务通过调用下沉的中间件服务实现,资源管控由基础设施统一提供。根据需求,应用形态可选择服务形态和函数形态。作为云原生技术栈的一部分,Service Mesh指由云原生应用的服务化组件构成的一种网格,即在应用内部或者应用之间由服务访问、调用、负载均衡等服务连接关系构成的一种网络。Istio是目前Service Mesh技术的实施标准,是一个与Kubernetes紧密结合的、适用于云原生场景的、Service Mesh形态的、用于服务治理的开放平台。Istio服务治理涉及连接、安全、策略执行和可观察性。在实践中,Service Me

28、sh通常以轻量级网络代理阵列的形式实现,这些代理与应用程序代码部署在一起,应用程序无需感知代理的存在。将业务能力、数据能力等能力微服务化,可实现统一编排、高效复用。5.3.4 软件系统架构分层解耦基于分层解耦原则,软件系统采用微服务化架构建设,将业务实现与底层能力构建分离,屏蔽外部变化对业务核心服务能力的影响。软件系统根据本系统的业务特征划分领域构建原子能力,根据层次结构构建功能。每一层设计保持内聚,并且只依赖其下层,上层和下层松散耦合(各自为独立个体,通过简单引用关联)。采用微服务架构的软件系统分层包括表示层、网关层、应用层、领域层、中间件层以及基础设施层。如前文所述,中间件层和基础设施层由

29、不可变基础设施和统一开放服务化接口的下沉中间件提供。软件系统以领域层为核心构建微服务原子能力。6 云原生对运营商的意义云原生对运营商具有重大意义,具体如下。a)避免软件厂商的绑架。基于微服务的架构解耦使得软件系统从黑盒变为白盒,核心微服务自主掌控;通过定义统一的微服务交互接口,支持实现同一功能的微服务的可替换。b)支持软件系统的全网统一部署。构建集团级容器镜像库,通过软件镜像的统一下发,实现软件系统的集约管理;支持以微服务为单位的软件升级,降低系统运维压力。c)助推业务应用创新。容器和微服务可用于支持PaaS平台的能力开放,实现云服务的增值;容器和微服务有效支持持续集成和交付,加速业务上线。7

30、 结束语云原生具备快速交付、容器运行、可靠容错、灵活扩展、自动伸缩、透明通信等特点。本文分析了云原生的关键技术,对云应用进行模型分类并定义了云原生应用,给出了云原生成熟度模型及评估办法,进而结合运营商IT系统上云的需求,阐述了运营商IT系统云原生目标架构及部署要点,包括构建基于容器的不可变基础设施,实现自动化部署、动态扩缩容;下沉中间件,统一开放服务化接口;采用微服务框架构建软件系统;软件系统架构分层解耦等。运营商IT系统云原生部署便于运营商自主掌控核心微服务、构建容器镜像库、汇聚全网原子能力池,沉淀数据资产。一方面,可将云网资源及能力通过服务的方式提供给数字化平台,并支持多种服务模式和灵活的商业模式;另一方面,数字化平台可以通过云网基础设施提供的云原生开发能力,灵活构建更高层次的数字化能力并面向行业提供数字化解决方案。参考文献:1 SHARMA P.云原生和微服务 J.软件和集成电路,2020(8):50-51.2 杨海明.云原生技术推动联通集团数字化转型 J.软件和集成电路,2020(8):68-69.3 张超盟,章鑫,徐中虎,等.云原生服务网格Istio:原理、实践、架构与源码解析 M.北京:电子工业出版社,2019.4 云原生产业联盟.云原生发展白皮书 EB/OL.2023-11-02.https:/ Commuincation73

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服