 探讨和实践基于Istio的微服务治理事件监控Service Mesh Meetup #4 上海站 探讨和实践基于Istio的微服务治理事件监控 2018.11.25 徐运元关于我 2008年毕业于浙江大学,曾在思科和浙大网新有超过 9年的工作经验和5年的云计算领域工作经验,带领团 队完成公司第一代基于Kubernetes的云平台开发和第 二代基于Kubernetes的DevOps云平台开发。目前致力 于公司基于Istio的微服务平台打造。 Metrics Logging Tracing 指标监控 • 指标可被聚合 • 体现系统性能趋势 分布式追踪 • 和请求相关 • HTTP • SQL 日志系统 • 代码逻辑处理事件 • 异常、debug信息容器化和微服务下的监控需求 微观下的监控需求 快速错误追踪 可快速排查在性能测试场景下的 慢方法、异常调用以及异常报文 等信息 单次链路追踪 可细粒度排查应用单次链路调用0 码力 | 29 页 | 8.37 MB | 6 月前3 探讨和实践基于Istio的微服务治理事件监控Service Mesh Meetup #4 上海站 探讨和实践基于Istio的微服务治理事件监控 2018.11.25 徐运元关于我 2008年毕业于浙江大学,曾在思科和浙大网新有超过 9年的工作经验和5年的云计算领域工作经验,带领团 队完成公司第一代基于Kubernetes的云平台开发和第 二代基于Kubernetes的DevOps云平台开发。目前致力 于公司基于Istio的微服务平台打造。 Metrics Logging Tracing 指标监控 • 指标可被聚合 • 体现系统性能趋势 分布式追踪 • 和请求相关 • HTTP • SQL 日志系统 • 代码逻辑处理事件 • 异常、debug信息容器化和微服务下的监控需求 微观下的监控需求 快速错误追踪 可快速排查在性能测试场景下的 慢方法、异常调用以及异常报文 等信息 单次链路追踪 可细粒度排查应用单次链路调用0 码力 | 29 页 | 8.37 MB | 6 月前3
 Envoy原理介绍及线上问题踩坑Envoy网络及线程模型 主线程 初始化 日 志 线 程 读 取 配 置 x D S 监 听 网络事件 启 动 工 作 线 程 定时器事件 a d m i n 请 求 X D S 更 新 合 并 s t a t 刷 新 D N S 调度器 工作线程 网络事件 定时器事件 监 听 器 监 听 过 滤 器 释 放 内 存 记 录 s t a t 状 态 更 新 调度器 请求完成后延迟释放内存,解决本次事件处理中回调所引用对象可以被安全访问,并在下次 事件处理中安全删除。 admin连接 数据面连接 主 机 健 康 检 查 看 门 狗 线 程 Copyright © Huawei Technologies Co., Ltd. All rights reserved. Page 12 Envoy网络及线程模型-共享数据同步 • 1. 调度器通过epoll监控文件事件(网络)及定时器事件进行排队任务处理 及定时器事件进行排队任务处理 • 2. 线程间通信通过post接口发送任务,此任务通过定时器事件激活 • 3. 线程间数据交换通过post更新TLS,这样每个线程内代码都不需要加锁处理 • 4. 每个线程的TLS对象本身只保存真实对象的共享指针进行读操作,减少内存消耗。 • 5. 全局对象更新只发生在主线程,并通过COW方式通知工作线程进行指针修改 • 每个TLS slot通过alloc0 码力 | 30 页 | 2.67 MB | 1 年前3 Envoy原理介绍及线上问题踩坑Envoy网络及线程模型 主线程 初始化 日 志 线 程 读 取 配 置 x D S 监 听 网络事件 启 动 工 作 线 程 定时器事件 a d m i n 请 求 X D S 更 新 合 并 s t a t 刷 新 D N S 调度器 工作线程 网络事件 定时器事件 监 听 器 监 听 过 滤 器 释 放 内 存 记 录 s t a t 状 态 更 新 调度器 请求完成后延迟释放内存,解决本次事件处理中回调所引用对象可以被安全访问,并在下次 事件处理中安全删除。 admin连接 数据面连接 主 机 健 康 检 查 看 门 狗 线 程 Copyright © Huawei Technologies Co., Ltd. All rights reserved. Page 12 Envoy网络及线程模型-共享数据同步 • 1. 调度器通过epoll监控文件事件(网络)及定时器事件进行排队任务处理 及定时器事件进行排队任务处理 • 2. 线程间通信通过post接口发送任务,此任务通过定时器事件激活 • 3. 线程间数据交换通过post更新TLS,这样每个线程内代码都不需要加锁处理 • 4. 每个线程的TLS对象本身只保存真实对象的共享指针进行读操作,减少内存消耗。 • 5. 全局对象更新只发生在主线程,并通过COW方式通知工作线程进行指针修改 • 每个TLS slot通过alloc0 码力 | 30 页 | 2.67 MB | 1 年前3
 Istio控制平面组件原理解析tual-service,gateway等 ü缓存k8s:node,Service,Endpoints等触发配置生效方式 V2通过GRPC双向流,主动推送配置给envoy: ü事件触发 • 当配置有增/删/改事件 ü定时触发 • 可配置环境变量 V2_REFRESH,定时推送配置Mixer——遥测报告 u上报的原始数据 u异步Flush给Adapter u转换成属性词汇 u问题讨论属性词汇0 码力 | 30 页 | 9.28 MB | 6 月前3 Istio控制平面组件原理解析tual-service,gateway等 ü缓存k8s:node,Service,Endpoints等触发配置生效方式 V2通过GRPC双向流,主动推送配置给envoy: ü事件触发 • 当配置有增/删/改事件 ü定时触发 • 可配置环境变量 V2_REFRESH,定时推送配置Mixer——遥测报告 u上报的原始数据 u异步Flush给Adapter u转换成属性词汇 u问题讨论属性词汇0 码力 | 30 页 | 9.28 MB | 6 月前3
 Extending service mesh capabilities using a streamlined way based on WASM and ORAS一致性校验: ○ https://github.com/pr oxy-wasm/spec ● 内置的Wasm runtime ○ ~20MB for WAVM ○ ~10MB for V8 ● 事件驱动模型 ● 兼容native filter调用 方式 8 Example Wasm filter configuration ● 下发到Envoy Proxy侧的配置 9 OCI Registry0 码力 | 23 页 | 2.67 MB | 1 年前3 Extending service mesh capabilities using a streamlined way based on WASM and ORAS一致性校验: ○ https://github.com/pr oxy-wasm/spec ● 内置的Wasm runtime ○ ~20MB for WAVM ○ ~10MB for V8 ● 事件驱动模型 ● 兼容native filter调用 方式 8 Example Wasm filter configuration ● 下发到Envoy Proxy侧的配置 9 OCI Registry0 码力 | 23 页 | 2.67 MB | 1 年前3
共 4 条
- 1













