Couchbase Service Registry

Couchbase integration is enabled by including the following dependency in the WAR overlay:

1
2
3
4
5
<dependency>
     <groupId>org.apereo.cas</groupId>
     <artifactId>cas-server-support-couchbase-service-registry</artifactId>
     <version>${cas.version}</version>
</dependency>

Couchbase is a highly available, open source NoSQL database server based on Erlang/OTP and its mnesia database. The intention of this registry is to leverage the capability of Couchbase server to provide high availability to CAS.

Configuration

To see the relevant list of CAS properties, please review this guide.

The Couchbase integration currently assumes that the service registries are stored in their own buckets. Optionally set passwords for the buckets, optionally setup redundancy and replication as per normal Couchbase configuration.

The only truly mandatory setting is the list of nodes. The other settings are optional, but this is designed to store data in buckets so in reality the bucket property must also be set.

Auto Initialization

Upon startup and configuration permitting, the registry is able to auto initialize itself from default JSON service definitions available to CAS. See this guide for more info.

Troubleshooting

To enable additional logging, configure the log4j configuration file to add the following levels:

1
2
3
4
5
6
...
<AsyncLogger name="com.couchbase" level="debug" additivity="false">
    <AppenderRef ref="console"/>
    <AppenderRef ref="file"/>
</AsyncLogger>
...