Packages

package bootstrap

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package contactpoint

Type Members

  1. final class ClusterBootstrap extends Extension with ManagementRouteProvider
  2. final class ClusterBootstrapSettings extends AnyRef
  3. trait JoinDecider extends AnyRef

    The decisions of joining existing seed-nodes or join self to form new cluster is performed by the JoinDecider and the implementation is defined in configuration so support different strategies.

  4. sealed trait JoinDecision extends AnyRef
  5. final case class JoinOtherSeedNodes(seedNodes: Set[Address]) extends JoinDecision with Product with Serializable

    Join existing cluster.

    Join existing cluster.

    The self Address will be removed from the returned seedNodes to be sure that it's never joining itself via this decision.

  6. class LowestAddressJoinDecider extends SelfAwareJoinDecider

    The decision of joining "self" is made by deterministically sorting the discovered services and picking the *lowest* address.

    The decision of joining "self" is made by deterministically sorting the discovered services and picking the *lowest* address. Only the node with lowest address joins itself.

    If any of the contact-points returns a list of seed nodes it joins the existing cluster immediately.

    Joining "self" is only done when enough number of contact points have been discovered (required-contact-point-nr) and there have been no changes to the discovered contact points during the stable-margin.

    There must also be seed node observations from all discovered contact points before joining "self".

  7. final class SeedNodesInformation extends AnyRef

    Full information about discovered contact points and found seed nodes.

    Full information about discovered contact points and found seed nodes.

    contactPoints contains all nodes that were returned from the discovery (e.g. DNS lookup).

    seedNodesObservations contains the replies from those contact points when probing them with the HTTP call. It only contains entries for the contact points that actually replied, i.e. were reachable and running. Each such SeedNodesObservation entry has the seedNodes (Pekko Cluster addresses) that were returned from that contact point. That Set will be empty if the node replied but is not part of an existing cluster yet, i.e. it hasn't joined.

    There are also some timestamps that can be interesting. Note that currentTime is passed in to facilitate calculation of durations.

    contactPointsChangedAt is when the discovered contact points were last changed (e.g. via DNS lookup), e.g. 5 seconds ago means that subsequent lookup attempts (1 per second) after that were successful and returned the same set.

    SeedNodesObservation.observedAt was when that reply was received from that contact point. The entry is removed if no reply was received within the probing-failure-timeout meaning that it is unreachable or not running.

  8. final class SeedNodesObservation extends AnyRef

Value Members

  1. object BootstrapLogMarker

    This is public with the purpose to document the used markers and properties of log events.

    This is public with the purpose to document the used markers and properties of log events. No guarantee that it will remain binary compatible, but the marker names and properties are considered public API and will not be changed without notice.

    Annotations
    @ApiMayChange()
  2. object ClusterBootstrap extends ExtensionId[ClusterBootstrap] with ExtensionIdProvider
  3. object ClusterBootstrapSettings
  4. case object JoinSelf extends JoinDecision with Product with Serializable

    There is no existing cluster running and this node decided to form a new cluster by joining itself.

    There is no existing cluster running and this node decided to form a new cluster by joining itself. Other nodes should discover this and join the same.

  5. case object KeepProbing extends JoinDecision with Product with Serializable

    Not ready to join yet, continue discovering contact points and retrieve seed nodes.

Ungrouped