A window to your nodes
Before we devise a way to look at and interact with our remote application, let's analyze how Elixir, given its Erlang heritage, works in a distributed environment. When you run an IEx shell or the ElixirDrip release, an Erlang VM starts. Each VM is called a node, and you can have many nodes running on the same computer.
To start a node, you define its name
and magic cookie
, and the node then tries to register itself on the local Erlang Port Mapper Daemon (EPMD). This EPMD is a kind of name server that by default runs on port 4369
and registers which nodes are running in each host.
Note
The cookie
is indeed described as magic; check out the Erlang documentation at http://erlang.org/doc/reference_manual/distributed.html. Whoever knows the cookie
value is able to connect to the nodes using it, no questions asked, so it's really important it is long and stored in a secure way. By default, Erlang forms clusters of nodes in clear, because it is assumed the cluster runs on...