【发布时间】:2011-02-22 14:24:15
【问题描述】:
我想动态地模拟erl -sname example -hidden 的行为。如何使节点在集群中不可见?
请参阅@Mwt at @Yasir Arsanukaev 的 cmets,以进一步了解我正在尝试做的事情。
【问题讨论】:
标签: networking configuration erlang cluster-computing erlang-otp
我想动态地模拟erl -sname example -hidden 的行为。如何使节点在集群中不可见?
请参阅@Mwt at @Yasir Arsanukaev 的 cmets,以进一步了解我正在尝试做的事情。
【问题讨论】:
标签: networking configuration erlang cluster-computing erlang-otp
试试erlang:disconnect_node/1:
(bar@dt)1> nodes().
[]
(bar@dt)2> net_adm:ping('foo@dt').
pong
(bar@dt)3> nodes().
[foo@dt]
(bar@dt)4> erlang:disconnect_node('foo@dt').
true
(bar@dt)5> nodes().
[]
或者如果你想让一个节点从其他节点的nodes()中删除自己:
(bar@dt)1> nodes().
[foo@dt]
(bar@dt)2> rpc:eval_everywhere(erlang, disconnect_node, [node()]).
abcast
(bar@dt)3> nodes().
[]
如果节点以密钥 -hidden 启动:
(bar@dt)1> nodes(hidden).
[foo@dt]
(bar@dt)2> rpc:eval_everywhere(nodes(hidden), erlang, disconnect_node, [node()]).
abcast
(bar@dt)3> nodes(hidden).
[]
【讨论】: