Config Database

The Config Database, previously Control Database, stores runtime configuration. This encompasses, amongst other things, the following:

  • Information about the node, this controlDB belongs to

    • This includes things like the NodeID which it uses to participate in raft

    • The hostname used to reach this node. This is advertised in raft communication too, so it is of utmost importance that the entry is valid

    • The peers it knows to talk to. All raft nodes have an entry in the configDB

  • Progress information for replication. Axon Server saves many values in here, for example how far it has applied replication log entries

  • Available contexts and to which replication groups they belong

  • Persistent streams and their progress

  • Configuration for users and permissions

  • API tokens (hashed) and applications

As illustrated above, the configDB is an important part of the axonserver installation.

There are some common pitfalls users may run into:

  • Never copy the ConfigDB from one node to another node. This way you would have two nodes with the same ID in a cluster , causing lots of trouble, in some cases even leading to data loss if the wrong "clone" is removed afterwards.

  • Never delete a ConfigDB in an attempt to fix a cluster without checking with Axoniq Support first. There are very few scenarios in which this might be even a valid option.

  • Since the ConfigDB references the replication logs, they have to be backed up together. Please refer to backups page for more details.