课程大纲
一、云原生概述(0.5 天)
1.1 “数智化”转型给IT系统带来的新挑战
1.2 “云原生”的概念和内涵
1.3 “云原生”落地典型案例
1.4 从单体应用到微服务架构应用
1.5 基于Kubernetes的云原生容器平台
1.6 容器相关标准、Docker及其替代方案
1.7 云原生容器平台生态技术简介:服务网格、Serverless及其他
1.8. DevOps,打通开发-运维,规范流程,提升效能
二、容器技术基础(0.5 天)
1. 容器技术原理
2. Docker安装配置
实验:运行Docker容器
3. Dockerfile详解
4. Docker镜像最佳实践与常见误区
实验:构建容器镜像
三、K8s 详解(2 天)
1. Kubernetes(K8s)架构及部署
1.1 K8s在云原生技术体系中的核心地位
1.2 K8s 架构及原理
1.3 K8s 部署方案:从单节点集群到生产级部署
1.4 K8s中的namespace和Kubectl的context设置
1.5 K8s 的RBAC机制
实验:通过kubectl操作K8s集群
2. K8s 工作负载控制器
2.1 多容器Pod的几种典型设计模式
2.2 常用工作负载控制器一览
2.3 Deployment控制器详解:创建、升级、回滚及扩/缩容
2.4 DaemonSet
2.5 Job与CronJob
实验:在K8s集群上创建工作服在并实现滚动发布和弹性扩缩
3. Service与Ingress
3.1 Service及其实现原理
3.2 Service网络瓶颈分析
实验:通过Service对外暴露服务提供对应用的访问
3.3 使用Ingress对外暴露服务
实验:通过Ingress对外暴露服务提供对应用的访问
4. Pod管理进阶
4.1 Pod生命周期回调
4.2 存活探针与就绪探针
实验:Pod生命周期管理
4.3 资源需求与限制
4.4 K8s对Pod的调度
实验:Pod的资源需求与限制
5. K8s 的网络
5.1 K8s的网络模型
5.2 K8s的网络南向接口标准CNI
5.3 典型的K8s网络方案
5.4 实现虚机/物理机与K8s容器IP直通 —— 需求、问题及解决方法
实验:K8s Pod间以及Node的互联互通
6. K8s 的存储
6.1 K8s 中使用存储的几种模式和应用场景
6.2 PV与PVC
实验:使用 K8s 的存储
6.3 使用ConfigMap保存和管理应用的配置信息
6.4 使用Secret保存和管理应用的敏感信息
实验:通过K8s的ConfigMap和Secret对应用进行配置
7. 在K8s上运行有状态负载
8.1 基于StatefulSet部署和管理有状态服务
8.2 Headless Service与Stateful Set的协同
8.3 StatefulSet的扩缩
实验:基于 K8s StatefulSet 部署和管理有状态服务
8. 在IaaS环境/虚拟机中部署K8s
9.1 实现IaaS环境与K8s的联动
9.2 使用IaaS的存储及注意事项
9.3 在IaaS环境中部署K8s的网络问题及方案