SOFAMOSN持续演进路径及实践分享
SOFAMOSN 持续演进路径及实践案例 陈逸凡 wugou.cyf@antfin.com 2019.1.6 Service Mesh Meetup #5 广州站Agenda Ø 背景 & 概览 Ø 持续演进路径 & 技术案例 Ø 实践案例 Ø 规划 & 展望 Ø QA背景 & 概览数据平面概览 SOFAMOSN • C实现,支持多语言扩展 • 基于Nginx扩展 • 开发不活跃 的Golang转发系统 • 开发活跃,最新版为0.4.0 • 蚂蚁+UC主导,重点搭载 SOFAMesh使用,目标服 务通用场景,金融场景SOFAMOSNSOFAMOSN内部模块设计SOFAMOSN数据流SOFAMOSN数据流持续演进路径 & 技术案例能力 0.1.0 0.2.0 0.3.0 0.4.0 Ø TCP代理/7层通用代理 Ø 简单匹配路由 Ø 集群管理 & 基本负载均衡(RR、0 码力 | 29 页 | 7.03 MB | 5 月前3蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘
蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘 奕杉Agenda Ø背景 Ø构架 Ø能力 Ø性能 ØRoadMap背景为什么蚂蚁需要ServiceMesh Ø拥抱微服务,云原生 • SOFA 5规划落地 • 兼容K8S的智能调度体系 Ø运维体系的有力支撑 • LDC • 弹性伸缩 • 蓝绿/容灾/.. Ø金融级网络安全 • 金融级鉴权体系 • 云原生zero trust网络安全趋势 Ø运维体系,容器化建设等方面适配 ü 蚂蚁运维架构建立在流量调度的基础上 ü 容器管理平台更替快速进行中 ØGolang 性能,成本评估符合蚂蚁实际需求2 构架SOFAMesh 1SOFAMosn 2SOFAMosn内数据流 3NET/IO 4 Ø屏蔽IO处理细节 Ø定义网络链接生命周期,事件机制 Ø定义可编程的网络模型,核心方法,监控指标 Ø定义可扩展的插件机制PROTOCOL 5 Ø定义编解码核心数据结构 üClient直连server请求耗时1.6msSOFARPC + 1K字符串 8 指标\软件 SOFAMosn Envoy QPS峰值 103500 104000 RT(avg) 16.23ms 15.88ms MEM 31m 18m CPU 100% 100%HTTP/1.1 + 1K字符串 9 指标\软件 SOFAMosn Envoy QPS峰值 29670 38800 RT(avg) 5.715ms0 码力 | 44 页 | 4.51 MB | 5 月前3蚂蚁金服网络代理演进之路
防火墙 负载均衡器 负载均衡器 路由器 路由器 Internet网络代理有什么? Maglev Ipvs Katran GFE BFE TGW Nginx Apache httpd SOFAMosn Envoy Linkerd网络的挑战网络的挑战 高效接入 访问加速 容量 稳定性 高可用 灵活弹性 安全合规 防攻击蚂蚁金服网络接入十年变迁 2010年前部署商用设备 前世 01 金融级网络安全为金融业务而生的SOFAMesh Pod Spring Cloud 应用 SOFAMosn SOFA Mesh 控制面 Galley Inspector Citadel Pilot Pod Dubbo 应用 SOFAMosn Pod SOFA 应用 SOFAMosn KMI Pod SOFA 应用 SOFAMosn Sigma TLS,国密 服务鉴权 流量控制 镜像中心 流量镜像 RT降低了7%,平稳支撑了618大促。SOFAMosn https://github.com/sofastack/sofa-mosn Written in go SOFAMosn是一个云原生安全网络代理 为什么自研golang版本? 跨团队合作需要考虑技术栈落地成本 Golang性能,成本符合蚂蚁实际需求 近十年的网络代理研发,运维经验SOFAMosn模块与能力划分SOFAMosn协程模型 ü 一条T0 码力 | 46 页 | 19.93 MB | 5 月前3Service Mesh 在『路口』的产品思考与实践
全面大规模落地 2017年底开始调研并探 索 Service Mesh 技术, 并确定为未来发展方向 技术预研 01 2018年初开始用Golang 开发 Sidecar SOFAMosn, 年中开源基于 Istio 的 SOFAMesh 技术探索 02 2018年开始内部落地,第一 批场景是替代 Java 语言之外 的其他语言的客户端 SDK, 之后开始内部小范围试点 Cloud 应用 SOFAMosn SOFA 服务注册中心 Service Mesh 控制平面 Galley Citadel Inspector Pilot 双模微服务 = 传统微服务 + Service Mesh 双剑合璧 服务路由 服务限流 服务拓扑 实时监控 ........ Pod Dubbo 应用 SOFAMosn VM SOFA SOFA 应用 SOFAMosn VM Dubbo 应用 Pod SOFA 应用 SOFA SDK SOFA SDK 安全加固 基于 SDK 的传统微服务 基于 Sidecar 的 Service Mesh 微服务 互联互通,平滑迁移,灵活演进20/39 Part 3: 蚂蚁金服的产品实践 大规模场景下的服务发现 • Pilot 的问题 • 集群容量无法支撑海量数据0 码力 | 40 页 | 15.86 MB | 5 月前3云原生开放智能网络代理 MOSN
云原生开放智能网络代理 MOSN 金融级云原生架构助推器 肖涵(涵畅) 蚂蚁金服高级技术专家 SOFAMosn 项目负责人1/10 MOSN,云原生时代的安全网络代理 Service Mesh 控制面 Galley Pilot Pod SOFA 服务 MSON Kubernetes TLS,国密 服务鉴权 Mirror Ingress Controller Pod Msg 2018年5月 以 SOFAMosn 项目名开源 2018年11月 内部正式启动落地 Service Mesh 2019年4月 落地第一个应用 2019年618 核心支付链路灰度 2019年双十一 核心支付链路全覆盖5/10 开放是手段,不是目的 加拉帕戈斯综合征 水族馆与大自然的杀人鲸 德尔菲法6/10 CNCF Landscape7/10 SOFAMosn GitHub Insights8/10 Insights8/10 从 SOFAMosn 到 MOSN,让社区来建设 MOSN 社区组织:MOSN Community Organization 项目地址:github.com/mosn/mosn 项目域名:mosn.io Modular Open Smart Network-proxy9/10 MOSN 未来发展思路与方向 更完善的文档及 Demo 安全审计 社区 更多的协议及服务框架支持0 码力 | 12 页 | 1.39 MB | 5 月前3蚂蚁金服Service Mesh渐进式迁移方案
最简单,最通用,支持最广 泛的寻址方式方式是什么? 基于服务 发现的寻 址方式ü DNS寻址 • 支持度最好,使用最普遍 • 所有编程语言/平台都支持的 ü 产品的长期方向 • SOFAMesh和SOFAMosn中已经基于x-protocol实现了DNS通用寻址方式 • 为了兼容RPC应用和k8s(微服务)的服务注册模型,需要为每个RPC接口提供DNS支持 • 未来Serverless中的Function也计划提供DNS寻址支持0 码力 | 40 页 | 11.13 MB | 5 月前3
共 6 条
- 1