Kubernetes学习路线

Kubernetes学习路线

安装篇

Kubeadm
  1. K8S高可用架构解析
  2. Kubeadm高可用安装基本说明
  3. Kubeadm基本环境配置
  4. Kubeadm基本组件安装
  5. Kubeadm高可用组件安装
  6. Kubeadm集群初始化 高可用Master及Token过期处理
  7. Kubeadm Node节点配置 Dashboard&Metrics Server安装
  8. 集群可用性验证
二进制
  1. k8S高可用架构解析
  2. 二进制高可用安装k8s集群说明
  3. 二进制高可用基本配置
  4. 二进制系统和内核升级
  5. 二进制基本组件安装
  6. 二进制生成证书详解
  7. 二进制高可用及k8s组件配置
  8. 二进制安装TLS Bootstrapping自动颁发证书
  9. 二进制Node节点配置(Calico、CoreDNS)
  10. 二进制Metrics&Dashboard安装
  11. 二进制高可用集群可用性验证
  12. 生产环境k8s集群关键性配置
  13. Bootstrapping:Kubelet启动过程
  14. Bootstrapping:CSR申请和证书颁发原理
  15. Bootstrapping:证书自动续期原理

基础篇

必备Docker知识
  1. Docker基础
  2. Docker基本命令
  3. Dockerfile用法
  4. 镜像优化:制作小镜像
  5. 镜像优化:多阶段制作小镜像
  6. Scratch镜像
K8S基础概念
  1. 为什么要用Kubernetes
  2. K8S架构解析:Master节点介绍
  3. K8S架构解析:Node节点介绍
  4. 什么是Pod
  5. 为什么要引入Pod
  6. 定义一个Pod
  7. 零宕机发布应用必备知识:Pod三种探针
  8. 零宕机必备知识:StartupProbe
  9. 零宕机必备知识:Liveness和Readiness
  10. 零宕机必备知识:Pod退出流程
  11. 零宕机必备知识:PreStop的使用
资源调度
  1. RC&ReplicaSet
  2. 无状态服务Deployment概念
  3. Deployment的更新
  4. Deployment的回滚
  5. Deployment扩容和缩容
  6. Deployment更新暂停和恢复
  7. Deployment更新注意事项
  8. 有状态应用管理StatefulSet概念
  9. 创建一个StatefulSet应用
  10. StatefulSet扩容缩容
  11. StatefulSet!更新策略
  12. StatefulSet灰度发布
  13. StatefulSet级联删除和非级联删除
  14. 守护进程服务DaemonSet
  15. DaemonSet的使用
  16. DaemonSet的更新和回滚
  17. HPA自动扩缩容
服务发布
  1. Label&Selector
  2. 在K8S上是如何发布服务的
  3. 什么是Service
  4. 定义一个Service
  5. 使用Service代理K8S外部服务
  6. 使用Service反代外部域名
  7. Service常用类型
  8. 什么是Ingress
  9. 使用helm安装Ingress
  10. Ingress简单使用
  11. Ingress多域名使用
配置管理
  1. K8S配置管理ConfigMap
  2. K8S加密数据管理Secret
  3. ConfigMap&Secrett使用SubPath
  4. ConfigMap&Secret热更新
  5. K8S1.19的不可变Secret和ConfigMap

进阶篇

持久化存储
  1. K8S存储Volumes介绍
  2. Volumes HostPath挂载宿主机路径
  3. Volumes EmptyDir实现数据共享
  4. 挂载NFS至容器
  5. 持久化存储PV&PVC概念
  6. PV&PVC入门使用
高级调度
  1. CronJob计划任务
  2. 污点和容忍Tainta&Toleration入门
  3. Taint&Toleration补充
  4. 初始化容器InitContainer
  5. Affinitys亲和力入门
  6. 节点亲和力NodeAffinity使用
  7. P0d亲和力和反亲和力
  8. Topology拓扑域概念
  9. 使用Topology实现多地多机房部署
  10. 临时容器概念和配置
  11. 使用临时容器在线debug
准入控制及细粒度权限控制
  1. RBAC权限管理概念
  2. RBAC使用
  3. 安装一键式K8S资源平台Ratel到K8S集群中
  4. Ratel简单使用
  5. 准入控制
  6. Kubernetes服务质量QoS
  7. 使用PodPreset预配置容器时区注意事项
  8. Dashboard基于用户名密码认证
  9. RBAC实现不同用户不同权限
  10. ServiceAccount权限管理

高级篇

云原生存储及存储进阶
  1. 云原生存储Rook介绍
  2. Rook部署
  3. 使用Rook部署Ceph集群
  4. 创建块存储类型的动态存储
  5. StatefulSet动态申请存储
  6. 使用PVC动态申请存储
  7. 共享文件系统类型的StorageClass
  8. PVC在线扩容和PVC快照
  9. R00k集群清理和重建
  10. PVC在线扩容使用
  11. PVC快照和回滚
  12. Rook Ceph xfs_repairi问题
  13. 存储回顾
中间件容器化及Helm
  1. 容器化中间件基本说明
  2. 如何部署一个容器到K8S
  3. 部署Redis Operator
  4. 在K8S上部署Redis集群
  5. Redis集群扩容和缩容
  6. 部署RabbitMQ集群到K8S
  7. 解决RabbitMQ密码不生效问题
  8. RabbitMQ扩容和缩容
  9. Helm安装使用
  10. Helm目录层级
  11. Helm语法
  12. 编写Helm部署RabbitMQ集群
  13. 运行自己编写的Helm
  14. 部署Zookeeper和Kafka集群
  15. Kafka和Zookeeper集群扩容缩容

运维篇

K8S容器日志收集
  1. EFK日志收集
  2. 使用Filebeat收集容器内日志
  3. 使用不同资源名称查询日志
Prometheus监控入门
  1. Prometheus安装
  2. Prometheus Metrics类型
  3. PromQL基本操作
  4. PromQL常用函数
  5. 解决Scheduler监控问题
  6. Prometheus监控etcd集群
  7. Prometheus Exporter
  8. Prometheus黑盒监控
  9. Prometheus additional
Prometheus告警处理
  1. Alertmanager入门
  2. Prometheust使用邮件告警
  3. Prometheus使用微信告警
  4. Prometheus自定义告警模板
Prometheus监控实战
  1. Prometheus自动发现
  2. Prometheus监控Java JVM
  3. 基于Eureka自动发现监控Java JVM
服务发布Ingress进阶
  1. Ingress Nginx入门
  2. Ingress Nginx域名重定向
  3. Ingress Nginx前后端分离
  4. Ingress Nginx SSLi配置
  5. Ingress Nginx黑白名单
  6. Ingress Nginx匹配请求头
  7. Ingress Nginx速率限制
  8. Ingress Nginx实现灰度/金丝雀
  9. Ingress Nginx自定义错误页面
  10. Ingress Nginx基本认证
  11. Ingress Nginx监控
  12. K8S1.19下的Ingress配置

DevOps篇

持续集成/持续部署入门
  1. Jenkins CICD介绍
  2. Jenkins安装
  3. Jenkins声明式流水线入门
  4. Jenkins变量使用
  5. Jenkins级联变量
  6. 镜像仓库配置
  7. GitLab安装配置
  8. Jenkins Credentialsi配置
  9. Jenkins BlueOcean,入门
  10. 不同环境流水线设计
  11. 图形化创建Jenkinsfile
持续集成/持续部署实战
  1. 基于K8S的动态Jenkins Slave
  2. Jenkins配置Kubernetes多集群
  3. KUBECONFIG多集群配置
  4. Jenkins自动化构建Java应用
  5. Jenkins自动化构建NodeJS应用
  6. Docker镜像高级优化及自动化构建建议
  7. Jenkins生产环境和UAT环境流水线设计
  8. Jenkins基于角色的账户管理
SpringCloud容器化原理及生产建议
  1. 容器化SpringCloud项目说明
  2. SpringCloud架构解析
  3. 如何在K8S上正确部署Eureka
  4. 到底要不要用Eureka
  5. 如何正确部署Zuul和ConfigServer到K8S
  6. 如何正确部署Zuul和ConfigServer到K8S
  7. SpringCloud项目总结

知识拓展

二进制集群升级
  1. 二进制Kubernetes升级说明
  2. 二进制Etcd集群升级
  3. 二进制Kubernetes升级说明
  4. 二进制Kubernetes升级Master组件
  5. 二进制Kubernetes升级Node和Calico
  6. 二进制Kubernetes升级CoreDNS