Skip to main content
Version: 8.2511.x.x RR

Management endpoints

nevisAuth implements a liveness endpoint that can, for example, be used to integrate with Kubernetes. Check the Kubernetes documentation for more information on how to configure the liveness probes.

Liveness Endpoint

The liveness endpoint informs whether the server is up or not. The server might be up and running but it might not be ready to properly handle requests (for instance because of a misconfiguration). The liveness endpoint is accessible using the management port which is configured using the management.server.port property as described in the Server configuration properties. Currently, only HTTP is supported.

Validated components

  • Jetty server is in a started state.
  • LocalSessionStore didn't reach the limit configured in maxSessions.
  • RemoteSessionStore has a valid database connection. (in case it is configured)
  • Remote OOCD has a valid database connection. (in case it is configured)

Configuration

Timeout for the jdbc connection validation can be configured by the Java system property -Dch.nevis.auth.health.jdbc.timeout=2 in the env.conf JAVA_OPTS. The value provided is measured in seconds with a default of 2 seconds. Note that in case of validation failure, this timeout is the minimum response time of the Liveness endpoint, so configuring this to high value (for example 30 seconds) could cause a problem in kubernetes depending on how timeouts are configured.

Details

The following table describes the HTTP API of the liveness endpoint:

TopicDescription
Default URLhttps://hostname:8997/nevisauth/liveness
Request HTTP MethodGET
Response Content-Typeapplication/json;charset=utf-8
Response Body if nevisAuth is Alive{ "status" : "UP" }
HTTP Status Code if nevisAuth is Alive200 (OK)

Example with all details

The following example shows the details returned by the nevisAuth livenes endpoint for debugging purposes.

{
"status": "UP",
"details": {
"application": {
"status": "UP"
},
"remoteSessionStore": {
"status": "UP"
},
"localSessionStore": {
"status": "UP"
},
"remoteOOCD": {
"status": "UP"
}
}
}