代码之家  ›  专栏  ›  技术社区  ›  Hari

弹性负载平衡器侦听器不适用于一个端口

  •  4
  • Hari  · 技术社区  · 9 年前

    我有一个运行Sinatra应用程序的Elastic Beanstalk Docker容器。使用ebextensions,我有一个haproxy实例在EC2盒上运行,它从端口转发流量 9090 docker_ip:application_port 。设置工作正常,因为我能够卷曲EC2盒的IP端口 9090 并到达我的应用程序的端点(我还可以看到haproxy日志)

    现在,我已经在Elastic负载平衡器上设置了一个额外的tcp侦听器,将端口9090转发到端口9090(默认为端口80->端口80)。然而,当我尝试访问 domain_name:9090 ,它超时了。如果我只是访问 domain_name 它起作用了。关于如何调试负载平衡器侦听器为什么不能按预期工作的任何想法。

    注意,ELB可见性设置为public。


    因此,我打开了负载平衡器的日志记录,并直接访问了它的DNS名称。它记录了发送到端口80的请求,但没有记录发送到端口9090的请求。


    另一个更新-我在端口9090的ec2盒上运行了tcpdump load_balancer_domain:9090


    解决了的 -我必须编辑负载平衡器上的安全组规则,以允许实例的端口9090上的出站流量。

    1 回复  |  直到 9 年前
        1
  •  2
  •   gboda    9 年前

    启用ELB Access Logs 并向AWS生成的ELB的DNS名称发送请求。检查ELB在S3存储桶中创建的日志文件。