严选 ServiceMesh 实践基础架构三问: 1. 服务治理:RPC 框架 vs 服务治理平台 2. 多语言 vs Java 3. 开源 vs 自研2/24 /01 /02 /03 严选 Service Mesh 演进 混合云架构落地实践 规划与展望3/24 严选ServiceMesh演进 /014/24 严选第一代 Service Mesh 架构 • 使用 Consul 作为服务发现组件 • 数据面:cNginx 持续演进的诉求 • 提供高质量的服务治理能力 • 增强流量管理能力 • 将更多治理特性(如限流、熔断、故障注入)与业务架构解耦 • 支持更多的协议 • 增强控制面 • 配合业务容器化上云及混合云架构8/24 行业技术演进 - 通用型 Service Mesh 出现 2017年1月23日 加入 CNCF 2017年4月25日 1.0Releases Linkerd 2016年9月13日 cNginx vs Envoy(优化前) • 1600RPS+40个并发(主机配置均为 8C16G) • cNginx 的 RT overhead 在0.4ms左右 • Envoy(client模式)的 RT overhead 是0.6ms左右12/24 性能视角 – cNginx vs Envoy(优化后) • 优化方案 • 采用 sriov 容器网络 • Envoy:将1.13版本中0 码力 | 25 页 | 2.07 MB | 6 月前3
Service Mesh 在『路口』的产品思考与实践微服务治理与业务逻辑解耦 Part 1: 为什么需要Service Mesh? Service 业务逻辑 SDK 协议编解码 服务发现 负载均衡 熔断限流 服务路由 …… 混合在一个进程内, 应用既有业务逻辑, 也有各种功能, 每次升级都要重新发布应用 升级成本高 版本碎片化严重 中间件演进困难6/39 微服务治理与业务逻辑解耦 Part 1: - 专注服务间通讯和相 关能力 - 与业务逻辑无关 将SDK客户端 的功能剥离 混合在一个进程内, 应用既有业务逻辑, 也有各种功能, 每次升级都要重新发布应用 业务进程专注于业务逻辑 SDK 中的大部分功能, 拆解为独立进程, 以 Sidecar 的模式运行 将服务治理能力下沉到基础设施,实现独立演进,透明升级7/39 异构系统统一治理 Part 云原生架构下,sidecar 借助于 k8s 的 webhook/operator 机制可以方便地实现注入、升级 等运维操作 • 然而大量系统还没有跑在 k8s 上,所以我们通过 agent 的模式来管理 sidecar 进程,从而可 以使 Service Mesh 能够帮助老架构下的应用完成服务化改造,并支持新架构和老架构下服务 的统一管理。 VM 应用进程 Sidecar Agent0 码力 | 40 页 | 15.86 MB | 6 月前3
蚂蚁金服网络代理演进之路Service 业务逻辑 轻量级SDK 协议编解码 Sidecar (MOSN) 服务发现 负载均衡 熔断限流 服务路由 …… 将SDK客户端 的功能剥离 Sidecar专注服务间通讯 混合在一个进程内, 应用既有业务逻辑, 也有各种功能 业务进程专注于业务逻辑Service Mesh 为什么蚂蚁需要Service Mesh • 拥抱微服务,云原生 • 异构语言体系融合 • 统一服务治理 mosn 容器进行无损平滑升级,即“给奔跑的汽车换轮胎” l 支持 SOFARPC、HTTP/1.x、消息、TLS 等多种协议无损迁移资源问题 CPU • Cpuset模式,与业务App共享独占核 • Cpushare模式,与应用容器共享物理机Cpu资源 • 根据具体业务情况设置Cpu资源 内存 • 使用应用内存的1/16 • 与业务Share内存,最大限制使用1G,存在超卖问题,触发Pod 南北,东西应用层流量的全局管 控,调度和安全能力 § 全方位的安全防护,全链路加密, 应用层的零信任网络 § 随通信基础设施,通信场景的变 化而演进 § 金融级的通信安全基础设施关于未来 § 云原生,多云混合云时代,南北,东西流量的边界逐渐模糊 § 应用网络代理层部分能力固化,下沉至系统网络栈或者智能硬件设备 § 物理通信基础设施的升级势必带来应用网络层的变革 § Sidecar -> Proxyless0 码力 | 46 页 | 19.93 MB | 6 月前3
Service Mesh 高可用在企业级生产中的实践Monolithic 混合微服务架构 Microservices • 微服务 & 单体 • Spring Cloud & Service Mesh7/总页数 运行时支撑服务 • 服务注册中心 • 服务网关 • 配置中心 混合微服务的互联互通 目标 • 互联互通 • 平滑迁移 • 灵活演进 环境 • 虚拟机 • Kubernetes8/总页数 混合微服务的互联互通 百度智能云 百度智能云 CNAP 混合微服务架构图 • Spring Cloud • Service Mesh9/总页数 注册中心与高可用方案 /0210/总页数 • Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable 开源能带来哪些好处?36/总页数 • Service Mesh 概述 • Consul作为注册中心在云环境的实践与应用 • 有了这三个锦囊,再也不用担心微服务治理了 • 一文理解微服务高可用的常用手段 • 微服务断路器模式实现:Istio vs Hystrix 参考 & 扩展阅读感谢聆听 欢迎关注,获取最新分布式架构内容 关注服务网格,关注 ServiceMesher0 码力 | 38 页 | 1.38 MB | 6 月前3
Service Mesh 微服务架构设计微服务架构设计的现状 3 Service Mesh微服务设计 4 Service Mesh的框架介绍我过往的经历情况 类型:传统互联网 模式:CS/BS模式 类型:互联网 模式:单体模式 类型:游戏 模式:单体模式 类型:互联网金融 模式:微服务模式Java版本演进史 JDK J2ME J2SE J2EE Java SE 2004年 Java SE 5.0 2006年 Java • 各服务不需要统一技术栈,不需要共享公共库和框架;微服务究竟带来什么好处 Ready for market faster:快速响应市场地变化 Mix of technologies:多技术栈混合使用; Scalability:可扩展性 Resiliency:可伸缩性 Agility:高效的团队协作,适合two-pizza rule团队;微服务带给我们的麻烦是什么 Complexity 实现请求的可靠传递。在实践中,服务网格通常实现为一组 轻量级网 络代理,它们与应用程序一起部署,但 对应用程序透明。Service Mesh的实现原理 Spring Cloud的类库模式 Service Mesh的Sidecar模式Service Mesh:Istio架构Service Mesh:Linkerd架构Service Mesh: OCTO-Mesh架构为了解决单体的复杂度问题,我们引入微服务架构0 码力 | 36 页 | 26.53 MB | 6 月前3
函数计算在双11小程序场景中的应用预留实例:性能好 • 按量实例:按需使用函数计算-预留实例 预留实例 按量实例 效果 0 0 禁止调用 10 0 只使用预留实例,固定费用 0 10 只使用按量实例,按需付费 10 5 混合模式,兼顾性能和成本函数计算 DemoThank you ! 关注“阿里巴巴云原生”公众号 回复 1124 获取 PPT0 码力 | 13 页 | 6.95 MB | 6 月前3
Service Mesh的实践分享调用链埋点的影响必须足够小 • 鉴权需要同步进行,调用Mixer代 价大 • Mixer的中央节点问题 • 传统基于日志收集的tracing方 案足够成熟 • 内部实现一套可插拔的鉴权框 架也能接受混合部署 vs. 绑定K8s • 历史原因导致长期都会物理机 和容器并存,内部需求必须要 同时支持物理机和云 • 绑定K8s能够享受K8s的红利, 但也限制了使用范围 +服务治理程度更接地气 Thrift效率低比内置 的HTTP模块慢得多 • 性能消耗比JSON转Thrift还要大 • 最终废弃了PHP Thrift模块,直接使用 自带的c写的http模块 + +Daemonset共享模式下Proxy资源的竞争 • Proxy作为资源的一种,隔离性很重要 • 多个Pod共享一个Proxy • 不同Pod的流量特征差异很大 • 如何保证每个pod都有足够的Proxy资源,防止被某些Pod吃光?0 码力 | 30 页 | 4.80 MB | 6 月前3
微博Service Mesh实践BeiJing 正向代理理特点 �30 微博Service Mesh实践 - WeiboMesh ➢ 业务平滑迁移 ➢ agent故障转移,开关控制 ➢ 多发,超时精确控制 ➢ 适合⾮非云,混合云快速迁移Service Mesh Meetup · BeiJing 反向代理理配置 �31 微博Service Mesh实践 - WeiboMesh motan-service motan-basicService 微博Service Mesh实践 - WeiboMesh 1-跨语⾔言服务化 3-可靠的Transport 5-Http、Web⾃自动转RPC 2-服务治理理与业务逻辑解耦 6-适合⾮非云,混合云等,适配Registry⽀支持云原⽣生 4-节省资源Service Mesh Meetup · BeiJing Weibo Mesh在业务应⽤用中的效果 �35 微博Service Mesh实践0 码力 | 43 页 | 1007.85 KB | 6 月前3
阿里云容器服务大促备战keeper云原生实时计算与人工智能@微博 2.4倍性能提升 百亿实时样本 万亿维度模型云原生基础设施 新生态 新算力 新基石 全球化部署 单集群万节点规模 云边端一体化 延时降低75% 混合云2.0架构 交付效率提升3倍 全链路安全架构 实时风险监测、告警、阻断 极速弹性 分钟级1000节点伸缩 异构算力 利用率提升5倍 沙箱容器 强隔离,90%原生性能 容器云应用市场0 码力 | 17 页 | 17.74 MB | 6 月前3
蚂蚁金服Service Mesh渐进式迁移方案Mesh形态 部署在K8s上 非SM 部署在 非k8s上 Service Mesh (Sidecar模式) 部署在K8s上 Service Mesh (Istio模式) 部署在K8s上 Service Mesh (Sidecar模式) 部署在 非k8s上 Service Mesh (Istio模式) 应用终极形态 应用现状 1 1 1 2 2 2 3 4 4 4 比较理想,绝大部分 比较理想,绝大部分 投入最终都将保留 Service Mesh (Sidecar模式) Service Mesh (Istio模式) 带完善的控制 平面,如Istio 只有Sidecar, 直接集成周边 不现实 Istio的非k8s支 持投入产出比 太差 背景1:原生Istio无法支撑我们的规模 背景2:k8s(Sigma3.1)将加快普及 K8s普及在即, 不适合再大面积 铺开,快速会师ü 铺开,快速会师ü 和路线1的核心差别 • 是先上k8s,还是先上Service Mesh • 而且是终极形态的Service Mesh(意味着更偏离目标) ü 好处是第一步(非k8s上向Sidecar模式演进)非常自然 • 容易落地 • 快速达成短期目标 ü 缺点是再往后走 • 由于没有k8s的底层支持,就不得不做大量工作 • 尤其istio的非k8s支持,工作量很大 • 而这些投入,在最终迁移到k8s时,又被废弃0 码力 | 40 页 | 11.13 MB | 6 月前3
共 17 条
- 1
- 2













