- 22 May 2023
-
DarkLight
-
PDF
Redis Configuration & Health Monitoring
- Updated on 22 May 2023
-
DarkLight
-
PDF
Overview
The Itential Automation Platform (IAP) uses Redis for shared authentication token storage and expiration.
The authentication token function can be performed by the same local Redis for the standalone topology. To achieve an HA topology, Redis sentinels are used to provide master-slave replication for the shared authentication token storage function.
The default settings for the core Redis properties are sufficient for most IAP installations. You should only need to modify the default settings if you are configuring an IAP HA topology or need to configure password authentication in either topology.
Health Monitoring
The Redis driver used by IAP inherits most of its configuration parameters from the ioredis library at Github-luin/ioredis. There are some additional customized parameters to help fit the driver into an IAP solution.
These settings are used in Redis health monitoring.
Property | Type | Default | Description |
---|---|---|---|
maxRetriesPerRequest |
Number | 20 |
The maximum number of connection retries on a lost Redis link. IAP will shutdown when the maxRetriesPerRequest limit is reached. |
maxHeartbeatWriteRetries |
Number | 20 |
The maximum number of write retries on the lost ability to write data in Redis. IAP will be shutdown when maxHeartbeatWriteRetries limit is reached. |
When the driver discovers Redis connection problems, it immediately starts reconnection attempts via predefined retryStrategy
. Parameter maxRetriesPerRequest
is a counter for those reconnection attempts. As soon as it reaches the defined value, IAP is shutdown. If the driver is able to get the connection back, the connectionRetries
is reset.
The driver also checks the ability of Redis to write data. Heartbeat is fired every predefined heartbeatInterval
time which is 2000 ms
. When the heartbeat discovers a problem during writing, it triggers a predefined retryHeartbeatWriteStrategy
. Parameter maxHeartbeatWriteRetries
is a counter for the next write attempts during retryHeartbeatWriteStrategy
execution. As soon as it reaches the defined value, IAP is shutdown. If the heartbeat is again able to write data, writeRetries
is reset.