构建生产遥测系统,实现高效问题解决与业务优化
在软件开发与运维过程中,实现从开发到运维的快速工作流,能确保价值迅速且安全地交付给客户。而建立从运维到开发的快速持续反馈机制同样关键,它有助于我们更快地发现和解决问题,提升工作成果。本文将围绕创建遥测系统展开,详细阐述如何通过遥测技术实现问题的快速发现与解决,以及如何利用遥测数据优化业务流程。
1. 生产运维中的问题与遥测的重要性
在运维工作中,小的变更可能引发诸多意外结果,如服务中断和全局故障,影响所有客户。传统运维方式常依赖猜测和传闻来解决问题,如遇到故障就重启服务器,甚至相互指责,这不仅无法有效解决问题,还会导致负面氛围和知识缺失。
与之形成鲜明对比的是,高绩效组织采用基于生产遥测的严谨问题解决方法。例如,2001 年微软运营框架(MOF)研究发现,服务水平最高的组织重启服务器的频率比平均水平低二十倍,“蓝屏死机”情况少五倍。这些组织通过生产遥测深入了解问题的可能成因,聚焦解决问题,形成了所谓的“因果文化”。
为实现这种严谨的问题解决方式,我们需设计系统持续生成遥测数据。遥测是一种自动化通信过程,可在远程点收集测量数据和其他信息,并传输至接收设备进行监控。我们的目标是在应用程序、环境(包括生产和预生产环境)以及部署管道中创建遥测。
以 Etsy 的 DevOps 转型为例,2009 年起,Etsy 开始将技术栈标准化为 LAMP 栈。为确保变更安全,他们从 2012 年开始收集服务器信息,使用 Ganglia 工具收集数据,并将其展示在 Graphite 中。通过聚合业务指标和部署信息,在每次部署时在指标图上叠加垂直线,能快速发现部署的意外副作用。到 2011 年,Etsy 已跟踪超过二十
超级会员免费看
订阅专栏 解锁全文
16

被折叠的 条评论
为什么被折叠?



