如何从零开始学习云原生

什么是云原生

云原生以容器、微服务、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. 学习云原生基础设施:

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

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

相关推荐
桂月二二1 小时前
Vue3服务端渲染深度解析:从Nuxt3架构到性能优化实战
性能优化·架构
阿里云云原生1 小时前
Java版Manus实现来了,Spring AI Alibaba发布开源OpenManus实现
云原生
阿里云云原生1 小时前
当实时消费遇到 SPL:让数据处理更高效、简单
云原生
极客先躯3 小时前
高级java每日一道面试题-2025年3月21日-微服务篇[Nacos篇]-什么是Nacos?
java·开发语言·微服务
阿里云云原生3 小时前
大模型 Token 的消耗可能是一笔糊涂账
云原生
小天努力学java5 小时前
【软考-架构】10.1、软件工程概述-CMM-软件过程模型-逆向工程
架构·软件工程
再学一丢丢5 小时前
Keepalived+LVS+nginx高可用架构
nginx·架构·lvs
上海川源信息科技6 小时前
DeepSeek 3FS 企业级部署全攻略|避坑实践(附方案)
架构
男Ren、麦根6 小时前
MySQL 复制与主从架构(Master-Slave)
数据库·mysql·架构
企鹅侠客7 小时前
Prometheus operator怎么添加targets和告警规则
运维·云原生·kubernetes·prometheus·pod