Запуск узла в emqtt и создание кластера
Я новичок в emqtt и erlang. Используя документацию, приведенную в emqtt.io, я настроил emqtt на своем компьютере и хотел создать кластер. Я следовал инструкциям ниже, чтобы создать узел
erl -name node1@127.0.0.1
erl -name node2@127.0.0.1
И для соединения этих узлов я использовал команду ниже.
(node1@127.0.0.1)1> net_kernel:connect_node('node2@127.0.0.1')
Я не получаю никакого ответа (истина или ложь) после выполнения этой команды.
Также я попробовал следующую команду
./bin/emqttd_ctl cluster emqttd@192.168.0.10
но получил сообщение об ошибке
Failed to join the cluster: {node_down,'node1@127.0.0.1'}
Когда я нажимаю на URL localhost:8080/status, я получаю следующее сообщение
Node emq@127.0.0.1 is started
emqttd is running
Но я не мог получить какие-либо подробности о кластере.
Следую ли я правильным шагам? Нужна помощь по созданию кластера в emqtt.
Заранее спасибо!!
1 ответ
Вам нужно, чтобы два узла emqx работали на разных машинах, так как порты могут конфликтовать друг с другом на одной машине.
И имена узлов НЕ ДОЛЖНЫ использовать IP-адрес обратной петли. 127.0.0.1
Такие как node1@127.0.0.1
.
Для каждого узла, созданного на машине, инициируется отдельный процесс, и при создании многих бодов в конечном итоге будет использовано больше всего памяти, что приведет к ситуации, когда вы не сможете присоединиться ни к одному из узлов в кластере. Следовательно, чтобы присоединиться, мы должны остановить узлы, которые не используются, с помощью команды stop./emqttd