问题陈述:目标组的健康状况显示为
Initial
,网站给出 502 Bad Gateway 和 504 gateway timeout 错误(间歇性发生)。但如果我手动重新注册相同的目标组,网站就可以正常工作。
如何重现?
我有一个部署文件(例如:aws.yml),其中包含在 ELB fargate 中注册容器 IP 的作业。
这是示例配置:
name: Register Container IP in ELB Fargate
id: register-ip
env:
ECS_CLUSTER: ${{ env.ECS_CLUSTER }}
AWS_TARGET_GROUP_ARN: ${{ inputs.AWS_TARGET_GROUP_ARN }}
run: |
echo "ECS_CLUSTER: $ECS_CLUSTER"
echo "AWS_TARGET_GROUP_ARN: $AWS_TARGET_GROUP_ARN"
aws ecs list-tasks --cluster $ECS_CLUSTER
TASK_ARN=$(aws ecs list-tasks --cluster $ECS_CLUSTER --query "taskArns[0]" --output text)
echo "TASK_ARN: $TASK_ARN"
aws ecs describe-tasks --tasks "$TASK_ARN" --cluster $ECS_CLUSTER
TASK_IP=$(aws ecs describe-tasks --tasks "$TASK_ARN" --cluster $ECS_CLUSTER --query "tasks[0].containers[0].networkInterfaces[0].privateIpv4Address" --output text)
echo "TASK_IP: $TASK_IP"
aws elbv2 register-targets --target-group-arn "$AWS_TARGET_GROUP_ARN" --targets Id=$TASK_IP,Port=3000
此作业成功运行,并将新生成的
TASK_IP
注册到负载均衡器中目标组中已注册目标下。但正如我之前提到的
健康状态显示“初始”并且网站未加载。但如果 我手动重新注册了相同的目标组,网站运行正常。
这里是
EC2
-> Target Groups
-> <Target Group Name>
: 的健康检查设置
这是注册目标截图:
这是负载均衡器映射屏幕截图:
有人可以帮我解决这个问题吗?