AI智能总结
姓名:MOCHALOV ILYA 个人简介 名 :I L Y A性 :M O C H A L O V 某 大 型 外 企系 统 稳 定 性 资 深 架 构 师 •来自俄罗斯•工作经验在某大型外企系 统 稳 定 性•开源软件倡导 大型企业IT系统环境 可观测性平台 目录 案例研究:公司描述 可观测性的最佳实践 案例研究:2年后 大型企业IT系统环境 大 型 企 业I T系 统 介 绍 大 型 企 业I T系 统介 绍 多样化的IT环境:大型组织通常拥有混合的IT环境,包括在传统虚拟机上运行的遗留系统、在基于云的Kubernetes集群上的现代应用程序,以及专用硬件系统。 规模挑战:从小规模到大规模的快速扩展会显著增加管理这些多样化环境的复杂性。 云原生系统 遗留系统 硬件系统 •构建在云基础设施上的现代应用程序。•使用容器、微服务和Kubernetes以实现可扩展性 •通常对业务运营至关重要。•运行在虚拟机上,可能已经过时,且更难以监控。 •包括专用或专有系统,通常具有独特的可观测性挑战。 G O P S全 球 运 维 大 会 暨 研 运 数 智 化 技 术 峰 会2 0 2 4·上 海 站 大型企业系统可观测性挑战 DevOps/SRE/运营团队的组织结构 可观测性平台 可 观 测 性 平 台介 绍 可观测性平台概述 Instrumentations and SDKs,agents,相关指标的处理 筛选、减少、丰富、保存 仪表板、警报、报告和数据挖掘 可观测性平台概述 可观测性数据的三种主要类型 指标:系统性能的数值度量(例如CPU使用率、内存消耗)。 生成数据 response_duration_seconds_count{method="GET", path="/", status="200"} 64493response_duration_seconds_count{method="POST", path="/", status="200"} 52 •从系统中提取数据的代理•Profilers•Agent process (eBPF)••应用程序发出监控数据•SDK•custom instrumentation•日志聚合 日志:事件和活动的文本记录(例如,应用程序错误、系统消息)。 跟踪:通过分布式系统的请求流的记录。 {"name": "hello","context": {"trace_id": "0x5b8aa5a2d2c872e832","span_id": "0x051581bf3cb55c13" 可观测性平台概述 收集并保存 挑战 -延迟:确保低延迟数据传输以实现实时监控。-可靠性:确保数据完整性和可用性。-安全性:保护敏感数据免受未经授权的访问。 数据传输的最佳实践: -选择正确的协议:选择满足性能和安全要求的协议。-优化网络配置:微调网络设置以实现高效的数据传输。-使用数据压缩:减小数据大小以提高传输速度。 数据存储的最佳实践:-选择合适的存储解决方案:选择满足性能、可扩展性和成本要求的解决方案。-实施数据保留策略:确定数据保留多长时间以平衡分析需求和存储成本。-利用重复数据删除:通过消除重复数据来降低存储需求。 G O P S全 球 运 维 大 会 暨 研 运 数 智 化 技 术 峰 会2 0 2 4·上 海 站 可观测性平台概述 有效价值提取的好处: 可视化、自动化和数据挖掘 改进决策:数据驱动的洞察指导战略决策。更快的事件响应:主动识别和解决问题。提高运营效率:优化资源利用率和性能。创新:发现新的机会和趋势。 •可视化:以清晰易懂的格式呈现数据。•自动化:自动执行警报、异常检测和事件响应等任务。•数据挖掘:应用高级分析技术来发现模式和趋势。 案例研究:公司描述 案例研究:公司简介 案例研究:公司DevOps/SRE简介 案例研究:公司挑战 缺乏标准化 难以确定根本原因 可观测性工具的激增 频繁的IT系统稳定性事件 •系统故障和中断的发生率很高。•难以确定根本原因并及时解决问题。 •现代系统的复杂性,使得很难确定问题的根源。•缺乏对组件之间交互的可见性。 •用于指标、日志和跟踪的多个工具,从而创建一个碎片化的环境。•难以跨不同工具关联数据。 •系统故障和中断的发生率很高。•难以确定根本原因并及时解决问题。 可观测性的最佳实践 04 可 观 测 性 的 最 佳 实 践:将S R E纳 入 开 发 团 队 将DevOps/SRE纳入开发团队的好处:共享所有权:增强对系统可靠性的责任感。主动解决问题:及早发现和预防问题。改进的协作:团队之间更好的沟通和协调。加强知识传授:分享专业知识和最佳实践。 开发团队中SRE的主要职责:事件响应:处理系统故障和中断。 容量规划:确保有足够的资源来满足应用程序性能。变更管理:监督系统的变更。监控和警报:设置监控系统和警报。 可 观 测 性 的 最 佳 实 践:可 观 测 性 标 准 指标定义和日志记录约定 关键指标的标准化定义和一致的日志记录实践和格式。 项目模板 OpenTelemetry 用于使用可观测性数据检测代码的预定义模板。 一个供应商中立的开源框架,用于收集和导出遥测数据。 可 观 测 性 的 最 佳 实 践:可 观 测 性 标 准 可 观 测 性 的 最 佳 实 践:降 低 复 杂 性 可 观 测 性 的 最 佳 实 践:降 低 复 杂 性 可 观 测 性 的 最 佳 实 践:降 低 复 杂 性 系统级复杂性方面: 训练时间新团队成员需要多长时间才能待命 说明时间向新团队成员解释服务的全面高级视图需要多长时间 管理多样性有多少种方法可以在系统的不同部分配置类似的设置 部署配置的多样性在生产环境中部署了多少个唯一配置 年龄该系统有多旧? 可 观 测 性 的 最 佳 实 践:减 少 指 标 、 日 志 和 跟 踪 降低成本 减少存储和加工费用 可 观 测 性 的 最 佳 实 践:减 少 指 标 、 日 志 和 跟 踪 可观测性的最佳实践:应用程序分析 指标、日志和跟踪有什么问题 虽然日志、指标和跟踪提供了有关系统行为的宝贵见解,但它们也有其局限性: 01 日志、指标和跟踪通常提供系统性能的高级视图,但它们可能无法揭示问题的根本原因。 有限粒度:日志和指标可能无法捕获有关应用程序行为的精细详细信息,例如函数调用、内存分配和CPU使用率。 02 缺乏根本原因分析:虽然日志和指标可以帮助识别问题的症状,但它们可能无法直接指向根本原因。 03 G O P S全 球 运 维 大 会 暨 研 运 数 智 化 技 术 峰 会2 0 2 4·上 海 站 可观测性的最佳实践:应用程序分析 •性能分析:识别性能瓶颈和热点•内存分析:分析内存使用情况并识别泄漏。•CPU分析:了解CPU利用率并识别低效代码。•线程分析:分析线程行为并识别同步问题。 可观测性的最佳实践: 80/20 •专注于关键系统:优先考虑对业务运营最关键的系统的可观测性工作。•与业务利益相关者交谈 •如果所有系统似乎都是业务关键型–选择那些产生更多收入或从长远来看会产生更大影响的系统 •优化数据收集:专注于从最重要的来源收集数据。•Golden signals是必须的,其余的取决于系统关键性 •确定事件响应的优先级:集中精力解决最严重的事件。 案例研究:2年后 更好的可观测性覆盖率 •之前:40%的关键应用程序具有GoldenSignals指标•之后:100%的关键应用程序具有GoldenSignals指标 严重事件减少70% 后续步骤 •事故总数减少60%•平均MTTR减少5倍 -使用内部代码模板-将分布式跟踪集成到100%的关键应用程序中 T h a n k s 荣誉出品