您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[网易]:美团点评服务治理系统设计及实践 - 发现报告
当前位置:首页/其他报告/报告详情/

美团点评服务治理系统设计及实践

2023-03-09网易H***
美团点评服务治理系统设计及实践

美团点评服务治理系统设计及实践高升网易数字+云原生论坛 关于我◼2015年加入美团点评基础架构部◼先后深度参与了服务治理系统OCTO的演进以及异地多活解决方案(SET化)的研发工作◼经历了服务治理系统OCTO1.0、OCTO2.0以及服务治理发展完善的各个阶段网易数字+云原生论坛 OCTO1.0设计解析服务治理演进及实践OCTO2.0设计解析目录CONTENTS总结与展望网易数字+云原生论坛 美团点评服务治理系统OCTO概况公司级基础设施超万亿次调用/天技术栈高度统一经历大规模考验服务规模数万+节点规模数十万+支撑多元业务、外卖配送、酒店旅游、支付等所有业务治理能力丰富复杂路由、链路追踪、全链路压测、限流熔断、鉴权等网易数字+云原生论坛 OCTO1.0系统架构•OCTO-NS:命名服务•SGAgent:服务治理代理•Scanner:健康检查系统•Zookeeper:命名服务存储•OCTO-RPC:RPC服务框架•Java、C++、Nodejs•OCTO-Portal:一站式治理平台•Watt:服务调用数据中心网易数字+云原生论坛 核心设计解析(1):SGAgent-服务治理代理•解耦,不强依赖ZK•分布式、标准化部署•多语言支持更友好•升级成本更低网易数字+云原生论坛 核心设计解析(2):Scanner-健康检查系统定位:中心化健康检查系统;负责检查、更新服务节点状态优势:相对于点对点心跳,基本不会增加业务应用负载特点:Doublecheck、延时探测、分机房部署、水平扩展网易数字+云原生论坛 OCTO1.0设计解析服务治理演进及实践OCTO2.0设计解析目录CONTENTS总结与展望网易数字+云原生论坛 美团点评服务治理演进SET化架构支撑易用性平台建设阶段一基础治理能力阶段二高性能/易用性阶段三全方位的治理能力通信框架统一命名服务统一监控预警运营平台通信框架高性能通信框架轻量化分布式链路追踪测试工具可视化全链路压测平台稳定性保障平台服务鉴权、加密链路级流量治理阶段四跨地区容灾和扩展网易数字+云原生论坛 •服务注册•服务概要•提供者•消费者注册中心监控报警服务治理实践(1):基础治理能力建设OCTO-Portal一站式服务治理平台•节点监控•性能监控•业务监控•异常监控•配置管理•服务分组•节点管理•服务鉴权服务运营数据分析•性能指标•来源去向•主机分析•数据报表•调用链路一站性治理平台网易数字+云原生论坛 服务治理实践(1):基础治理能力建设服务调用数据统计网易数字+云原生论坛 服务治理实践(2):高性能与易用性建设Client:Server:易用性:细粒度埋点阶段网易数字+云原生论坛 服务治理实践(2):高性能与易用性建设•4核4G,1K数据包Echo测试•原则:框架自身不造成应用瓶颈高性能:服务框架性能提升网易数字+云原生论坛 服务治理实践(3):全方位的服务保障建设服务保障体系2.配额限流3.熔断降级4.故障演练5.链路级流量隔离6.全链路压测1.服务鉴权网易数字+云原生论坛 服务治理实践(3):全方位的服务保障建设•全链路灰度验证•全链路服务压测•全链路故障演练链路级流量隔离网易数字+云原生论坛 服务治理实践(4):异地容灾&扩展•内部称为“SET化架构”•SET是一个逻辑机房的概念•外卖、配送、支付等落地网易数字+云原生论坛 OCTO1.0设计解析服务治理演进及实践OCTO2.0设计解析目录CONTENTS总结与展望网易数字+云原生论坛 OCTO1.0体系下的痛点与挑战多元业务的多语言需求业务及中间件彼此制约迭代异构体系的融合成本高中心化治理能力是短板多语言研发效率异构体系中心化治理能力网易数字+云原生论坛 痛点解决思路解决思路——Service Mesh!业务进程业务进程业务进程Sidecar代理进程(数据平面)Sidecar代理进程Sidecar代理进程中心化控制大脑(控制平面)多语言研发效率异构体系中心化治理能力网易数字+云原生论坛 痛点解决思路解决思路——Service Mesh!控制平面业务应用进程(客户端)业务应用进程(服务端)业务逻辑序列化编解码服务发现服务路由服务鉴权限流/熔断数据统计...业务逻辑序列化解码服务注册服务鉴权数据统计...业务逻辑序列化编解码业务逻辑序列化解码服务发现服务路由服务鉴权限流/熔断数据统计...序列化解码服务注册服务鉴权数据统计...网易数字+云原生论坛 OCTO2.0技术选型子模块技术方案选型核心考量点数据面基于Envoy深度定制•有机会成为数据面标准•Filter模式及xDS设计扩展性强•功能丰富控制面自研为主•兼容存量非容器应用•特定容器模式不兼容Istio•现有的治理能力比社区产品更丰富、更精细网易数字+云原生论坛 OCTO2.0系统架构•OCTO-Proxy独立进程•UNIXDomainSocket通信•增强的xDS与自定义协议•Pilot,承载核心治理功能•Dispatch,各治理平台的接入中心•MetaServer,元数据管理服务•独立的Proxy管理系统•集中式健康检查网易数字+云原生论坛 核心设计解析(1):大规模系统Mesh化系统能力建设每个pilot实例仅保留自己负责监管sidecar的所有数据及订阅信息,从而实现了按需加载和数据分片。另外隶属同一个应用的sidecar会尽可能交给同一个pilot实例管理Adcore-pilot逻辑分为Diplomat、Snapshot、SesstionMgr三个模块。Diplomat负责与所有治理系统交互,Snapshot是独立的快照层并自己实现了进程内的发布订阅机制,SesstionMgr管理与数据面节点的会话。同一个应用的所有sidecar尽量去同一个控制面节点请求数据,通过metaServer自定义路由实现adcore-pilot中心管控系统网易数字+云原生论坛 实现逻辑的数据分片自定义路由管理扩容有效核心设计解析(1):大规模系统Mesh化系统能力建设metaServer元数据管理系统网易数字+云原生论坛 OCTO-ProxyFrontendOCTO-ProxyShoppingCardOCTO-ProxyPaymentsscannerSessionMgr核心设计解析(1):大规模系统Mesh化系统能力建设Mesh集中式健康检查网易数字+云原生论坛 核心设计解析(2):异构治理系统融合设计adcore-dispatch 统一接入中心网易数字+云原生论坛 核心设计解析(3):稳定性保障设计思路方案故障隔离集群隔离能力建设,metaServer支持按事业群拆分部署流量粒度的切换SDKfallback机制,异常时自动切换到非Mesh模式完善的回归测试建设完善的回归机制,回归引擎提升效率柔性可用代理缓存,控制面异常时柔性可用网易数字+云原生论坛 核心设计解析(4):系统运维能力建设lego-agentOCTO-Proxylego-agentOCTO-Proxylego-agentOCTO-ProxyLEGOrulesV-2V-1ResourceLEGO agent代理管理系统网易数字+云原生论坛 OCTO1.0设计解析服务治理演进及实践OCTO2.0设计解析目录CONTENTS总结与展望网易数字+云原生论坛 总结与展望-总结•服务治理建设应该围绕体系标准化、易用性、高性能三个方面开展。•大规模治理体系Mesh化应该关注以下内容:1.适配公司技术体系比新潮技术更重要,重点关注容器化& 治理体系兼容打通2.建设系统化的稳定性保障体系及运维体系。网易数字+云原生论坛 •完善治理体系:逐渐丰富OCTOMesh治理体系,探索其他流量类型,全面提升服务治理效率。•大规模落地:持续打造健壮的OCTOMesh治理体系,稳步推动在公司的大规模落地。•中心化治理能力探索:新治理模式的中心化管控下,全局最优治理能力探索。总结与展望–展望网易数字+云原生论坛 THANK YOU更多技术干货欢迎关注“美团技术团队”网易数字+云原生论坛