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 响应超时19/总页数 治理策略 & 高可用 • 微服务高可用 设计手段 服务高可用 服务限流 方法容错 负载均衡+ 实例容错 柔性化/异步化 服务冗余 服务分流 存储高可用 熔断20/总页数 治理策略 & 高可用 • 微服务高可用设计手段 • 限流 • 熔断 • 负载均衡+实例容错 Spring Cloud Service Mesh Config Server SDK Sidecar21/总页数0 码力 | 38 页 | 1.38 MB | 6 月前3
严选 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日 1.0Releases Configuration Protocol(简称为 MCP,一套标准 GRPC 协议) • 高可用设计主要基于 Kubernetes 及 Istio 机制实现14/24 Service Mesh 在混合云架构落地 /0215/24 严选上云 Roadmap16/24 落地关键步骤 拥抱云原生 • 大势所趋 • 容器化是微服务的最佳载体 • 容器化是 Service Mesh 高 效落地的基石0 码力 | 25 页 | 2.07 MB | 6 月前3
函数计算在双11小程序场景中的应用函数计算在双11小程序场景中的应用 关注“阿里巴巴云原生”公众号 回复 1124 获取 PPT自我介绍 •吴天龙(花名: 木吴) •阿里云函数计算技术专家 •2013 年加入阿里云,参与分布式数据库, 对象存储等产品的开发。现任阿里云函数 计算架构师,聚焦于 Serverless 产品功 能和大规模资源伸缩调度、性能优化等系 统核心能力的研发。❖ 函数计算介绍 ❖ 双11小程序场景介绍 ❖ 技术挑战 200ms 10ms~60000ms 预留实例 0ms 0ms函数计算-弹性伸缩 C1 C1 C2 C1 C2 时间 t1 t2函数计算-预留实例 • 预留实例:性能好 • 按量实例:按需使用函数计算-预留实例 预留实例 按量实例 效果 0 0 禁止调用 10 0 只使用预留实例,固定费用 0 10 只使用按量实例,按需付费 10 5 混合模式,兼顾性能和成本函数计算 DemoThank0 码力 | 13 页 | 6.95 MB | 6 月前3
Service Mesh 在『路口』的产品思考与实践微服务治理与业务逻辑解耦 Part 1: 为什么需要Service Mesh? Service 业务逻辑 SDK 协议编解码 服务发现 负载均衡 熔断限流 服务路由 …… 混合在一个进程内, 应用既有业务逻辑, 也有各种功能, 每次升级都要重新发布应用 升级成本高 版本碎片化严重 中间件演进困难6/39 微服务治理与业务逻辑解耦 Part 1: 负载均衡 熔断限流 服务路由 …… - 专注业务实现 - 无需感知Mesh - 专注服务间通讯和相 关能力 - 与业务逻辑无关 将SDK客户端 的功能剥离 混合在一个进程内, 应用既有业务逻辑, 也有各种功能, 每次升级都要重新发布应用 业务进程专注于业务逻辑 SDK 中的大部分功能, 拆解为独立进程, 以 Sidecar 的模式运行 蚂蚁金服的产品实践 大规模场景下的服务发现 • Pilot 的问题 • 集群容量无法支撑海量数据 • 全量推送性能差 • 沿用 SOFA Registry • 支持千万级的服务实例信息 • 秒级推送 SOFARegistry:https://github.com/sofastack/sofa-registry21/39 Part 3: 蚂蚁金服的产品实践 流量劫持22/390 码力 | 40 页 | 15.86 MB | 6 月前3
深入 Kubernetes 的无人区-蚂蚁金服双十一的调度系统Cluster Control Panel 在线应用 计算型混部任务 CSI CNI Device Plugin runc nanovisor 日志服务 云盘 本地多盘 弹性网卡 网络安全组 GPU 安全可信 数据库服务 OB serverless 平台 kata SOFAMesh 资源分时复用 神龙裸金属 VPC 云存储 应用服务器 数据库服务器 国产化服务器7/19 二、双十一 二、双十一 Kubernetes 实践 Part 2:8/19 资源分时调度 Part 2:双十一 Kubernetes 实践 快速腾挪的问题 1.实例上下线需要预热 2. 腾挪耗时不可控 3. 大规模腾挪的稳定性技术风险 9/19 资源分时链路切换 Part 2:资源分时调度 Kubernetes Node 分时调度 Agent Pod 资源 Node 分时调度 Agent 资源 Pod 资源10/19 Part 2:资源分时调度 分时切换效果 数万台 应用 Pods 分钟级 链路切换 数万核 CPU资源节省 100% 分时切换成功率11/19 计算型任务混部 Part 2:双十一 Kubernetes 实践 其他自研 Operators AI 训练 Kubernetes TensorFlow PyTorch Horovod/mpi XGBoost0 码力 | 19 页 | 2.18 MB | 6 月前3
蚂蚁金服网络代理演进之路Service 业务逻辑 轻量级SDK 协议编解码 Sidecar (MOSN) 服务发现 负载均衡 熔断限流 服务路由 …… 将SDK客户端 的功能剥离 Sidecar专注服务间通讯 混合在一个进程内, 应用既有业务逻辑, 也有各种功能 业务进程专注于业务逻辑Service Mesh 为什么蚂蚁需要Service Mesh • 拥抱微服务,云原生 • 异构语言体系融合 • 统一服务治理 同一个应用,部分Mesh化 § 蚂蚁基础设施适配 § TLS加密链路平滑迁移 Localhost or Iptables 透明劫持和加速大规模问题 10万+实例 动态服务发现 运维 § 对控制平面性能,稳定性带来巨 大挑战 § 单实例数万路由节点,数千路由 规则,不仅占用内存,对路由匹 配性能也有较大影响 § SOFAMosn发布业务无感知,平 滑升级 § 海量,高频的发布订阅动作 § 发布分组策略,间隔策略平滑升级 南北,东西应用层流量的全局管 控,调度和安全能力 § 全方位的安全防护,全链路加密, 应用层的零信任网络 § 随通信基础设施,通信场景的变 化而演进 § 金融级的通信安全基础设施关于未来 § 云原生,多云混合云时代,南北,东西流量的边界逐渐模糊 § 应用网络代理层部分能力固化,下沉至系统网络栈或者智能硬件设备 § 物理通信基础设施的升级势必带来应用网络层的变革 § Sidecar -> Proxyless0 码力 | 46 页 | 19.93 MB | 6 月前3
Service Mesh的实践分享调用链埋点的影响必须足够小 • 鉴权需要同步进行,调用Mixer代 价大 • Mixer的中央节点问题 • 传统基于日志收集的tracing方 案足够成熟 • 内部实现一套可插拔的鉴权框 架也能接受混合部署 vs. 绑定K8s • 历史原因导致长期都会物理机 和容器并存,内部需求必须要 同时支持物理机和云 • 绑定K8s能够享受K8s的红利, 但也限制了使用范围 +服务治理程度更接地气 依赖用户手工配置参数(超时时间、限流) • 服务实例的差异导致配置相当复杂,容易 配置不合理 • 无法动态根据系统指标调整阈值 • 目标 • 用户无需拍脑袋设值,服务治理中心根据 历史指标进行推荐,对不合理的设置进行 建议,如 • 根据应用的历史延迟时间推荐超时设置 • 根据应用的历史流量数据推荐限流设置 • 根据动态指标自动调整配置 • 如单个实例内指标异常(超时率、cpu异常等) 动态调整限流值或直接降级0 码力 | 30 页 | 4.80 MB | 6 月前3
Service Mesh 微服务架构设计服务可独立部署,每次部署不会影响其他服务; • 每个服务都各自负责自己的数据和状态的存储,独立数据库; • 服务和服务之间通过设计良好的API接口通信,不暴露具体的实 现细节; • 各服务不需要统一技术栈,不需要共享公共库和框架;微服务究竟带来什么好处 Ready for market faster:快速响应市场地变化 Mix of technologies:多技术栈混合使用; Scalability:可扩展性 Resiliency:可伸缩性 Service bus (ESB) 服务间使用轻量级的HTTP/REST通信 lightweight protocols such as HTTP/REST 可能共享数据存储 Share Data 具有独立的数据存储 Data isolation 依赖很多中间件 Middleware component 独立自治的轻量级服务 small autonomous services 服务治理难度巨大不要让今天的代码成为明天的历史包袱 追求极致的思考1 漫谈服务架构的演进史 2 微服务架构设计的现状 3 Service Mesh微服务设计 4 Service Mesh的框架介绍微服务设计的最佳实践 数据独立存储 保持代码高内聚 低耦合的服务 容器化发布 服务是无状态的微服务如何切分 DDD限界上下文 低耦合的服务设计方法论:DDD战略建模4步搞定微服务的划分保持代码高内聚的方法论:DDD战术建模Service0 码力 | 36 页 | 26.53 MB | 6 月前3
阿里云容器服务大促备战EBM, GPU, FPGA, ECI 高性能网络 VPC, ENI, RDMA, SLB, DNS Public Cloud Edge Computing Private Cloud 高性能存储 EBS, NAS, CPFS, OSS Kubernetes (ACK, ASK) Web/mobile applications - Stateless - Idempotent - Horizontal keeper云原生实时计算与人工智能@微博 2.4倍性能提升 百亿实时样本 万亿维度模型云原生基础设施 新生态 新算力 新基石 全球化部署 单集群万节点规模 云边端一体化 延时降低75% 混合云2.0架构 交付效率提升3倍 全链路安全架构 实时风险监测、告警、阻断 极速弹性 分钟级1000节点伸缩 异构算力 利用率提升5倍 沙箱容器 强隔离,90%原生性能 容器云应用市场0 码力 | 17 页 | 17.74 MB | 6 月前3
SOFAMesh的通用协议扩展透明地路由所有网络流量 • 服务治理规则,服务,实例和配置都是 Kubernetes 资源 • 使用 Controller Pattern 通过 CRD 扩展新的能力 • …MESH 落地碰到的问题 • 客户端服务发现与负载均衡无法与 ISTIO 一起工作 • ENVOY 不支持微服务使用的通信协议 • RPC 服务使用的接口,方法,参数语义无法匹配 ISTIO 的路由模 型 • 一个应用上部署了多个 RPC0 码力 | 28 页 | 4.73 MB | 6 月前3
共 24 条
- 1
- 2
- 3













