在端口 3000 上对 Node.js 应用程序进行 AWS 负载平衡

2024-03-22

我有一个 Node.js Express Web 应用程序,它使用默认端口 3000,并通过弹性 IP 在 Ubuntu EC2 实例上响应良好。我正在尝试设置 AWS 内置的负载平衡,但似乎无法通过良好的运行状况检查

设置 2 个 ubuntu 服务器,在端口 3000 上为应用程序提供良好的服务。

将端口 80 的负载均衡器侦听器设置为路由到实例端口 3000,并尝试将 3000 路由到 3000。

将 amazon-elb/amazon-elb-sg 安全组添加到我的实例安全组中,以防万一。

将健康检查设置为端口 80 和 3000 到项目内的许多有效 URL。

我这里缺少什么吗?

UPDATE:

事实证明这是我忽略的最简单的事情。不知何故,我的实际实例位于一个仅打开 80 个实例的安全组中,我只需添加一条规则即可打开 3000 个实例。不敢相信我错过了这一点。


如果您将负载均衡器设置为仅将端口 80 上的传入请求转发到后端实例上的端口 3000,则在尝试 80 以外的端口时不应收到任何响应。如果您针对端口 3000 发出请求(即http://yourdomain.com:3000/uri http://yourdomain.com:3000/uri)您需要让负载均衡器还将端口 3000 上的传入请求转发到实例上的端口 3000。

如果您在实例上仅使用端口 3000,则需要确保您的运行状况检查指向端口 3000。(即 TCP ping 3000,或针对您的端口 3000 的 HTTP/ping服务)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在端口 3000 上对 Node.js 应用程序进行 AWS 负载平衡 的相关文章

随机推荐