是否需要在EC2上运行某些内容才能通过健康检查?

时间:2017-12-09 21:46:46

标签: amazon-web-services amazon-ec2 amazon-elb

好吧这可能看起来像一个愚蠢的问题,但我不得不说我有点难过。我无法弄清楚为什么我的ELB(经典) - > AWS中的EC2运行状况检查失败。

所以我配置的方式,我的ELB健康检查将尝试ping TCP:8080上的实例。

我的ELB上有3个端口监听器,根据我的理解应该无关紧要,因为它处理来自外部的流量,但我会列出以防万一我忽略了一些事情: 1.)HTTP:80 --> HTTP:8080 2.)HTTPS:443 --> HTTP:8080 3.)TCP:2222 --> TCP:2222

我还尝试将健康检查配置为ping TCP:2222,以防万一和同样的交易..

此外,我的EC2安全组可以从我的ELB安全组中启用TCP:8080TCP:2222

它失败的原因是因为当EC2实例允许流量时,它仍然需要在该端口上运行某些东西来为流量提供服务吗?

所有EC2目前都是一个简单的AWS提供的Linux AMI。

原谅我,我对网络空间有点新鲜。

1 个答案:

答案 0 :(得分:4)

是的,需要在服务器上运行。如果服务器上没有正在运行的进程,侦听并响应端口8080上的请求,则运行状况检查将失败。如果服务器上运行的软件崩溃,您会希望运行状况检查失败吗?如果实例没有响应请求,则该实例不是“健康的”。

此外,分配给EC2实例的安全组需要配置为允许源自ELB的那些端口(80802222)上的传入流量。