 Service Mesh结合容器云平台的思考和实践sidecar。非Kubernetes情况下需要把 pilot-agent、envoy跟应用部署在一起,这 就有点“污染”应用的意思了。Pilot-Agent的功能介绍 在proxy镜像中,pilot-agent负责的工作包括: • 生成envoy的配置。 • 启动envoy。 • 监控并管理envoy的运行状况,比如envoy出错时pilot-agent负责重启envoy,或者envoy配置变更后 reload envoy。 --uid-owner ${uid} -j RETURNPilot-Agent主要功能分析-生产Envoy配置 envoy的配置主要在pilot-agent的init方法与proxy命令处理流程的前半部分生成。其中init方法为pilot-agent二进制的命令行配置大 量的flag与flag默认值,而proxy命令处理流程的前半部分负责将这些flag组装成为envoy的配置ProxyConfig对象。下面分析几个相对重 而上面的-c指定的envoy配置文件有几种生成的方式: 1.运 行 pilot-agent 时 , 用 户 不 指 定 customConfigFile 参 数 ( agent init 时 默 认 为 空 ) , 但 是 制 定 了 templateFile参数(agent init时默认为空),这时agent的main方法会根据templateFile帮用户生成一个 customConfigFile0 码力 | 28 页 | 3.09 MB | 6 月前3 Service Mesh结合容器云平台的思考和实践sidecar。非Kubernetes情况下需要把 pilot-agent、envoy跟应用部署在一起,这 就有点“污染”应用的意思了。Pilot-Agent的功能介绍 在proxy镜像中,pilot-agent负责的工作包括: • 生成envoy的配置。 • 启动envoy。 • 监控并管理envoy的运行状况,比如envoy出错时pilot-agent负责重启envoy,或者envoy配置变更后 reload envoy。 --uid-owner ${uid} -j RETURNPilot-Agent主要功能分析-生产Envoy配置 envoy的配置主要在pilot-agent的init方法与proxy命令处理流程的前半部分生成。其中init方法为pilot-agent二进制的命令行配置大 量的flag与flag默认值,而proxy命令处理流程的前半部分负责将这些flag组装成为envoy的配置ProxyConfig对象。下面分析几个相对重 而上面的-c指定的envoy配置文件有几种生成的方式: 1.运 行 pilot-agent 时 , 用 户 不 指 定 customConfigFile 参 数 ( agent init 时 默 认 为 空 ) , 但 是 制 定 了 templateFile参数(agent init时默认为空),这时agent的main方法会根据templateFile帮用户生成一个 customConfigFile0 码力 | 28 页 | 3.09 MB | 6 月前3
 蚂蚁金服Service Mesh渐进式迁移方案ServiceName=userservice • ClusterIP=10.254.162.44 • Domain=userservice.default.svc.cluster.local 2. 生成DNS记录 • userservice.default.svc.cluster.local -> 10.254.162.44 kube-proxy 3. 发送请求 GET http://userservice/id/1000221 ServiceName=userservice • ClusterIP=10.254.162.44 • Domain=userservice.default.svc.cluster.local 2. 生成DNS记录 • userservice.default.svc.cluster.local -> 10.254.162.44 3. 发送请求 GET http://userservice/id/10002210 码力 | 40 页 | 11.13 MB | 6 月前3 蚂蚁金服Service Mesh渐进式迁移方案ServiceName=userservice • ClusterIP=10.254.162.44 • Domain=userservice.default.svc.cluster.local 2. 生成DNS记录 • userservice.default.svc.cluster.local -> 10.254.162.44 kube-proxy 3. 发送请求 GET http://userservice/id/1000221 ServiceName=userservice • ClusterIP=10.254.162.44 • Domain=userservice.default.svc.cluster.local 2. 生成DNS记录 • userservice.default.svc.cluster.local -> 10.254.162.44 3. 发送请求 GET http://userservice/id/10002210 码力 | 40 页 | 11.13 MB | 6 月前3
 金融级云原生 PaaS 探索与实践关系型存储;  数据量  容灾 • 基于部署单元分发 多集群管控13/20 三、发布运维体系 发布运维体系14/20 应用管理&交付 • 基于统一管控背景下的 Dockerfile 管理和生成; • 基于组件关联的 FedAppInstance + revision 版本控制; • 快速构建能力 - binary2Image 能力; 发布运维体系15/20 发布运维体系 发布运维0 码力 | 20 页 | 1.71 MB | 6 月前3 金融级云原生 PaaS 探索与实践关系型存储;  数据量  容灾 • 基于部署单元分发 多集群管控13/20 三、发布运维体系 发布运维体系14/20 应用管理&交付 • 基于统一管控背景下的 Dockerfile 管理和生成; • 基于组件关联的 FedAppInstance + revision 版本控制; • 快速构建能力 - binary2Image 能力; 发布运维体系15/20 发布运维体系 发布运维0 码力 | 20 页 | 1.71 MB | 6 月前3
 SOFAMOSN持续演进路径及实践分享适用于蚂蚁当前的服务发现 体系 ü 通过中间件通道对应用推送 MOSN调用地址 ü 通过扩展cluster类型的方式 动态获取配置中心后端 ü MOSN出向路由基于明确的 服务依赖关系生成 ü 服务通过 id:version 定义 ü 适用于SOA化服务,标准微 服务 ü 适用于跨语言通信的场景蚂蚁落地 – 复杂路由 ü 基于链式路由机制扩展,使 用router match,subset等0 码力 | 29 页 | 7.03 MB | 6 月前3 SOFAMOSN持续演进路径及实践分享适用于蚂蚁当前的服务发现 体系 ü 通过中间件通道对应用推送 MOSN调用地址 ü 通过扩展cluster类型的方式 动态获取配置中心后端 ü MOSN出向路由基于明确的 服务依赖关系生成 ü 服务通过 id:version 定义 ü 适用于SOA化服务,标准微 服务 ü 适用于跨语言通信的场景蚂蚁落地 – 复杂路由 ü 基于链式路由机制扩展,使 用router match,subset等0 码力 | 29 页 | 7.03 MB | 6 月前3
 Service Mesh的实践分享Cluster(HTTP) 接入难度 容易。打入依赖包即可 容易。需依赖SDK 容易。需依赖SDK 编码难度 容易。IDL接口规范 容易。IDL接口规范 难。需要自行处理HTTP请求和 响应(目前还没有生成HTTP sdk) 应用侵入性 侵入性大。复杂客户端会给 应用造成负担,包括资源占 用、依赖冲突等等 侵入性小。SDK只有简单的寻址和序列化/ 反序列化的功能 无侵入性。应用自行调用 运维难度0 码力 | 30 页 | 4.80 MB | 6 月前3 Service Mesh的实践分享Cluster(HTTP) 接入难度 容易。打入依赖包即可 容易。需依赖SDK 容易。需依赖SDK 编码难度 容易。IDL接口规范 容易。IDL接口规范 难。需要自行处理HTTP请求和 响应(目前还没有生成HTTP sdk) 应用侵入性 侵入性大。复杂客户端会给 应用造成负担,包括资源占 用、依赖冲突等等 侵入性小。SDK只有简单的寻址和序列化/ 反序列化的功能 无侵入性。应用自行调用 运维难度0 码力 | 30 页 | 4.80 MB | 6 月前3
共 5 条
- 1













