You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Consul v1.14.11
Revision c0c5688c
Build Date 2023-10-31T13:58:53Z
Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents)
Docker version
Docker version 26.1.1, build 4cf5afa
Operating system and Environment details
Ubuntu 22.04.4 LTS (fresh install using AWS image)
AWS c6a.xlarge
Issue
I'm running a setup with Nomad + Consul Connect (I'm providing a simplified test case of the problems we're encountering in our actual systems). I'm trying to set up a service running in Docker, listening on some port (let's say that we can't customize it for some reason; in this example it's Flask listening at port 5000). I also want to set up an ingress gateway to forward requests to that service (and have it listen on port 5555).
If I set up the Flask container with a port where to = 5000, then my ingress gateway fails even if the container is running. If I also set static = 5000 on the Flask port, then everything works fine. However, I can't set that in production, since there will be multiple copies of the container running on a server.
Reproduction steps
Run the two job files specified below. My server is running at 10.16.0.151.
When I run curl http://10.16.0.151:<dynamic port allocated by Nomad to the Flask container> I get a 200 response with a body of Hello, World! as expected. However, running curl to the static ingress port does not give me the correct behaviour.
Expected Result
When I run curl http://10.16.0.151:5555 I should also get a 200 response with a body of Hello, World!.
Actual Result
When I run curl http://10.16.0.151:5555 I get a 503 response with a body of upstream connect error or disconnect/reset before headers. reset reason: connection failure, transport failure reason: delayed connect error: 111.
However, if I uncomment the # static = 5000 line in the Flask file, then the host port and container port match (both = 5000), and curling the ingress container returns the expected 200 response.
Nomad version
Nomad v1.5.10
BuildDate 2023-10-30T13:26:22Z
Revision 3d7f65f
Consul version
Consul v1.14.11
Revision c0c5688c
Build Date 2023-10-31T13:58:53Z
Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents)
Docker version
Docker version 26.1.1, build 4cf5afa
Operating system and Environment details
Ubuntu 22.04.4 LTS (fresh install using AWS image)
AWS c6a.xlarge
Issue
I'm running a setup with Nomad + Consul Connect (I'm providing a simplified test case of the problems we're encountering in our actual systems). I'm trying to set up a service running in Docker, listening on some port (let's say that we can't customize it for some reason; in this example it's Flask listening at port 5000). I also want to set up an ingress gateway to forward requests to that service (and have it listen on port 5555).
If I set up the Flask container with a port where
to = 5000
, then my ingress gateway fails even if the container is running. If I also setstatic = 5000
on the Flask port, then everything works fine. However, I can't set that in production, since there will be multiple copies of the container running on a server.Reproduction steps
Run the two job files specified below. My server is running at 10.16.0.151.
When I run
curl http://10.16.0.151:<dynamic port allocated by Nomad to the Flask container>
I get a 200 response with a body ofHello, World!
as expected. However, runningcurl
to the static ingress port does not give me the correct behaviour.Expected Result
When I run
curl http://10.16.0.151:5555
I should also get a 200 response with a body ofHello, World!
.Actual Result
When I run
curl http://10.16.0.151:5555
I get a 503 response with a body ofupstream connect error or disconnect/reset before headers. reset reason: connection failure, transport failure reason: delayed connect error: 111
.However, if I uncomment the
# static = 5000
line in the Flask file, then the host port and container port match (both = 5000), andcurl
ing the ingress container returns the expected 200 response.Job file (if appropriate)
Nomad config
Consul config
Flask job
Ingress job
The text was updated successfully, but these errors were encountered: