epmd
Erlang Port Mapper Daemon is a
standalone daemon that keeps track of all hosts involved in distributed Erlang
computations. It is a fundamental piece when talking with other Erlang nodes.
Usually the daemon is started automatically when run erl
and there is no epmd
instance present.
The recipe epmd is target to run epmd started by systemd or systemv where additional control and configuration can be passed to epmd daemon (see the epmd manual pages for additional options). The purpose of the recipe is address some edge cases where you don't want to ship a full ERTS or you have additional patches for the epmd daemon.
Follow the quickstart guide to get a basic working environment and then:
- Add
epmd
package toIMAGE_INSTAL
in conf/local.conf
echo 'IMAGE_INSTALL:append = " epmd"' >> conf/local.conf
- Now its time to build the image:
bitbake core-image-minimal
- And check the results with qemu:
runqemu core-image-minimal
Check if epmd
is up and running:
ps | grep epmd
Then, start erl with distributed enabled like this:
erl -sname test
Check again using ps
and there is still only one epmd daemon running. As the
final check, lets ask epmd if its know any erlang node:
/usr/sbin/epmd -names
epmd: up and running on port 4369 with data:
name test at port 46019