Service Mesh结合容器云平台的思考和实践二代基于Kubernetes的DevOps云平台开发 来自于浙江大学SEL实验室目录 CONTENTS Kubernetes平台下的微服务演进 Pilot核心功能解读 Pilot-Agent核心流程解读Kubernetes平台下的微服务演进当我们在讨论微服务的时候我们在讨论什么? • 解决如何微服务的问题 • 解决微服务化后带来的问题 温饱问题 • 计算资源的快速分配 • 基本的监控 Cloud的微服务方案 NS A Service Zuul Nginx Eureka Server Service 1 Service 2 Ribbon 注册 业务服务 配置中心 启动获取 Monitor Turbine K8S流量 SC流量 同集群调用微服务 Spring Cloud管理平台基于Kubernetes的Spring Cloud实现 Devops: Experience 配置,使这些规则生效。 • Istio-Auth 服务间认证和终端用户认证功能Istio的Pilot功能解析Pilot官方架构Istio – EnvoyPilot-Agent的核心流程解读Pilot工作流程Pilot-Agent的部署形式 pilot-agent在pilot/cmd包下面,是个单独 的二进制。 pilot-agent跟envoy打包在同一个docker镜 像里,镜像由Dockerfile0 码力 | 28 页 | 3.09 MB | 6 月前3
Service Mesh 在蚂蚁金服生产级安全实践Mesh Sidecar 的 TLS 生产级落地实践 分享内容基于 Secret Discovery Service Sidecar 的证书管理方案 Kubernetes Secret 证书管理流程 在 Kubernetes 场景下,证书是通过 secret 的方式来管理,使用时通过 secret mount 以 Volume 形式挂载。 存在以下三个问题: Secret 管理方式与 需要通过热重启方式重新加载,成本高昂基于 Secret Discovery Service Sidecar 的证书管理方案 Envoy SDS 证书管理流程 Secret Discovery Service 是 Envoy 提出的 Sidecar 证书管理方案,方案的核心流程在于引入 SDS Server 进行密钥管理和分发,Sidecar 通过 gRPC 请求获取证书,并利用 gRPC stream 能力实现证书动态轮转。 的证书管理方案 Envoy SDS 证书管理流程基于 Secret Discovery Service Sidecar 的证书管理方案 Istio With Envoy SDS Istio 基于 Envoy 的 SDS方案,实现了 SDS Server 和 SDS 配置管理。Istio 方案中选择 UDS 通信方案,Istio的 方案证书管理流程由 Citadel , Citadel Agent0 码力 | 19 页 | 808.60 KB | 6 月前3
陌陌Service Mesh架构实践0 陌陌Service Mesh架构实践 高飞航 陌陌中间件架构师1/24 讲师简介 高飞航,陌陌中间件架构师 2011年 毕业于东北大学 加入淘宝网 交易平台团队 负责交易流程业务研发 2013年 加入陌陌 基础平台组 负责多项中间件产品研发、多机房架构建设 在微服务领域具备丰富的经验 当前关注Service Mesh、云原生等技术方向2/24 /01 /02 /03 背景 无法实现架构统一 稳定性受损、引发故障 架构方案受限 …11/24 引入Service Mesh 是否足够成熟 是否有替代方案 是否可接受成本 是否能兑现价值 观察阶段 试验阶段 评估阶段 启动阶段 思考 行动12/24 实践 /03 Service Mesh架构在陌陌的落地实践13/24 方案选型 与现有架构的兼容性 现阶段的关键需求 技术储备与原则类因素 自研数据平面与 借助JNI与Netty Java实现FD迁移18/24 数据平面升级方式 – 发布流程 容器化发布方式 • 发布过程同时存在新旧两个Agent • 注入新Container • 预留占位Container • Container内部升级 当前方案 运维Agent • 单个Pod升级Agent • 多个Pod发布编排 Agent发布流程19/24 数据平面容灾方式 服务类应用 • 场景:出流量由入流量产生0 码力 | 25 页 | 1.25 MB | 6 月前3
SOFAMesh的通用协议扩展version 2.0.0落地形态 Traffic RulesSOFA MOSN Virtual Host Domain [172.16.3.8:1220] SOFA Listener 调用流程 Client com.svc.user Core DNS 172.16.3.8 IP TABLES dest 172.16.3.8:12220 SOFA Listener original Native,高性能,低侵入性的通用 Mesh 落地方案 • 支持新 RPC 框架和通信协议低成本接入 • 协议扩展对 Mesh 控制平面透明化 • 允许对协议多层次,插件化的扩展X-PROTOCOL 配置SOFA MOSN 调用流程 Upstream protocol X APP [light client] app user version 1.0.0 Downstream protocol X SOFA Splitting Context Based RoutingSOFA MESH • http://github.com/alipay/sofa-mesh • 月底发布 0.2.0 版本 • 9月份启动在 UC 的落地 • 蚂蚁主站落地Q & A 我是作者名称http://www.servicemesher.com0 码力 | 28 页 | 4.73 MB | 6 月前3
蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘•定义扩展机制通知解码事件STREAMING 6 Ø定义Stream模型 ü 向上确保协议行为一致性 ü 为网络协议请求/响应提供可编程的抽象载体 ü 考虑PING-PONG,PIPELINE,分帧STREAM三种典型流程特征 Ø定义Stream生命周期,核心事件 Ø定义Stream层编/解码核心接口 ü 核心数据结构复用Protocol层 Ø定义可扩展的插件机制 Ø对于满足请求Stream池化的需求 Ø需处理上层传入的状态事件PROXY Ø需处理上层传入的状态事件PROXY 7 Ø基于Stream抽象提供多协议转发能力 Ø执行Stream扩展Filters Ø提供可扩展的路由寻址能力 Ø提供可扩展的后端管理,负载均衡,健康检查能力 Ø维护上/下游核心指标转发流程 8 IO Read Codec Stream Route / LB Codec Stream IO write F1 F2 F1 F2 F1 F2 IO Read Filters IO Upstream 协议配置 ØSOFARPC 支持 Upstream 反向请求Istio集成 3 Ø支持 Istio 0.8 版本 Pilot V4 API ü支持xDS on ADS Ø支持全动态配置启动运行 Ø支持API核心功能点,不断完善中扩展机制 4 • 网络层扩展 • 事件订阅 • 自定义filter • 协议层处理扩展 • 事件订阅 • 自定义filter • TCP层自定义私有协议0 码力 | 44 页 | 4.51 MB | 6 月前3
Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?托管式实例组:效仿容器和k8s的方式来管理虚拟机 容器的硬件配置 实例模版的硬件配置 硬件 镜像文件的基础镜像 实例模版的操作系统配置 操作系统 镜像文件 自动启动脚本 创建应用 启动业务容器 按照实例模版启动虚拟机+应用 启动应用 k8s replicaset 通过实例模版设置实例数 管理实例副本(固定) k8s HPA或者serverless 通过实例模版设置自动伸缩 管理实例副本(伸缩) k8s Traffic DirectorPart 3:ServiceMesh灵魂拷问三:要不要支持虚拟机? 创新思路:补齐虚拟机的短板,向容器看齐,维持一致的用户体验 镜像 容器 实例模版 自动化启动脚本 k8s replicaset 托管式实例组 Google Traffic Director 服务 Google Traffic Director 路由规则 手工 手工 非托管式实例组0 码力 | 43 页 | 2.90 MB | 6 月前3
蚂蚁金服双十一 Service Mesh 超大规模落地揭秘容器 15 方案落地-框架升级后 应用代码 SOFABoot_Old SOFABoot/SOFARPC API SOFABoot_New JVM RPC 检测 pod 变量,注 入启动参数 判断开启了 MOSN 发布和订阅服务 直接调用,关闭寻 址功能 其他16 方案落地-容器替换 Pod Pod Old Pod New With MOSN Pod New With 新增新容器 销毁老容器 流量无损 正常运行中19 我们的方案-升级策略-无感升级-MOSN MOSN New MOSN 通知平滑升级 迁移监听套接字 解析Mosn配置 启动控制面服务 通知启动完成 关闭控制面服务 关闭数据面服务 迁移存量长连接 怎么做到的无损?20 四、分时调度案例 分时调度案例21 分时调度-背景 资源域A 资源域B 资源域A 资源域B X时刻0 码力 | 26 页 | 2.71 MB | 6 月前3
Service Mesh Meetup #3 深圳站一个数据库 • 分模块整合架构(前后端分析) • 不同的框架或业务模块 • 多种数据源 • 微服务架构 • 各种语言、各种框架或子系统 • 各种数据源 • ServiceMesh一般的开发流程 • 1. 开启一个新的 feature; • 2. Developer 从 develop 分支新建一个 feature/new_branch 来做特定 feature 的开发; • 3. 开发并自测后,提交 测试;(脚本或者人工)有什么问题? • 效率低 • 没有代码检查; • 没有自动化测试(包括单元测试); • 沟通成本高 • 开发需要通知负责人、测试、产品等;(而且是每次构建/部署 都需要) • 依赖多较好的开发流程(流程化、自动化) • 1. 开启一个新的 feature; • 2. Devloper 从 develop 分支新建一个 feature/new_branch 来做特定 feature 的开发; • 触发 Jenkins/Drone 自动构建; • 9. 构建成功就执行你定义的工作流:打包镜像,触发 deploy 以及其他后续的 Automation Testing 等流程; • 10 . Drone 通知工作流程情况给开发/或者交付 QA 测试;如何提升工程效率?我是作者名称2017 年 DevOps 现 状调查报告DevOpsDevOps DevOps 不是一种新工具; DevOps0 码力 | 45 页 | 18.62 MB | 6 月前3
金融级云原生 PaaS 探索与实践网络接入 (SLB/ALB) 容 器 层 跨集群管理 单元化能力 容器镜像管理 批次发布 原生资源管理 Pod伸缩管理 集群伸缩管理 变更管控 配额管理 运维原子操作 精细化调度 接入层流程调拨 应用层流量调拨 跨集群状态 分发/汇聚 数据层流量调拨 压测/灰度 流量管理 单元化 元数据管理 弹性流量管理 跨集群发布策略 多集群管理 跨集群网络 跨集群镜像管理 蓝绿发布 流量控制; • 多应用有序发布; • 应用 ReleasePipeline 管理; 应用依赖项顺序; 发布顺序; Beta 发布 分组发布; • 变更管控能力;发布流程 无损发布流程控制; 内部流量: RPC 外部流量: SLB(ALB) DNS 发布运维体系 InPlaceSet Controller Pod Service/Endpoint Controller0 码力 | 20 页 | 1.71 MB | 6 月前3
微博Service Mesh实践motan-basicRefer 继承 motan2://127.0.0.1:agent_port/service=path?group=groupService Mesh Meetup · BeiJing 正向代理理流程 �29 微博Service Mesh实践 - WeiboMesh php/OR/java Client Weibo Mesh register 微博Service Mesh实践 - WeiboMesh motan-service motan-basicService 继承Service Mesh Meetup · BeiJing 反向代理理流程 �32 微博Service Mesh实践 - WeiboMesh Weibo Mesh Weibo Mesh NGINX PHP-FPM provider Restful handler0 码力 | 43 页 | 1007.85 KB | 6 月前3
共 19 条
- 1
- 2













