一、培训背景
随着信息技术的飞速发展,虚拟化技术得到了广泛的发展,从主机虚拟化再到后来的虚拟机虚拟化,再到现在以Docker+K8s为代表的容器技术,虚拟化技术不断的在创新和突破。Docker+K8s技术目前在开发与运维中使用的越来越多,越来越广泛,掌握Docker+K8s容器技术已成了求职加薪必备技能。本套课程从Docker的技术背景介绍,再到Docker+K8s技术的高级应用实战,全方位的介绍了Docker技术以及虚拟化云平台技术Kubernetes的体系结构、特性以及部署集成等相关知识。让学员全面系统的掌握Docker+K8s,并且具备部署企业私有虚拟化云平台环境的能力。本课程主要针对系统的研发人员,系统架构师,系统运维人员而设置。
二、课程目标
彻底理解Docker的体系架构与核心概念
Kubernetes(K8s)的架构与应用
掌握基于Docker和Kubernetes的企业应用架构
掌握基于虚拟化容器Docker与Kubernetes的体系架构、管理、部署,以及相应组件的原理和应用场景。
让学员具备部署基于企业虚拟化云平台环境的能力。
三、培训方式/工具及方法
PPT+教材+参考资料,理论讲解
提供配套的实验环境
场景+案例+模拟环境,动手实践
手把手解决问题+解决问题经验分享
四、课程大纲
Docker虚拟化容器引擎 第一天 | ||||||
章 | 节 | 学习目标 | 练习案例 | |||
第一章 什么是Docker及其体系架构 |
1、什么是Docker? 2、Docker的体系架构与基本概念 3、准备实验环境 4、安装Docker |
掌握Docker的架构与核心概念 | 安装Docker | |||
第二章 Docker的镜像 |
1、使用和访问Docker官方公有的镜像仓库 2、配置和使用阿里云Docker镜像加速仓库 3、管理Docker的镜像和容器 4、构建Docker镜像 ① 使用docker commit命令构建镜像 ② 使用dockerfile文件构建镜像 5、Docker File |
什么是Docker的镜像? 如何创建Docker的镜像? |
使用docker commit和docker file创建镜像 | |||
第三章 Docker的容器 |
1、容器的基本操作 2、容器的日志 3、管理容器的资源 ① 基础知识:Linux control groups ② Docker对CPU的使用 ③ Docker对内存的使用 ④ Docker对I/O的使用 |
什么是Docker的容器? 如何管理容器使用的资源? |
容器的基本操作和资源的使用 | |||
第四章 Docker网络和容器的通信 |
1、Docker网络通信的基本原理 2、Docker的网络模式 3、容器间的通信 4、容器访问控制 |
Docker的网络模式与容器的通信 | 使用不同的网络模式创建Docker的容器 | |||
第五章 Docker的数据管理 |
1、数据卷 2、数据卷容器 3、利用数据卷容器来迁移数据 |
数据卷与Docker数据的持久化 | 创建Docker的数据卷 | |||
第六章 搭建Harbor私有仓库 |
1、什么是Harbor? 2、安装Docker和Docker Compose 3、解压并配置harbor 4、安装harbor 5、访问harbor 6、通过终端访问harbor |
什么是私有的镜像仓库?及其作业 | 搭建Harbor私有镜像仓库 | |||
基于K8s的虚拟化容器技术(基础)第二天 | ||||||
章 | 节 | 练习 | 学习目标 | |||
第一章:K8s简介体系架构 | 什么是Kubernetes(K8s)? Kubernetes的体系架构 Kubernetes的组件 Kubernetes的相关术语 |
K8s的体系机构与基本术语 | ||||
第二章:K8s集群的部署 | 准备工作 使用kubeadmin部署K8s集群 部署DashBoard UI 使用yum方式部署K8s集群 |
部署K8s环境 | ||||
第三章:使用Kubectl | Kubectl常用命令及使用技巧 在K8s中部署应用 |
使用kubectl命令行工具操作K8s | 什么是kubectl及其使用 | |||
第四章:Pod对象的管理 | Pod介绍与容器分类 镜像拉取策略 资源限制 重启策略 Pod健康检查(Probe探针) Pod调度策略 故障排查 |
使用pod在K8s中部署应用 | Pod的基本概念和部署 | |||
第五章:控制器Controller | Deployment控制器 Daemonset控制器 Job控制器 CronJob控制器 StatefulSet控制器 |
练习使用不同的K8s的控制器 | 什么是控制器,及控制器的作用。 | |||
第六章:服务Service | Service介绍与定义 Service三种类型 Service 代理模式 集群内部DNS服务(CoreDNS) 通过Ingress访问应用简介 |
通过Service访问Pod中的应用程序 | 什么是Service,及Service的作用。 | |||
基于K8s的虚拟化容器技术(进阶)第三天 | ||||||
章 | 节 | 练习 | 学习目标 | |||
第一章:持久化存储 | K8s与Docker的持久化存储 数据卷的类型 持久卷和持久卷声明 PV动态供给 |
持久卷的声明和持久卷的使用 | 理解并掌握K8s的持久化机制,及其与Docker的区别。 | |||
第二章:管理应用程序的配置 | Secret ConfigMap ConfigMap的动态更新 |
掌握如何配置K8s的参数设置 | ||||
第三章:K8s平台中日志收集 | 收集哪些日志 日志收集方案 安装ELK 收集k8s组件日志 收集nginx访问日志 实战案例:采集tomcat pod日志 |
部署ELK环境,采集K8s日志 | 理解并掌握K8s的日志收集方案与部署 | |||
第四章: 基于K8S构建企业CI/CD平台 |
Jenkins与Kubernetes的持续集成与持续部署 基于Kubernetes的Jenkins集群架构 Jenkins与Kubernetes集成 应用部署的升级 应用部署的金丝雀升级 应用部署蓝绿升级 应用部署的滚动升级 使用Helm简化Kubernetes应用的部署和管理 什么是Helm? 【实战】部署Helm 使用Helm管理Kubernetes 企业生产环境的项目构建 基于K8s构建微服务应用 基于K8s的Devops平台构建 |
在Kubernetes中部署Jenkins Jenkins在K8s中持续部署 |
理解并掌握什么是CI/CD 如何集成Jenkins和K8s |
|||
第五章:Kubernetes的监控与故障诊断 | Kubernetes监控指标与监控方案 监控系统部署 Kubernetes的故障诊断与解决方案 Pods 模块检查 Service模块检查 |
部署K8s监控系统 | K8s的监控指标与故障诊断 |
五、培训师资
张老师 曾工作于北京联通研究院,摩托罗拉中国公司,美团;目前就职于一家隶属于清华大学的上市公司,主要公司业务是服务国家安全和国外安全项目,在公司担任大数据架构师及区块链技术负责人,主要负责中台的技术、数据。拥有16年IT相关工作经验,10余年的培训经验,具备丰富的企业应用软件开发经验、深厚的软件架构设计理论基础及实践能力,尤其擅长区块链、人工智能以及大数据相关技术。此外,张老师现任工信部大数据实验室研究员;工信部特约讲师;工信部大数据、人工智能培训体系建设和试题的开发专家团成员;张老师精通大型分布式互联网应用架构设计与技术开发。对于大规模分布式架构、微服务架构、云计算与容器化技术、开发与运维一体化、应用系统安全与和架构设计、海量数量处理、大数据等方向特别有研究,尤其是偏后端的对于高并发系统上有丰富的架构和实施经验。
江老师 K8s运维架构师,资深Linux集群架构实战专家,从事DevOps相关工作近10年,在自动化运维、容器化及云计算方面积累了丰富的实战经验,RHCA/VCAP-DVA/VCAP-NV/CKA认证,Linux、VMware高级技术专业人士,红帽(RedHat)RHCA认证架构师并且以5门满分通过,(证书编号:110-421-971)。
李老师 K8s中国区官方认证导师,Linux集群架构师,前奇虎360高级DevOps工程师。 从事DevOps相关工作12年了,维护过近千台服务器,曾主导从0到1实现亿级PV中大型互联网架构,K8s容器平台建设及微服务容器化迁移等多个项目。在自动化运维、容器化及云计算方面积累了丰富的实战经验。