云原生实践技术白皮书Word文档下载推荐.docx

上传人:b****6 文档编号:17208931 上传时间:2022-11-28 格式:DOCX 页数:19 大小:563.94KB
下载 相关 举报
云原生实践技术白皮书Word文档下载推荐.docx_第1页
第1页 / 共19页
云原生实践技术白皮书Word文档下载推荐.docx_第2页
第2页 / 共19页
云原生实践技术白皮书Word文档下载推荐.docx_第3页
第3页 / 共19页
云原生实践技术白皮书Word文档下载推荐.docx_第4页
第4页 / 共19页
云原生实践技术白皮书Word文档下载推荐.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

云原生实践技术白皮书Word文档下载推荐.docx

《云原生实践技术白皮书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《云原生实践技术白皮书Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。

云原生实践技术白皮书Word文档下载推荐.docx

云原生是一系列云计算技术体系和企业管理方法的集合,既包含了实现应用云原生化的方法论,也包含了落地实践的关键技术。

云原生应用利用容器、服务网格、微服务、不可变基础设施和声明式API等代表性技术,来构建容错性好、易于管理和便于观察的松耦合系统,结合可靠的自动化手段可对系统做出频繁、可预测的重大变更,让应用随时处于待发布状态,云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用,借助平台的全面自动化能力,跨多云构建微服务,持续交付部署业务生产系统。

快速响应市场需求已经成为企业竞争的决胜因素,持续交付使开发人员可以在短时间存在的特性分支上工作,定期向主干合并,同时始终让主干保持可发布状态,能做到在正常工作时段里按需进行一键式发布,提升开发的效率。

但是复杂传统应用的单体架构模式在代码维护与集成编译方面困难重重,难以做到持续交付。

微服务架构的引入使复杂应用的持续交付成为可能,服务拆分可以是多个业务团队并行开发的基础,微服务把同一个小业务的人员汇聚在一起,进一步加速了开发效率。

在部署方面,虚拟机分钟级的弹性不再满足快速扩缩容的需求,更加轻量级的容器技术成为微服务部署的最佳载体。

容器技术很好的

1引自CNCF对云原生的定义

2

解决了应用移植过程的环境一致性问题,使微服务实现快速弹性的部署。

敏捷开发带来应用的快速迭代,同时也增加了版本发布的风险与业务运维的复杂度。

DevOps理念提倡开发、测试、运维之间的高度协同,从而在完成高频率部署的同时,提高生产环境的可靠性、稳定性、弹性以及安全性,这在很大程度上消除了频繁发布的风险。

图1:

基础架构,交付和应用之间的关系图

(三)我国云原⽣产业现状

云原生理念在我国经过几年的推广普及,已经逐步为企业接受,云原生产业已步入快速发展期。

过去两年,容器技术的应用持续深化,以容器及其编排技术为核心的生态,逐渐扩展至涵盖微服务、DevOps、服务监测分析、应用管理的完整闭环。

3

图2:

云计算容器技术采纳率2

华为云、阿里云、腾讯云等巨头云服务商以强大的综合云服务能力推动着云原生技术的发展变革,细分生态领域的企业级产品服务也不断涌现,提供更加聚焦的精细化服务。

在过去几年中国企业的开源社区贡献率持续增长,不断有新的开源项目反哺社区,已成为国际开源社区的重要力量。

二、云原生架构的关键技术

(⼀)云原⽣架构的关键技术

1.容器技术

容器是一种轻量级的虚拟化技术,能够在单一主机上提供多个隔离的操作系统环境3,通过一系列的namespace进行进程隔离,每个容器都有唯一的可写文件系统和资源配额。

容器技术分为运行时和编排两层,运行时负责容器的计算、存储、网络等,编排层负责容器集群的调度、服务发现和资源管理。

2数据来源:

《中国私有云发展调查报告(2018年)》

3定义引自《中国云计算开源产业发展白皮书第二部分:

基于容器技术的产业》

4

容器服务提供高性能可伸缩的容器应用管理服务,容器化应用的生命周期管理可以提供多种应用发布方式。

容器服务简化了容器管理集群的搭建工作,整合了调度、配置、存储、网络等,打造云端最佳容器运行环境。

使用容器技术,用户可以将微服务及其所需的所有配置、依赖关系和环境变量打包成容器镜像,轻松移植到全新的服务器节点上,而无需重新配置环境,这使得容器成为部署单个微服务的最理想工具。

2.微服务

微服务是指将大型复杂软件应用拆分成多个简单应用,每个简单应用描述着一个小业务,系统中的各个简单应用可被独立部署。

4各个微服务之间是松耦合的,可以独立地对每个服务进行升级、部署、扩展和重新启动等流程,从而实现频繁更新而不会对最终用户产生任何影响。

相比传统的单体架构,微服务架构具有降低系统复杂度、独立部署、独立扩展、跨语言编程等特点。

与此同时,架构的灵活、开发的敏捷同时带来了运维的挑战。

微服务框架作为微服务开发和运行治理的必要支撑,帮助实现微服务注册、发现、治理等能力,目前,在微服务技术架构实践中主要有侵入式架构和非侵入式架构两种实现形式。

侵入式架构是指服务框架嵌入程序代码,实现类的继承,其中以SpringCloud最为常见。

非侵入式架构则是以代理的形式,与应用程序部署在一起,接管应用程序的

4定义引自《云计算发展白皮书2018年》第二章-云计算发展特点

5

网络且对其透明,以服务网格为代表。

在中国信息通信研究院制定的

《分布式应用架构技术要求第一部分:

微服务平台》中也对这两种架构进行了详细的描述,并提出了相应的技术要求。

➢SpringCloud

SpringCloud是一系列框架的有序集合。

它利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务注册发现、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用SpringBoot的开发风格做到一键启动和部署。

SpringCloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

➢ServiceMesh

ServiceMesh处理服务间请求/响应的可靠传递,并可用于服务治理、遗留系统的零侵入接入以及异构框架开发的微服务。

Service

Mesh作为服务间通信的基础设施层,是应用程序间通讯的中间层,实现了轻量级网络代理,对应用程序透明,解耦了应用程序的重试/超时、监控、追踪和服务发现。

ServiceMesh的开源软件包括Istio、

Linkderd、Envoy、SOFAMesh、DubboMesh等。

3.DevOps

6

DevOps是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

它的出现是由于软件行业日益清晰地认识到:

为了按时交付软件产品和服务,开发和运营工作必须紧密合作。

DevOps旨在统一软件开发和软件操作,与业务目标紧密结合,在软件构建、集成、测试、发布到部署和基础设施管理中大力提倡自动化和监控。

DevOps的目标是缩短开发周期,增加部署频率,更可靠的发布。

用户可通过完整的工具链,深度集成代码仓库、制品仓库、项目管理、自动化测试等类别中的主流工具,实现零成本迁移,快速实践DevOps。

DevOps帮助开发者和运维人员打造了一个全新空间,构建了一种通过持续交付实践去优化资源和扩展应用程序的新方式。

DevOps和云原生架构的结合能够实现精益产品开发流程,适应快速变化的市场,更好的服务企业的商业目的。

图3:

DevOps与传统瀑布式开发、敏捷开发的开发周期对比

5引自《研发运营一体化(DevOps)能力成熟度模型》标准中对DevOps的定义。

7

(⼆)云原⽣架构的典型技术特征

云原生架构具有如下典型技术特征:

采用轻量级的容器。

云原生应用程序是打包为轻量级容器的独立

自治服务的集合。

与虚拟机相比容器可以实现更加快速的扩展,优化

基础架构资源的利用率。

设计为松散耦合的微服务。

属于同一业务的服务通过微服务框架相互发现,它们可作为独立的服务而存在,并利用弹性基础架构和应用架构进行高效扩展。

通过API进行交互协作。

云原生服务使用轻量级API进行交互,比如基于RESTFul、gRPC或NATS等协议。

使用最佳语言和框架开发。

云原生应用的每项服务可以使用最适合该功能的语言和框架开发。

云原生应用程序是多语言的;

服务使用各种语言、运行时和框架。

开发微服务的细粒度方法使各个服务能够为特定功能选择最佳语言和框架。

通过DevOps流程进行管理。

云原生应用的每项服务都有一个独立的生命周期,通过敏捷的DevOps流程进行管理。

多个持续集成/持续部署流水线可以协同工作以部署和管理云原生应用程序。

(三)云原⽣应用的优势

云原生应用可充分利用云平台服务优势。

云原生应用可以快速构建并部署到平台上,平台提供了简单快捷的扩展能力并与硬件解耦,

8

提供了更大的灵活性、弹性和跨云环境的可移植性。

云原生将云计算作为竞争优势,原生云意味着将云目标从IT成本节约转向业务增长引擎。

云原生应用使团队专注于弹性设计。

在传统的旧基础设施故障时,服务是可能会受到影响的。

在一个云原生的世界中,团队特别关注于为弹性和高可用进行架构设计。

云原生焦点帮助开发人员和架构师设计不受环境中故障影响的在线系统,快速弹性的重建和保持系统可用。

云原生应用具备多云间扩展的灵活性。

公有云的厂商绑定现象一直为人诟病,但是使用支持云原生技术的云平台,企业可以将构建在任何(公有或私有)云上的应用快速迁移,兼具不同云服务商的优势服务能力无需担心锁定。

表1:

云原生应用与传统应用的对比

9

三、云原生技术的典型应用场景

云原生技术涵盖的范围非常广泛,针对不同的应用场景,云原生解决的关键问题以及对应的技术栈选择都各不相同。

人工智能、区块链等新兴技术领域对使用者的能力要求较高,复杂的服务依赖配置使的这些技术难以赢得更多受众。

云原生技术在这些场景的应用很大程度上降低了技术的使用门槛,为新兴技术的快速普适推广铺平了道路。

同时,在互联网+和新商业业态的冲击下,传统行业正处于技术架构转型的十字路口,天然基于云服务的云原生模式无疑能给出重要参考意义。

如何落地云原生技术正逐步成为行业用户的焦点。

(⼀)深度学习应用场景

深度学习领域需要处理的三个核心问题是性能、效率和成本。

利用云原生技术,形成以容器服务为核心,以云原生技术作为基础架构的深度学习解决方案,无缝的整合了云的计算、存储、负载均衡等服务,同时贯穿了深度学习的全生命周期。

深度学习本质上是一个实验科学,需要不断地组合和尝试不同的算法和类库。

深度学习软件版本迭代非常快速,新算法层出不穷。

TensorFlow、PyTorch等深度学习框架和各种新算法,公有云平台如何帮助用户快速搭建并投入实验研究,是用户首要的关注点。

深度学习需要海量的计算力,但是GPU资源昂贵,更低成本的共享资源的高效利用方式是场景普适的瓶颈。

对于一个深度学习的试验周期,可以

10

分为四个部分:

准备数据、模型开发、模型训练阶段和模型推理。

每个阶段有不同的工作任务,用户便捷的的使用深度学习平台,以便灵活的处理阶段性任务也是重要考量。

借助云原生技术,上述问题在很大程度上得以解决。

图4:

云原生深度学习方案的基础架构模型

容器化封装深度学习框架,繁琐的配置文件、依赖关系统一打包,实现框架部署的环境一致,极大提升了应用的可移植性,方便用户快速构建实验环境;

服务目录的形式提供多种板卡驱动,能大幅降低GPU资源驱动的问题。

不同GPU卡的驱动程序各不相同,新分配资源的驱动安装复杂易错,非常影响用户使用的体验,将驱动程序以服务方式提供,实现一键配置,降低使用门槛,增强使用体验;

GPU多机多卡的高效调度,极大降低了深度学习的成本,提升效率,将深度学习平台的普适性大大拓展。

以Kubernetes为核心,通过

11

DevicePlugin和SchedulerExtender机制整合GPU板卡,实现按显存或按卡的调度方式,提升系统利用率。

(⼆)区块链应用场景

在企业级的分布式环境以及云环境部署配置部署区块链并非易事,这涉及到区块链相关工具的配置和调用、区块链网络拓扑的设计、证书和密钥的安全分发、组件和服务的高可用性、业务处理能力的弹性扩展、数据的持久化等方面的考虑和设计,需要开发者对区块链相关技术有深入的了解,需要专业和完善的企业基础架构和资源服务的支撑。

此外,区块链的配置和部署过程涉及到大量的配置对象,过程繁琐且互相关联,出错概率很高,需要频繁地进行端到端测试才能确保区块链的正确配置和部署,耗费的时间数以小时甚至数以天计。

在这种情况下,开发者无法聚焦于区块链上层应用的开发和业务创新的思考上,极大影响了应用和解决方案的快速迭代、快速上线。

区块链业务创新面临巨大的挑战,主要包括需要对区块链底层技术有较深了解,配置部署技术复杂度高、耗时长;

二次开发技术难度大,相关平台技术学习曲线陡峭,延缓迭代速度;

区块链所需的基础资源和服务选型繁多,整合难度大,投入和质量难以把控;

部署平台和环境安全保障薄弱,缺乏企业级安全管控和风险预防能力;

服务质量难以达到生产级别要求,运维流程和手段不成熟、不统一。

12

图5:

区块链场景下的云原生架构图

云原生容器区块链解决方案核心思想在于使用容器封装区块链节点,通过容器集群实现区块链网络的编排、创建、运维和资源管理。

其具体优势表现在以下几个方面:

容器技术提供标准化的软件打包、分发的能力,保证了运行环境的一致性,与底层环境解耦。

这使得企业得以在各种异构、混合云环境实现低成本、高效的区块链系统部署。

依托编排调度工具为区块链实现统一的资源管理和调度。

区块链系统底层依赖包括计算、存储、网络、负载均衡、域名解析、加密硬件等各种资源,云原生强大的编排调度功能极大降低了系统设计和运维流程的复杂度。

还可以借助编排调度工具来充分利用底层的可信计算能力,如IntelSGX,保障秘钥签发和验证等关键信息不被篡改、窃取。

13

HelmChart将应用部署化繁为简。

区块链网络的拓扑、节点类型、创建流程、服务依赖性均非常复杂,而以HelmChart为代表的应用编排技术可以实现将相关的设计、部署的最佳实践集成到编排模板中,降低企业应用区块链的技术门槛,以标准化的方式实现了区块链网络的自动化编排部署。

云原生技术完美匹配区块链安全机制。

区块链网络由于涉及多家参与企业的业务逻辑和数据,以及相关智能合约的安全风险挑战突出,需要严格的安全保障、资源隔离和权限控制等机制。

而集群所提供的

namespace隔离机制、networkpolicy网络策略、configmap和

secret等机制均可无缝地与区块链安全治理机制进行整合,提供了坚实的底层安全保障。

此外,云原生技术还有助于实现区块链系统以及区块链应用的持续交付能力,帮助企业更快地实现业务上链。

(三)边缘计算场景

随着互联网智能终端设备数量的急剧增加,以及5G和物联网时代的到来,传统云计算中心集中存储、计算的模式已经无法满足终端设备对于时效、容量、算力的需求。

将云计算的能力下沉到边缘侧、设备侧,并通过中心进行统一交付、运维、管控,将是云计算的重要发展趋势。

边缘计算按功能角色主要分为三个部分:

14

云--传统云计算的中心节点,有丰富的云计算产品形态和资源,是边缘计算的管控端,负责全网算力和数据的统一管理、调度、存储。

边--云计算的边缘侧,又分为基础设施边缘和设备边缘。

基础设施边缘通常位于IDC内,拥有充足的算力和存储容量,和中心有专线或通过骨干网连接,如CDN节点等。

设备边缘通常指非传统IT基础设施的边缘节点,这类节点更靠近设备和数据源,如楼宇、园区、工厂、家庭内的节点或设备网关。

端--终端设备,如手机、智能家电、各类传感器、摄像头等。

边缘计算目前面临的主要挑战有:

•云边端协同:

统一的交付、运维、管控标准。

•安全:

边缘服务和边缘数据的安全风险控制难度较高。

•网络:

边缘网络的可靠性和带宽限制。

•异构资源:

对不同硬件架构、硬件规格、通信协议的支持。

云原生技术的核心价值之一是通过统一的标准实现在任何基础

设施上提供和云上一致的功能和体验。

借助云原生技术,可以实现云

-边-端一体化的应用分发,解决在海量边、端设备上统一完成大规模应用交付、运维、管控的诉求。

安全方面,云原生技术可以提供容器等更加安全的工作负载运行环境,以及流量控制、网络策略等能力,能够有效提升边缘服务和边缘数据的安全性;

边缘网络环境方面,基于云原生技术的边缘容器能力,能保证弱网、断网的自治性,提供有效的自恢复能力,同时对复杂的网络接入环境有良好的兼容性;

异构

15

资源兼容性方面,云原生技术的适用性逐步提升,在物联网领域,云原生技术已经能够很好的支持多种CPU架构(x86-64/arm/arm64)和通信协议,并实现较低的资源占用。

(四)传统⾏业互联⽹化应用场景

传统行业正在经历由数字业务战略推动的转型实践,在提效降本的目标下,尝试创新与发现新的营收来源。

数字化转型的程度和成效,在很大程度上影响着整个行业的竞争能力。

“互联网+”的大背景下,传统企业互联网特征的业务正在快速崛起,持续交付快速迭代成为这些应用的强烈需求。

传统行业转型的瓶颈看似千差万别,但归纳起来有如下共同特点:

项目周期短,需求快速变化。

在当前互联网快速发展的驱使下,外部环境的变化日益加快,伴随而来的是IT对业务需求的快速响应要求,业务的快速迭代、敏捷交付等需求已经变成企业常态。

互联网高并发,不可预测的承载需求。

随着网联化的持续推进,互联网形态的业务日渐丰富。

相比较过去传统业务,网联业务具有更强的互联网业务形态,在诸如抢购、秒杀、网促等场景下,要求IT架构能更好的支撑高并发、高弹性的业务需求。

兼顾数据安全和用户体验。

私有化部署在很大程度上保证了业务数据的安全,但企业自建数据中心的承载规模有限,无法应对特定场

16

景下的访问量激增问题。

为了兼顾数据安全要求与用户流畅体验保障,公有云、私有云混合部署规划需要平衡考虑。

面对复杂的、快速变化的的互联网市场竞争,云原生技术可以帮助企业构造一个可扩展的、敏捷的、高弹性的、高稳定性的业务系统。

基于容器核心的云原生容器平台,为应用提供标准化敏捷基础架构,充分满足业务的弹性需求,同时利用云原生平台实现跨平台资源横向打通,提供一致的交付体验。

建立全流程DevOps精益协作,形成以交付为核心,适配多种研发模式的一体化流程协作体系,提升交付效能。

四、云原生产业发展趋势

(⼀)云原⽣技术轴重构IT运维和开发模式

以容器技术为核心的云原生技术贯穿底层载体到应用中的函数,衍生出越来越高级的计算抽象,计算的颗粒度越来越小,应用对基础设施的依赖程度逐渐降低,更加聚焦业务逻辑。

这是由容器技术引发的变革,容器提供了内部自洽的编译环境,打包进行统一输出,这为单体架构的应用像微服务拆分提供了途径,也为服务向函数化封装提供了可能。

云原生技术轴正在加速重构IT开发和运维模式。

17

图6:

云原生技术轴演进示意图

容器技术实现了封装的细粒度变化,微服务实现了应用架构的细粒度变化,而在未来随着无服务器架构技术的应用推广,计算的粒度可细化至函数级,这也使的函数与服务的搭配会更加灵活。

在未来,通过函数的封装与编排将实现应用的开发部署。

云原生技术轴将会越来越靠近应用内部,颗粒度越来越小,使用也越来越灵活。

(⼆)云原⽣助⼒⼈⼯智能从云端扩展⾄边缘

微服务架构的盛行正在加速AI生态系统中功能解耦。

AI模型中不同粒度的功能如分类、聚类、识别、预测、自然语言处理、卷积、重现等都再向微服务化转变。

借助云原生技术,云端智能正在加速向边缘智能扩展。

要实现边缘智能化,需要把云上的模型,快速迁移到线下,将云上智能改造为边缘可用的轻量级智能,适配边缘软硬件环境和使用场景。

容器作为一种轻量级操作系统隔离技术,发挥着重要作用,这种轻量级的打包技术将微服务之间依赖关系与预配置文件打包,统一环境和预配置并输出标准化的镜像,很好的解决环境一致性问题,实现快速的扩展和移植,将云端的应用快速在边缘部署。

同时,数以亿计

18

边缘设备汇聚成大量的小型数据中心,利用容器编排引擎,可以轻松完成超多规模集群的分发调度,实现云端的互联互通。

(三)运营商搭载云原⽣强化5G⽹络能⼒

5G是ITU、3GPP等国际标准组织定义的新一代移动通信标准,被广泛认为是将改变社会的通信技术。

2017年启动的5GR15标准定义了服务化的系统架构,采用云原生技术中的微服务模式定义了近20个网络能力(NF)接口,强调自包含、独立管理等微服务原则,对传统通信网中紧耦合和功能过于集中的网元进行重构和分解。

在NF接口的技术实现上,R15标准可以使用NFV/SDN标准化IT技术,底层是云计算中通用的REST风格接口、x86硬件平台和虚拟化技术。

通过上述标准,5G网络解决了原有通信网软硬件平台封闭、弹性不足,业务部署和变更困难等固有问题,也为云原生技术应用到5G网络及其承载的上层应用打好基础。

云计算技术已应用于现有的通信网络,包括基于OpenStack平台实现网元虚拟化和快速部署,基于开放的编排标准实现资源编排。

这些能力对于5G网络愿景来说还远远未够,包括分钟级的网络能力部署和变更要求、和云计算主流的容器管理平台Kubernetes的互操作等。

在已经发布的ETSI、NGMN等机构的5G白皮书上,通信运营商、设备商都提出了引入云原生技术到5G网络中以实现其愿景,相关的

19

建议包括:

对NF服务更轻量级的容器化封装,使用Kubernetes等云计算动态平台实现弹性部署和开发运营一体化。

参与云原生基金会旗下各个开源

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1