且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何连接两个Erlang节点?

更新时间:2023-02-01 22:32:50

1。使用 -setcookie

1. Use -setcookie.

您也可以使用 -setcookie 在执行erlang时

You can also use -setcookie when erlang execute,

在我的本地计算机的第一个终端中,

In first terminal of my local machine,

hyun@hyun-VirtualBox:~$ erl -sname a -setcookie guitar
Erlang/OTP 18 [erts-7.0] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]

还有我的本地计算机的第二个终端,

And second terminal of my local machine,

hyun@hyun-VirtualBox:~$ erl -sname b -setcookie guitar
Erlang/OTP 18 [erts-7.0] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]

最后,在第一个终端中,

Lastly, in first terminal,

Eshell V7.0  (abort with ^G)
(a@hyun-VirtualBox)1> net_adm:ping('b@hyun-VirtualBox').
pong

2。复制 $ HOME / .erlang.cookie

2. Copy $HOME/.erlang.cookie

您只需复制 $ HOME / .erlang.cookie 到其他远程PC,以共享相同的Cookie值。

you can just copy $HOME/.erlang.cookie to other remote pc for sharing same cookie value.

另外,您还必须考虑安全性。

Also, you have to think about security.

getting_started


运行erlang时,Erlang节点完全不受保护:set_cookie(node( ),nocookie)。有时,这对于通常不联网的系统或仅出于维护目的而运行的系统是合适的。有关安全系统的详细信息,请参阅auth(3)。

An Erlang node is completely unprotected when running erlang:set_cookie(node(), nocookie). This can sometimes be appropriate for systems that are not normally networked, or for systems which are run for maintenance purposes only. Refer to auth(3) for details on the security system.