盘点 2021 | 云原生拥抱之路

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 回顾这一年,还是从盘点技术说起,聊一聊我的云原生拥抱之路,在云原生之路上我都从哪些方面入手,学到了什么。

作者:xcbeyond

博客:https://xcbeyond.cn/ 公众号:程序猿技术大咖


2021 即将结束,又到了一年一度的盘点时刻,今年该说点啥?


回顾这一年,还是从盘点技术说起,聊一聊我的云原生拥抱之路,在云原生之路上我都从哪些方面入手,学到了什么。


1、背景

之前一直专注于微服务体系架构的研发工作,以 Java 语言作为我的第一程序语言,并伴随了我很多年。随着 2020 年 8 月份工作的变动,全身投入到新架构体系产品的技术预研及研发中,从此开启了我的云原生之路。


IT技术的演进,行业的竞争,促使了软件产品的迭代更新。传统微服务架构产品在当下显得力不从心,为寻求市场竞争力,只有向前迈出新的一步,紧跟时代步伐,才有可能立足于市场。


今天,我将站在云原生的代表技术出发,通过这些技术来阐述我的云原生之路。

2、云原生

先来回顾、重温一下云原生的概念吧!


云原生是近几年云计算领域炙手可热的话题,云原生技术更是成为驱动业务增长的重要引擎。提及云原生我们不得不提及 CNCF(CNCF:Cloud Native Computing Foundation,云原生计算基金会),CNCF 的成立标志着云原生从技术理念转化为开源实现,并给出了目前被广泛接受的定义:


云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式 API

3、微服务

微服务不用多说,在 2022 年来临之际应该没有人不了解微服务吧。


微服务是服务架构演进的产物,在历经单体架构、垂直架构、面向服务的架构(SOA)之后,微服务架构(MSA)可视为 SOA 架构的分布式实现方式。随着业务发展与需求不断增加,单体应用功能愈发复杂,应用迭代效率由于集中式研发、测试、发布、沟通模式而显著下滑。


微服务架构本质上是通过承受更高的运维复杂度来换取更好的敏捷性,其优势在于小而治之、去中心化,但也导致基础架构的需求、成本和复杂性激增。

4、容器

早在 2018 年就开始接触容器,开启了我的容器之路,其中 Docker 作为容器化的一种典型方案或者技术,入门比较简单。


一次构建,多次交付成为当时吸引我的主要原因,在软件部署层面,传统模式和 Docker 模式存在着如下差异:

容器是将进程有效的划分一个独立空间,以便在独立的空间之间平衡资源使用冲突的技术。本质上,容器是一种特殊的进程,其核心功能是通过约束和修改进程的动态表现创造出一个“边界”,此外,其资源限制能力、以及基于镜像功能表现出的“强一致性”,都使得容器技术成为云原生最关键的底层技术之一。


2021 年可以称得上是容器大规模应用的一年。基于 Kubernetes 来屏蔽异构环境的差异,搭建分布式云架构已经成为企业和云厂商的共识。


对于容器而言,在此给初学者一些建议:掌握/理解容器相关概念、基本操作即可,如容器技术的特征、Docker部署、Docker镜像制作等,其他内容可结合后续 Kubernetes 的学习、项目实际应用中加强。

5、Kubernetes

Kubernetes 是我 2020 年底开始接触的东西,作为容器编排的优秀作品,被广为使用。在学习的过程中也输出了部分文章:



更多内容可持续关注:kubernetes分类kubernetes实践手册


如今,Kubernetes 项目不仅是容器技术的事实标准,更成为整个云原生体系发展的基石,重新定义了基础设施领域对应用编排与管理的各种可能。


在整个云原生生态中,Kubernetes 项目起到了承上启下的作用。对上,Kubernetes 暴露出基础设施能力的格式化数据抽象,如 Service、Ingress、Pod、Deployment,都是 Kubernetes 本身原生 API 为用户暴露出来的能力。而对下,Kubernetes 提供了基础设施能力接入的标准接口,如 CNI、CSI、DevicePlugin、CRD,让云能够作为能力提供商,通过标准化的方式把能力接入到 Kubernetes 的体系中。


伴随着微服务、DevOps 等技术理念的发展,基于 Kubernetes 可扩展能力的开放应用平台将取代 PaaS 成为主流,而云的价值会回归应用本身,越来越多的开源项目会以云原生理念去开发、部署和运维,最后直接演进成为一种云服务。

6、服务网格

服务网格,是今年新接触的内容之一,更是开启我云原生技术栈的核心,截止目前为止算是入门吧,更多扩展、进阶内容还需后续深入学习。


想进一步了解服务网格的背景和概念可参考之前写的一篇文章:全方位解读服务网格(Service Mesh)的背景和概念

服务网格中的典型代表框架为 Istio,学习服务网格的重点也就放在了对 Istio 的学习。目前市场上对于 Istio 的资料非常少,主要借助于 istio官网


在学习过程中,已输出一本精简版的PDF版学习资料(暂未公开),其中一部分已发布在:Istio 实践手册

7、Go 语言

Go 语言被称为云时代的语言,在云原生技术栈中 Go 语言占据很大的比例。

比如,Docker、Kubernetes 等众多云原生领域的优秀技术或框架都是基于 Go 语言开发的,所以掌握 Go 语言比不可少。今年,我也是从零开始全身投入到 Go 的语言学习当中,将 Go 语言作为我的第二大开发语言,利用 Go 语言开发公司新产品的研发。


在经过一年时间的学习及产品实践,总结了一套 Go 语言的快速学习路线供大家参考:

  • 第一阶段(基础语法)
    快速了解基本语法,如:数据类型、条件、循环等,熟悉Go的编程习惯。可写代码片段。
  • 第二阶段 (高级语法)
    逐步了解更高级的特性,如:channel、并发、接口等。
  • 第三阶段 (常用代码库)
    熟练掌握常用的代码库,如:fmt、Log、IO、Strconv、Template等。可写demo。
  • 第四阶段 (常用框架)
    熟练掌握常用的框架,如:Cobra(命令行)、Gin(Web框架)、Gorm(ORM框架)等。可写项目。
  • 第五阶段(阅读源码)
    阅读开源项目源码,如:docker、Kubernetes等。可借助开源项目提升自我/项目。


学习过程中,也整理了一些相关学习资料:Go语言实践手册

8、总结

拥抱云原生,其本质就是拥抱云原生代表技术(容器、服务网格、微服务、不可变基础设施和声明式 API等),掌握这几门代表技术也算是踏进云原生的大门了。后续云原生之路,更多的在于实际的项目/产品中实践,并不断总结、理解。


这就是我 2021 年的技术之路,为新产品的研发,不断向云原生前进,2022 年我将会持续深入学习、分享,将站在用户体验的角度、以技术驱动业务为价值目标,继续我的2022。


参考资料:

  1. 《云原生发展白皮书(2020年).pdf》
  2. 《云原生2.0白皮书.pdf》
  3. 解读云原生的 2021:抢占技术 C 位,迎来落地大爆发
相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
6月前
|
人工智能 Cloud Native 物联网
探索云原生技术的未来发展
随着数字化时代的不断深入,云原生技术作为应对复杂多变业务环境的利器逐渐受到企业和开发者的青睐。本文将深入探讨云原生技术的核心概念、应用场景以及未来发展趋势,带领读者一同探索云原生技术的无限可能。
|
6月前
|
运维 Cloud Native 持续交付
探索云原生应用的未来发展趋势
在当今数字化时代,云原生技术正在成为企业数字化转型的关键驱动力。本文将探讨云原生应用的未来发展趋势,包括容器化技术、微服务架构、持续集成/持续部署(CI/CD)等方面的创新和发展,以及对企业和行业的影响。
77 0
|
资源调度 Cloud Native 持续交付
云原生时代的发展
云原生时代的发展
66 0
|
3月前
|
Kubernetes Cloud Native 持续交付
云原生技术的未来之路
本文将探讨云原生技术的现状与未来,揭示其在数字化转型中的核心作用。我们将通过分析云原生技术的发展趋势,展示其如何助力企业实现更高效、灵活的运营模式。文章不仅会深入讨论云原生技术带来的挑战和机遇,还会提供实用的案例分析,帮助读者更好地理解云原生技术的实际价值和应用前景。
|
9天前
|
Cloud Native 持续交付 云计算
云原生时代的技术革新与实践探索
【10月更文挑战第33天】在云计算的浪潮下,云原生技术如雨后春笋般涌现。本文将深入浅出地介绍云原生的基本概念、优势及其在现代IT架构中的应用,并探讨如何通过云原生技术推动企业的数字化转型,最后通过实际案例分析,展示云原生技术的强大潜力和广阔前景。
|
1月前
|
运维 Cloud Native 云计算
云原生架构的崛起
【10月更文挑战第1天】在数字化浪潮中,企业正面临着前所未有的挑战与机遇。随着云计算技术的不断成熟,云原生架构作为一种新兴的技术范式,正逐渐改变着企业的运营模式和业务创新方式。本文将探讨云原生架构的核心理念、技术特点以及它如何推动企业在数字化转型的道路上实现更高效、更灵活的发展。通过深入分析云原生的实践案例,我们将揭示这一技术趋势背后的商业价值和管理启示。
|
1月前
|
人工智能 Kubernetes Cloud Native
探索云原生技术的未来之路
在数字化浪潮中,云原生技术如同一艘航向未来的巨轮,承载着企业转型的梦想与挑战。本文将深入探讨云原生技术的核心概念、应用实践以及面临的挑战和机遇,为读者揭示云原生技术如何引领企业走向更加灵活、高效、可靠的未来。
|
2月前
|
运维 Cloud Native 云计算
云原生技术在现代企业中的应用
【9月更文挑战第29天】随着云计算技术的不断发展,云原生技术已经成为现代企业的重要选择。本文将介绍云原生技术的基本概念、优势以及在现代企业中的应用案例。通过深入浅出的方式,帮助读者更好地理解云原生技术的价值和实践方法。
|
2月前
|
存储 人工智能 Cloud Native
云原生技术
云端存储、微服务架构及云原生技术均体现了编程范式设计理念。云原生是设计师的技术定义规范,在不同区域通过多样化产品实现。其设计需基于领域驱动模型。尽管云桌面尚未普及,但发达的互联网使本地存储更高效。云原生技术广泛应用于众多互联网公司产品中,如借助SpringBoot框架、AI技术及Kubernetes集群构建等。企业通过系统级中央仓库监控云服务,并结合云原生技术进行本地部署。领域驱动设计(DDD)的应用,如SpringCloud与Jenkins,正向自动化集成方向发展。本地部署有助于系统落地,依据用户反馈调整服务和数据,形成高性能架构设计。
|
2月前
|
Kubernetes Cloud Native Devops
云原生架构的崛起与应用##
云原生架构是现代企业数字化转型的关键,通过容器化、微服务、DevOps等技术,实现高效、灵活的应用部署和管理。本文探讨云原生的核心概念、主要技术及其实际应用价值,揭示其在提升企业运营效率和创新能力中的重要性。 ##
45 1