成功/你好

Hiya迁移到Grafana Cloud以削减成本并获得对指标的控制

你好成立于2016年,从一开始就是一家以容器为中心的Kubernetes商店。Hiya核心技术团队成员、高级软件工程师Jake Utley说:“拥有一个包含集装箱化的技术套件对我们来说至关重要。

两年多一点以前,一组工程师已经开始使用Prometheus,而公司的其他人员仍然依赖于供应商的产品进行监控。这个团队最初之所以做出这种转变,是因为他们负责Hiya的许多指标,而且他们在维持当前供应商产品的成本方面遇到了麻烦。

时间切换到2019年。工程师们对普罗米修斯号非常满意,但他们对公司其他人仍在使用的服务越来越感到沮丧。Utley说道:“我们仍然发现我们无法控制现有解决方案所需要的指标。“我们想要能够让我们过滤或聚合指标的工具,这将允许我们维护一个更小的指标集。如果没有这些,我们就不得不吞下所有东西,不管我们用不用。”

是时候在全公司范围内进行调整了。

Cortex提供了大多数Prometheus部署中缺失的元素,即横跨许多集群和区域的单一窗格操作视图。

——Dan Sabath, Hiya的高级软件工程师

寻呼Grafabob电竞频道na实验室

Hiya选择了Grafbob电竞频道ana Labs的《Grafana Cloud Hosted Prometheus》,原因有几个。首先,Utley说,当涉及到监控Kubernetes集群和容器时,他们认为Prometheus和Grafana组合是行业标准。

他们还喜欢普罗米修斯为他们提供的某种程度的控制和透明度,这是他们在其他服务中没有的。高级软件工程师Dan Sabath说:“我们希望能够从上到下查看我们自己的信息并理解它。”

与其他主要指标收集器相比,Utley喜欢直接查询本地普罗米修斯的功能。他说:“你可以使用复杂的远程写规则来过滤或改变指标,因为它们是从Prometheus传送到外部系统。”“拥有这种程度的控制是我们真正想要的。没有它,我们不得不去找我们的工程团队——他们已经很忙了——并要求他们在他们的应用程序中做出所有这些小的改变。作为组织中的核心工程团队,我们希望控制这些变化,避免对其他团队进行微观管理。”

但由于他们将从普罗米修斯系统向另一个系统发送参数,Hiya面临的最大问题是,“我们从那里去哪里?”

为了扩大Prometheus的规模,Utley说,他们考虑在内部运行Cortex或Thanos(两个开源项目,用于水平扩展Prometheus兼容的监控系统)或使用其他提供商,但他们得出的结论是,Grafana Cloud是“最符合我们想要实现的目标”。

事实上,对于Hiya来说,关键的卖点之一就是《Grafana Cloud》是由Cortex驱动的。“我们可以坚持使用开源工具,我们可以在需要时进行深度代码审计,我们可以依赖社区,”Utley解释道。此外,他说,“我们不必担心管理和理解所有的基础设施。”

Hiya团队也被Cortex的一些关键功能所吸引:拥有一个拥有所有数据的地方,能够消除冗余数据副本,并且能够拥有任意的数据时间轴。

但真正改变游戏规则的是Cortex“提供了大多数Prometheus部署中缺失的元素,即跨许多集群和区域的单一玻璃操作视图,”Sabath说。

在此之前,Hiya一直使用HA对进行操作——这是Prometheus的标准操作——这意味着每次运行查询时,它都会返回不同的结果,这取决于它碰到的是哪个Prometheus。“我们的时间有限,所有的数据都在磁盘上,我们必须查询许多普罗米修斯,这很烦人,”Utley说。

灭霸和皮质都有解决方案,而阿特利认为灭霸似乎更容易驾驭bob彩票中奖计划,因此它是《Hiya》最初的领跑者。然而,当乌特利深入研究皮质的工作原理时,他改变了主意:“皮质是为处理大规模问题而设计的,而灭霸是现有普罗米修斯的一层。如果我们要将数据发送给外部供应商,我们更愿意使用Cortex。”

我们可以对数据进行审计,以查看哪些指标具有最高的基数,或者查看哪些服务发布的指标系列最多。这让我们有机会知道在哪里过滤出最大影响的指标……多年来我们一直想要这种可见性,但直到现在才实现。

——Jake Utley, Hiya的高级软件工程师

关于实施的411

Hiya在实现阶段面临两大挑战:最大的挑战是将多年的仪表板、警报、指标、遗留服务和遗留仪表板从以前的提供商转移到Prometheus。编写自动化来移动最初的仪表板是Hiya能够在一个季度内完成向Grafana Cloud迁移的主要原因。

另一个问题是cron作业指标。以前,有一个非常直接的集成,允许Hiya的所有Kubernetes cron作业以一种方式实现,因此他们直接将他们的作业结束指标发送给服务提供商。对于大多数非cron的作业服务,Hiya使用Prometheus端点,并让之前的公司使用它。

为了使事情在普罗米修斯范式中顺利运行,需要做一些工作。Utley解释道:“我们通过使用Prometheus Pushgateway将这些指标重新绑定到标准工具集中,从而解决了这个问题。

Hiya的一些团队在从基于web的指向点击服务转向使用PromQL的过程中也遇到了困难。“Grafana有很多小功能,可以帮助它更容易地编写普罗米修斯查询,”Utley说,但在团队学习理解PromQL的差异并弄清楚为什么他们看到了他们所看到的东西时,仍然需要大量的培训课程、动手调试、手握和Slack消息传递。

此外,Hiya最初在警报选项方面存在问题。他们已经用旧的普罗米修斯警报设置了基准,而新的Grafana警报不能满足他们的要求。

多亏了Grafana实验室团队的支持,他们能够通过早期bob电竞频道访问Grafana提供的Cortex Ruler和Hosted Alertmanager服务来解决这个问题。“这让我们可以使用普罗米修斯警报,这真的很好,”Utley说。不过,由于这项服务是新推出的,它并非完美无缺。“因此,我们与Grafana实验室负责Cortex的工程师合作bob电竞频道,以调整产品以满足我们的需求。这是一种非常亲力亲为的关系,我们对此非常感激。”

坚持等待结果

Hiya转向Grafana Cloud在许多方面都获得了回报。

核心技术团队的工程经理Jorge Barrios表示,与之前的支出相比,该公司“节省了大量资金”,Sabath补充说,他们现在“对我们实际计费的指标有了深刻的理解”。

Hiya正在利用他们在普罗米修斯可以做的事情来获得这种洞察力。“我们可以审核我们的数据,看看哪些指标的基数最高,”Utley说,“或者看看哪些服务发布的指标系列最多。这让我们有机会知道在哪里过滤出影响最大的指标。这些审计可以使用PromQL完成,也可以使用Prometheus api来获得系统中每个指标的完整转储。多年来,我们一直想要这种知名度,但直到现在才实现。”

因此,他们过滤掉了一些几乎从未使用过的非常简单的指标,并且Utley进行了审计,以寻找潜在的未来节省。他说:“如果服务以六个不同的百分比公布它们的延迟,我们可能只需要其中的三个。”“或者我们可以为高基数指标编写规则,以消除每荚的粒度。这些类型的改变通常会带来大量的节省。”

在完全登陆Grafana后,Hiya在Grafana Cloud中拥有大约56万个活跃系列。从那时起,他们已经能够将其度量数减少到约400,000个活动系列。

拨号到仪表板

Hiya的工程团队对他们的Grafana Cloud仪表板有很好的经验。

“许多工程师都很兴奋地分享他们创造的仪表板,”Utley说。饼图插件是许多团队的最爱;他们还大量使用文本面板。这是他们之前的服务中提供的功能,但他们很少使用。

“这是一个简单的功能,却有惊人的结果,”乌特利指出。通过能够解释图表是什么,它们意味着什么,以及为什么它们很重要,它可以让那些不擅长阅读图表的人少一些困惑。

核心技术团队要响应大量的操作警报,因此Barrios说,如果他随时待命,并且对另一个团队的系统没有非常深入的了解,文本功能也可以派上用场:“通过查看他们的图表来查看他们的服务是否正常运行,并且在那里有恒定的上下文是非常有用的。”

提前打电话

展望未来,Sabath说他希望在Hiya的基本部署框架中添加标准化的仪表板。

Utley还期待使用即将推出的支持嵌套在表内部的可视化的Grafana特性。Utley说:“我想有一个关于所有Kubernetes集群的清晰列表,以显示每个集群健康状况的高级概述。”“有一个合适的可视化,而不仅仅是一个数字,将是超级令人兴奋的。”

最终,与Grafana Cloud合作对Hiya来说是一个明智的决定。“Prometheus和Grafana作为开源工具已经给我们留下了深刻的印象,”Utley说,“现在我们有了一个基于它们的托管服务。”

行业
软件与技术

公司规模
100 - 200名员工

总部
西雅图,华盛顿

bob手机app官网产品/项目使用

79bob官方下载

皮质

普罗米修斯

Grafana云