Las comprobaciones de estado de Google Compute Engine fallan

Tengo una aplicación node.js en dos instancias de VM que estoy tratando de equilibrar la carga con el equilibrio de carga de la red. Para probar que mis servidores están funcionando, tengo la solicitud de verificación de estado '/health.txt' en el puerto de escucha interno de mi aplicación. Tengo dos instancias configuradas de manera idéntica con las mismas etiquetas, reglas de firewall, etc., pero la verificación de estado falla en una instancia de forma continua, puedo hacer la verificación usando curl en mi red interna o desde afuera y la prueba funciona bien en ambas instancias, pero el equilibrador de carga de red siempre informa una instancia como inactiva.

Usé ngrep y ejecuto desde la instancia de salud, veo:

T 169.254.169.254:65374 -> my.pub.ip.addr:3000 [S]
#
T my.pub.ip.addr:3000 -> 169.254.169.254:65374 [AS]
#
T 169.254.169.254:65374 -> my.pub.ip.addr:3000 [A]
#
T 169.254.169.254:65374 -> my.pub.ip.addr:3000 [AP]
GET /health.txt HTTP/1.1.
Host: my.pub.ip.addr:3000.
.

#
T my.pub.ip.addr:3000 -> 169.254.169.254:65374 [A]
#
T my.pub.ip.addr:3000 -> 169.254.169.254:65374 [AP]
HTTP/1.1 200 OK.
X-Powered-By: NitroPCR.
Accept-Ranges: bytes.
Date: Fri, 14 Nov 2014 20:00:40 GMT.
Cache-Control: public, max-age=86400.
Last-Modified: Thu, 24 Jul 2014 17:58:46 GMT.
ETag: W/"2198506076".
Content-Type: text/plain; charset=UTF-8.
Content-Length: 13.
Connection: keep-alive.
.

#
T 169.254.169.254:65374 -> my.pub.ip.addr:3000 [AR]

Pero en el caso de que GCE afirma que no es saludable, veo esto:

T 169.254.169.254:61179 -> my.pub.ip.addr:3000 [S]
#
T 169.254.169.254:61179 -> my.pub.ip.addr:3000 [S]
#
T 169.254.169.254:61180 -> my.pub.ip.addr:3000 [S]
#
T 169.254.169.254:61180 -> my.pub.ip.addr:3000 [S]
#
T 169.254.169.254:61180 -> my.pub.ip.addr:3000 [S]

Pero si doblo el mismo archivo desde mi instancia saludable> instancia no saludable, mi instancia 'no saludable' responde bien.

Respuestas a la pregunta(1)

Su respuesta a la pregunta