Cluster.Strategy.Kubernetes.DNS (libcluster v3.3.0) View Source
This clustering strategy works by loading all your Erlang nodes (within Pods) in the current Kubernetes namespace. It will fetch the addresses of all pods under a shared headless service and attempt to connect. It will continually monitor and update its connections every 5s.
It assumes that all Erlang nodes were launched under a base name, are using longnames, and are unique
based on their FQDN, rather than the base hostname. In other words, in the following
basename would be the value configured through
An example configuration is below:
config :libcluster, topologies: [ k8s_example: [ strategy: Elixir.Cluster.Strategy.Kubernetes.DNS, config: [ service: "myapp-headless", application_name: "myapp", polling_interval: 10_000]]]