课程概要
学习本课程,学员将会对微服务、Docker、Swarrm、Kubernetes、Spring Cloud有一个系统、全面的认识。通过学习,学员将能掌握相关的知识体系,并能够投入到项目实战中去。
本课程采用实战优先的原则,讲解如何从0开始编写基于Spring Boot/Cloud开发的微服务,并逐步解决项目中的问题,最终实现一个高可用的微服务架构;随后,讲解如何将应用容器化、如何实现资源的合理分配、并将应用部署到Kubernetes平台。
本课程使用目前最新的Spring Cloud Hoxton SR1、Docker 19.12、Kubernetes 1.13进行讲解,各种新特性一览无余!
需要安装:
1. JDK1.8
2. Maven
3. IntelliJ IDEA(或Spring Tool Suite,不建议原生Eclipse)
4. Docker
5. Kubernetes(或Minikube)
课程目标
理解微服务是什么、有什么好处、设计原则、拆分原则
深入理解Spring Cloud核心组件及相关扩展钩子,能够使用Spring Cloud开发微服务,并具备二次开发Spring Cloud的能力
深入理解Docker核心概念及常用知识点,能够使用Docker常用命令、构建Docker容器,并将应用部署在Docker中
深入理解Kubernetes核心概念及常用知识点,能够在Kubernetes中部署应用,并具备解决问题的能力
课程大纲
方向 | 内容安排 |
微服务架构及概述 | 架构的演进史 微服务诞生背景 微服务适用场景 微服务架构的优点与挑战 微服务的设计原则 如何拆分微服务 |
DevOps的兴起 | CI/CD基本概念和原则 CI/CD常用工具 DevOps的势在必行 |
Docker上手 | Docker简介 安装Docker 镜像加速器 Docker常用命令 |
Dockerfile详解 | Dockerfile指令详解 Dockerfile最佳实践 |
镜像管理 | Docker Hub Docker Registry 第三方Docker Registry:Nexus/Habor |
Docker工具 | 使用Maven构建Docker镜像 可视化管理工具 |
Docker Compose | Compose的安装 快速入门 docker-compose.yml常用命令 docker-compose常用命令 控制服务启动顺序 在生产环境中使用Docker Compose 使用Docker Compose伸缩应用 |
Swarm | Swarm是什么 Swarm搭建 Swarm使用 在Swarm上部署服务 |
Kubernetes入门 | Kubernetes是什么 安装Kubernetes(minikube|集群) Kubernetes架构 基本组件及常用插件 Kubernetes命令详解 |
Kubernetes术语及部署模型 | Pod详解 RC RS Deployment ReplicaSet Job Secret Service 存储 StatefulSet等 |
Kubernetes资源调度 | 资源分配 扩容与缩容:手动方式(kubectl scale)、HPA方式等 各种调度方式,例如亲和性调度、污点与容忍等等 升级与回滚 |
多维度的微服务监控 | 应用实例监控 JVM监控与分析 日志监控聚合与分析 容器实例的监控 分布式应用监控 我们实现的监控与告警 |
案例分享 | 我们如何开发 我们如何测试 我们如何发布与运维 我们如何监控应用 |