家公司都在努力更好地了解其运营效率,但他们都遇到了同样的问题:规模。那么,可扩展的监控策略是什么样的?您如何防范可观察性中最重要的问题?
什么是可扩展监控策略?
我们将从确定受规模影响最大的两件事开始:成本和性能。成本可以分解为存储和计算。很明显,要容纳更多数据,就需要更多存储空间,但是计算能力呢?这很重要,因为查询需要搜索更多数据——因此需要使用更多计算能力——才能返回结果。
这会在性能和成本效益之间进行权衡。随着数据集的增加,立即解决查询变得越来越具有挑战性,因此工程师通常只会容忍性能下降。这进一步影响了系统的可用性和一般用途。如果解决每个查询需要 10 秒,那么您只是将数据发现效率降低了 10 倍。
扩展意味着性能和成本效益
为了扩展监控策略,明智的架构师需要打破性能和成本之间的僵局,并像数据科学家一样处理问题。可扩展的监控策略从一个简单的问题开始:这些数据的用例是什么?
有些数据只会因为可能需要而被摄取。它的整个生命周期都不受干扰,并最终被压缩或删除。另一方面,有些数据每天每分钟都在查询,而且是不可或缺的。了解数据的使用方式意味着工程师可以决定该数据的价值。
在创建可扩展监控策略的战斗中,有一个三步法。
第一步:跟踪数据使用情况
哪些数据被摄取但从未被查询过?哪些数据从不休息?构建数据消耗频率的地图,以便根据用例做出任何战略选择。
最常见的做法是将数据分为三种不同的用例:
频繁访问– 经常被查询并且需要在接到通知后立即可用的数据。
监控——驱动仪表板或训练机器学习模型但在处理后基本无用的数据。
合规性——保留以备不时之需的数据,但只是有时会查询。例如,审计日志。
第二步:优化存储和消耗
一旦了解了数据的用例(无论是日志、指标还是跟踪),下一阶段就是优化。这意味着为我们上面看到的不同用途创建不同的存储和查询解决方案。
频繁访问——可以优化和调整的快速查询。OpenSearch是一个不错的选择,尽管管理开销可能很痛苦,尤其是在规模上。
监控——这主要是关于转换数据。例如,摄取日志,将其转化为指标并删除原始日志。这是非常强大的,因为指标占用的空间比日志少得多,并且可以更经济高效地存储。
合规性——像 Amazon S3 这样的低成本存储是一个不错的选择,但这些数据必须仍然可以访问,即使只是通过重新索引。
建立这些能力有多容易?
创建 OpenSearch 集群很简单,但大规模管理它却极具挑战性。同样,将日志转换为指标很简单,但以高性能的方式大规模执行此操作很复杂。由于合规性日志的规模接近无限大,因此很难保留合规性日志,而在处理大量数据时,重新索引这些数据是一项非常重要的操作。
但是,从该分析中得出的关键结论应该是,如果任何组织打算扩展其监控解决方案,这些都是他们应该具备的能力。如果它们可以通过SaaS 供应商获得,那么这是一个值得考虑的严肃选择,因为它使公司能够立即利用此功能,而无需前期、不可预测且通常持续的内部工程成本。