I’m trying to run the Octopus Server linux container in ECS. I can sucessfully manage to get an ECS task running, however as soon as I wire up the ECS service to an Application Load Balancer, the service goes into a restart loop with the following errors in ECS:
Task failed ELB health checks
in the ALB target group, I see the following:
Health checks failed with these codes: [503]
I’m pretty sure this is because I put my Windows Service based install into maintenance mode before I shut down and attempted the migration to Container based server (as per advice here)
I have declared the following Target Group health check as per advice here
health_check {
path = "/api/octopusservernodes/ping"
matcher = "200"
port = 8080
timeout = 5
interval = 30
healthy_threshold = 10
unhealthy_threshold = 2
}
(note that I cannot specify 503
in the matcher, as the maximum possible in an ALB is 499 - although NLBs can go higher). I’ve also tried 200,418
, but the response code I am seeing is 503.
Is the 503 because the server is in Maintenance mode?
If so, is there a better ALB health check path I could use: I can’t loose access to the server in the future if I need to enter maintenance mode?
At the moment, I’m only exposing 8080 - but I would like to expose the tentacle port as I will need to change my tentacles to polling tentacles. Am I on a losing battle with ALBs? If I move to a Network Loadbalancer, will I get the same problems?
Please note - this is not production impacting: I’m experementing in a test area with a backup DB, so do not feel I need an answer quickly. I’m logging this support ticket as one of the last things I’m doing before Xmas break, so it will be January before I pick up anyway.
Merry Christmas!
Pete