课程特色
互联网时代的到来,使得互联网上的产品具有创新成本低、需求变化快、用户群体大等特点,促使业务不断扩大,软件功能持续增加,导致单体架构的维护成本、人员学习成本、缺陷修复成本、增加新功能的成本以及系统扩展成本等都在急剧增加,单块架构无法适应互联网时代的快速变化,面临着越来越多的挑战,一方面,代码的可维护性、扩展性、灵活性在降低;而另一方面,系统的测试成本、构建成本以及维护成本在显著增加。因此,随着项目或者产品规模的不断扩大,单块架构应用的改造与重构势在必行。
微服务架构随着RESTful、容器技术、云计算、DevOps、持续交付、敏捷项目管理等IT技术的深入应用,有效的解决了互联网时代遇到的众多挑战,因此微服务架构深受企业的欢迎,并在企业内部所采用。
此次课程重点为大家介绍基于Istio的微服务Service Mesh实践,分享讲师Service Mesh在企业微服务治理中的应用实践。
课程目标
1、 学习掌握微服务架构的概念与本质;
2、 使学员彻底理解微服务技术架构本质以及设计的原则;
3、 介绍Service Mesh基本概念;
4、 使学员掌握Service Mesh在企业微服务治理中的应用;
5、 使学员学会微服务在企业的运维管理;
6、 使学员能学会对微服务的监控、服务治理等工作;
课程对象
1、 本课程适合于企业IT架构师、技术经理等角色;
2、 本课程适合于软件高级开发工程师;
3、 本课程适合于业务需求人员;
4、 本课程适合于企业高层管理人员;
5、 本课程适合于IT运维人员;
课程形式
以课堂讲解、演示、案例分析为主,辅以互动研讨、现场答疑、学以致用。
课程大纲
时间 | 内容 | 备注 |
第一天 | 第1个主题: 互联网时代的架构演变(60分钟) 1、 互联网时代特征“快” 2、 互联网时代对人性化软件的迫切要求 3、 互联网时代产品特点 4、 技术的多样性 5、 单体架构 6、 微服务架构 7、 精益创业 8、 敏捷项目管理 9、 DevOps 10、 Docker 11、 云计算 12、 云原生应用
第2个主题: 单体架构剖析(简单剖析单体架构的特点与不足)(30分钟) 1、 单体架构产生的背景 2、 单体架构的特征 3、 单体架构模式 4、 单体架构团队划分 5、 单体架构出现的问题 6、 单体架构模式的不足 7、 单体架构的挑战 8、 单体架构问题解决思路 9、 传统应用架构的问题
第3个主题: 微服务架构的概念与本质(学习掌握微服务架构的概念与本质)(90分钟) 1、 为什么需要微服务架构? 2、 微服务诞生的背景 3、 研发团队:目标、成就感、奖惩、待遇、凝聚力 4、 人才培育与成长(人员流动的优势与弊端) 5、 微服务解决的问题 6、 微服务架构解决方案 7、 微服务架构适用的场景 8、 微服务架构适用的企业 9、 什么是微服务(MicroService)架构? 10、 微服务架构是什么? 11、 微服务架构思路 12、 微服务的本质 13、 微服务架构有哪些特征? 14、 微服务架构视图 15、 微服务架构构件 16、 微服务架构的数据库 17、 微服务的服务目录 18、 SOA与微服务区别 19、 SOA架构特点 20、 微服务架构特点 21、 微服务架构的优势 22、 微服务架构的劣势 23、 微服务的设计原则
第4个主题: Service Mesh诞生的背景(介绍Service Mesh诞生的背景)(60分钟) 1、 互联网发展带来的问题 2、 微服务架构 3、 微服务架构的核心技术问题 4、 云原生应用 5、 高并发实时在线业务大型平台 6、 集群解决方案 7、 导致底层通讯机制成为开发的难点 8、 服务间通信基础设施层 9、 轻量级的网络代理 10、 云原生应用
第5个主题: Service Mesh概念(Service Mesh概念)(90分钟) 1、 服务发现代理一般有三种模式 2、 模式一:集中式代理 3、 模式二:客户端嵌入式代理 4、 模式三:主机独立进程代理 5、 服务间通信的基础设施层 6、 Service mesh 的特点 7、 应用程序间通讯的中间层 8、 轻量级网络代理 9、 应用程序无感知 10、 解耦应用程序的重试、超时、监控、追踪和服务发现 11、 Service Mesh 网络故障处理 | |
时间 | 内容 | 备注 |
第二天 | 第6个主题: Service Mesh原理(Service Mesh原理)(90分钟) 1、 Service Mesh基本原理 2、 服务之间的网络调用、限流、熔断和监控 3、 熔断 4、 延迟感知 5、 负载均衡 6、 最终一致 7、 从最原始的主机之间直接使用网线相连 8、 网络层的出现 9、 集成到应用程序内部的控制流 10、 分解到应用程序外部的控制流 11、 应用程序的中集成服务发现和断路器 12、 出现了专门用于服务发现和断路器的软件包/库,Twitter’s Finagle和 Facebook’s Proxygen。这时候还是集成在应用程序内部 13、 出现了专门用于服务发现和断路器的开源软件,如:NetflixOSS ecosystem 14、 最后作为微服务的中间层Service Mesh出现
第7个主题: Service Mesh的架构(Service Mesh的架构)(60分钟) 1、 社区Service Mesh的开源解决方案 2、 Linkerd解决方案 3、 Istio解决方案 4、 Twitter的Finagle 5、 Netflix的Hystrix 6、 Google的Stubby 第8个主题: Istio介绍(Istio介绍)(90分钟) 1、 Istio介绍 2、 Istio架构图 3、 Istio架构分为控制层和数据层 4、 Istio架构各个组成部分 5、 Envoy 6、 Mixer 7、 Istio Manager 8、 Istio-auth 9、 连接 10、 安全加固 11、 控制 12、 观察
第9个主题: Linkerd 介绍(Linkerd 介绍)(90分钟) 1、 Linkerd 介绍 2、 Linkerd 架构图 3、 Linkerd 基本功能 4、 负载均衡 5、 自动熔断 6、 服务发现后端集成 7、 动态请求路由和重新路由 8、 故障时自动重试请求 9、 HTTP 代理 10、 使用 iptables 规则 11、 RPC 机制 12、 分布式跟踪和度量仪器 13、 云原生应用 14、 云原生模型 15、 容器(Docker)提供资源隔离和依赖管理 16、 编排层(Kubernetes)底层硬件抽象
第10个主题: Istio部署(Istio部署)(120分钟) 1、 Istio部署介绍 2、 下载与部署Istio 3、 部署案例工程 4、 打开应用程序 5、 查看仪表板 6、 智能路由 7、 自定义路由 8、 根据 header 内容分发流量 9、 监控 10、 Prometheus 11、 分布式追踪 12、 grafana |