Service Mesh 在『路口』的产品思考与实践Part 1: 为什么需要Service Mesh? Service 业务逻辑 SDK 协议编解码 服务发现 负载均衡 熔断限流 服务路由 …… 混合在一个进程内, 应用既有业务逻辑, 也有各种功能, 每次升级都要重新发布应用 升级成本高 版本碎片化严重 中间件演进困难6/39 微服务治理与业务逻辑解耦 Part 1: 为什么需要Service 无需感知Mesh - 专注服务间通讯和相 关能力 - 与业务逻辑无关 将SDK客户端 的功能剥离 混合在一个进程内, 应用既有业务逻辑, 也有各种功能, 每次升级都要重新发布应用 业务进程专注于业务逻辑 SDK 中的大部分功能, 拆解为独立进程, 以 Sidecar 的模式运行 将服务治理能力下沉到基础设施,实现独立演进,透明升级7/39 异构系统统一治理 的其他语言的客户端 SDK, 之后开始内部小范围试点 小规模落地 03 2019年上半年,作为蚂蚁金融级 云原生架构升级的主要内容之一, 逐渐铺开到蚂蚁主站的业务应用, 并平稳支撑了618大促 规模落地 04 2019年下半年,在蚂蚁主站的大促核心应用中全面铺 开,落地规模非常庞大,而且最终如『丝般顺滑』地 支撑了双十一大促。 数百个 数十万 应用 容器 <0.2ms0 码力 | 40 页 | 15.86 MB | 6 月前3
Service Mesh结合容器云平台的思考和实践registry backed by Cloud Foundry.Pilot-Agent主要功能分析-生产Envoy配置 agent.waitForExit会调用envoy.Run方法启动envoy进程,为此需要获取envoy二进制所在文件系统路径和命令行 参数两部分信息: 1. envoy二进制所在文件系统路径:evony.Run通过proxy.config.BinaryPath变量得知envoy二进制所在的文件 这里的%d会用epoch序列号代替。WriteBootstrap在envoy.Run方法中被调用。Pilot-Agent主要功能分析-Envoy监控与管理 为envoy生成好配置文件之后,pilot-agent还要负责envoy进程的监控与管理工作,包括: 1. 创建envoy对象,结构体包含proxyConfig(前面步骤中为envoy生成的配置信息),role.serviceNode(似乎 是agent唯一标识符),l Run首先启动协程执行agent.Run(agent的主循环),然 后调用watcher.Reload(kickstart the proxy with partial state (in case there are no notifications coming)),Reload会调用agent.ScheduleConfigUpdate,并最终导致第一个envoy进程启动, 见后面分析。然后监控各种证书,0 码力 | 28 页 | 3.09 MB | 6 月前3
蚂蚁金服网络代理演进之路协议编解码 Sidecar (MOSN) 服务发现 负载均衡 熔断限流 服务路由 …… 将SDK客户端 的功能剥离 Sidecar专注服务间通讯 混合在一个进程内, 应用既有业务逻辑, 也有各种功能 业务进程专注于业务逻辑Service Mesh 为什么蚂蚁需要Service Mesh • 拥抱微服务,云原生 • 异构语言体系融合 • 统一服务治理 • 运维体系有利支撑 • h,都需要保证可正常处理请求,做到可 灰度、可回滚的兼容,平滑迁移 • 通用的框架能力(SOFAMosn/Envoy)无法直接满足复杂的、定制的业务能力,需 要进行针对性的扩展实现 • 需要融合主站已有的应用体系,如注册中心、配置中心等,这些也需要扩展实现 • 大规模场景下需要面对的资源占用,自动化问题、性能问题,稳定性问题兼容问题 § 不同的应用,部分Mesh化 § 同一个应用,部分Mesh化0 码力 | 46 页 | 19.93 MB | 6 月前3
蚂蚁金服Service Mesh渐进式迁移方案+ Service Mesh + Kubernetes 是目标 • 但是如何从现有体系向目标迈进,必须给出可行的实践指导 ü Roadmap • 预计2019年初 蚂蚁金服主站落地:目标与现状 百川归海蚂蚁金服主站落地方案的实施原则 Target 长期 目标 Step By Step 分步 进行 Resiliency 操作 弹性 符合远期规划 • 不走弯路,不浪费投资 • 每一步都为下一步奠定基础 路线 SOFAMesh Istio Kubernetes SOASOA时代的寻址:服务发现和服务注册 Interface2 Interface1 Interface3 SOA架构:单进程多接口 服务注册中心 注册interface3 注册interface2 注册interface1 client 1. 查找interface2 以接口为 单位注册 客户端调用参考配置和示例代码:0 码力 | 40 页 | 11.13 MB | 6 月前3
Service Mesh的实践分享服务元数据下发 OSP client 服务路由 网络传输 服务元数据上报缺点 • 语言单一 • 升级困难 • 复杂代码嵌入对客户端进程影响大服务化体系2.0 - Service Mesh雏形 • 物理机、sidecar • Local & Remote,主与备 • 轻量级客户端、本地调用 • Local Proxy负责服务治理与 远程通信 • Remote Proxy负责备份和非0 码力 | 30 页 | 4.80 MB | 6 月前3
陌陌Service Mesh架构实践数据平面部署方式 容器化运行方式 • sidecar模式 • 与业务进程相同Pod不同Container 陌陌微服务容器化部署比例在80%以上 并且还在进一步推进 业务接入方式 • 研发人员:升级SDK版本 • SRE:发布系统配置发布项 sidecar模式部署17/24 数据平面升级方式 – 平滑升级机制 平滑要求 • 业务进程不重启 • 流量保持不变 方案选择 • FD迁移 vs0 码力 | 25 页 | 1.25 MB | 6 月前3
Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v1 架构的缺点 • 管理开销 • 管理Mixer是许多客户不想负担的 • 进程外适配器强制运维管理适配器,增加此负担 • 性能 • 即使使用缓存,在数据路径中同步调用Mixer也会增加端到端延迟 • 进程外适配器进一步增加了延迟 • 授权和认证功能是天然适合mixer pipeline的,但是由于mixer 设计 的延迟和SPOF(0 码力 | 43 页 | 2.90 MB | 6 月前3
网易云Service Mesh的产品架构与实现多次作为邀请讲师参加Dockone容器技术大会,Segmentfault 开发者大会,InfoQ全球架构师峰会(明星讲师),CSDN SDCC大 会,51CTO WOTA大会等 • 知名技术博主,博客可搜索popsuper1982,多篇文章推荐至全 球最大IT社区CSDN首页及《程序员》杂志 • 在工作中积累了大量运营商系统,互联网金融系统,电商系统等 容器化和微服务化经验01 目录 Redis DDB NQS 监控平台 用户空间VPC 管理控制服务 云主机 云网络 云硬盘 UAS Agent 对象存储 UAS Server OpenStack 管控节点(主) 管控节点(备) 监控节点(主) 监控节点(备) 注册中心 控制中心163yun.com 三、基于容器服务的微服务架构实践www.163yun.com 内部金融产品架构www.163yun.com Haproxy作为service0 码力 | 35 页 | 6.33 MB | 6 月前3
Apache SkyWalking 在 Service Mesh 中的可观察性应用Distributed Tracing 5/28Apache Way 6/287/总页数Architecture 8/28分享主题:字号 分享嘉宾 服务 抽象概念,用于汇集指标 Service 实例 进程,容器,Pod Instance 端点 URL,RPC,函数 Endpoint 观察维度 9/28遇到的挑战 /02 Service Mesh 场景下 SkyWalking 面临的挑战0 码力 | 29 页 | 1.38 MB | 6 月前3
云原生开放智能网络代理 MOSN更多的协议及服务框架支持 Dubbo、SpringCloud、 RocketMQ、gRPC、HTTP3、 MQTT、QUIC、TLS1.3 等 多协议 支持模块化 自适应限流 多协议深度扩展能力 多进程 WAF WebAssembly 兼容用户态协议栈 Lua 支持 核心和开放能力 适配 Istio,兼容 UDAP 协议 Zookeeper,Etcd Open Tracing, Jaeger0 码力 | 12 页 | 1.39 MB | 6 月前3
共 15 条
- 1
- 2













