我想将我的无服务器应用程序扩展到第二个 aws 区域,以便它在主动-主动模型中工作。
目前我有一个使用 WAF 保护的公共 api 网关。
我想在该 api 网关前面添加一个 cloudfront 发行版,然后添加部署到另一个区域的第二个 api 网关作为源。
我创建了一个 POC,可以看到来自 cloudfront 的请求被 WAF 阻止了。
我知道我可以使用 api-key、自定义标头来验证 Cloudfront 分发到 waf/api-gateway,但也许还有另一个更优雅的解决方案?
感谢任何帮助。谢谢!
CloudFront 源组仅在第一个源没有应答时才使用第二个源,因此更多的是主动/备用设置。
如果您的目标是透明地对区域 A 和区域 B 进行流量负载平衡(主动/主动设置),我宁愿使用 DNS 负载平衡:
您还可以使用地理位置邻近或延迟策略将用户路由到最合适的区域。
API 网关可以受益于边缘加速,而无需在前面部署 CloudFront。
PS:如果您将 CloudFront 发行版放在 API 前面,您可以在 CloudFront 级别而不是 API 网关级别激活 WAF 服务。