Kubernetes集群实战(微课版)-教学大纲、授课计划_第1页
Kubernetes集群实战(微课版)-教学大纲、授课计划_第2页
Kubernetes集群实战(微课版)-教学大纲、授课计划_第3页
Kubernetes集群实战(微课版)-教学大纲、授课计划_第4页
Kubernetes集群实战(微课版)-教学大纲、授课计划_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE1PAGE1《Kubernetes集群运维》

教学大纲学时:64代码:适用专业:高职高专类计算机专业制定:审核:批准:一、课程的地位、性质和任务国内的云计算技术和产业飞速发展,为建设数字中国和全方位推动高质量发展提供了强有力的支撑。Kubernetes是用于管理容器化应用程序的系统,主要关注的是云原生技术。云原生应用逐步成为云计算的主流服务形式,容器编排系统Kubernetes作为云原生应用的基石,逐渐成为互联网企业和传统IT行业云化和简化运维的利器。国内相关行业的头部企业已成功地利用Kubernetes提高生产效率和降低IT成本。Kubernetes,本课程的开设旨在培养掌握Kubernetes集群运维的高技能人才,既服务国家战略型新兴产业急需,又满足我国紧缺人才的需求。通过本课程的学习,学生应获得在云原生环境中工作所需的知识和技能,能够了解Kubernetes的基础知识,系统地掌握Kubernetes集群的部署和运维方法,提高实际运维能力。本课程将紧密结合实际,以Kubernetes集群常见的运维业务和场景为例进行讲解,为学生今后从事实际的Kubernetes集群运维工作打下扎实的基础。整个课程按照从基础知识到实际操作,从基本功能到高级功能的逻辑进行讲授,要求学生通过动手实践来掌握相关的技能。本课程的培养目标如下。(1)具备Kubernetes集群运维能力:掌握Kubernetes的基础知识和集群运维管理方法,掌握Kubernetes集群的部署、升级和维护技能,熟练使用Kubernetes部署、扩展和管理容器化应用程序,学会应用程序容器化并在Kubernetes环境中构建、测试和部署,初步掌握在Kubernetes集群中实现云原生应用CI/CD流程的方法。(2)基本职业素养:具有良好的文化修养、职业道德、服务意识和敬业精神;接受企业的文化;具有较强的语言文字表达和社会活动等基本能力;提升项目管理能力,包括需求分析、项目规划、团队协作和沟通技巧;具有基本的英语文档阅读能力,能较熟练地阅读Kubernetes运维方面的相关英文资料;鼓励学生参与Kubernetes社区,了解开源项目的协作方式和贡献流程。二、课程教学基本要求理论上,要求学生掌握云原生基础知识、Docker容器化技术、Kubernetes基本概念、架构和组件,以及在Kubernetes环境中部署和管理应用程序的相关基础知识。技能上,要求学生能学会Kubernetes集群的部署和运维,能够使用Docker工具创建和管理容器,部署Kubernetes集群、熟悉Kubernetes基本操作、部署和运行应用程序、发布应用程序、管理存储和配置信息、Kubernetes调度、高效管理应用程序的部署,以及云原生应用程序的持续集成和持续部署。要求在教学过程中合理安排理论课时和实验课时,让学生有充分的时间动手实践,练习课程中学到的运维方法。三、课程的内容序号单元主要内容1从Docker转向Kubernetes认识与安装Docker掌握Docker的基本操作方法构建镜像并将应用程序容器化转向Kubernetes2部署Kubernetes集群创建Kubernetes集群部署和使用KubernetesDashboard3熟悉Kubernetes基本操作理解和使用Kubernetes对象使用kubectl命令创建和管理Pod4部署和运行应用程序使用Deployment运行无状态应用程序使用DaemonSet部署集群守护进程集运行一次性任务与定时任务5发布应用程序使用Service发布应用程序使用Ingress发布应用程序实现灰度发布与蓝绿发布6管理存储和配置信息配置和使用基本存储配置和使用持久卷管理配置信息和敏感信息7Kubernetes调度使用StatefulSet运行有状态应用程序实现水平自动扩缩容管理Pod的调度8高效管理应用程序的部署使用Helm简化应用程序的部署和管理使用Kustomize定制应用程序的部署配置9持续集成和持续部署在Kubernetes中部署开发的应用程序搭建云原生应用程序的CI/CD平台使用Jenkins的Maven项目实施CI/CD使用Jenkins的流水线项目实施CI/CD在Kubernetes中动态创建代理节点实施CI/CD四、课时分配表序号课程内容总学时讲课实验习题课机动1从Docker转向Kubernetes4222部署Kubernetes集群4223熟悉Kubernetes基本操作4224部署和运行应用程序6425发布应用程序8446管理存储和配置信息8447Kubernetes调度8448高效管理应用程序的部署6429持续集成和持续部署106410复习与考核6合计=SUM(ABOVE)64=SUM(ABOVE)32=SUM(ABOVE)26五、实验项目及基本要求实验课按教材各项目(单元)实操的内容安排。技术网络机房,在较高配置的单台Windows计算机上使用VMwareWorkstation组建实验环境,或者在多台CentOSStream8计算机上搭建实验环境。六、考核办法1.考试采用统一命题,包括笔试和上机考试,考试时间分别为120分钟。课程成绩=(笔试成绩+上机考试成绩)/2。2.本大纲各部分所规定基本要求、知识点及知识点下的知识细目,都属于考核的内容。考试命题覆盖到各部分,并适当突出重点部分,加大重点内容的覆盖密度。3.试题的难度可分为易、较易、较难和难四个等级,试卷试题难度的分数比例一般为2:3:3:2。4.试题主要题型有:选择题、填空题、编程题及实操题等。七、教法说明本课程将采用理论与实践相结合的教学方法。在理论上,通过实际应用范例引入系统运维项目,并讲解其应用场景和实施方法。授课过程中可结合PPT和课堂实时演示,要求学生理解并掌握。在实践上,组建实验平台,进行实验操作,让学生上机编程练习。充分地利用Internet资源,发挥学生学习的主动性和利用网络资源的积极性,搜集最新的Kubernetes运维资料,了解Kubernetes最新技术,尝试更新的解决方案。本课程要求学生自己动手编程,学习基本理论和方法,结合已有的知识,适当组织一些讨论,充分调动学生的主观能动性,以达到本课程的教学目的。本课程的重点:Kubernetes集群部署、部署和运行应用程序、使用Service发布应用程序、配置和使用持久卷、Kubernetes调度、使用Helm简化应用程序的部署和管理、在Kubernetes中部署开发的应用程序、搭建云原生应用程序的CI/CD平台。本课程的难点:使用Ingress发布应用程序、实现灰度发布与蓝绿发布、使用StatefulSet运行有状态应用程序、实现水平自动扩缩容、使用Kustomize定制应用程序的部署配置、使用Jenkins的流水线项目实施CI/CD、在Kubernetes中动态创建代理节点实施CI/CD。八、教材及参考书理论教材:《Kubernetes集群实战(微课版)》,人民邮电出版社,王雅静,成安霞

主编

,2024.8******学院学期授课计划20**-20**学年度第*学期编码:系部教研室任课教师课程名称Kubernetes集群运维课程性质必修大纲代码授课学时64实验学时26授课班级执行课程标准(教学大纲)说明教学大纲规定学时64总授课学时58相差百分比说明:总复习和考试共6学时序号授课内容学时教学资源及作业1学习情境一:从Docker容器转向Kubernetes云原生项目1从Docker转向Kubernetes任务1.1认识与安装Docker1.1.1应用程序部署方式的演变1.1.2什么是Docker1.1.3Docker架构1.1.4Docker版本演示:任务1.1.1安装DockerEngine任务1.2掌握Docker的基本操作方法1.2.1Docker镜像基础知识1.2.2Docker容器基础知识1.2.3Docker注册中心与仓库任务1.3构建镜像并将应用程序容器化1.3.1镜像的构建1.3.2应用程序镜像的内容1.3.3应用程序容器化的基本步骤任务1.4转向Kubernetes1.4.1什么是Kubernetes1.4.2为什么要使用Kubernetes1.4.3Kubernetes的主要特性1.4.4Kubernetes与云原生任务1.4.1了解Kubernetes的应用任务1.4.2了解Kubernetes在国内企业中的实际应用2教学资源:1、PPT项目12、微课视频作业:理论题2学习情境一:从Docker容器转向Kubernetes云原生项目1从Docker转向Kubernetes实验课任务1.1认识与安装Docker任务1.1.2了解docker命令的基本用法任务1.1.3运行一个容器任务1.2掌握Docker的基本操作方法任务1.2.1掌握镜像和容器的基本操作方法任务1.2.2自建Docker注册中心任务1.3构建镜像并将应用程序容器化任务实现将应用程序容器化2教学资源:1、PPT项目12、微课视频作业:项目实训3学习情境二:搭建Kubernetes集群项目2部署Kubernetes集群任务2.1创建Kubernetes集群2.1.1Kubernetes集群的组件2.1.2控制平面节点组件2.1.3工作节点组件2.1.4功能插件2.1.5Kubernetes部署方式2.1.6kubeadm工具2.1.7高可用Kubernetes集群任务2.2部署和使用KubernetesDashboard2.2.1Kubernetes集群资源管理方式2.2.2KubernetesDashboard的功能2教学资源:1、PPT项目22、微课视频作业:理论题4学习情境二:搭建Kubernetes集群项目2部署Kubernetes集群实验课任务2.1创建Kubernetes集群任务2.1.2准备Kubernetes集群安装环境任务2.1.3部署Kubernetes集群节点任务2.1.4安装Pod网络插件任务2.1.5测试Kubernetes集群任务2.1.6使用containerd命令行工具任务2.2部署和使用KubernetesDashboard任务2.2.1安装KubernetesDashboard任务2.2.2使用KubernetesDashboard2教学资源:1、PPT项目22、微课视频作业:项目实训5学习情境三:熟悉Kubernetes的基本操作项目3熟悉Kubernetes基本操作任务3.1理解和使用Kubernetes对象3.1.1什么是Kubernetes对象3.1.2Kubernetes对象的规约和状态3.1.3描述Kubernetes对象3.1.4Kubernetes对象的管理方法3.1.5对象的名称和UID3.1.6标签和注解3.1.7名称空间示范:任务3.1.1创建Kubernetes对象任务3.2使用kubectl命令3.2.1kubectl命令的基本用法3.2.2kubectl常用子命令3.2.3kubectl命令支持的资源类型3.2.4kubectl命令支持的输出格式示范:任务3.2.1熟悉kubectl命令的用法任务3.3创建和管理Pod3.3.1什么是Pod3.3.2Pod与容器3.3.3Pod的定义3.3.4Pod的生命周期3.3.5Pod的健康检查机制2教学资源:1、PPT项目32、微课视频作业:理论题6学习情境三:熟悉Kubernetes的基本操作实验课项目3熟悉Kubernetes基本操作任务3.1理解和使用Kubernetes对象任务3.1.2操作对象的标签任务3.1.3操作名称空间控程序任务3.2使用kubectl命令任务3.2.2使用kubectl命令辅助生成YAML文件任务3.3创建和管理Pod任务3.3.1创建多容器Pod任务3.3.2为Pod及其容器设置资源配额任务3.3.3实现Pod容器的健康检查2教学资源:1、PPT项目32、微课视频作业:项目实训7学习情境四:在Kubernetes集群中部署和运行应用程序项目4部署和运行应用程序任务4.1使用Deployment运行无状态应用程序4.1.1工作负载资源与控制器4.1.2ReplicationController、ReplicaSet和Deployment4.1.3Deployment的应用场景4.1.4Deployment的基本用法示范:任务4.1.1创建Deployment示范:任务4.1.2测试Deployment的自动修复功能2教学资源:1、PPT项目42、微课视频作业:理论题8学习情境四:在Kubernetes集群中部署和运行应用程序项目4部署和运行应用程序任务4.2使用DaemonSet部署集群守护进程集4.2.1什么是DaemonSet4.2.2DaemonSet的应用场景任务4.3运行一次性任务与定时任务4.3.1Job与一次性任务4.3.2CronJob与定时任务示范:任务4.3.1使用Job运行一次性任务2教学资源:1、PPT项目42、微课视频作业:理论题9学习情境四:在Kubernetes集群中部署和运行应用程序实验课项目4部署和运行应用程序任务4.1使用Deployment运行无状态应用程序任务4.1.3更新Deployment任务4.1.4回滚Deployment任务4.1.5暂停、恢复Deployment的更新过程任务4.1.6扩缩容Deployment任务4.2使用DaemonSet部署集群守护进程集任务4.2.1使用DaemonSet部署日志收集守护进程集任务4.2.2管理DaemonSet部署的集群守护进程集任务4.3运行一次性任务与定时任务任务4.3.2使用CronJob运行定时任务2教学资源:1、PPT项目42、微课视频作业:项目实训10学习情境五:在Kubernetes集群中发布应用程序项目5发布应用程序任务5.1使用Service发布应用程序5.1.1什么是Service5.1.2通过Endpoints理解Service的工作机制演示:创建Service以验证Endpoints5.1.3Service的负载均衡机制5.1.4Service的服务发现机制5.1.5定义Service5.1.6Service类型5.1.7无头Service5.1.8多端口Service2教学资源:1、PPT项目52、微课视频作业:理论题11学习情境五:在Kubernetes集群中发布应用程序实验课项目5发布应用程序任务5.1使用Service发布应用程序任务5.1.1验证Kubernetes的服务发现机制任务5.1.2使用Service对外发布集群中的应用程序任务5.1.3使用Service发布前后端应用2教学资源:1、PPT项目52、微课视频作业:项目实训12学习情境五:在Kubernetes集群中发布应用程序项目5发布应用程序任务5.2使用Ingress发布应用程序5.2.1什么是Ingress5.2.2定义Ingress5.2.3什么是Ingress控制器任务5.3实现灰度发布与蓝绿发布5.3.1什么是灰度发布5.3.2什么是蓝绿发布5.3.3Kubernetes的灰度发布和蓝绿发布解决方案5.3.4NginxIngress的灰度发布和蓝绿发布方法2教学资源:1、PPT项目52、微课视频作业:理论题13学习情境五:在Kubernetes集群中发布应用程序实验课项目5发布应用程序任务5.2使用Ingress发布应用程序任务5.2.1部署NginxIngress控制器任务5.2.2使用Ingress对外发布应用任务5.3实现灰度发布与蓝绿发布任务5.3.1使用NginxIngress实现灰度发布任务5.3.2使用NginxIngress实现蓝绿发布2教学资源:1、PPT项目52、微课视频作业:项目实训14学习情境六:管理Kubernetes的存储和配置信息项目6管理存储和配置信息任务6.1配置和使用基本存储6.1.1什么是卷6.1.2卷的类型示范:任务6.1.1使用EmptyDir卷存储数据任务6.2配置和使用持久卷6.2.1PV与PVC的持久化存储机制6.2.2PV的定义6.2.3PVC的定义6.2.4PV和PVC的生命周期2教学资源:1、PPT项目62、微课视频作业:理论题15学习情境六:管理Kubernetes的存储和配置信息实验课项目6管理存储和配置信息任务6.1配置和使用基本存储任务6.1.2使用HostPath卷挂载宿主机文件任务6.1.3使用NFS卷挂载NFS共享目录任务6.2配置和使用持久卷任务6.2.1创建基于NFS的PV任务6.2.2基于PVC使用PV2教学资源:1、PPT项目62、微课视频作业:项目实训16学习情境六:管理Kubernetes的存储和配置信息项目6管理存储和配置信息任务6.2配置和使用持久卷6.2.5StorageClass任务6.3管理配置信息和敏感信息6.3.1什么是ConfigMap6.3.2创建ConfigMap6.3.3使用ConfigMap6.3.4什么是Secret6.3.5创建Secret6.3.6使用Secret2教学资源:1、PPT项目62、微课视频作业:理论题17学习情境六:管理Kubernetes的存储和配置信息实验课项目6管理存储和配置信息任务6.2配置和使用持久卷任务6.2.3基于StorageClass实现动态卷制备任务6.3管理配置信息和敏感信息任务6.3.1使用ConfigMap为Tomcat提供配置文件任务6.3.2使用Secret为MongoDB提供配置文件2教学资源:1、PPT项目62、微课视频作业:项目实训18学习情境七:掌握Kubernetes的调度方法项目7Kubernetes调度任务7.1使用StatefulSet运行有状态应用程序7.1.1什么是StatefulSet7.1.2StatefulSet的特点7.1.3StatefulSet的组件任务7.2实现水平自动扩缩容7.2.1什么是HPA7.2.2如何定义HPA7.2.3什么是MetricsServer2教学资源:1、PPT项目72、微课视频作业:理论题19学习情境七:掌握Kubernetes的调度方法实验课项目7Kubernetes调度任务7.1使用StatefulSet运行有状态应用程序任务7.1.1使用StatefulSet部署MySQL主从集群任务7.1.2扩缩容StatefulSet工作负载资源任务7.2实现水平自动扩缩容任务7.2.1部署MetricsServer/207任务7.2.2通过HPA实现Nginx的自动扩缩容2教学资源:1、PPT项目72、微课视频作业:项目实训20学习情境七:掌握Kubernetes的调度方法项目7Kubernetes调度任务7.3管理Pod的调度7.3.1Kubernetes调度概述7.3.2Pod的定向调度7.3.3亲和性与反亲和性调度7.3.4污点与容忍度2教学资源:1、PPT项目72、微课视频作业:理论题21学习情境七:掌握Kubernetes的调度方法实验课项目7Kubernetes调度任务7.3管理Pod的调度任务7.3.1将应用程序部署在特定的节点上任务7.3.2将同一应用程序部署到不同的节点上任务7.3.3将关联的应用程序部署到同一节点上任务7.3.4示范污点和容忍度的使用2教学资源:1、PPT项目72、微课视频作业:项目实训22学习情境七:学会高效管理应用程序的部署项目8高效管理应用程序的部署任务8.1使用Helm简化应用程序的部署和管理8.1.1什么是Helm8.1.2Helm是如何工作的8.1.3Chart结构8.1.4Helm的基本用法示范:任务8.1.1安装和配置Helm示范:任务8.1.2熟悉Helm的基本操作2教学资源:1、PPT项目82、微课视频作业:理论题23学习情境八:学会高效管理应用程序的部署项目8高效管理应用程序的部署任务8.2使用Kustomize定制应用程序的部署配置8.2.1Kustomize的特性和应用场景8.2.2Kustomization文件8.2.3Kustomize的基本用法示范:任务8.2.1使用Kustomize管理Secret对象示范:任务8.2.2为Kubernetes对象设置贯穿性字段2教学资源:1、PPT项目82、微课视频作业:理论题24学习情境八:学会高效管理应用程序的部署实验课项目8高效管理应用程序的部署任务8.1使用Helm简化应用程序的部署和管理任务8.1.3使用Helm在Kubernetes中部署Kafka任务8.2使用Kustomize定制应用程序的部署配置任务8.2.3使用Kustomize组合Kubernetes对象任务8.2.4使用Kustomize定制Kubernetes对象任务8.2.5使用Kustomize管理不同环境的应用程序配置2教学资源:1、PPT项目82、微课视频作业:项目实训25学习情境九:初步掌握云原生应用程序的持续集成和持续部署项目9持续集成和持续部署任务9.1在Kubernetes中部署开发的应用程序9.1.1将应用程序部署到Kubernetes的基本流程9.1.2开源的企业级DockerRegistry项目Harbor示范:任务9.1.1基于Harbor自建企业级Docker注册中心任务9.2搭建云原生应用程序的CI/CD平台9.2.1DevOps的概念9.2.2CI/CD的概念9.2.3CI/CD的主要工具9.2.4CI/CD平台的组建思路任务9.2.1规划CI/CD平台2教学资源:1、PPT项目92、微课视频作业:理论题26学习情境九:初步掌握云原生应用程序的持续集成和持续部署项目9持续集成和持续部署任务9.2搭建云原生应用程序的CI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论