尽管 80 端口已向 Internet 开放,AWS ALB 仍显示目标组不健康

尽管 80 端口已向 Internet 开放,AWS ALB 仍显示目标组不健康

我已经通过 Terraform 构建了 AWS ALB 和目标组,一切看起来都正确,但目标组报告 HTTP、HTTPS 和 TCP 不健康。该实例是 us-east-2 中的 t3.nano,已安装并正在运行 Nginx。

我已经验证了以下内容:

  • Nginx 已配置并运行在端口 80 和 443 上
  • 安全组允许从 0.0.0.0/0 开始的 HTTP 和 HTTPS
  • 实例位于公共子网上(即 0.0.0.0/0 路由到 IGW)

如果我从 Internet 访问实例的公共 IP,则会显示“欢迎使用 nginx!”页面。此请求会显示在 /var/log/nginx/access.log 中。 tcpdump 端口 80显示来自互联网的请求,但没有显示 AWS 健康检查。

我以前使用过 ALB 和目标组,从未遇到过这样的问题。唯一的区别是这个实例是使用 Terraform 创建的。

答案1

我认为你需要在你的资源中配置该target_type参数lb_target_group。默认值是 instance,该配置需要autoscaling_group用于 EC2 实例。如果你用于aws_instanceEC2,则需要使用ip参数。

https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#target_type

相关内容