问题

我通过AWS API Gateway通过VPC Link代理NLB服务相关接口,出现了504错误,错误内容如下:

"message""Network error communicating with endpoint"

访问API Gateway出现如下错误效果:
API Gateway 504异常

解决

这里遇到到API Gateway访问NLB问题,是由于我的可用服务器与NLB不在同一个区域,导致NLB访问不到可用服务器。就出现上述错误。要解决这个问题,只需要启用NLB跨区负载均衡即可。具体设置如下图:
启用跨区域负载均衡
只需要将这个负载均衡器目标选择策略改成启用跨区域负载均衡即可。

总结

AWS ELB这个默认值,还是有点坑的,估计启用这个跨区域负载均衡需要不少成本。能开AWS技术支持,尽早开AWS技术支持,不然,真等到发生生产事故,就有点费时间了。与生产事故带来的损失相比,省那点AWS技术支持费用,根本不值得。

更多推荐