1.2k questions

1.4k answers

361 comments

339 users

Categories

Sidebar
0 votes
495 views
by ben-s-7515 (13.0k points)
edited by gary-t-8719
I need to be able to tell if QIE is up and running using a probe from a load balancer, is this possible?  Also, is there a way that the load balancer can check if a specific port is listening?

1 Answer

0 votes

Starting with the 4.0.49 release of QIE there are two probes that can be used by containerized environments like kubernetes and docker, or load balancers.

To configure the QIE instance for a probe port, you will add a new java option to the QIE environment, this java option is:

-Dqie.containerProbePort={anyPort}

Once the container probe port is defined, a probe to check if a container is fully initialized, or if QIE is up and running can be setup to call:

http://{qieServer}:{containerProbePort}/

This call will return an HTTP status 200 if the QIE service is running and initialized.  If the service is still starting, it will return an HTTP status 503.  It is used by container probes to check if the container is up and running before placing it into the cluster, such as a kubernetes livenessProbe and startupProbe.

To check if a specific channel is up and listening on a port for a load balancer, a probe can be setup to call:

http://{qieServer}:{console port}/channelStatus?port={LISTENING PORT}

This call will return an HTTP status 200 if a channel is found that is listening on this port, if a channel is found but is not listening, than an HTTP status 503 will be returned, finally, if a channel is not found that is listening on this port than an HTTP status 404 will be returned.  Using this probe with a load balancer or traffic manager will allow spcific nodes to stop the channel and the load balancer will route the traffic to other nodes even if the QIE service is up and running.

by ben-s-7515 (13.0k points)
edited by jon-t-7005
...