services/redis

Used to define the global configuration and server collections for Redis.

Properties

NameTypeConstraintsDescription
key_prefixstringThe key prefix for all data which is stored on the Redis server.
default_collectionstringThe name of the default collection of Redis servers to be used.
collectionsArray of collections

services/redis/collections[]

Used to define the configuration for a collection of replicated Redis servers.

Properties

NameTypeConstraintsDescription
namestringThe name of the redis collection.
matching_hoststringAny specific hosts (obtained from the Host header of the HTTP request) for which this collection should be used.
This entry is only applicable to Redis collections being used for storing session data.
max_pooled_connectionsnumberMinimum: 0

Maximum: unlimited

Default value: 50
The maximum number of pooled connections to a Redis server.
idle_timeoutnumberMinimum: 0

Maximum: unlimited

Default value: 10
The maximum number of seconds a pooled connection can remain idle before the connection is closed.
connect_timeoutnumberMinimum: 0

Maximum: unlimited

Default value: 2
The maximum number of seconds to wait for a connection to be established with a Redis server.
io_timeoutnumberMinimum: 0

Maximum: unlimited

Default value: 30
The maximum number of seconds to wait for a valid response from a Redis server.
health_check_intervalnumberMinimum: 1

Maximum: unlimited

Default value: 10
The interval (in seconds) between health check requests sent to the Redis server.
cross_domain_supportcross_domain_support
serversArray of servers

services/redis/collections[]/cross_domain_support

Specifies the configuration information associated with the sharing of sessions across multiple DNS domains.
These entries are only applicable to Redis collections being used for storing session data.

Properties

NameTypeConstraintsDescription
master_authn_server_urlstringThe base URL of the master authentication server for this collection of Redis servers. The master authentication server, if specified, will be responsible for the generation of all new sessions for this collection. The entry should be of the format: http{s}://server{:port}.
master_session_code_lifetimenumberMinimum: 1

Maximum: unlimited

Default value: 30
The maximum number of seconds that a session code, used when communicating the session information from the master authentication server, will remain valid.

services/redis/collections[]/servers[]

Used to define the configuration for the individual Redis servers within the collection.

Properties

NameTypeConstraintsDescription
namestringA label, or name, which is used to identify this server.
hoststringThe server name or IP address of the Redis server.
portnumberMinimum: 1

Maximum: unlimited

Default value: 6379
The port on which the Redis server is listening for requests.
usernamestringThe name of the user which is used when authenticating to the Redis server.
passwordstringThe password which is used to access the Redis server.
sslssl

services/redis/collections[]/servers[]/ssl

The SSL information associated with the Redis server.

Properties

NameTypeConstraintsDescription
trust_certificatesArray of stringThe PEM based certificates which are to be trusted when communicating with the Redis server. The trusted certificates should include the CA certificate for the Redis server certificate, as well as any intermediate certificates used to sign the client certificate (if mutual authentication is in use). SSL/TLS will not be used when communicating with the Redis server if no trust certificates are specified.
client_certificateArray of stringThe PEM based personal certificate files which will be used when performing mutual authentication with the resource server. These certificate files should include the private key, a certificate signed with the private key, and the signer certificate or signer certificate chain (if required).
snistringThe Server Name Indication (SNI) value which is provided when establishing the SSL connection with the Redis server.

Example

services:
  redis:
    default_collection: redis-a
    key_prefix: iag-test-
    collections:
      - connect_timeout: 20
        cross_domain_support:
          master_authn_server_url: https://mas.ibm.com
          master_session_code_lifetime: 150
        health_check_interval: 200
        idle_timeout: 100
        io_timeout: 300
        matching_host: www.webseal.ibm.com
        max_pooled_connections: 200
        name: test-collection-session
        servers:
        - host: redis-a.ibm.com
          name: redis-a
          password: passw0rd
          username: testuser
          port: 6380
          ssl:
            client_certificate: "@redis-a-client.pem"
            sni: redis-a.ibm.com
            trust_certificates: "@redis-a-ca.pem"
      - connect_timeout: 10
        health_check_interval: 200
        idle_timeout: 100
        io_timeout: 300
        max_pooled_connections: 200
        name: test-collection-ratelimiting
        servers:
        - host: redis-b.ibm.com
          name: redis-b
          password: passw0rd
          username: user
          port: 6380
          ssl:
            trust_certificates: "@redis-b-ca.pem"