I have a service which runs a Java application under Tomcat. The application takes about 30 seconds to start up and actually be available (I wish it was instant but it’s not!) The service is served via a Rancher HAProxy load balancer instance.
When I do a service upgrade, I select “start before stop” in the UI because I want my service to remain on-line. However, Rancher stops the old container before the new one is fully started - well the container is started but the Java application isn’t fully started.
I thought this was because I didn’t have a health check so I added one. But that didn’t resolve the issue.