视频来源:B站《(2022版)最新、最全、最详细的Kubernetes(K8s)教程,从K8s安装到实战一套搞定》
一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!
K8s全栈架构师学习路线 |
安装篇 |
Kubeadm |
k8s高可用架构解析 |
Kubeadm高可用安装基本说明 |
|||
Kubeadm基本环境配置 |
|||
Kubeadm基本组件安装 |
|||
Kubeadm高可用组件安装 |
|||
Kubeadm集群初始化 |
|||
高可用Master及Token过期处理 |
|||
Kubeadm Node节点配置 |
|||
Dashboard&Metrics Server安装 |
|||
集群可用性验证 |
|||
二进制 |
k8s高可用架构解析 |
||
二进制高可用安装k8s集群说明 |
|||
二进制高可用基本配置 |
|||
二进制系统规和内核升级 |
|||
二进制基本组件安装 |
|||
二进制生成证书详解 |
|||
二进制高可用及k8s组件配置 |
|||
二进制安装TLS Bootstrapping自动颁发证书 |
|||
二进制Node节点配置(Calico、CoreDNS) |
|||
二进制Metrics&Dashboard安装 |
|||
二进制高可用集群可用性验证 |
|||
生产环境k8s集群关键性配置 |
|||
Bootstrapping:Kubelet启动过程 |
|||
Bootstrapping:CSR申请和证书颁发原理 |
|||
Bootstrapping:证书自动续期原理 |
|||
基础篇 |
必备Docker知识 |
Docker基础 |
|
Docker基本命令上 |
|||
Docker基本命令下 |
|||
Dockerfile用法 |
|||
镜像优化:制作小镜像上 |
|||
镜像优化:多阶段制作小镜像 |
|||
Scratch镜像 |
|||
K8s基本概念 |
为什么要用Kubernetes? |
||
K8s架构解析:Master节点介绍 |
|||
K8s架构解析:Node节点介绍 |
|||
什么是Pod? |
|||
为什么要引入Pod? |
|||
定义一个Pod |
|||
零宕机发布应用必备知识:Pod三种探针 |
|||
零宕机必备知识:StartupProbe |
|||
零宕机必备知识:Liveness和Readiness |
|||
零宕机必备知识:Pod退出流程 |
|||
零宕机必备知识:PreStop的使用 |
|||
资源调度 |
RC&ReplicaSet |
||
无状态服务Deployment概念 |
|||
Deployment的更新 |
|||
Deployment的回滚 |
|||
Deployment扩容和缩容 |
|||
Deployment更新暂停和恢复 |
|||
Deployment更新注意事项 |
|||
有状态应用管理StatefulSet概念 |
|||
创建一个StatefulSet应用 |
|||
StatefulSet扩容缩容 |
|||
StatefulSet更新策略 |
|||
StatefulSet灰度发布 |
|||
StatefulSet级联删除和非级联删除 |
|||
守护进程服务DaemonSet |
|||
DaemonSet的使用 |
|||
DaemonSet的更新和回滚 |
|||
HPA自动扩缩容 |
|||
服务发布 |
Label&Selector |
||
在k8s上是如何发布服务的 |
|||
什么是Service |
|||
定义一个Service |
|||
使用Service代理k8s外部服务 |
|||
使用Service反代外部域名 |
|||
Service常用类型 |
|||
什么是Ingress? |
|||
使用helm安装ingress |
|||
Ingress简单使用 |
|||
Ingress多域名使用 |
|||
配置管理 |
k8s配置管理ConfigMap |
||
k8s加密数据管理Secret |
|||
ConfigMap&Secret使用SubPath |
|||
ConfigMap&Secret热更新 |
|||
k8s1.19的不可变Secret和ConfigMap |
|||
进阶篇 |
持久化存储 |
k8s存储Volumes介绍 |
|
Volumes HostPath挂载宿主机路径 |
|||
Volumes EmptyDir实现数据共享 |
|||
挂载NFS至容器 |
|||
持久化存储PV&PVC概念 |
|||
PV&PVC入门使用 |
|||
高级调度 |
CronJob计划任务 |
||
污点和容忍Taint&Toleration入门 |
|||
Taint&Toleration补充 |
|||
初始化容器InitContainer |
|||
Affinity亲和力入门 |
|||
节点亲和力NodeAffinity使用 |
|||
Pod亲和力和反亲和力 |
|||
Topology拓扑域概念 |
|||
使用Topology实现多地多机房部署 |
|||
临时容器概念和配置 |
|||
使用临时容器在线debug |
|||
准入控制及细粒度权限控制 |
RBAC权限管理概念 |
||
RBAC使用 |
|||
安装一键式k8s资源平台Ratel到k8s集群中 |
|||
Ratel简单使用 |
|||
准入控制 |
|||
Kubernetes服务质量QoS |
|||
使用PodPreset预配置容器时区注意事项 |
|||
Dashboard基于用户密码认证 |
|||
RBAC实现不同用户不同权限 |
|||
ServiceAccount权限管理 |
|||
高级篇 |
云原生存储及存储进阶 |
云原生存储Rook介绍 |
|
Rook部署 |
|||
使用Rook部署Ceph集群 |
|||
创建块存储类型的动态存储 |
|||
StatefulSet动态申请存储 |
|||
使用PVC动态申请存储 |
|||
共享文件系统类型的StorageClass |
|||
PVC在线扩容和PVC快照 |
|||
Rook集群清理和重建 |
|||
PVC在线扩容使用 |
|||
PVC快照和回滚 |
|||
Rook Ceph xfs_repair问题 |
|||
存储回顾 |
|||
中间件容器化及Helm |
容器化中间件基本说明 |
||
如何部署一个容器到k8s |
|||
部署Redis Operator |
|||
在k8s上部署Redis集群 |
|||
Redis集群扩容和缩容 |
|||
部署RabbitMQ集群到k8s |
|||
解决RabbitMQ密码不生效问题 |
|||
RabbitMQ扩容和缩容 |
|||
Helm v3安装使用 |
|||
Helm目录层级 |
|||
Helm语法 |
|||
编写Helm部署RabbitMQ集群 |
|||
运行自己编写的Helm |
|||
部署Zookeeper和Kafka集群 |
|||
Kafka和Zookeeper集群扩容缩容 |
|||
运维篇 |
K8s容器日志收集 |
EFK日志收集 |
|
使用Filebeat收集容器内日志 |
|||
使用不同资源名称查询日志 |
|||
Prometheus监控入门 |
Prometheus安装 |
||
Prometheus Metrics类型 |
|||
PromQL基本操作 |
|||
PromQL常用函数 |
|||
解决Scheduler监控问题 |
|||
Prometheus监控etcd集群 |
|||
Prometheus Exporter |
|||
Prometheus黑盒监控 |
|||
Prometheus additional |
|||
Prometheus告警处理 |
Alertmanager入门 |
||
Prometheus使用邮件告警 |
|||
Prometheus使用微信告警 |
|||
Prometheus自定义告警模板 |
|||
Prometheus监控实战 |
Prometheus自动发现 |
||
Prometheus监控Java JVM |
|||
基于Eureka自动发现监控Java JVM |
|||
服务发布Ingress进阶 |
Ingress Nginx入门 |
||
Ingress Nginx域名重定向 |
|||
Ingress Nginx前后单分离 |
|||
Ingress Nginx SSL配置 |
|||
Ingress Nginx黑白名单 |
|||
Ingress Nginx匹配请求头 |
|||
Ingress Nginx速率限制 |
|||
Ingress Nginx实现灰度/金丝雀 |
|||
Ingress Nginx自定义错误页面 |
|||
Ingress Nginx基本认证 |
|||
Ingress Nginx监控 |
|||
k8s 1.19下的Ingress配置 |
|||
DevOps篇 |
持续集成/持续部署入门 |
Jenkins CICD介绍 |
|
Jenkins安装 |
|||
Jenkins声明式流水线入门 |
|||
Jenkins变量使用 |
|||
Jenkins级联变量 |
|||
镜像仓库配置 |
|||
GitLab安装配置 |
|||
Jenkins Credentials配置 |
|||
Jenkins BlueOcean入门 |
|||
不同环境流水线设计 |
|||
图形化创建Jenkinsfile |
|||
持续集成/持续部署实战 |
基于K8s的动态Jenkins Slave |
||
Jenkins配置Kubernetes多集群 |
|||
KUBECONFIG多集群配置 |
|||
Jenkins自动化构建Java应用 |
|||
Jenkins自动化构建NodeJS应用 |
|||
Docker镜像高级优化及自动化构建建议 |
|||
Jenkins生产环境和UAT环境流水线设计 |
|||
Jenkins基于角色的账户管理 |
|||
SpringCloud容器化原理及生产建议 |
容器化SpringCloud项目说明 |
||
SpringCloud架构解析 |
|||
如何在k8s上正确部署Eureka |
|||
到底要不要用Eureka |
|||
如何正确部署Zuul和ConfigServer到k8s |
|||
SpringCloud项目总结 |
|||
知识拓展 |
二进制集群升级 |
二进制Kubernetes升级说明 |
|
二进制Etcd集群升级 |
|||
二进制Kubernetes升级说明 |
|||
二进制Kubernetes升级Master组件 |
|||
二进制Kubernetes升级Node和Calico |
|||
二进制Kubernetes升级CoreDNS |