如何从零开始学习云原生

什么是云原生

云原生以容器、微服务、DevOps,持续交付等技术为基础建立的一套云技术产品体系。这是一种新型技术体系,是云计算未来的发展方向。从1999年到2024年,本地部署和市场云化此消彼长,企业上云的速度随着虚拟化等技术的发展大大加快,未来可能将成为各大企业的一项基础能力。所以作为一名刚入行或资深的工程师,我觉得都应该对云原生相关的概念和技术了解,提升自己的核心竞争力。

如何从零开始学习云原生

云原生技术体系非常的庞大,我们可能经常听到docker,k8s(kubernetes)等相关的名词,其实并不止于此。

先来看一张图:

这是来自CNCF(原生计算基金会)的云原生全景图,链接:landscape.cncf.io/,这里描述了云原生相关领域的项目,主要还是围绕着容器编排,治理,监控等建立起来的生态,全景图已经包含了云原生应用所关联的方方面面,可以给我们一个学习的方向与指示。

但是大家也不要害怕,看到这么多密密麻麻的项目,大家也不用对每个项目都进行深入的研究,毕竟如果能研究并实现出其中一个项目就已经很牛逼了。但是如果只是为了了解基本的概念那就更简单了。

学习路线

1. 了解云计算基础概念:

云原生是建立在云计算基础上的,因此首先需要对云计算的基本概念、服务模型(如IaaS、PaaS、SaaS)和部署模型(如公有云、私有云、混合云)有基本了解。

kubernetes

云原生中最重要的就是Kubernetes,简称k8s。所以我们的学习核心就是k8s,根据k8s辐射到云原生学习的其他领域,k8s可以说是云原生时代的操作系统,内部的设计是非常的复杂,每一个设计都有他运用的领域,我们可以先尝试去理解里面的一些基本概念,比如Node,Pod,Service等资源对象,慢慢的去了解k8s的网络原理,存储原理,核心组件的运行机制,k8s的拓展等等深入的知识。

推荐一些学习k8s资源:

2. 学习容器技术:

云原生应用通常以容器的形式进行部署和管理。学习Docker等容器技术,了解容器的基本原理、使用方法和常见工具。掌握如何创建、运行和管理容器化应用。

推荐学习资料:

  • Docker技术入门与实战,学习下一些docker的操作命令,知道如何去操作镜像,打包镜像等即可
  • container-runtime

3. 掌握容器编排工具:

容器编排工具用于管理和编排多个容器组成的应用程序。学习Kubernetes这样的容器编排工具,了解集群管理、服务发现、负载均衡、自动伸缩等核心概念和操作。

推荐学习资料:

-coordination-service-discovery

4. 代理网关:

云原生应用通常采用微服务架构,将应用拆分为一组小型、独立部署的服务。学习微服务架构的原理、设计模式、通信方式和治理方法。了解如何构建、测试和部署微服务应用。

5. 熟悉持续集成和持续部署(CI/CD):

云原生应用的开发和交付通常采用CI/CD流程。学习CI/CD的概念、工具和实践,包括源代码管理、自动化构建、测试和部署等方面。

6. 服务注册发现

k8s的数据都存储在etcd中,甚至还能自己服务注册与服务发现,我们需要了解一下服务注册,服务发现,配置中心,注册中心等相关的内容

7. 分布式存储

云原生存储脱胎于云存储,除云存储的特性外、须满足具备云原生生态系统中其他所有组件具备相同的动态(公共云/专有云/混合云等场景)构建可扩展应用、S3 API 驱动、K8S友好等

8. 可观测性

云原生观测可以采集系统提供的任何数据------日志、调用链、度量或事件,并允许团队在全部堆栈(基础设施、应用、业务)中检测和纠正问题。云原生观测还在适当的上下文中提供数据,而且它让企业掌握了采集数据的控制权

9. 学习云原生基础设施:

云原生应用的部署和管理依赖于云原生基础设施,如云原生存储、网络和监控。了解云原生基础设施的概念、特性和常用技术,如云原生存储系统、服务网格等,我们需要对其都有一定了解。

记住,云原生是一个广阔而复杂的领域,需要时间和实践来逐步掌握。坚持学习、实践和不断提升是成为云原生专业人员的关键。

相关推荐
鹏说大数据43 分钟前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
一水鉴天1 小时前
整体设计 定稿 之26 重构和改造现有程序结构 之2 (codebuddy)
开发语言·人工智能·重构·架构
隐语SecretFlow1 小时前
【隐语Secreflow】如何配置 Kuscia 对请求进行 Path Rewrit
架构·开源
小二·1 小时前
MyBatis基础入门《十四》多租户架构实战:基于 MyBatis 实现 SaaS 系统的动态数据隔离
数据库·架构·mybatis
老前端的功夫2 小时前
Vue 3 vs Vue 2 深度解析:从架构革新到开发体验全面升级
前端·vue.js·架构
测试人社区-小明3 小时前
智能测试误报问题的深度解析与应对策略
人工智能·opencv·线性代数·微服务·矩阵·架构·数据挖掘
平行云4 小时前
实时云渲染支持在网页上运行UE5开发的3A大作Lyra项目
unity·云原生·ue5·webgl·虚拟现实·实时云渲染·像素流送
nbsaas-boot4 小时前
JWT 与 Session 的实用场景分析:从架构边界到工程落地
java·开发语言·架构
Tadas-Gao5 小时前
GraphQL:下一代API架构的设计哲学与实践创新
java·分布式·后端·微服务·架构·graphql