Send command to DOWN the node specified by 'address'.
Send command to DOWN the node specified by 'address'.
When a member is considered by the failure detector to be unreachable the leader is not allowed to perform its duties, such as changing status of new joining members to 'Up'. The status of the unreachable member must be changed to 'Down', which can be done with this method.
Java API: roles that this member has
Returns true if this cluster instance has be shutdown.
Try to join this cluster node with the node specified by 'address'.
Try to join this cluster node with the node specified by 'address'. A 'Join(selfAddress)' command is sent to the node to join.
An actor system can only join a cluster once. Additional attempts will be ignored. When it has successfully joined it must be restarted to be able to join another cluster or to join the same cluster again.
The name of the akka.actor.ActorSystem must be the same for all members of a cluster.
Java API
Java API
Join the specified seed nodes without defining them in config. Especially useful from tests when Addresses are unknown before startup time.
An actor system can only join a cluster once. Additional attempts will be ignored. When it has successfully joined it must be restarted to be able to join another cluster or to join the same cluster again.
Join the specified seed nodes without defining them in config.
Join the specified seed nodes without defining them in config. Especially useful from tests when Addresses are unknown before startup time.
An actor system can only join a cluster once. Additional attempts will be ignored. When it has successfully joined it must be restarted to be able to join another cluster or to join the same cluster again.
Send command to issue state transition to LEAVING for the node specified by 'address'.
Send command to issue state transition to LEAVING for the node specified by 'address'.
The member will go through the status changes MemberStatus Leaving
(not published to
subscribers) followed by MemberStatus Exiting
and finally MemberStatus Removed
.
Note that this command can be issued to any member in the cluster, not necessarily the one that is leaving. The cluster extension, but not the actor system or JVM, of the leaving member will be shutdown after the leader has changed status of the member to Exiting. Thereafter the member will be removed from the cluster. Normally this is handled automatically, but in case of network failures during this process it might still be necessary to set the node’s status to Down in order to complete the removal.
Java API: The supplied thunk will be run, once, when current cluster member is Removed
.
Java API: The supplied thunk will be run, once, when current cluster member is Removed
.
If the cluster has already been shutdown the thunk will run on the caller thread immediately.
Typically used together cluster.leave(cluster.selfAddress)
and then system.terminate()
.
The supplied thunk will be run, once, when current cluster member is Removed
.
The supplied thunk will be run, once, when current cluster member is Removed
.
If the cluster has already been shutdown the thunk will run on the caller thread immediately.
Typically used together cluster.leave(cluster.selfAddress)
and then system.terminate()
.
Java API: The supplied callback will be run, once, when current cluster member is Up
.
Java API: The supplied callback will be run, once, when current cluster member is Up
.
Typically used together with configuration option akka.cluster.min-nr-of-members
to defer some action, such as starting actors, until the cluster has reached
a certain size.
The supplied thunk will be run, once, when current cluster member is Up
.
The supplied thunk will be run, once, when current cluster member is Up
.
Typically used together with configuration option akka.cluster.min-nr-of-members
to defer some action, such as starting actors, until the cluster has reached
a certain size.
Generate the remote actor path by replacing the Address in the RootActor Path for the given
ActorRef with the cluster's selfAddress
, unless address' host is already defined
The address of this cluster member.
Data center to which this node belongs to (defaults to "default" if not configured explicitly)
Current snapshot of the member itself
roles that this member has
The address including a uid
of this cluster member.
The address including a uid
of this cluster member.
The uid
is needed to be able to distinguish different
incarnations of a member with same hostname and port.
Send current (full) state of the cluster to the specified receiver.
Send current (full) state of the cluster to the specified receiver. If you want this to happen periodically you need to schedule a call to this method yourself. Note that you can also retrieve the current state with #state.
Current snapshot state of the cluster.
Subscribe to one or more cluster domain events.
Subscribe to one or more cluster domain events.
The to
classes can be akka.cluster.ClusterEvent.ClusterDomainEvent
or subclasses.
If initialStateMode
is ClusterEvent.InitialStateAsEvents
the events corresponding
to the current state will be sent to the subscriber to mimic what you would
have seen if you were listening to the events when they occurred in the past.
If initialStateMode
is ClusterEvent.InitialStateAsSnapshot
a snapshot of
akka.cluster.ClusterEvent.CurrentClusterState will be sent to the subscriber as the
first message.
Note that for large clusters it is more efficient to use InitialStateAsSnapshot
.
Subscribe to one or more cluster domain events.
Subscribe to one or more cluster domain events.
The to
classes can be akka.cluster.ClusterEvent.ClusterDomainEvent
or subclasses.
A snapshot of akka.cluster.ClusterEvent.CurrentClusterState will be sent to the subscriber as the first message.
Unsubscribe to a specific type of cluster domain events,
matching previous subscribe
registration.
Unsubscribe to all cluster domain events.
This module is responsible cluster membership information. Changes to the cluster information is retrieved through #subscribe. Commands to operate the cluster is available through methods in this class, such as #join, #down and #leave.
Each cluster Member is identified by its akka.actor.Address, and the cluster address of this actor system is #selfAddress. A member also has a status; initially MemberStatus
Joining
followed by MemberStatusUp
.