如何在Google Developers Console中设置成本限制

ptm*_*.io 28 google-app-engine traffic google-cloud-storage cost-management

Google Analytics开发者控制台中的某些功能(如Analytics API)在您达到配额之前是免费的.其他功能(如Google云端存储)会在首次点击时产生费用.

当我上传文件https://console.developers.google.com/ > Storage > Cloud Storage > Storage Browser并将该文件公之于众时,我每GB流量支付约0.12美元.

但理论上,此链接的流量可能会爆炸,例如因为突然受欢迎.因此,我想设置每日或每月的成本限制.

问:如何保护自己免受Google Developers Console中过高的成本影响?

Kaj*_*nus 17

你不能.从2016年5月7日起,我向谷歌询问了这一点,以下是他们的回复:

(GCE =谷歌云引擎.没有支出限制
.GAE =谷歌应用程序引擎 - 是的它有支出限制.)

......你有资格获得支持......只有
...... [ 各种有用的链接 ] ......

话虽如此,目前还没有一项功能允许您在GCE上配置有限的预算.这个功能当然适用于GAE [1].正如您在评论中提到的,您可以完全关闭虚拟机(取决于您的使用案例),也可以将虚拟机设置为在达到特定流量限制时向您发送警报[2].

此致

某人的名字是
技术解决方案代表
Google Cloud Platform

[1] https://cloud.google.com/appengine/docs/quotas
[2] https://cloud.google.com/monitoring/support/notification-options

@wmdry,你写道:"此链接的流量可能会爆炸 " - 我也害怕这一点.这就是我向谷歌询问此事的原因.而且我计划因此而避开谷歌的CDN,而是使用另一个CDN提供商,它有支出限制.因为,与Nginx不同,我认为没有办法限制/限制谷歌的CDN.

我计划使用GCE(谷歌云引擎).因此,现在我正在阅读有关如何限制我的Nginx服务器的速度.因为如果我只是正确地配置Nginx,那么你提到的那些$ 0.12/GB,就不可能爆炸......就像一个月内的$ 10k一样?如果谷歌在几个星期的假期回来时发出1万美元的账单会怎么样呢,这只是因为我的爱好项目和一些人一遍又一遍地下载1 MB电影(因为:邪恶).嗯,我的服务器越大越快,风险就越大.

我希望谷歌会增加支出限额,因为我确实想要使用谷歌的CDN.


Flo*_*ian 8

API的使用可以用硬限制的限制:

根据 API,您可以通过多种方式明确限制请求,包括:每天请求数、每 100 秒请求数和每用户每 100 秒请求数。您可能希望通过设置上限来限制计费使用量。例如,为了防止超出免费礼遇使用限制而被计费,您可以设置每天的请求次数上限

来源


Tim*_*ody 7

您可以将预算发布/订阅警报与云功能结合起来,该功能可以在达到阈值时禁用整个帐户的计费。

完整教程在这里: https://www.youtube.com/watch?v =KiTg8RPpGG4

GitHub 存储库位于: https ://github.com/aioverlords/Google-Cloud-Platform-Killswitch

禁用计费

const _disableBillingForProject = async projectName => {
const res = await billing.updateBillingInfo({
    name: projectName,
    resource: {
        billingAccountName: ''
    }, // Disable billing
});
console.log(res);
console.log("Billing Disabled");
return `Billing disabled: ${JSON.stringify(res.data)}`;
};
Run Code Online (Sandbox Code Playgroud)


Pau*_*ood 6

只需转到开发人员控制台:

https://console.developers.google.com/project

  • 选择您的项目。
  • 选择“账单和设置”
  • 启用计费。

然后转到 Compute/AppEngine/Settings 并设置每日预算。

在此处输入图片说明

  • 我很确定这个答案是不正确的。支出限制仅适用于 AppEngine,一般不适用于 GCE。请看下面我的回答——我实际上联系了谷歌,并提出了要求。 (6认同)

ptm*_*.io 6

自2017年7月起,您可以设置通过电子邮件发送通知但不限制支出的预算

GCS文档的屏幕快照,警告预算不限制API使用量

要设置仅警报的预算,该预算将不限制支出

  1. 转到Cloud Platform Console。
  2. 打开控制台左侧菜单,然后点击结算
  3. 如果您有多个帐单帐户,请单击帐单帐户名称。
  4. 点击左侧的预算和警报。

官方帮助页面:https : //support.google.com/cloud/answer/6293540?hl=zh_CN

  • 我没有看到任何暗示它(设置预算和警报)会“限制总体支出”的信息。我的阅读是,它只是发送电子邮件警报! (23认同)
  • 是的,现在还不清楚,为此感到可耻。 (2认同)
  • 设定预算时,实际上明确指出“设定预算不会限制资源或API的使用量”。因此,这只是警报-并非硬性限制。您可以__在其他地方设置API使用限制。 (2认同)

小智 5

我发现Google的文档现在提供了两种方法来实际限制GCP项目的成本。它涉及以下设置:

  1. 创建一个Cloud Function,以根据预算检查成本,并在成本超出预算时执行特定操作。Google文档提供了一个示例代码片段,可以关闭项目中的所有VM实例或禁用项目的计费。关闭所有虚拟机将停止所有与虚拟机相关的成本,但是您可以保留数据(仍然需要为存储付费)。禁用项目计费将有效地破坏所有与成本相关的活动,并且您可能会丢失数据。您可以将Cloud Function命名为“ budget-enforcer”。
  2. 上面提供的Google代码段具有一个硬编码的ZONE变量。切记更改它以匹配您的区域!
  3. 创建一个服务帐户以运行云功能“ budget-enforcer”。要关闭VM,服务帐户将需要角色“ Compute Instance Admin(v1)”。要禁用项目的计费,服务帐户将需要角色“ Project Billing Manager”。
  4. 为云功能设置一个主题(我将其称为“ proj-name-stop-vm”和“ proj-name-disable-bill”)。
  5. 像往常一样设置预算警报,并将其连接到上面的“发布/订阅”主题之一。

请注意,Google的文档确实提到成本超出预算与触发功能之间可能会有延迟,因此,如果您有绝对的硬成本限制,则应建立一个缓冲区。我将预算的90%用作关闭实例的触发线。