拒绝孤岛-可观测数据融合分析

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 拒绝孤岛 可观测数据融合分析 张城(元乙)-阿里云
2.
3. IT系统的可观测 • 系统更加复杂 • 开发涉及更多的人 • 运行环境多种多样 开发模式 系统架构 部署模式 基础设施
4. 可观测挑战 计算节点数 技术依赖 微服务 大量开源软 件、SaaS 容器 少量技术 虚拟机 物理机 单一 异构/云 发布频率 静态 动态 参与人数 一天一次 DevOp s 一年一次 瀑布 Ops 按需发布 敏捷 单兵 DevSecOp s DevSecBusO ps 协同
5. 什么是成熟的可观测方案 自动发现 一套工具 全栈数据 统一海量存储 数据关联分析 服务自动发现 客户端到服务端 减少跳转上下文缺失 超大规模写入 完备分析语法 基础设施自动化 基础设施到应用 降低体验割裂 长期存储友好 跨多种数据源 自动生成服务拓扑 IT、商业、Sec… 学习代价低易上手 Log/Trace/Metric统一 大规模分析能力 丰富的上下文 实时性 高基数 部分智能化 统一存储 关联Meta/CMDB 产生到可见秒级 问题来源于细节 告警收敛 实时分析 服务/交易上下文 快速返回查询结果 尽可能保留原始数据 基础的异常检测 融合分析 数据上下文 实时的告警能力 数据记录更多维度 基础的根因分析 智能化
6. 可观测数据分析发展历程 多套系统 统一可视化 统一存储分析 Metric Trace Log Jaeger Grafana Kibana Loki Tempo SLS Mimir Grafana 观测数据采集 降低跳转代价 降低维护代价 数据都能用上 统一Meta数据 统一分析语言 更快、更便捷、更有效的观测数据价值挖掘:数据融合分析
7. 可观测数据融合分析 用户行为分析 监控 访问日志 Profiling Android Login Logout IOS Payments Crash CMDB Network Logs Metrics 用户DB 问题定位 登录日志 攻击检测 Network Packet Configs UserInfo Access Log PerfCounter 反作弊 Syslog 变更管理 Traces Profiling CMDB DB ML模型 … Event Command Binlog Orders Tracing Error Log Web Access Audit Log Profiling Ping Clouds OpenFile
8. 技术难点与挑战 统一海量存储 PB级规模 数据关联分析 同类数据源关联 跨数据源关联 实时性 端到端秒级可见 交互式分析能力 高基数 多维度数据分析内存压力 统一的存储引擎 应对突增的写入 兼顾完备性与易用性 兼顾实时性与性能 超大规模存储成本
9. SLS可观测技术架构 SLS可观测统一平台架构 全栈监控 智能算法与编排 多种类 功能丰富 可定制 异常检测 时序预测 文本聚类 多维分析 根因定位 打标反馈 仪表盘 可视化嵌入 Trace 实时数据流转与分析 交互式 PB级 300+源 易用性 稳定性 无侵入 高性能 自动扩容 消耗低 实时消费 SQL PromQL 独享计算 数据加工 调度引擎 融合分析 数据导出 MetricStore 冷热分离 全栈数据采集 日志 指标 Trace Cloud Lens RUM 可观测统一存储引擎 LogStore 移动端监控 Event 成本管家 日志审计 …
10. 数据融合分析核心架构 Tag局部访问 数据 特性 正排 Metrics OpenAPI M 关键词随机过滤 倒排 Logs/Traces L/T 列存 聚合分析 Query&Analysis Engine Put& Pull 访问 偏好 分析 诉求 面向 未来 写多读少 Query Engine SQL Engine Scheduler PromQL Engine Batch写后台Compaction SLS Worker 近期数据访问频繁 语法简洁&完备性 弹性分析能力 冷热分层 Query 多层缓存 PromQL 分布式执行 SQL Data Indexing Data Management MetricStore Archive Manager Retention Manager LogStore Cache Manager Compaction Manager FIFO Queue 负载均衡 OSS Pangu 可扩展能力 计算存储分离 无状态 数据流 水平扩展 控制流 带状态
11. 统一的存储引擎 Sort By Event Time Sort By PK(MetricName Labels) Inverted Index Logs Traces LogStore MetricStore Column Oriented Compaction Sort By Arrive Time FIFO Binlog Logs协议 Traces协议 Metrics Metrics协议 其他协议
12. 融合分析引擎 Pull、Search、 PromQL、SQL、 Pipeline … SLS Query Proxy SLS Meta Service SQL Coordinator OpenAPI 、JDBC 、 HTTPS、Grafana、 Tableau… SQL Worker SQL Worker SQL Worker SQL Worker Scale Up/Down Sorted Key过滤 关键词过滤 PromQL结果 SLS Prometheus Prometheus Query Engine SLS TimeSeries Storage LogStore MetricStore MySQL Presto Connectors OSS …
13. 融合分析示例 level: error and content : pay not source : 11.120.30.40 关键词查询 level: error and content : pay | select source, count(1) as total from log group by source order by total desc 关键词查询 SQL PromQL SQL select time, value, instance from ( select promql_query_range(‘avg by (instance) (irate(node_cpu_seconds_total{}[5m])’) from metrics ) a join cmdb b on a.instance = b.hostname and b.region = ‘shanghai’ select ts_predicate (time, value) as tsVal, instance, region from( select a.time as time, a.value as value, a.instance as instance, b.region as region from( select promql_query_range(‘avg by (instance) (rate( node_cpu_seconds_total {mode=~“system”}[5m]))’ from metrics ) a join cmdb b on a.instance = b.hostname) where instance in (select distinct source as instance from access_log where level = ‘error’ and content like ‘%pay%’)) CPU System指标 关联Region信息 MetricStore CMDB 过滤日志中出现错误的机器 LogStore SQL PromQL 关键词查询 应用时序异常检测算法 ML模型 ML模型 CMDB
14. 当可观测执行到一定程度后 系统中有哪些观测数据 数据到底是什么样的 每种数据存储在哪里 数据的特性是什么 各类数据之间怎么关联 如何观测你的可观测数据?
15. 数据表达-观测可观测数据 实体/Resource 关联的数据 可观测数据的类型与关系 Traces TraceContext 错误传播路径 Deploy1 触发 IP Logs User1 发布 Region Pod TraceID CICD Job 1 Image Access Log Metrics Resource 实体/Resource之间的关系 K8s Audit Log Pod Base Metrics Pod Event Pod Meta 实例 关联 问题根因 依赖 SpanID 可观测数据中的实体与关系 Image1 依赖 Service Trace Code Repo 1 GitLab Access Log Pod1 运行在 Service A Service B 运行在 Pod2 Mongo A Service C 调用 Redis A MySQL A ? 发现问题 Pod App Metrics Pod App Access Logs Pod App Error Logs Node1 Node Metrics VPC1
16. 案例1:SLS可观测建设实践 SLS全球化集群 SLS智能观测平台 负载均衡、自动扩容、 机器下线、故障隔离 SLS可观测数据存储 全球化大盘 集群稳定 性大盘 计费稳定 性大盘 营收分析 大盘 重保客户 大盘 SLS Admin Project SLS服务 监控与问题排查 全量可观测数据 依赖服务 预聚和 全球同步 基础设施 cn-beijing … SLS Admin Global Project 聚合/重要 可观测数据 预聚和 全球同步 SLS服务 依赖服务 • • • • • 账单数据 计费计量 用户SLA数据 集群水位 核心稳定性指标 • • • • • • • • • • • 用户访问日志 查询明细日志 各类应用日志 各类应用指标 全链路Trace K8s 系统指标 K8s 组件日志 K8s 审计日志 K8s 事件 物理机指标 物理机Syslog 基础设施 监控 集群水位 监控 Agent稳 定性监控 SLS服务 监控 异常查询 分析 用户行为 分析 访问日志 分析 数据自定 义分析 智能告警与诊断 智能异常 告警 智能发布 管理 异常根因 定位 集群资源 预测 数据采集 诊断 查询异常 诊断 计量计费 诊断 消费延迟 诊断 SLS Admin Project 基础设施 全量可观测数据 us-west-1 DevOps 运维、发布、应急处理 产品 运营 架构师 技术支持
17. 案例2:多端全链路融合可观测 全链路观测数据应用平台 服务端 • • • • 车机 APP APP 遥控打开空调 … 服务端 OTA升级派发 … 车机 驾驶员操作 … 异步发送 断点续传 弱网优化 全球加速 全 链路 排查 自 定义 统 计 多 端监 控大 盘 工 单自 助 排查 告 警通 知 交 互行 为回 放 多 版本 对 比 根 因定 位 服务端Bug 手机无信号 云端MQ丢消息 功能禁用 DNS劫持 车机无信号 车机升级中 车机未启动 车机Bug 协议不匹配 APP Bug 身份验证失败
18. 案例3:基于SQL进行指标治理 (*)| select a as "LabelKey", approx_distinct(b) as "唯一数", count(1) as "总数", arbitrary(b) as "LabelValue采样" from ( SELECT a, b FROM "sls-mall-k8s-metrics.prom", UNNEST(split_to_map(__labels__, '|', '#$#')) AS t(a, b) where __name__ != '' and regexp_like(__name__, '.*') ) group by a order by "唯一数" desc
19. 案例4-1:多数据类型关联分析
20. 案例4-2:带状态的流式异常检测
21. 可观测成熟度模型 自动化观测 预测&提升 故障预测 IT可观测 定位/修复建议 监控 数据查询 自动故障发现 服务健康度大盘 自动根因定位 减少故障间隔MTBF 全类型数据 故障根因分析 持续改进能力 监控数据 统一存储管理 系统稳定性提升 监控大盘 实时查询能力 告警系统 L1 L2 L3 L4 L5
22. 谢谢 Q&A

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.129.0. UTC+08:00, 2024-07-01 21:10
浙ICP备14020137号-1 $Map of visitor$