Остановите и уничтожьте такие процессы, как epmd, erl, beam.
Затем запустите ejabberd с «ejabberdctl live», который будет держать оболочку erlang открытой, чтобы вы могли видеть сообщения журнала в реальном времени, включая имя узла erlang:
...
13:21:22.662 [info] ejabberd 19.02.52 is started in the node ejabberd@localhost in 7.07s
13:21:22.667 [info] Start accepting TCP connections at 0.0.0.0:5444 for ejabberd_http
13:21:22.667 [info] Application ejabberd started on node ejabberd@localhost
Вы можете проверить, знает ли «epmd» об этом узле:
$ epmd -names
epmd: up and running on port 4369 with data:
name ejabberd at port 33519
Тогда давайте посмотрим, может ли ejabberdctl соединиться с этим узлом:
$ ejabberdctl help | grep "node name:"
--node nodename ejabberd node name: ejabberd@localhost
И наконец:
$ ejabberdctl status
The node ejabberd@localhost is started with status: started
ejabberd 19.02.52 is running in that node
Полагаю, вы еще ничего не редактировали в ejabberdctl.cfg, в частности, ERLANG_NODE. Но если вы это сделали, я рекомендую переустановить ejabberd, чтобы убедиться, что у вас есть конфигурация по умолчанию, а затем повторите эти шаги. Как только ejabberd работает отлично, вы можете начать изменять файлы конфигурации (ejabberd.yml и ejabberdctl.cfg) в соответствии с вашими реальными требованиями (кластеризация и т. Д.).
Иногда, если у вас есть проблемы с настройкой кластеризации, вы можете найти некоторые идеи для устранения проблемы в
https://ejabberd.im/interconnect-erl-nodes/index.html