只需十步,让你的应用云原生化

作者 | 杨宙    整理 | 徐诗瑶

出品 | CSDN云原生

60259e7d15e4179ea9e9e4551f714eab.gif

近日,前蚂蚁金服技术专家杨宙在CSDN主办的2022云原生超级英雄会上表示:未来的应用都将应该生在云上、长在云上,应用上云成为不可逆转的发展趋势。

点击看完整版视频

1b384ef793551212e83c023bfad9a8c4.png

云原生的发展对应用的影响

近年来,云原生技术高速发展,从早期的以资源为中心的云原生1.0时代,逐步发展到现在以应用为中心的云原生2.0时代。云原生的相关代表技术越来越清晰,也在发生微小的变化,具体来说包含五个方面:不可变的基础设施、容器化、微服务&Service Mesh、CI/CD和XOps,其中XOps延伸代表技术有DevOps、GitOps、AIOps等等。

我们正在持续不断地将这些代表技术下沉,演变成为云的基础设施,进而为应用赋能。所以云原生技术是一种构建和运行应用程序的办法,是一套技术体系和方法论。云原生为用户指明了在实现低心智、低负担、敏捷、可复制、可扩展、可观测的基础上,在最安全可靠的环境下如何构建和运行应用程序。这其中还包括快速开发(低代码)、平滑灰度、质量验证、安全可靠、持续部署等软件架构指导思想。

84059f5a0098e65df3e7fe4cdfdd6dfe.png

传统应用对比云原生应用的痛点

一个应用的生命周期通常会分为三个阶段:构建时、运行时、迭代时。

在构建时,我们通常会遇到以下痛点:

  • 单次构建

  • 构建包不可运行

  • 构建时无法发现缺陷

  • 数据库缓存的依赖

在运行时,通常又会遇到这些痛点:

  • 资源不足,无法弹性

  • 注册中心不一致,多语言的注册中心各有不同,甚至有些语言没有注册中心和服务发现体系。这也是为什么我们需要多云的服务,除了内部本语言的服务发现外,我们还需要发现外部的服务

  • 不可观测性,应用运行健康情况不可知,等出现故障时才发现

  • 链路长且排查困难

在应用的迭代时,还会面临各种框架SDK升级、新老接口版本兼容并存等常见痛点。

6940ecd2b72e79ca0752aa83396f8ab0.jpeg

那么,云原生应用给我们带来哪些优势呢?

构建阶段:

  • 从单次构建变成了每次构建。任何代码变更都能够触发一次构建,保证代码和实际测试环境或者开发环境保持一致

  • 镜像化,只要在有容器的环境下运行,就能够运行所有的构建包

  • 代码检测,我们在构建前期就进行代码规范等静态化检查,提前发现一些基础性缺陷的问题

  • 相关依赖打包

运行阶段:面临资源不足的问题,我们的云原生应用具备如下特点:

  • 弹性扩容

  • DNS服务发现

  • 可观测

  • 全链路追踪回溯

那么在应用迭代时,基础框架SDK的升级,在云原生环境下是无感知的,不需要再升级任何的版本,也不需要改造。

云原生对应用的价值是很大的。以应用为中心,应用最关心的问题是:

  • 可弹性,部署之后在面临资源诉求时可弹性伸缩

  • 可观测,部署上去能够看到应用的当前运行状态,以及健康度

  • 可灰度,多版本迭代时,能够平滑灰度、循环渐进地上线

  • 可追踪,当出现问题时,能够及时发现并干预

  • 可自愈,应用系统需要具备一定自我修复、自我保护和自我恢复,在面对紧急突发问题能够自动容错和自愈

云原生将这些技术能力,作为底层稳定通用能力提供出来,形成应用服务技术管理体系,为应用赋能或者为应用开发者赋能,让应用开发者只专注业务领域应用架构成为可能。

1127bc96c5c268326a06ca484d55962e.png

应用如何拥抱云原生 

应用如何去拥抱云原生呢?也就是如何让您的应用向云而生:

  • 第一步,镜像化改造。应用代码+DockFile制作镜像

  • 第二步,进容器。让应用跑在容器里,并配置应用运行时需要的物理资源

  • 第三步,应用打包。通过Helm,将这些依赖打包进同一个package实现整应用包管理,并可在容器化环境里快速部署

  • 第四步,编排和调度。通过Kubernetes实现应用集群的统一编排和调度,如实例个数、资源占用等

2b3d1e6a2e66133671daa18ed260826b.png

  • 第五步,流量接管。通过sidecar机制接管一切的流量

  • 第六步,应用赋能。应用接入后,可在云原生环境里享受更多云所带来的红利,如服务注册发现、滚动升级、限流、熔断、负载均衡、监控预警、全链路追踪等能力

b315748257e37baf02d41a2c4730c870.png

  • 第七步,应用标准化。在经过标准化构建和运行容器承载之后,应用与应用之间只有细微的差异跟资源不同

  • 第八步,无感升级。技术底层能力可持续升级,并对应用无感

  • 第九步,配置调优。管理应用与应用之间,只有配置参数的微小差异

  • 第十步,多云部署。也就是云原生应用的终态

b52213864e132669eaef9623ee1c5bb7.png

78e47247ec6a518f15bde6cc9dd2b3e6.png

应用原生之后的价值

应用上云原生之后,将为企业降低成本、提升效率、快速试错、促进创新等业务增加价值。使得本身复杂多变的业务,可灵活多变、及时响应,快速迭代,持续创新成为可能。

cec72ec9fc0c70861da436572eefc186.png

END

云原生志愿者计划正在招募🔥 

精准把握技术趋势,深度学习新技术、新实践

092cfcb5e540bab2de8a4e49336e09c0.jpeg

扫描图片二维码立即申请加入

 
 

— 推荐阅读 —

 
 
☞Day2运营思考:七大步骤助推软件生命周期闭环
☞云原生应用交付的前世今生与一线实践☞2个维度5大方法,让你的微服务在K8s上跑起来☞透彻解析云原生在数字化转型中的应用实践,PaaS功不可没

—点这里↓↓↓记得关注标星哦—

一键三连 「分享」「点赞」「在看」

成就一亿技术人

0080c7405415e661b6f8ad1cfaa5ebd3.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值