 金融级云原生 PaaS 探索与实践金融级云原生 PaaS 探索与实践 王成昌(晙曦)蚂蚁金服技术专家2/20 一、业务背景 二、多集群管控 三、发布运维体系 目 录 contents 目录3/20 一、业务背景 业务背景4/20 业务背景 业务架构 演进 • 容量  应用|数据库|机房 • 容灾  机房|地域5/20 业务背景 业务架构 单元化 • 高可用 • 一致性 • 可扩展 • 面向站点级别输出7/20 PaaS 能力 • 面向多租户多环境; • 基础资源管控; • 应用发布运维体系; • 业务实时监控,日志收集; • 机房级和地域级容灾能力; 业务背景业务背景 CAFÉ API Server Aggregation Layer 异地多活架构 同城双活架构 K8S API Server 基础发布运维 跨集群应用 资源管理 IaaS层(Aliyun/OpenStack/VMWare/Bare 跨集群管理 单元化能力 容器镜像管理 批次发布 原生资源管理 Pod伸缩管理 集群伸缩管理 变更管控 配额管理 运维原子操作 精细化调度 接入层流程调拨 应用层流量调拨 跨集群状态 分发/汇聚 数据层流量调拨 压测/灰度 流量管理 单元化 元数据管理 弹性流量管理 跨集群发布策略 多集群管理 跨集群网络 跨集群镜像管理 蓝绿发布 灰度分组发布 中间件变配 (DRM/Scheduler/Message)0 码力 | 20 页 | 1.71 MB | 6 月前3 金融级云原生 PaaS 探索与实践金融级云原生 PaaS 探索与实践 王成昌(晙曦)蚂蚁金服技术专家2/20 一、业务背景 二、多集群管控 三、发布运维体系 目 录 contents 目录3/20 一、业务背景 业务背景4/20 业务背景 业务架构 演进 • 容量  应用|数据库|机房 • 容灾  机房|地域5/20 业务背景 业务架构 单元化 • 高可用 • 一致性 • 可扩展 • 面向站点级别输出7/20 PaaS 能力 • 面向多租户多环境; • 基础资源管控; • 应用发布运维体系; • 业务实时监控,日志收集; • 机房级和地域级容灾能力; 业务背景业务背景 CAFÉ API Server Aggregation Layer 异地多活架构 同城双活架构 K8S API Server 基础发布运维 跨集群应用 资源管理 IaaS层(Aliyun/OpenStack/VMWare/Bare 跨集群管理 单元化能力 容器镜像管理 批次发布 原生资源管理 Pod伸缩管理 集群伸缩管理 变更管控 配额管理 运维原子操作 精细化调度 接入层流程调拨 应用层流量调拨 跨集群状态 分发/汇聚 数据层流量调拨 压测/灰度 流量管理 单元化 元数据管理 弹性流量管理 跨集群发布策略 多集群管理 跨集群网络 跨集群镜像管理 蓝绿发布 灰度分组发布 中间件变配 (DRM/Scheduler/Message)0 码力 | 20 页 | 1.71 MB | 6 月前3
 严选 ServiceMesh 实践ServiceMesh 实践 王国云 网易资深专家 严选中台技术团队负责人/容器化负责人1/24 背景 2016.4 2016.7 2017 严选正式对外发布 技术团队规模:10+ 单体 严选初创 严选业务快速增长 RPC框架、cNginx发布 技术团队规模:50+ Service Mesh 架构试点 严选业务快速增长 服务化 技术团队规模:200+ Service Mesh 架构全面落地 CNCF 2017年4月25日 1.0Releases Linkerd 2016年9月13日 1.0Releases 2017年9月14日 加入 CNCF Envoy 2017年9月15日 发布 最新版本:0.7.1 nginmesh 2016年9月29日第一次被公开提出 Service Mesh 概念正式提出9/24 云原生 Service Mesh 框架 - Istio • Service Mesh 的 优势 灰度引流 • 服务间调用灰度引流 • 外域调用灰度引流 • 平滑迁移是 Service Mesh 在混合云架构落地的关键17/24 平滑迁移 • 边缘网关支持跨 LDC 访问 • 兜底路由:云内云外互备 • 访问控制(如白名单能力) • 灰度引流使架构透明化 • 服务间调用灰度引流 • 外域调用灰度引流18/24 API 网关 • 整体基于0 码力 | 25 页 | 2.07 MB | 6 月前3 严选 ServiceMesh 实践ServiceMesh 实践 王国云 网易资深专家 严选中台技术团队负责人/容器化负责人1/24 背景 2016.4 2016.7 2017 严选正式对外发布 技术团队规模:10+ 单体 严选初创 严选业务快速增长 RPC框架、cNginx发布 技术团队规模:50+ Service Mesh 架构试点 严选业务快速增长 服务化 技术团队规模:200+ Service Mesh 架构全面落地 CNCF 2017年4月25日 1.0Releases Linkerd 2016年9月13日 1.0Releases 2017年9月14日 加入 CNCF Envoy 2017年9月15日 发布 最新版本:0.7.1 nginmesh 2016年9月29日第一次被公开提出 Service Mesh 概念正式提出9/24 云原生 Service Mesh 框架 - Istio • Service Mesh 的 优势 灰度引流 • 服务间调用灰度引流 • 外域调用灰度引流 • 平滑迁移是 Service Mesh 在混合云架构落地的关键17/24 平滑迁移 • 边缘网关支持跨 LDC 访问 • 兜底路由:云内云外互备 • 访问控制(如白名单能力) • 灰度引流使架构透明化 • 服务间调用灰度引流 • 外域调用灰度引流18/24 API 网关 • 整体基于0 码力 | 25 页 | 2.07 MB | 6 月前3
 Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展定制Istio组件 应用微服务 业务请求 控制流 图例说明 Pilot Mixer APP: Canary Deployment K8s API Server 管控规则 灰度发布 网格增强组件 原生组件 APP: Traffic Management APP ...产品化增强-服务注册发现 出于历史原因,我们使用了Kubernetes来部署服务,但并未使用Kubernetes内置的 Service V1 Service V1 Service V2 存量网络设备 “金丝雀”设备 消息上报 “金丝雀”用户 灰度发布应 用 运维 通过Envoy插件和Istio协议扩展来实现?产品化增强-其他 • APP:灰度发布、流量控制,更多的APP待业务场景触发 • IPV6支持增强 • 在Istio中集成方法级的调用跟踪 • 在Istio中集成Kafka调用跟踪上游开源社区参与情况0 码力 | 27 页 | 11.99 MB | 6 月前3 Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展定制Istio组件 应用微服务 业务请求 控制流 图例说明 Pilot Mixer APP: Canary Deployment K8s API Server 管控规则 灰度发布 网格增强组件 原生组件 APP: Traffic Management APP ...产品化增强-服务注册发现 出于历史原因,我们使用了Kubernetes来部署服务,但并未使用Kubernetes内置的 Service V1 Service V1 Service V2 存量网络设备 “金丝雀”设备 消息上报 “金丝雀”用户 灰度发布应 用 运维 通过Envoy插件和Istio协议扩展来实现?产品化增强-其他 • APP:灰度发布、流量控制,更多的APP待业务场景触发 • IPV6支持增强 • 在Istio中集成方法级的调用跟踪 • 在Istio中集成Kafka调用跟踪上游开源社区参与情况0 码力 | 27 页 | 11.99 MB | 6 月前3
 七牛容器云ServiceMesh实践• 故障注入较困难(代码侵 入性强) • 测试环境不稳定,后端Pod 频繁重启 • 解决方案 • Contour产品化 • Istio的灰度发布和流量管理 • Istio的Tracing产品化落地场景—云存储系统 • 历史问题 • 灰度发布 • 预上线系统验证体系 • 系统故障隔离 • 跨集群访问 • 线上问题链路追踪 • 解决方案 • Istio南北流量分流策略产品化 • 基于Istio的QoS产品化 基于Istio的QoS产品化 • 跨集群流量调度 • 基于Istio的Tracing产品化落地场景—大数据产品 • 系统优化之路 • 多版本灰度升级 • 根据流量做横向伸缩 • 分布式系统性能测试问题 定位难 • 解决方案 • Istio南北流量分流策略产品化 • 基于Istio的QoS产品化 • 基于Istio的Tracing产品化 • 跨集群流量调度七牛容器云产品逻辑架构 Kubernetes0 码力 | 15 页 | 3.86 MB | 6 月前3 七牛容器云ServiceMesh实践• 故障注入较困难(代码侵 入性强) • 测试环境不稳定,后端Pod 频繁重启 • 解决方案 • Contour产品化 • Istio的灰度发布和流量管理 • Istio的Tracing产品化落地场景—云存储系统 • 历史问题 • 灰度发布 • 预上线系统验证体系 • 系统故障隔离 • 跨集群访问 • 线上问题链路追踪 • 解决方案 • Istio南北流量分流策略产品化 • 基于Istio的QoS产品化 基于Istio的QoS产品化 • 跨集群流量调度 • 基于Istio的Tracing产品化落地场景—大数据产品 • 系统优化之路 • 多版本灰度升级 • 根据流量做横向伸缩 • 分布式系统性能测试问题 定位难 • 解决方案 • Istio南北流量分流策略产品化 • 基于Istio的QoS产品化 • 基于Istio的Tracing产品化 • 跨集群流量调度七牛容器云产品逻辑架构 Kubernetes0 码力 | 15 页 | 3.86 MB | 6 月前3
 Service Mesh 在蚂蚁金服生产级安全实践与 Citadel Agent 采用基于UDS 通信的Grpc服务获取密钥等敏感信息Service Mesh Sidecar 的TLS 生产级落地实践 TLS 实践难点 证书管理 开关切换 灰度控制 SDS 证书管理方案 ISTIO Policy | Mesh Policy ScopeConfigService Mesh Sidecar 的TLS 生产级落地实践 开关切换 RPC Mesh Sidecar 的TLS 生产级落地实践Service Mesh Sidecar 的TLS 生产级落地实践 灰度控制 新功能总是离不开灰度过程,社区已有的Policy CRD 实现 Namespace + Service 的灰度能力不能满足 蚂蚁金服生产落地的要求,需要具备单机灰度、回滚能力。 借鉴社区 SourceLabel 和 Sidecar CRD 的设计思路,创造性提出具备“正交”组合能力的ScopeConfig 能实现任意CRD的更细粒度控 制能力 以TLS 开关为例,在发布TLS开关时,先提交 ScopeConfig 通过 Pod IP 这个label 实现单实例开关控制, 在观察正常后,逐步调整ScopeConfig 的Selector 范围,实现功能的灰度上线能力Service Mesh Sidecar 的TLS 生产级落地实践 灰度控制关注 ServiceMesher 微信公众号 获取社区最新信息0 码力 | 19 页 | 808.60 KB | 6 月前3 Service Mesh 在蚂蚁金服生产级安全实践与 Citadel Agent 采用基于UDS 通信的Grpc服务获取密钥等敏感信息Service Mesh Sidecar 的TLS 生产级落地实践 TLS 实践难点 证书管理 开关切换 灰度控制 SDS 证书管理方案 ISTIO Policy | Mesh Policy ScopeConfigService Mesh Sidecar 的TLS 生产级落地实践 开关切换 RPC Mesh Sidecar 的TLS 生产级落地实践Service Mesh Sidecar 的TLS 生产级落地实践 灰度控制 新功能总是离不开灰度过程,社区已有的Policy CRD 实现 Namespace + Service 的灰度能力不能满足 蚂蚁金服生产落地的要求,需要具备单机灰度、回滚能力。 借鉴社区 SourceLabel 和 Sidecar CRD 的设计思路,创造性提出具备“正交”组合能力的ScopeConfig 能实现任意CRD的更细粒度控 制能力 以TLS 开关为例,在发布TLS开关时,先提交 ScopeConfig 通过 Pod IP 这个label 实现单实例开关控制, 在观察正常后,逐步调整ScopeConfig 的Selector 范围,实现功能的灰度上线能力Service Mesh Sidecar 的TLS 生产级落地实践 灰度控制关注 ServiceMesher 微信公众号 获取社区最新信息0 码力 | 19 页 | 808.60 KB | 6 月前3
 蚂蚁金服网络代理演进之路写入cookie 6 再次请求app1 7 跨机房转发 50% 50% • 机房内zone随机路由 • Cookie zone转发 • 蓝绿发布 • 容灾 ØZone内容灾 Ø机房级别 Ø城市级别 • 弹性调度 • 压测 • 灰度蚂蚁金服SSL/TLS实践 合规 性能 安全软硬件一体解决方案 Intel QAT Cavium Nitrox软硬件一体解决方案 SSL握手性能 流量镜像 流量镜像 TLS,国密 服务鉴权 流量控制 TLS,国密 服务鉴权 流量控制蚂蚁金服率先大规模落地SOFAMesh UDPA 安全 统一数据 平面API 存量连接无损迁移 提升5倍发布效率 TLS双向加密 支持国密算法 WAF 流量镜像 多协议 SOFARPC Dubbo HTTP1.1/2 平滑升级 性能 单跳CPU增加5%消耗 0.2ms RT 蚂蚁金服100+应 流量镜像,RBAC鉴权SOFAMosn能力扩展 心跳检查在Service Mesh场景下网络代理有着不同于接入层的挑战 • 无论应用是否接入Mesh,接入了多少Mesh,都需要保证可正常处理请求,做到可 灰度、可回滚的兼容,平滑迁移 • 通用的框架能力(SOFAMosn/Envoy)无法直接满足复杂的、定制的业务能力,需 要进行针对性的扩展实现 • 需要融合主站已有的应用体系,如注册中心、配置中心等,这些也需要扩展实现0 码力 | 46 页 | 19.93 MB | 6 月前3 蚂蚁金服网络代理演进之路写入cookie 6 再次请求app1 7 跨机房转发 50% 50% • 机房内zone随机路由 • Cookie zone转发 • 蓝绿发布 • 容灾 ØZone内容灾 Ø机房级别 Ø城市级别 • 弹性调度 • 压测 • 灰度蚂蚁金服SSL/TLS实践 合规 性能 安全软硬件一体解决方案 Intel QAT Cavium Nitrox软硬件一体解决方案 SSL握手性能 流量镜像 流量镜像 TLS,国密 服务鉴权 流量控制 TLS,国密 服务鉴权 流量控制蚂蚁金服率先大规模落地SOFAMesh UDPA 安全 统一数据 平面API 存量连接无损迁移 提升5倍发布效率 TLS双向加密 支持国密算法 WAF 流量镜像 多协议 SOFARPC Dubbo HTTP1.1/2 平滑升级 性能 单跳CPU增加5%消耗 0.2ms RT 蚂蚁金服100+应 流量镜像,RBAC鉴权SOFAMosn能力扩展 心跳检查在Service Mesh场景下网络代理有着不同于接入层的挑战 • 无论应用是否接入Mesh,接入了多少Mesh,都需要保证可正常处理请求,做到可 灰度、可回滚的兼容,平滑迁移 • 通用的框架能力(SOFAMosn/Envoy)无法直接满足复杂的、定制的业务能力,需 要进行针对性的扩展实现 • 需要融合主站已有的应用体系,如注册中心、配置中心等,这些也需要扩展实现0 码力 | 46 页 | 19.93 MB | 6 月前3
 Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?WebAssembly (WASM) in Envoy - https://github.com/envoyproxy/envoy/issues/4272 - 计划在1.12版本提供(1.11版本发布于7月12日) - envoy-wasm项目:Playground for Envoy WASM filter - https://github.com/envoyproxy/envoy-wasm k8s 在控制台手工创建 创建服务 通过k8s自动注册 手工关联服务和托管实例组 服务注册 k8s进行健康检查 通过托管式实例组配置健康检查 健康检查 通过Istio支持 通过托管式实例组支持 灰度发布 流量劫持+ Sidecar(envoy) 流量劫持+ Sidecar(envoy) 服务调用 通过Istio Pilot 下发(xDS协议) 通过 Traffic Director(xDS协 Mesh技术的应用程序, 而无需紧密绑定到任何特定实现。”Linkerd 2.4.0: 开始支持SMI Part 4:ServiceMesh灵魂拷问四:说好的供应商不锁定呢? Linkerd 2.4.0: 发布于2019-07-11 Google This release adds traffic splitting functionality, support for the Kubernetes Service0 码力 | 43 页 | 2.90 MB | 6 月前3 Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?WebAssembly (WASM) in Envoy - https://github.com/envoyproxy/envoy/issues/4272 - 计划在1.12版本提供(1.11版本发布于7月12日) - envoy-wasm项目:Playground for Envoy WASM filter - https://github.com/envoyproxy/envoy-wasm k8s 在控制台手工创建 创建服务 通过k8s自动注册 手工关联服务和托管实例组 服务注册 k8s进行健康检查 通过托管式实例组配置健康检查 健康检查 通过Istio支持 通过托管式实例组支持 灰度发布 流量劫持+ Sidecar(envoy) 流量劫持+ Sidecar(envoy) 服务调用 通过Istio Pilot 下发(xDS协议) 通过 Traffic Director(xDS协 Mesh技术的应用程序, 而无需紧密绑定到任何特定实现。”Linkerd 2.4.0: 开始支持SMI Part 4:ServiceMesh灵魂拷问四:说好的供应商不锁定呢? Linkerd 2.4.0: 发布于2019-07-11 Google This release adds traffic splitting functionality, support for the Kubernetes Service0 码力 | 43 页 | 2.90 MB | 6 月前3
 云原生开放智能网络代理 MOSNNacos Etcd ZooKeeper 多协议接入 TLS,国密 WAF,DDos2/10 MOSN 核心能力沉淀  精细化路由  安全防护  多协议  可运维  可扩展 • 多版本发布 • 压测引流 • 服务分组 • 加密链路 • 国密算法 • 服务鉴权 • TCP、Http、SOFA • 透明劫持 • 平滑升级 • 可观测性 • 网络包过滤器 • 协议包过滤器 第一行代码 2018年5月 以 SOFAMosn 项目名开源 2018年11月 内部正式启动落地 Service Mesh 2019年4月 落地第一个应用 2019年618 核心支付链路灰度 2019年双十一 核心支付链路全覆盖5/10 开放是手段,不是目的 加拉帕戈斯综合征 水族馆与大自然的杀人鲸 德尔菲法6/10 CNCF Landscape7/10 SOFAMosn GitHub0 码力 | 12 页 | 1.39 MB | 6 月前3 云原生开放智能网络代理 MOSNNacos Etcd ZooKeeper 多协议接入 TLS,国密 WAF,DDos2/10 MOSN 核心能力沉淀  精细化路由  安全防护  多协议  可运维  可扩展 • 多版本发布 • 压测引流 • 服务分组 • 加密链路 • 国密算法 • 服务鉴权 • TCP、Http、SOFA • 透明劫持 • 平滑升级 • 可观测性 • 网络包过滤器 • 协议包过滤器 第一行代码 2018年5月 以 SOFAMosn 项目名开源 2018年11月 内部正式启动落地 Service Mesh 2019年4月 落地第一个应用 2019年618 核心支付链路灰度 2019年双十一 核心支付链路全覆盖5/10 开放是手段,不是目的 加拉帕戈斯综合征 水族馆与大自然的杀人鲸 德尔菲法6/10 CNCF Landscape7/10 SOFAMosn GitHub0 码力 | 12 页 | 1.39 MB | 6 月前3
 蚂蚁金服 API Gateway Mesh 思考与实践GoPlugin ScriptFilter File Istio xds rest api k8s configmap config file mobile openapi mgs15/21 可灰度 可回滚 可监控 蚂蚁金服「三板斧」 API Gateway Mesh 落地挑战 风险 运维 性能 功能 上线不是一件容易的事 Golang 历史债清理 sian->protobuf M O S N A P P A P P A P P LoadBalancer Spanner http response label=mesh 百分比灰度 基于 Label 的单机灰度 API Gateway Mesh 灰度能力建设17/21 云原生 API Gateway 思考 /0318/21 可管理性 功能 云原生南北向流量方案19/21 MOSN APP1 MOSN0 码力 | 22 页 | 1.72 MB | 6 月前3 蚂蚁金服 API Gateway Mesh 思考与实践GoPlugin ScriptFilter File Istio xds rest api k8s configmap config file mobile openapi mgs15/21 可灰度 可回滚 可监控 蚂蚁金服「三板斧」 API Gateway Mesh 落地挑战 风险 运维 性能 功能 上线不是一件容易的事 Golang 历史债清理 sian->protobuf M O S N A P P A P P A P P LoadBalancer Spanner http response label=mesh 百分比灰度 基于 Label 的单机灰度 API Gateway Mesh 灰度能力建设17/21 云原生 API Gateway 思考 /0318/21 可管理性 功能 云原生南北向流量方案19/21 MOSN APP1 MOSN0 码力 | 22 页 | 1.72 MB | 6 月前3
 深入 Kubernetes 的无人区-蚂蚁金服双十一的调度系统一、蚂蚁金服的Kubernetes现状 Part 1:4/19 发展历程与落地规模 Part 1:蚂蚁金服的Kubernetes现状 平台研发 灰度验证 云化落地 规模化落地 2018年下半年开始投 入 Kubernetes 及其配 套系统研发 2019年初于生产环境 开始灰度验证,对部分 应用做平台迁移 2019年4月完成云化环境 适配,蚂蚁金服云上基础 设施全部采用 Kubernetes 支撑6180 码力 | 19 页 | 2.18 MB | 6 月前3 深入 Kubernetes 的无人区-蚂蚁金服双十一的调度系统一、蚂蚁金服的Kubernetes现状 Part 1:4/19 发展历程与落地规模 Part 1:蚂蚁金服的Kubernetes现状 平台研发 灰度验证 云化落地 规模化落地 2018年下半年开始投 入 Kubernetes 及其配 套系统研发 2019年初于生产环境 开始灰度验证,对部分 应用做平台迁移 2019年4月完成云化环境 适配,蚂蚁金服云上基础 设施全部采用 Kubernetes 支撑6180 码力 | 19 页 | 2.18 MB | 6 月前3
共 22 条
- 1
- 2
- 3













