云原生完整学习路线1
容器化是云原生的基础子集;
云原生是一套思想 + 技术栈,不只是 Docker/K8s,包含应用架构、交付、运维、安全整套体系。
云原生官方定义:基于云原生技术构建应用,具备弹性、可观测、自动化、可移植、松耦合,核心基石:Kubernetes。
整体学习顺序:前置基础 → 容器 (Docker) → K8s 核心 → 云原生可观测 → CI/CD GitOps → 服务网格 → 云原生存储 / 网络 → 云原生安全 → 架构设计
一、前置基础(和容器化重叠,必须掌握)
- Linux 进程、权限、uid/gid、namespace、cgroup、systemd、日志、tcpdump、ss、shell 脚本
- 计算机网络 TCP/IP、DNS、HTTP/HTTPS、NAT、网桥、负载均衡、四层 / 七层代理
- 基础开发知识(看懂即可,不用精通) REST API、JSON/YAML;能看懂简单代码,理解无状态 / 有状态应用区别
- 云基础概念 IaaS/PaaS/SaaS;虚拟机、弹性伸缩、云服务器、对象存储、负载均衡
二、阶段 1:容器基础(云原生基石,就是你刚才学的容器化部署)
- Docker:镜像、容器、Dockerfile、volume、网络模式
- Docker Compose:单机多容器编排,本地开发调试
- 私有镜像仓库:Harbor,镜像管理、漏洞扫描
目标:能独立把一个传统应用打包成镜像,理解不可变基础设施思想
三、阶段 2:Kubernetes(云原生核心,重中之重)
1. K8s 架构原理
控制面组件、节点组件、容器运行时 containerd;etcd 存储原理
2. 核心资源对象 & yaml 编写
Pod、Deployment、StatefulSet、DaemonSet、Job/CronJob Service、Ingress、ConfigMap、Secret、Namespace、Label PV/PVC、StorageClass(云原生存储)
3. 核心能力
- 探针:存活、就绪、启动探针
- 资源管理:requests/limits,QoS,驱逐机制
- 发布策略:滚动更新、蓝绿、金丝雀发布
- 网络:CNI,Calico/Flannel,Service iptables/ipvs 原理
4. kubectl 日常操作 + 排错思路
5. 集群搭建与环境
- 学习环境:minikube、kind、k3s(轻量 k8s,推荐学习用)
- 生产:云厂商托管 K8s(EKS/ACK/GKE),不建议裸机 kubeadm 上生产
✅ 本阶段目标:能在 K8s 上部署一套完整业务(前端 + 后端 + 数据库),理解应用如何弹性自愈
四、阶段 3:云原生三大支柱 —— 可观测性(云原生必备)
传统监控看服务器,云原生监控看容器、Pod、服务,三大件:指标、日志、链路追踪
- 指标监控 Metrics Prometheus + Grafana;PromQL 查询语言;exporter(node-exporter、kube-state-metrics);Alertmanager 告警
- 日志 Logs 容器标准输出日志;Fluentd / Fluent Bit;ELK/EFK;日志采集、过滤、存储
- 分布式追踪 Tracing OpenTelemetry(现在主流)、Jaeger、Zipkin;微服务调用链分析
重点:云原生可观测三大支柱,面试高频
五、阶段 4:CI/CD & GitOps(云原生交付体系)
- CI:代码提交自动构建、单元测试、镜像构建、镜像扫描 工具:GitLab CI、Jenkins、Tekton
- CD:把镜像部署到 K8s
- GitOps(云原生推荐部署模式) ArgoCD / FluxCD;用 Git 仓库保存 yaml 作为唯一可信源,自动同步集群状态
流程:代码变更 → CI 构建镜像 → 更新 Git 中的 yaml → ArgoCD 自动同步到 K8s 集群
六、阶段 5:云原生网络 & 服务网格(进阶)
- 基础 K8s 网络学完后,再学 Service Mesh 服务网格 Istio(主流):流量管理、灰度发布、限流熔断、mTLS 服务间加密、遥测
- 替代轻量方案:Linkerd
适用场景:微服务多、需要统一流量治理;单体应用不需要上 Istio
七、阶段 6:云原生存储
- 存储分类:块存储、文件存储、对象存储
- K8s 存储体系:PV/PVC、StorageClass、CSI(容器存储接口)
- 开源存储:Longhorn、Rook-Ceph;云厂商 CSI 插件
重点理解:有状态应用(MySQL、Redis)如何在 K8s 持久化数据
八、阶段 7:云原生安全(CNCF 云原生安全)
- 镜像安全:Trivy 漏洞扫描,最小基础镜像,禁止 root 用户运行容器
- K8s 集群安全:RBAC 权限控制、NetworkPolicy 网络隔离、PodSecurityContext
- 运行时安全:Falco
- 密钥管理:External Secrets,不要直接用 Secret 存敏感信息
- 策略管理:OPA Gatekeeper,集群准入控制
九、阶段 8:云原生微服务 & 应用架构(思想层面)
云原生不只是工具,更是应用架构改造
- 十二要素应用(12-Factor App)【非常核心,必读】 代码基准、依赖声明、配置在环境变量、后端服务作为附属资源、构建发布运行分离、无状态进程、端口提供服务、并发、可丢弃进程、开发 / 生产环境一致、日志作为事件流、管理进程
- 微服务基础:服务发现、容错重试、超时、熔断、限流
- Serverless(云原生分支) Knative:K8s 上的 Serverless,按需扩缩容,0 缩;云函数
- 云原生消息中间件:在 K8s 部署 MQ、Kafka 等
十、阶段 9:进阶:云原生运维、混沌工程、FinOps
- 混沌工程:Chaos Mesh,主动注入故障,验证系统容错能力
- FinOps:云成本优化,资源配额、资源裁剪,减少云资源浪费
- 自定义 K8s 开发:CRD+Operator(高阶),自定义控制器管理应用,比如 etcd-operator
📚 推荐学习顺序(由浅入深,不要跳)
- Linux 基础 → Docker + Compose
- K8s 基础概念、yaml、kubectl,用 kind/minikube 动手部署应用
- Prometheus+Grafana、EFK、OpenTelemetry(可观测)
- CI 流水线 + ArgoCD GitOps
- 存储 CSI、NetworkPolicy
- Istio 服务网格、云原生安全
- 十二要素、微服务架构
- Operator、混沌工程、FinOps(高阶)
🎯 学习目标分层
- 初级(运维 / 容器部署岗):会 Docker,会写 K8s yaml,会部署应用,基础排错,会 Prometheus 看监控
- 中级(云原生运维工程师):GitOps、可观测全套、存储 CSI、RBAC、发布策略,能独立维护生产 K8s 集群
- 高级(云原生架构师):服务网格、Operator、混沌工程、十二要素,能做应用云原生改造方案、架构选型
📌 补充:CNCF
CNCF(云原生计算基金会),K8s 归属组织,所有云原生项目都在这里,学习时可以看 CNCF 项目全景图。
和你上一问【容器化部署】的关系
容器化部署 = 云原生入门第一块。 容器只解决:应用打包隔离; 云原生解决:打包之后,如何自动化部署、弹性、自愈、监控、安全、持续交付整套体系。

浙公网安备 33010602011771号