Cheap Health Check URL?
What would a cheap health check request be for TeamCity? I'm looking at placing TC behind a HWLB, not strictly for load balancing but mainly for port mapping + cold spare setup (easier to swap out via HWLB than via DNS).
Please sign in to leave a comment.
Just wondering... am I the only one who is even thinking of running TC behind a load balancer? nobody doing Nagios checks or anything?
Need to say, we do not support load balancing - when two cluster nodes work in parallel. But you can setup high avalability cluster. take a look at articles
Setup TeamCity in Replication/Clustering Environment
Move TeamCity Installation to a New Machine
For health check - what do you expect from it? I mean, what's wrong with http://server/overview.html ?
Michael
A health check URL should be one that is safe to poll for once a second and with a predictable return value. I don't think overview.html with qualify - I was hoping there was a specific URL that would return a simple "OK" response after doing some cheap checks. It should not load up the system with lengthy page renderings...
Meanwhile, thanks for the links. I'm aware that I can't do load balancing - but I can do failover - even if I have to do it by hand, and since we already have a hardware load balancer, it is easier to do it via the load balancer than mucking with DNS - but in order for it to even make sense, I need to detect when to fail over.
What about login.html - that's static and doesn't require any additional actions like authentication.
We definitely need this for Kubernetes deployments in Google Container Engine. This is due to GCE load-balancer Ingress controller, requiring that:
Unfortunately, during the installation phase all requests are redirected to "/mnt" using 302 redirect. This means that there is no way to access TeamCity to complete setup, since the backend will be flagged as "unhealthy" in GCE load-balancer and it wouldn't serve requests to it.
Bamboo, for example, has "/rest/api/latest/server" endpoint, which is accessible without authentication and can be used in the Kubernetes' "readinessProbe":
I am also interested in this feature. I am using it with Azure App Service. But otherwise my need is exactly the same as the post from 2018.
Has anyone made any progress in the last few years?
This thread is quite old and has outdated information. Please refer to the following documentation on a failover configuration: https://www.jetbrains.com/help/teamcity/multinode-setup.html#Monitoring+and+Managing+Nodes+via+REST+API
Basically, the following endpoint allows one to check the currently available nodes:
GET /app/rest/server/nodes?locator=state:online
When setting up TeamCity in a multinode configuration, make sure to follow the documentation: https://www.jetbrains.com/help/teamcity/multinode-setup.html
Best regards,
Anton