跳至正文

谷歌云账单扣费突然增加,原来是 Metric Volume 惹的祸

免责声明: 本文基于个人经验分享,内容可能因时间、地区或个人情况而异。操作前请结合实际情况判断,必要时查询最新官方信息。如有疑问或建议,欢迎留言交流。

兔哥是谷歌云(GCP)的忠实用户,目前已经将谷歌云作为主要云服务平台。好用是好用,但是费用也是真不便宜。以我当前在谷歌云上创建的 2 个 e2-small(E2-共享核心-2G 内存)为例,基本上每天都有 4 美元左右的支出。

谷歌云实例管理
谷歌云实例管理

但从本月 25 日开始,账单突然增加,而且几乎是翻倍增加。这就让我感到很奇怪,在这期间,我并没有在谷歌云中进行任何操作,那么是什么导致扣费突然暴涨呢?


谷歌云每日账单
谷歌云每日账单

通过查询 结算 – 报告 发现原来在 25 日当前之后,有一个名为 Metric Volume 的扣费明细。单单这一项的扣费就达到了 2.13 美元,怪不得账单突然翻倍增加,原来罪魁祸首是它。而且接下来几天,发现该项目一直在扣费,而且费用基本就固定在 2.13 美元左右,那么这项扣费究竟是什么,为什么会突然有这笔扣费,就成了我需要搞清楚的问题。

账单突增费用
账单突增费用

Metric Volume 是什么?

通过查询得知,原来 Metric Volume 是 Google Cloud Monitoring 中所有指标数据点的总计量单位,也是谷歌云「监控费用」的核心计费项之一。

简单理解就是:谷歌云(GCP) 会对你的服务、实例、网络等产生的监控数据(如 CPU 使用率、请求数量等)进行采集。每一个指标(metric)都会生成多个「数据点」。Metric Volume 就是这些数据点的总体积,以 MiB(兆字节) 为单位计费。

Metric Volume 费用是如何产生的?

使用谷歌云创建实例的过程中,会默认开启 Ops Agent 监控服务,它通过收集日志和指标来观察实例和应用。这就是 Metric Volume 费用的来源。

默认开启 Ops Agent 监控服务
默认开启 Ops Agent 监控服务

当然如果你在创建实例的过程中,取消勾选了默认的 Ops Agent 监控服务,其实谷歌云也是可以监控基本的指标,比如 CPU 使用率监控、网络流量、磁盘吞吐量等监控指标。像是内存利用率、磁盘空间利用率指标会提示要求你安装 Ops Agent 服务。

未开启 Ops Agent 服务
未开启 Ops Agent 服务

开启 Ops Agent 监控服务后,我们便可以在实例的可观测性页面,查看实例的更详细、更多监控指标:CPU 利用率、内存利用率、网络流量、磁盘空间利用率等指标。

这些所有的指标数据会统一由 Metric Volume 保存统计,最终会被计算进入谷歌云账单中。

谷歌云监控指标
谷歌云监控指标

所以现在就搞清楚了,原来这是谷歌云实例监控服务的扣费,但是问题又来了,为什么之前没有该费用,突然就多出这项扣费呢?而且在上个月也并没有看到这笔费用,为什么突然在这个月多出了这项费用?接着探索后才知道原来 Metric Volume 是有免费额度的,超出后会产生费用。

Metric Volume 如何计费?

通过查询得知,原来 Google Cloud Monitoring 提供每月 150 MiB 的免费指标数据额度(按账单账户计算)。如果超出此额度,超出的部分将按 $0.2580/MiB 收费。那么此次扣费,应该就是超出 Metric Volume 免费额度所致。

以下是更详细的定价机制(详情参考官网:Cloud Monitoring 价格摘要):

  • 免费额度:每个账单账户(billing account)每月有 150 MiB 的免费指标数据额度(metrics charged by bytes ingested),自 2018 年 7 月 1 日起生效
  • 收费机制:当总指标数据使用量超过 150 MiB 时,超出的部分按以下费率收费:
    • 150–100000 MiB:0.2580 USD/MiB
    • 100000–250000 MiB:0.1510 USD/MiB
    • 超过 250,000 MiB:$0.0610/MiB
  • 非收费指标:Google Cloud 服务(如 Compute Engine)的系统指标(system metrics)通常不计入收费额度,例如 CPU 使用率、内存使用率等

如何查看 Metric Volume 使用量?

了解 Metric Volume 扣费规则后,如何查看本月 Metric Volume 使用量呢?其实通过谷歌云控制台首页 Monitoring – 指标管理或直接点击 指标管理 即可查看本月 Metric Volume 使用量。

指标管理
指标管理

在打开的指标管理页面,我们可以查看任意时间或时间范围内 Metric Volume 使用量。下图中我将时间范围设置为本月初到当前时间(29 日),发现一共诸如的计费字节数为:173.1 MiB,可见已经超出免费的 150 Mib,所以产生了扣费。

查看 Metric Volume 使用量
查看 Metric Volume 使用量

如何避免 Metric Volume 扣费?

由于 Ops Agent 监控服务是默认开启,那么随着实例负载增加, Metric Volume 的使用量也会随之增加。那么必然也可能在当月的某一天超出免费额度而产生扣费。

在了解了扣费规则和原因之后,我们便可以对症下药。解决该问题最简单的方法便是卸载 Ops Agent 监控服务。当然这是在你默认开启的情况下且确定无需更多的监控指标才可以执行的操作。

卸载 Ops Agent 监控服务并不意味着无法进行任何监控服务,基本的监控服务还是可以正常使用。

1、卸载 Ops Agent

如果你是 Debian/Ubuntu 系统,可以使用以下方法卸载 Ops Agent 监控服务。

sudo systemctl stop google-cloud-ops-agent
sudo apt-get remove --purge google-cloud-ops-agent
sudo systemctl status google-cloud-ops-agent
sudo rm -rf /etc/google-cloud-ops-agent

验证效果:

  • 卸载 Ops Agent 后,导航到 Monitoring > 指标管理,观察指标数据摄取量是否减少。
  • 等待 24-48 小时,检查账单是否仍有“Metric Volume”费用。

当然如果在本月已经超出免费额度的情况下,就算 Metric Volume 有所减少,那么肯定还是会产生费用。

2、排除非必要监控指标

另一种方法是通过谷歌云提供的排除指标来减少 Metric Volume 产生的数据。还是回到指标管理页面,此时我们点击下图中的 “排除指标”,在弹出的页面中选择不必要的监控指标,点击底部的“创建规则”即可。

由于监控指标比较多,所以需要手动逐个点击(没找到如何多选多个指标进行排除)。以下是我仅仅保留的几个指标,可以在下图中看到当前有效的指标仅有 6 个。

排除指标
排除指标
创建新的指标排除项
创建新的指标排除项

总结

通过上述方法,我们可以有效降低 Metric Volume 所产生的数据量,从而避免意外的监控费用激增。只要将每月的 Metric Volume 控制在 150 MiB 免费额度以内,大多数项目在正常监控需求下就不必担心额外开销。

这次账单突增事件,也让我更深入理解了 Google Cloud 背后隐藏的计费机制。随着我对 Google Cloud 的依赖不断加深,使用的服务种类和复杂度也在逐渐增加。这不仅意味着更强的能力和灵活性,也意味着我们需要更加细致地管理和优化资源配置。

也许在初期你不会触及到这些计费边界,但随着用量增长,你会慢慢发现:Google Cloud 不只是一个“免费试用平台”,而是一套可以为你带来真正价值的云服务体系。如果你已经开始关注这些细节,那也正说明你已经在迈向专业使用的道路上了。

这篇文章对您有帮助吗?

点击星号为它评分!

读者们的评价 / 5. 投票数:

您是第一位评价者!快来分享您的看法吧

很抱歉这篇文章没能帮到您

一起让这篇文章变得更好!

请告诉我如何改进,让内容更好地帮助大家

❤️ 支持作者

您的支持是我继续创作的动力

打赏二维码

扫描二维码支持

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注