有人知道使用实例(例如 EC2)托管一些可公开访问的内容时理论上最坏情况的支出吗?我的意思是实例成本本身可以估算,但如果恶意实体开始以比正常情况下高出几个数量级的速率下载(例如通过僵尸网络),会发生什么情况。出站流量是收费的,除非主机专门实施,否则无法控制 - 说实话,这种情况很少见。我猜在某个时候 DDoS 保护和类似措施会启动,但这也可能需要一段时间。
在我看来,没有云提供商支持硬预算限制(他们愿意避免这种情况,反过来,这意味着必须花费客户一大笔钱),所以我的问题是,有没有人考虑过这个问题,甚至经历过这种情况?云提供商有任何技术保护吗?还是这完全留给用户?
有点奇怪的是,在计算机科学中我们总是谈论最坏情况的复杂性,但显然这并不适用于金钱......
答案1
您可以使用无服务器服务(Lambda 或 Azure 函数)作为内容传送系统,在那里您可以实现一些速率限制功能和临时 IP 禁止系统,然后通过 CloudFlare 及其 DDoS 保护逻辑汇集整个内容,虽然它看起来像一个气体工厂解决方案,但它至少为整个 CDN 服务提供了一种更白盒化的方法。
答案2
我只能代表 AWS 发言 - 你可以使用AWS Shield, A托管 DDoS 保护。
有两种口味
AWS Shield 标准版默认情况下启用,旨在保护其他顾客当您的服务遭受 DDoS 攻击时。
AWS Shield Advanced是一项付费服务,旨在保护您的服务免受 DDoS 攻击。
和AWS Shield Advanced客户无需支付额外费用即可使用 AWS WAF 和 AWS Firewall Manager 来保护 AWS Shield Advanced 所保护的资源。此外,您还可以获得“DDoS 成本保护用于缩放”,该功能保护您的 AWS 账单免受使用量激增的影响由于 DDoS 攻击,受 AWS Shield Advanced 保护的 EC2、Elastic Load Balancing (ELB)、Amazon CloudFront、AWS Global Accelerator 和 Amazon Route 53 资源受到影响。
(重点是我的)
因此AWS Shield Advanced如果发生 DDoS 攻击,您的使用费用将受到上限。
明显地盾牌进阶版需要付出一定的成本,对于小型或业余部署来说不值得。另一方面,这些小规模服务不太可能成为 DDoS 攻击的目标,如果成为目标,架构可能无法承受负载和崩溃,从而有效地阻止 DDoS 并保护您的账单。
一如既往这是一种权衡- 要么你想在 DDoS 期间保持服务正常运行并准备为此付费,要么你宁愿以服务中断为代价来保护你的钱包。遗憾的是,你无法同时实现这两种方式。
Azure 和 GCP 可能有与 Shield 类似的服务,我不知道。如果有的话,它们很可能也会有成本。无论您的云提供商是谁,一般的权衡点都是有效的。
希望有帮助:)
答案3
从 Azure 角度
您可以设置预算,如果您的成本超出这些限制,它可以触发关闭、缩小、通知您的工作流程,以及任何您想要的操作。
在此场景中,设置了订阅的每月预算 1000 美元。此外,还设置了通知阈值以触发一些业务流程。此场景从 80% 的成本阈值开始,这将停止资源组 Optional 中的所有 VM。然后,在 100% 的成本阈值时,所有 VM 实例都将停止。要配置此场景,您将按照本教程每个部分提供的步骤完成以下操作。
https://docs.microsoft.com/en-us/azure/billing/billing-cost-management-budget-scenario
因此,在成本因任何原因而大幅增加之前,有办法可以控制成本。
答案4
在 Google Cloud 上你可以设置预算和预算警报:
设置预算金额后,您可以设置用于触发电子邮件通知的预算警报阈值规则。预算警报电子邮件可帮助您随时了解您的支出与预算的对比情况。您还可以使用预算来自动执行成本控制响应。
每当您收到预算警报电子邮件时,您可以采取一些措施来防止花费过多的钱。
要提前估算未来支出,您可以使用Google Cloud 定价计算器。
GCP 还为您提供 WAF谷歌云装甲:
- 受益于 Google 规模的 DDoS 保护和 WAF
- 检测并缓解针对 Cloud Load Balancing 工作负载的攻击
- 缓解 OWASP 十大风险并帮助保护本地或云中的工作负载