我一直在使用ALB,直到我意识到我无法将专用ALB连接到API网关...所以现在尝试NLB。
到目前为止,我有
但是我不确定如何正确配置API网关。我做了:
GET /test
http://dummydomain.com/api
其中dummydomain.com
是虚拟域,/api
是我的状态检查网址,应该可以使用这是我第一次尝试NLB。有什么我想念的吗?
当前,当我测试我的API网关功能时:我得到HTTP500
{
"message": "Internal server error"
}
日志:
Execution log for request 2d5e2e51-b04c-11e8-b9fe-97b354c20146
Tue Sep 04 14:09:45 UTC 2018 : Starting execution for request: 2d5e2e51-b04c-11e8-b9fe-97b354c20146
Tue Sep 04 14:09:45 UTC 2018 : HTTP Method: GET, Resource Path: /test
Tue Sep 04 14:09:45 UTC 2018 : Method request path: {}
Tue Sep 04 14:09:45 UTC 2018 : Method request query string: {}
Tue Sep 04 14:09:45 UTC 2018 : Method request headers: {}
Tue Sep 04 14:09:45 UTC 2018 : Method request body before transformations:
Tue Sep 04 14:09:45 UTC 2018 : Endpoint request URI: http://dummydomain.com/api
Tue Sep 04 14:09:45 UTC 2018 : Endpoint request headers: {x-amzn-apigateway-api-id=4p76zcriuk, User-Agent=AmazonAPIGateway_4p76zcriuk, Host=dummydomain.com}
Tue Sep 04 14:09:45 UTC 2018 : Endpoint request body after transformations:
Tue Sep 04 14:09:45 UTC 2018 : Sending request to http://dummydomain.com/api
Tue Sep 04 14:09:56 UTC 2018 : Execution failed due to configuration error: There was an internal error while executing your request
Tue Sep 04 14:09:56 UTC 2018 : Method completed with status: 500
我很好奇...目标群体有
但是我的应用程序在端口3000上运行。但是运行状况检查通过了它也正确地反射(reflect)了我的应用程序在端口3000上运行
但是想知道端口80的部分是否有问题? NLB会将端口80的流量转换为端口3000吗?
最佳答案
端点URL有点骇人听闻。它强制您提供一个域(您可以使用任何域)。发出请求时,似乎剥夺了该域,并用您的VPC链接代替了该域。
例如。
http://dummydomain.com/api -> http://{NLB DNS}:80/api
您还可以将
{proxy}
与API Gateway代理资源一起用作端点URL的一部分。例如。具有顶级代理资源的
http://dummydomain.com/api/{proxy}
将导致:{api gateway endpoint}/todo/1 -> http://{NLB DNS}:80/api/todo/1
您可以将NLB端口配置为端点URL的一部分。
例如。
http://dummydomain.com:10001/api -> http://{NLB DNS}:10001/api
这使您可以在NLB上包含指向不同目标组的多个监听器。
为了进行故障排除,请通过在同一VPC上旋转EC2实例并从此处 curl 您的端点URL(用NLt DNS替换http://dummydomain.com)来测试您的(内部)NLB
关于amazon-web-services - 如何设置API网关与私有(private)NLB通话?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52168194/