【讲师简介】 李老师
曾在某千亿级上市公司,担任云事业群技术总监、集团的云计算首席专家和数字化转型平台业务负责人,带领团队从事数据中心云化、云原生架构、人工智能与数据平台等方向的产品研发和产业化工作。
曾任职于中科院某国家级重点实验室,云计算与集群计算课题组负责人,将云计算、分布式等技术成功应用在政府、航天、国防、央企等领域大型工程项目中,部分项目成果被甲方作为数字化转型成功案例在全国推广。
兼任中国新一代IT产业推进联盟存储分委会秘书长、全国高校人工智能与大数据创新联盟专家委员、西安交通大学研究生院外聘专家和校外导师,荣获中国软件协会“优秀CTO”称号。
十多年工作经验,技术功底深厚,产业视野宽广。线下培训学员逾两千人次,线上课程点播数万次,培训客户包括中国电信、中国联通、Intel亚太研发中心、Dell EMC中国研发中心、金融机构、互联网公司等多家大型公司与机构。授课思路清晰,内容充实,获得了一致好评。
【课程大纲】
第一天上午
1. 引言
1.1 为什么把“K8s”称为“云原生”容器平台
1.2 从成功案例看K8s等云原生技术给我们带来的价值
1.3 容器镜像、容器运行时与容器编排平台
2. 容器技术基础
2.1 容器技术原理
2.2 Docker安装配置
2.3 Dockerfile:指令详解、最佳实践与常见误区
2.4 Docker发展近况及对用户的影响
实验:通过Dockerfile构建容器镜像并运行
第一天下午
3. Kubernetes(K8s)架构及部署
3.1 K8s 架构及原理
3.2 K8s 部署方案:从单节点集群到生产级部署
3.3 K8s中的namespace和Kubectl的context设置
实验:通过kubectl和vscode插件操作K8s集群
4. K8s 工作负载控制器详解(上)
4.1 多容器Pod的几种典型设计模式
4.2 常用工作负载控制器一览
4.3 Deployment控制器详解:创建、升级、回滚及扩/缩容
4.4 DaemonSet
4.5 Job/CronJob
实验:在K8s集群上创建工作服在并实现滚动发布和弹性扩缩
第二天上午
5. Service与Ingress
5.1 Service及其实现原理
5.2 Service网络瓶颈分析
5.3 服务注册/发现与负载均衡方案对比:Spring Cloud与K8s
实验:通过Service对外暴露服务提供对应用的访问
5.4 使用Ingress对外暴露服务
5.5 Ingress Controller部署方案对比
5.6 API Gateway方案对比:K8s Ingress与Spring Cloud Gateway等
实验:通过Ingress对外暴露服务提供对应用的访问
第二天下午
6. Pod管理进阶
6.1 Pod生命周期回调
6.2 存活探针与就绪探针
实验:Pod生命周期管理
6.3 资源需求与限制
6.4 K8s对Pod的调度
实验:Pod的资源需求与限制
7. 理解 K8s 的网络
7.1 K8s的网络模型
7.2 K8s的网络南向接口标准CNI
7.3 典型的K8s网络方案:Calico、Flannel及其他
7.4 实现虚机/物理机与K8s容器IP直通 —— 需求、问题及解决方法
7.5 实现Pod的固定IP和浮动IP
7.6 Pod的多网口方案及实现
实验:K8s Pod间以及Node的互联互通
第三天上午
10. 理解 K8s 的存储
10.1 K8s 中使用存储的几种模式和应用场景
10.2 PV、PVC详解
10.3 K8s的存储南向接口标准CSI及Storage Class、存储动态供给
10.4 公有云/IaaS环境与物理服务器环境搭建K8s的异同
实验:使用 K8s 的存储
11. K8s中的应用配置管理
11.1 使用ConfigMap保存和管理应用的配置信息
11.2 使用Secret保存和管理应用的敏感信息
11.3 配置中心方案比较:K8s与Spring Cloud
10. K8s 工作负载控制器详解(下)
10.1 基于StatefulSet部署和管理有状态服务
10.2 Headless Service与Stateful Set的协同
10.3 StatefulSet的扩缩
实验:基于 K8s StatefulSet 部署和管理有状态服务
第三天下午
11. Helm及应用
11.1 通过Helm管理应用
11.2 Helm原理
11.3 Helm Chart开发
实验:我的第一个Helm Chart
12. 理解Oprator模式及K8s扩展开发
12.1 K8s自有Controller的不足及Operator模式的产生与发展
12.2 通过CRD扩展K8s的资源类型
12.3 基于Kubebuilder开发Operator实现自定义资源的操作与维护
12.4 Kubebuilder与其他Operator开发框架的比较
12.5 Operator与Helm的比较和应用场景选择