首页 文章

Elastic Load balancer侦听器不适用于一个端口

提问于
浏览
4

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

现在,我在Elastic loadbalancer上设置了一个额外的tcp监听器,将端口9090转发到端口9090(默认端口为80 - >端口80) . 但是,当我尝试访问 domain_name:9090 时,它会超时 . 如果我只是访问 domain_name 它的工作原理 . 关于如何调试负载均衡器监听器无法按预期工作的任何想法 .

请注意,ELB可见性设置为公共 .


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


另一个更新 - 我在端口9090上的ec2盒子上运行了一个tcpdump . 它没有捕获我运行的任何数据包 load_balancer_domain:9090


Solved - 我必须编辑负载均衡器上的安全组规则,以允许实例的端口9090上的出站流量 .

1 回答

  • 2

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

相关问题