探讨和实践基于Istio的微服务治理事件监控指标可被聚合 • 体现系统性能趋势 分布式追踪 • 和请求相关 • HTTP • SQL 日志系统 • 代码逻辑处理事件 • 异常、debug信息容器化和微服务下的监控需求 微观下的监控需求 快速错误追踪 可快速排查在性能测试场景下的 慢方法、异常调用以及异常报文 等信息 单次链路追踪 可细粒度排查应用单次链路调用 的包括日志、网络数据在内的所 有信息。 宏观下的监控需求0 码力 | 29 页 | 8.37 MB | 6 月前3
 Envoy原理介绍及线上问题踩坑oy virtualOutbound监听器 • virtualOutbound经过监听过滤器恢复用于原始目标服务,并找到后端处理器处理新连接。 • 后端处理器在配置中指定处理协议,根据协议相关的网络过滤器处理读取到的数据。 • 如果为http协议,再经过请求过滤器处理http协议头部,如路由选择等功能并创建上游连接池 • 将修改及编码后的http消息通过网络发送到对端Envoy的容器网络。 und端口。 • ORIGINAL_DST恢复原始目标后,根据virtualInbound配置的监听过滤器找到对应的本地服务器地址。并发起localhost的请求。 • 请求进入本地服务器内进行处理并返回响应。 Copyright © Huawei Technologies Co., Ltd. All rights reserved. Page 8 Envoy原理及总体架构-流量拦截 prerouting 启动日志写入线程,每个目标日志文件有独立线程负责输出 • 启动concurrency数目的工作线程 • 启动看门狗线程监控各个工作线程是否定期touch,否则SIGABRT杀掉线程 • 启动admin RESTful监听,处理运行状态输出,prometheus收集等请求 • 定期将工作线程内监控数据stat进行合并 • 定期刷新DNS信息,加速域名解析。 • 目标cluster内主机列表健康状态判断。 • worker线程:0 码力 | 30 页 | 2.67 MB | 1 年前3
 Istio 在 Free Wheel 微服务中的实践resource 应控制在k级别,达到 10k 量级后响应可能会出现超 时导致配置读写状态异常,进而影响整个系统稳定性 实践总结 • Istio配置管理有局限性: • Endpoint的配置管理有防抖动处理,即使集群中的部署变化再快, 也不会阻塞Istio • Istio其他配置管理没有防抖动处理( VirtualService/DestinationRule等),如果用程序自动化注入这些0 码力 | 31 页 | 4.21 MB | 1 年前3
 百度APP基于Istio实现基础架构升级 - lightning talk - MichaelXu运维架构能力是否具备可移植性?是否能低成本复制新的产品线? l 可观测性不足,是否有通用机制提升产品线可观测性? Ø 部分模块上下游超时配置不合理,超时倒挂,集中管理调整成本比较高。 Ø 多数模块对单点异常,慢节点等异常缺乏容忍能力,推动每个模块独立修复,成本高,上线周期长。 Ø 因重试导致雪崩,底层RPC框架需要重复建设来定制动态熔断能力。 Ø 升级一级服务建设中,发现很多模块单点、多点故障不能容忍,能否低成本解决? 低成本解决? Ø 比如常用运维降级、止损能力各个产品线重复建设,方案差异大,OP期望运维能力在不同产品线之间能够通用化, 集中化管理,甚至做到自动决策 Ø 精细故障能力(异常query、注入延迟等)期望能够标准化、低成本跨产品线复制 Ø 百度APP架构缺少上下游模块视图和流量视图,黄金指标不足,导致容量管理压测效率低、混沌工程实施成 本高、故障定位成本高。 #IstioCon 目标0 码力 | 9 页 | 2.20 MB | 1 年前3
 全栈服务网格 - Aeraki 助你在
Istio 服务网格中管理任何七层流量Demo: 用户请求和批处理任务隔离(Dubbo) 场景:隔离处理用户请求和批处理任务的服务实例,为用户请求留出足够的处理能 力,避免批处理任务的压力影响到用户体验。 ● 将服务端划分为两个服务实例组,分别用于处理批处理任务和用户请 求。 ● 客户端发起请求时通过一个“batchjob” header标明请求的来源 ,batchjob=true表示该请求来自于批处理任务;batchjob=false表示该 alse表示该 请求来自于用户请求。 ● 运维人员设置请求路由规则,将不同来源的请求路由到不同的服务实例 组进行处理。 #IstioCon Aeraki Demo: 用户请求和批处理任务隔离(Dubbo) 1. 在 dubbo: application 配置中为 Provider 增加 service_group 自定义属性 2. 通过 Provider 的 deployment 设置 SERVICE_GROUP 的 L7 filter 扩展点,用户可以实现一些灵活的自定义协议处理逻辑,例如认证授权等。 #IstioCon MetaProtocol: 请求处理路径 处理流程: 1. Decoder 解析 Downstream 请求,填充 Metadata 2. L7 filter 从 Metadata 获取所需的数据,进行请求方向的业务处理 3. L7 filter 将需要修改的数据放入 Mutation0 码力 | 29 页 | 2.11 MB | 1 年前3
 13 Istio 流量管理原理与协议扩展 赵化冰Istio 流量管理原理与协议扩展 赵化冰 赵化冰 腾讯云 服务网格团队 https://zhaohuabing.com Service Mesh Service Mesh Layer 处理服务间通信(主要是七层通信)的云原生基础设施层: Service Mesh 将各个服务中原来使用 SDK 实现的七层通信相关功能抽象 出来,使用一个专用层次来实现,Service Mesh 对应用透明,因此应用 Cluster 为 Mesh 中的 Envoy 生成了入向和出向两个不同方向的处理流程的配 置。 • 在 Envoy 的基础上增加了 VirtualInboundListener,VirtualOutboundListener、OutboundCluster、InboundCluster 等 概念。 为何按端口对 HTTP 的处理进行聚合,而不是为每一个服务创建一个 Listener? • 降低 Listener Istio 流量管理 – 数据面 – 端到端请求处理流程 以 Bookinfo 为例说明服务间 HTTP 调用的流量拦截及处理流程: 1. Productpage 发起对 reviews 服务的调用:http://reviews:9080/reviews/0 。 2. 请求被 productpage Pod 的 iptables 出向流量规则拦截,处理后重定向到本地 15001 端口。 3. Envoy0 码力 | 20 页 | 11.31 MB | 6 月前3
 Istio控制平面组件原理解析üAdapter展示数据 ü响应envoy数据处理完成问题讨论 Report流程回顾 üEnvoy异步批量发送数据给Mixer üMixer使用协程池处理Adapter ü处理完成所有Adapter才响应Envoy 疑问 协程池堵塞是否会影响envoy性能?Mixer协程池 ü 初始化一定量worker(协程) ü 监听同一队列 ü 任务放入队列 ü Worker处理任务Jaeger架构设计Mixer阻塞对envoy的影响0 码力 | 30 页 | 9.28 MB | 6 月前3
 在网格的边缘试探:企业 Istio 试水指南• 集群环境申请:版本、开关、资源等。 • 功能性需求:本次试用中Istio需要提供的功能,再次强调:No Freestyle • 非功能需求:并发、成功率、响应时间等服务质量参数。 • 故障处理需求:故障预案。 • 影响范围分析。 • 选定测试版本:研读开放Issue以及Release Notes。测试方案部署 • Istio部署 • 复查集群环境 • 调整资源参数 • 调整亲和性参数0 码力 | 19 页 | 11.41 MB | 6 月前3
共 8 条
- 1
 













