About Admin Processes and Peering

A domain must contain at least one admin process. Any additional admin processes join the domain by securely connecting (peering) into the domain by means of another admin process. The admin processes communicate by pinging each other to make sure they are still available. Here is a simple example of how a peer network begins:

B1, B2, and B3 are admin processes. Each admin process is on its own physical host in the domain. The admin processes are configured but not started. This means the NuoDB software has been installed and the nuoadmin.conf file on each host has been edited to have settings that are appropriate for the domain. A1 is an agent that is also on its own machine and also configured but not started.

The settings in the nuodmin.conf files indicate the following:

In other words, the setting of the peer property is the same in each of the nuodmin.conf files on the three hosts. On each host, the value of the peer property is the hostname and port for the machine on which B1 is running.

If B1 is started first, it becomes the leader admin processes. The leader admin processes performs the liveliness checks for the domain peers and determines if another admin processes (peer) is no longer responding. After B2 and B3 are started, they would peer into the domain through B1.

All admin service processes have a last known state for the domain, so they can be restarted in any order and will reconnect properly. The initial peer used to connect to the domain no longer matters.

A NuoDB domain can be expanded dynamically by starting additional admin service processes on new hosts, and peering them into the domain. The incoming admin service process only needs to connect to any existing admin service processes in the domain by using the correct values for the domain and domainPassword properties plus the address and port of an existing admin service process. See Creating the Domain and Adding Hosts. Also, an admin service process can be removed dynamically and gracefully from the domain.

In summary: