Kubernetes容器应用基于Istio的灰度发布实践Kubernetes容器应用基于Istio的灰度发布实践 张超盟 @ Huawei Cloud BU 2018.08.25 Service Mesh Meetup #3 深圳站 Agenda • Istio & Kubernetes • Istio & Kubernetes上的灰度发布 An open platform to connect, manage, and secure microservices Istio在华为云:Kubernetes全栈容器服务 应用运维管理 丰富可定制的容器应用立体化运维 容器镜像服务 容器镜像一站式构建、存储与交付 应用编排服务 应用云上自动化编排与设施管理 云容器实例 基于K8S的Serverless容器服务 云容器引擎 企业级高可靠、高性能K8S服务 服务网格 K8S原生Service Mesh Istio在华为云:华为云容器应用 Istio在华为云:服务网格0 码力 | 38 页 | 14.93 MB | 1 年前3
Kubernetes容器应用基于Istio的灰度发布实践1 Kubernetes容器应用基于Istio的灰度发布实践 张超盟 @ Huawei Cloud BU 2018.08.25 Service Mesh Meetup #3 深圳站2 Agenda • Istio & Kubernetes • Istio & Kubernetes上的灰度发布3 An open platform to connect, manage, and secure Istio在华为云:Kubernetes全栈容器服务 应用运维管理 丰富可定制的容器应用立体化运维 容器镜像服务 容器镜像一站式构建、存储与交付 应用编排服务 应用云上自动化编排与设施管理 云容器实例 基于K8S的Serverless容器服务 云容器引擎 企业级高可靠、高性能K8S服务 服务网格 K8S原生Service Mesh28 Istio在华为云:华为云容器应用29 Istio在华为云:服务网格0 码力 | 34 页 | 2.64 MB | 6 月前3
Istio 在 Free Wheel 微服务中的实践是一家为客户提供数字视频广告管理技术和服务的公司。其业务端产 品需要对接客户,提供视频广告投放优化界面,类似于 Web ERP,是一个典型 的三层架构。 微服务之痛 • 两年来,我们将若干复杂的Rails单体应用拆分、迁移到微服务架构, 逻辑用Golang重写,引入了Kubernetes。随着模块越来越多,复杂 的通信带来矛盾日渐突出:流量管理、监控… 最初的尝试:Gateway • 如右图,最初我们尝试用一个自研的 通过在Sidecar中增加FreeWheel自定义认证支持,下游可以充分利用 Istio提供的授权、限流、监控接口,不过要注意Sidecar也有一些小坑 : • Sidecar没有k8s自动注入的secret,也无法通过容器内环境变量自 动建立master连接,需要管理额外的kubeconfig • Sidecar内的服务流量默认是不被劫持的,如果需要劫持需要添加额 外的annotation 扩展Mixer接入授权0 码力 | 31 页 | 4.21 MB | 1 年前3
SolarMesh 基于Istio构建的流量监管平台基于Istio构建的流量监管平台 Istio是目前服务网格领域最流行的开源项目,38% 的企业在生产中使用服务网格,其中有接近一半的 选择是Istio SolarMesh 基于 Istio 及容器技术,提供流量监控 和管理,提供完善的非侵入式服务治理解决方案。 帮助企业在纷繁复杂的微服务调度中快速定位问题, 增强研发效率。 让服务网格不再难学难用,让服务网格在企业落地 更加平滑、安全、稳定。 循环 4 6. 直到找到故障位置 1. 流量告警 / 发现页面报错 2. 看图 3. 直接找到故障位置 Copyright © 2021 Cloud To Go 应用场景 - 灰度版本迁移 传统的版本升级方式 使用solarmesh的版本升级方式 1. 打好部署包 2. 等到半夜 3. 部署一个机器 4. 使用模拟的测试数据测试 1. 打好部署包即可部署 2. 用真实的数据测试0 码力 | 20 页 | 1.29 MB | 1 年前3
Envoy原理介绍及线上问题踩坑Envoy原理介绍及线上问题踩坑 介绍人:张伟 Copyright © Huawei Technologies Co., Ltd. All rights reserved. Page 2 个人介绍 张伟 华为云容器网格数据面技术专家 拥有10年以上中间件及高性能系统开发经验, 作为架构师及核心开发人员发布过传输网管系 统、Tuxedo交易中间件、ts-server多媒体转码服 务、GTS高性能事务云服务、SC高性能注册中心、 outbound -15001 Envoy backend:8123 127.0.0.1:8123 zipkin Pod1 Pod2 业务容器 业务容器 Istio-proxy容器 Istio-proxy容器 Istio-init 容器 Istio-init 容器 Pod内共享网络 Pod内共享网络 Virtual inbound -15006 kubelet 拦截指定命名空间 Pod创建请求 istiod拦截pod创建请求,识别为指定namepsace则根据configmap配置生成带有Envoy两个容器的创建POD请求,修改过的创建请求被 kubelet接收,并在节点创建POD。 • istio-init容器添加用于配置容器网络内iptables规则 • istio-proxy容器启动pilot-agent进程,使用UID=1337 GID=1337创建Envoy启动命令行与配置文件0 码力 | 30 页 | 2.67 MB | 1 年前3
探讨和实践基于Istio的微服务治理事件监控基于Mixer的开发流程和实例微服务平台的监控演进典型的运维场景 传统的监控面临容器化和微服务化的困境 测试运维沟通鸿沟,如何提升沟通效率 监控工具繁杂,如何快速找到合适工具进行问题定位 偶发性问题场景复杂,如何保留发生现场 如何在错综复杂的未服用调用链路中找到错误源头监控场景转换 帮助运维人员快速的定位问题,解决问题 基于容器化和微服务化的监 控场景 • 应用规模巨大 • 服务之间依赖呈现为网状 Logging Tracing 指标监控 • 指标可被聚合 • 体现系统性能趋势 分布式追踪 • 和请求相关 • HTTP • SQL 日志系统 • 代码逻辑处理事件 • 异常、debug信息容器化和微服务下的监控需求 微观下的监控需求 快速错误追踪 可快速排查在性能测试场景下的 慢方法、异常调用以及异常报文 等信息 单次链路追踪 可细粒度排查应用单次链路调用 的包括日志、网络数据在内的所0 码力 | 29 页 | 8.37 MB | 6 月前3
Extending service mesh capabilities using a streamlined way based on WASM and ORAS或者从OCI注册库中拉取WebAssembly模块; ● oras cli类似于docker cli 10 在ACR EE中使用ORAS CLI ● 阿里云容器镜像服务企业版ACR EE作为企业级云原生应用制品管理平台, 提供容器镜像、Helm Chart以及符合OCI规范的制品的生命周期管理; ● oras login --username=<登录账号> acree-1-registry workloadSelector: labels: app: productpage version: v1 20 更新后的Deployment - 以hostpath方式挂载wasm filter文件到Proxy容器 apiVersion: extensions/v1beta1 kind: Deployment metadata: .… spec: …. template: metadata: annotations:0 码力 | 23 页 | 2.67 MB | 1 年前3
Service Mesh in China社区成员画像 #IstioCon Service Mesh Industry in China 现状 • 主要云厂商都已基于 Istio 构建了 Service Mesh 产品 • 但是缺乏迁移到 Service Mesh 上的用户案例及完整路径 • Service Mesh 人才存在缺口 #IstioCon 云原生社区 云原生社区管委会成员 https://cloudnaitve0 码力 | 13 页 | 2.66 MB | 1 年前3
百度APP基于Istio实现基础架构升级 - lightning talk - MichaelXu品线、甚至整个公司内提供 各项服务治理能力的通用化、中台化能力,从而加速服务治理技术的研发和迭代,提升架构 能力可移植性。 #IstioCon 技术方案 l 核心原则 Ø 务实、高稳定性、低迁移成本。 l 核心思路 Ø 先单跳,后双跳。 Ø 服务发现下沉到Envoy。 Ø 基于 RPC + 服务发现实现透明流量劫持。 Ø 自建配置中心,产品化封装。 l 关键技术 Ø 内核劫持,使用Loopback0 码力 | 9 页 | 2.20 MB | 1 年前3
IstioMeetupChina 服务网格热升级技术分享为什么需要服务网格数据面热升级 Why do we need Hot-Upgrade for ServiceMesh Data-Plane • 造成请求失败,影响业务质量 • 重启Pod导致业务容器也被重启,需要执行重新初始化 • 不增加workload数量升级,则服务容量受损 • 增加workload保持服务容量不变,应对大规模场景难以在扩容规模和操作便捷度上取 得令人满意的平衡 传统Sidecar升级方式的缺点0 码力 | 14 页 | 2.25 MB | 1 年前3
共 11 条
- 1
- 2













