蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘升级窗口有限,方案必须简单高效 Ø运维体系,容器化建设等方面适配 ü 蚂蚁运维架构建立在流量调度的基础上 ü 容器管理平台更替快速进行中 ØGolang 性能,成本评估符合蚂蚁实际需求2 构架SOFAMesh 1SOFAMosn 2SOFAMosn内数据流 3NET/IO 4 Ø屏蔽IO处理细节 Ø定义网络链接生命周期,事件机制 Ø定义可编程的网络模型,核心方法,监控指标 Ø定义可扩展的插件机制PROTOCOL 特征 Ø定义Stream生命周期,核心事件 Ø定义Stream层编/解码核心接口 ü 核心数据结构复用Protocol层 Ø定义可扩展的插件机制 Ø对于满足请求Stream池化的需求 Ø需处理上层传入的状态事件PROXY 7 Ø基于Stream抽象提供多协议转发能力 Ø执行Stream扩展Filters Ø提供可扩展的路由寻址能力 Ø提供可扩展的后端管理,负载均衡,健康检查能力 encode Q u e u e C模块划分 11要点总结 12 Ø模块化,分层解耦 Ø统一的编程模型接口 Ø可扩展的事件驱动模型 Ø可扩展的路由/后端管理机制 Ø更好的吞吐量3 能力核心能力 1 网络处理 •网络编程接口 •链接管理 •事件机制 •Metrics 收集 •TCP 代理 •TLS 支持 •TProxy 支持 •平滑 reload •平滑版本升级 多协议 •SOFA0 码力 | 44 页 | 4.51 MB | 6 月前3
阿里巴巴超大规模神龙裸金属 Kubernetes 集群运维实践Kubernetes 集群运维实践 关注“阿里巴巴云原生”公众号 回复 1124 获取 PPT自我介绍 •嵌入式、微服务框架 •2017 年加入阿里巴巴,负责阿 里集团数十万集群节点规模化运 维管理系统的研发工作 •2019 年参与集团全面上云项目 并经历了整体架构的云原生升级 演进,稳定支撑双11峰值流量分享内容 • 阿里全站上云 • 神龙 (what & why) • 规模化集群运维实践 内核错误日志分析Machine Operator • 全生命周期 • 导入 • 下线 • 维护 • 组件终态 • 安装 • 升级 • 回滚 • 故障自愈 • 运维事件 • 业务置换Machine Operator未来工作 • 稳定性、资源利用率、运维效率 • 基于安全容器的新混部架构 • 全业务上云、Serverless 演进 • 精细化观测和全链路诊断❖ No data, No BB0 码力 | 21 页 | 7.81 MB | 6 月前3
Service Mesh结合容器云平台的思考和实践温饱问题 • 计算资源的快速分配 • 基本的监控 • 快速部署 • 易于分配的存储 • 易于访问的外围(负载均衡) • 服务注册和发现 致富问题 • 认证和授权 • 智能路由 • 流量管理 • 服务降级 • … • 微服务拆分原则 • 业务API设计 • 数据一致性保证 • 可扩展性考虑 • …Kubernetes对于微服务的支撑 功能列表 详情 快速资源分配 容器编排和调度 服务部署&弹性伸缩 Deployment 服务注册&服务发现 Service概念和分布式DNS API网关 简单路由功能 统一日志中心 Fluentd & ES 统一监控中心 Prometheus 统一配置管理 Configmap、Secret 负载均衡 简单负载均衡,基于Iptables Roundrobin 流量控制 简单根据服务实例进行控制云平台微服务演进之基于API网关的微服务方案 API网关功能增强 Service 1 Service 2 Ribbon 注册 业务服务 配置中心 启动获取 Monitor Turbine K8S流量 SC流量 同集群调用微服务 Spring Cloud管理平台基于Kubernetes的Spring Cloud实现 Devops: Experience Auto Scaling & Self Healing Resilience & Fault0 码力 | 28 页 | 3.09 MB | 6 月前3
金融级云原生 PaaS 探索与实践容灾 机房|地域5/20 业务背景 业务架构 单元化 • 高可用 • 一致性 • 可扩展 • 高性能6/20 业务背景 业务诉求 • 运维成本 突发流量应用 | 机房 生命周期 • 运维效率 大规模下基础设施稳定性 • 业务 Mesh 化 精细化流量控制 基础组件升级 • 业务可复制 业务敏捷 SaaS 面向站点级别输出7/20 PaaS 机房级和地域级容灾能力; 业务背景业务背景 CAFÉ API Server Aggregation Layer 异地多活架构 同城双活架构 K8S API Server 基础发布运维 跨集群应用 资源管理 IaaS层(Aliyun/OpenStack/VMWare/Bare Metal) PaaS 核心层 核 心 流 程 两地三中心架构 跨机房和地域统一应用运维 容器运行时 (Docker/Pouch/安全容器) (SLB/ALB) 容 器 层 跨集群管理 单元化能力 容器镜像管理 批次发布 原生资源管理 Pod伸缩管理 集群伸缩管理 变更管控 配额管理 运维原子操作 精细化调度 接入层流程调拨 应用层流量调拨 跨集群状态 分发/汇聚 数据层流量调拨 压测/灰度 流量管理 单元化 元数据管理 弹性流量管理 跨集群发布策略 多集群管理 跨集群网络 跨集群镜像管理 蓝绿发布 灰度分组发布 中间件变配0 码力 | 20 页 | 1.71 MB | 6 月前3
严选 ServiceMesh 实践规划与展望3/24 严选ServiceMesh演进 /014/24 严选第一代 Service Mesh 架构 • 使用 Consul 作为服务发现组件 • 数据面:cNginx • 控制面:Consul 管理后台5/24 服务治理能力 – 基于严选第一代ServiceMesh(cNginx) 类型 功能 能力提供方 服务调用方(Client) 服务提供方(Server) 服务注册与发现 注册发现:基于 大大降低了中间件的研发投入和演进成本,也降低了业务和中间件的耦合成本 • 基础架构与业务架构可以独立演进 • 为多语言栈提供了服务治理能力7/24 持续演进的诉求 • 提供高质量的服务治理能力 • 增强流量管理能力 • 将更多治理特性(如限流、熔断、故障注入)与业务架构解耦 • 支持更多的协议 • 增强控制面 • 配合业务容器化上云及混合云架构8/24 行业技术演进 - 通用型 Service Mesh per-node,功能和运维层面的限制还在评估当中。 • Sidecar 模式采用方案1进行优化,gateway 模式采用方案2进行优化。23/24 服务治理平台 – 升级严选服务治理能力 • 常用服务管理功能:服务上下线、服务实例管理 • 服务生命周期管控与查询 • 服务扩缩容:服务副本数、配额、扩缩容策略; 调整后自动应用至 K8s 集群 02.服务管控 • 服务监控项设置并对接基础监控平台 • 服务质量指标(SLI)定制并监控:如0 码力 | 25 页 | 2.07 MB | 6 月前3
Service Mesh 在『路口』的产品思考与实践为什么需要Service Mesh? 身份标识/访问控制 Service (client) Sidecar Sidecar Service (server) mTLS 服务鉴权 全链路可信、加密 零信任网络9/39 二、 在当下『路口』的思考10/39 Part 2: 在当下『路口』的思考 云原生方案? 落地有 gap 图片来源:https://istio Mesh 微服务 互联互通,平滑迁移,灵活演进20/39 Part 3: 蚂蚁金服的产品实践 大规模场景下的服务发现 • Pilot 的问题 • 集群容量无法支撑海量数据 • 全量推送性能差 • 沿用 SOFA Registry • 支持千万级的服务实例信息 • 秒级推送 SOFARegistry:https://github.com/sofastack/sofa-registry21/39 webhook/operator 机制可以方便地实现注入、升级 等运维操作 • 然而大量系统还没有跑在 k8s 上,所以我们通过 agent 的模式来管理 sidecar 进程,从而可 以使 Service Mesh 能够帮助老架构下的应用完成服务化改造,并支持新架构和老架构下服务 的统一管理。 VM 应用进程 Sidecar Agent SOFAMosn 注入 升级 SOFAMosn:https://github0 码力 | 40 页 | 15.86 MB | 6 月前3
Service Mesh 在蚂蚁金服生产级安全实践Service Sidecar 的证书管理方案 使用可信身份服务构建敏感数据下发通道 Service Mesh Sidecar 的 TLS 生产级落地实践 分享内容基于 Secret Discovery Service Sidecar 的证书管理方案 Kubernetes Secret 证书管理流程 在 Kubernetes 场景下,证书是通过 secret 的方式来管理,使用时通过 secret 存在以下三个问题: Secret 管理方式与现有密钥管理系统有冲突,需要密钥管理系统强依赖 Kubernetes Secret 以明文形式挂载在容器的文件系统中,存在安全隐患 Secret 更新时,Sidecar 需要通过热重启方式重新加载,成本高昂基于 Secret Discovery Service Sidecar 的证书管理方案 Envoy SDS 证书管理流程 Secret Discovery Discovery Service 是 Envoy 提出的 Sidecar 证书管理方案,方案的核心流程在于引入 SDS Server 进行密钥管理和分发,Sidecar 通过 gRPC 请求获取证书,并利用 gRPC stream 能力实现证书动态轮转。 当然,Sidecar 和 SDS Server 的通信也需要保证自身的通信安全,存在以下两种方案: Sidecar 与 SDS Server0 码力 | 19 页 | 808.60 KB | 6 月前3
蚂蚁金服网络代理演进之路安全合规 防攻击蚂蚁金服网络接入十年变迁 2010年前部署商用设备 前世 01 2010 开始网络代理白盒 化,定制业务逻辑,软 硬件一体解决方案 自研 02 2015 年无线通道协议,安 全升级, 连接收编 All in 无线 03 PC时代 移动时代 万物互联云原生时代 2018 年协议,安全持续升 级(QUIC,MQTT,国密), 云原生 再启程 03前世 F5 BigIP Keycenter 硬件加速 安全合规 亿级用户同时在线 千万级每秒RPC请求 百万级每秒推送Spanner 2010 • 自研,网络设备白盒化 • 全面实践全网https 2012 • 首次全流量支撑双十一大促 2013 • 支持蚂蚁LDC架构,三地五中心容灾架构 • 全面上线SSL加速卡,提供软硬件一体加速方案 2015 • All in 无线,通信通道全面升级(MMTP,MTLS协议) + PB + 动态字典 + Zstd通信协议&架构持续升级 多终端&协议接入 架构升级 云原生生态融合 § MQTT协议的IOT设备接入 § 就近就优海外接入,智能调度 § 蚂蚁全球加速节点,全协议支持 § 支持UDPA § QUIC/HTTP3 § 接入层容器化,混部 § 支持QUIC协议的LB建设 § Web Assembly模块扩展东西流量的服务发现与路由 F5(ipvs) APP0 码力 | 46 页 | 19.93 MB | 6 月前3
七牛容器云ServiceMesh实践七牛容器云Service Mesh实践 冯玮 七牛容器云架构师 2018.11.25 Service Mesh Meetup #4 上海站Ingress Controller • 流量管理 • 安全管理 • 统一配置 • 反向代理Contour • 本质上还是Ingress Controller • Kubernetes深度整合 • Gimbal生态组件Contour特点 • 基于Envoy 兼容Kubernetes标准Restful接口 • 统一的Kubernetes管理接口 • Gimbal生态 • 多集群入口流量整合管理 • 劣势 • 缺少大规模落地案例 • 功能/非功能仍需加强Contour & Istio • 南北向流量 • API版本共存(Istio & Kubernetes Ingress) • 东西向流量 • Istio支持全量功能 • Contour支持Tracing能力 • • 数据面共存 • 共用边车组件Envoy七牛现有Service Mesh体系 • Istio产品化 • 东西流量产品化 • 南北流量产品化 • TLS管理优化 • Contour增强 • 入口流量管控 • 跨集群调度 • 发展策略 • API版本兼容两种方式 • 数据面优先,控制面按需迭代七牛容器云Service Mesh发展 • 产品发展 • 依托容器云PaaS中台 • 辐射业务线:Spock,Kodo,Dora等0 码力 | 15 页 | 3.86 MB | 6 月前3
Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?运维添加、使用和删除适配器 • 开发人员创建新的适配器(超过20个适配器)Part 1:ServiceMesh灵魂拷问一:要架构还是要性能? Mixer v1 架构的缺点 • 管理开销 • 管理Mixer是许多客户不想负担的 • 进程外适配器强制运维管理适配器,增加此负担 • 性能 • 即使使用缓存,在数据路径中同步调用Mixer也会增加端到端延迟 • 进程外适配器进一步增加了延迟 • 授权和认证功能是天然适合mixer 托管式实例组:效仿容器和k8s的方式来管理虚拟机 容器的硬件配置 实例模版的硬件配置 硬件 镜像文件的基础镜像 实例模版的操作系统配置 操作系统 镜像文件 自动启动脚本 创建应用 启动业务容器 按照实例模版启动虚拟机+应用 启动应用 k8s replicaset 通过实例模版设置实例数 管理实例副本(固定) k8s HPA或者serverless 通过实例模版设置自动伸缩 管理实例副本(伸缩) 更改镜像文件 更改实例模版 应用版本升级 容器/k8s 虚拟机(托管式实例组)Part 3:ServiceMesh灵魂拷问三:要不要支持虚拟机? Traffic Director:效仿k8s/Istio的方式来管理服务 k8s service Google Traffic Director 服务 服务定义 通过 k8s 在控制台手工创建 创建服务 通过k8s自动注册 手工关联服务和托管实例组 服务注册0 码力 | 43 页 | 2.90 MB | 6 月前3
共 23 条
- 1
- 2
- 3













