我试图为部署到多个区域的多个API网关实现健康检查。为此,我将跟踪这篇文章。
长话短说,您需要在所有区域复制完全相同的API网关(及其相应的Lambda函数)。使用Route53创建一个由多个端点支持的域名。
我的问题与Route53 53的建立方式有关。在那篇文章中,健康检查端点由API的阶段调用URL填充。区域端点由API网关的自定义域名中的目标域名填充。
为什么这两个端点被不同的值填充?如果我们可以在健康检查中使用阶段调用URL,为什么首先需要有自定义域名?为什么我们不能使用相同的阶段调用URL来填充区域端点呢?
发布于 2018-06-06 21:48:04
如果我们可以在健康检查中使用阶段调用URL,为什么首先需要有自定义域名?
阶段URL对于每个区域都是独一无二的。如果您健康检查自定义域,您将隐式地检查(a)最接近个人健康检查器的区域和(b)已被认为是健康的区域,这作为健康检查目标将是无用的。
另一方面,如果您没有在每个区域创建一个相同的自定义域,那么您就没有一个可供客户访问的通用域名。您不能只将任意主机名指向API网关端点并使其工作-- API网关需要期望该主机名的通信量,这就是在使用自定义域进行部署时所做的工作。
一个相关的问题可能是你为什么需要目标域名?为什么不用它做健康检查呢?正如目标域名所暗示的那样,目标域名只是一个目标域名,仅供DNS用于路由。它不应该接受直接发送给它的请求,这些请求不使用自定义域进行SSL和header。
https://stackoverflow.com/questions/50726275
复制相似问题