antikythera v0.3.0 AntikytheraEal.ClusterConfiguration.Behaviour behaviour View Source
Interface for cluster membership.
See AntikytheraEal for common information about pluggable interfaces defined in antikythera.
Link to this section Summary
Callbacks
Lists running ErlangVM nodes for the current deployment.
Returns identifier of the data center zone in which current node is running.
Link to this section Callbacks
running_hosts()
View Sourcerunning_hosts() :: Croma.Result.t(%{required(String.t()) => boolean()})
Lists running ErlangVM nodes for the current deployment.
On success this callback must return a map where
each key is hostname (String.t) of a running node and
each value is a boolean value representing whether the node is "active" or not.
"Inactive" node is treated as during decommission process.
This callback is at the startup of each node in order to join the existing cluster. After successful startup, this callback is called periodically so that
- all running nodes in the cluster maintain connections to each other, and
- each node can notice and cleanup when it is about to be terminated.
Returns identifier of the data center zone in which current node is running.
This callback is called only at startup and the return value is passed to RaftFleet.activate/1.