K8S学习路线2025

文摘   2025-01-12 08:00   挪威  

欢迎点击下方👇关注我,记得星标哟~

文末会有重磅福利赠送


最近花了些时间,梳理了下自己的K8S学习过程。通过几个阶段的学习,我们可以从 Kubernetes 的基础入门逐步深入到源码分析与开源贡献,最终具备在生产环境中独立解决复杂问题的能力。

新的一年,快来一起学习吧!!



阶段一:基础入门

学习目标:

  1. 掌握 Kubernetes 的基础概念、架构、核心组件运行机制。
  2. 能够搭建并维护简单的 K8S 集群。
  3. 完成 CKA 认证(Certified Kubernetes Administrator)。

学习计划

  1. 理论部分

  • 阅读 Kubernetes 官方文档(重点:Node、Pod、Deployment、Service 等核心资源对象)。
  • 学习极客时间课程《深入剖析 Kubernetes》(重点:容器编排与作业管理、网络、存储章节)。
  • 准备 CKA Certification认证考试,强化基础知识。
  • 阅读《Kubernetes 中文指南_云原生应用架构实践手册》。
  • 实践部分

    • 自建 Kubernetes 集群(推荐使用 kubeadm 或 Minikube)。
    • 跟随《深入剖析 Kubernetes》实践部分,动手操作每个章节的内容。
    • 通过 CKA 认证模拟考试平台练习命令操作。
  • 知识总结

    • 整理 Kubernetes 知识图谱(参考 K8S学习知识图谱)。
    • 阅读公众号“云原生SRE”的 K8S 系列文章,补充理论知识。

    时间规划

    学习内容
    时间周期
    理论学习:K8S 基础概念、网络、存储章节
    1周
    实践:搭建 K8S 集群,完成 CKA 认证课程练习
    2周
    实战项目:搭建一个简单的 K8S 集群并部署应用
    1周



    阶段二:进阶 + 工作项目实战

    学习目标:

    1. 深入理解 Kubernetes 的高级特性(资源调度、扩缩容、安全性等)。
    2. 掌握 Kubernetes 的持续集成与部署能力(Helm、ArgoCD)。
    3. 掌握 Kubernetes 集群的故障排查与性能调优方法。
    4. 能够在实际工作项目中使用 Kubernetes,完成复杂场景的部署与管理。

    学习计划

    1. 理论部分

    • 资源管理与调度
      :资源配额、优先级与抢占、HPA/VPA。
    • 网络与存储进阶
      :CNI 插件(如 Flannel、Calico、Cilium)
    • 安全性
      :RBAC 权限管理、Pod 安全策略。
    • 容器运行时
      :了解 CRI、POD生命周期等
    • 持续集成与部署相关
    • 日志与监控相关
    • 服务网格相关(Istio
    • 学习 Kubernetes 其他高级特性(具体见notion链接)
    • 阅读《Kubernetes in Action》,学习更多高阶知识。
  • 实践部分

    • 模拟常见故障场景并排查解决:
    • 控制平面问题(如 API Server、etcd 异常)。
    • 节点问题(如 kubelet 异常、节点 NotReady)。
    • 网络问题(如 Pod 间通信失败)。
    • 存储问题(如 PVC 绑定失败)。
    • 部署 Prometheus + Thanos,创建自定义监控指标。
    • 集成 Fluentd 或 Loki,收集并分析日志。
    • 使用 Helm 和 Kustomize 部署应用。
    • 使用 ArgoCD 或 FluxCD 实现 GitOps 流程。
    • 部署 Istio 或 Linkerd,配置流量治理(如熔断、限流、灰度发布)。
    • 实战项目

      • 开发一个简单的 Kubernetes Operator(如自动化部署应用)。
      • 搭建完整的监控系统(Prometheus + Thanos + Grafana)。
      • 部署一个简单的微服务架构项目(包括 Service Mesh,如 Istio)。

      时间规划

      学习内容
      时间周期
      理论学习:资源管理、调度、安全性

      实践:持续集成与部署、日志与监控

      实践:集群故障排查与性能调优

      实战项目:开发 Operator,搭建监控系统




      阶段三:深入 Kubernetes 及相关开发

      学习目标:

      1. 深入理解 Kubernetes 核心模块源码及扩展机制。
      2. 掌握复杂云原生项目的设计与实现能力。
      3. 参与 Kubernetes 及相关开源社区贡献,提升技术深度和影响力。
      4. 独立解决生产环境复杂问题。

      学习计划

      1. 理论部分

      • CRD(自定义资源定义)与 Controller。
      • Admission Webhooks。
      • Operator 模式及其实现原理。
      • 调度器(kube-scheduler)
        :任务调度算法、优先级与抢占机制。
      • 控制器(kube-controller-manager)
        :资源控制循环的实现。
      • API Server
        :Kubernetes API 的设计与实现。
      • etcd
        :分布式存储的核心原理及一致性算法(Raft)。
      • 阅读 Kubernetes 核心模块源码:
      • 学习 Kubernetes 的扩展机制:
      • 关注其他开源项目(如 Prometheus、Thanos),了解其架构设计。
    • 实践部分

      • 设计并实现多集群部署方案。
      • 模拟生产环境问题,练习故障排查与性能调优。
      • 为 Kubernetes 或相关项目(如 Prometheus、Thanos)提交 PR。
      • 参与社区 SIG(Special Interest Group)小组,了解社区开发流程。
      • 开源社区贡献
      • 复杂云原生项目
    • 阅读推荐

      • 《Kubernetes 源码剖析》:深入理解核心模块。
      • 《Programming Kubernetes》:学习 Kubernetes API 和扩展机制。


      时间规划

      学习内容
      时间周期
      理论学习:源码阅读与扩展机制

      实践:开源社区贡献与复杂项目开发

      阅读与总结:技术文章输出



      阶段四:工作面试与总结

      学习目标:

      1. 梳理 Kubernetes 的核心知识点,准备技术面试。
      2. 总结学习成果,形成系统化的知识体系。

      学习计划

      1. 知识点梳理

      • 参考 Kubernetes知识图谱
      • 整理 Kubernetes 的核心模块、扩展机制、故障排查等知识点。
    • 面试题总结

      • Kubernetes 核心组件(API Server、Scheduler、Controller Manager)。
      • 调度与资源管理。
      • 网络与存储。
      • 故障排查与性能调优。
      • Kubernetes 扩展机制(CRD、Operator)。
      • 收集并整理 Kubernetes 面试题 , 升职加薪。。
    • 总结与分享

      • 输出博客或技术文章,总结学习经验。
      • 在技术社区或开源大会分享学习成果。

      时间规划

      学习内容
      时间周期
      知识点梳理与面试题总结

      技术文章输出与分享



      具体的学习步骤,我在 Notion 上制作了一个 Kubernetes 学习路线模板,包含详细的学习计划、学习资料和资源推荐,可以帮助小伙伴们更系统地入门 Kubernetes。如果有需要的小伙伴,可以私信找我获取!

      加入知识星球,共同探索云原生学习之旅!

      更多云架构、K8S学习资料以及SRE学习手册,加入星球免费领取哦!

      感兴趣的朋友们可以加我微信:sre_k8s,备注:云原生交流


      云原生SRE
      懂点K8S的SRE,关注云原生、DevOps、AI\x26amp;ChatGPT等技术热点
       最新文章