4

私はリモート マシンを使用しています。そのマシンには実行中の Erlang VM ノードがあります。経由で Erlang VM ノードに接続しようとしてiexいますが、エラーが返されます:

$ iex --name testing@127.0.0.1 --remsh myapp@127.0.0.1 --setcookie NMFJGSU0FwvGKlrqMuGfY1I6LtgSz1Rn2PLiDnqMS54
Erlang/OTP 18 [erts-7.3.1] [source] [64-bit] [async-threads:10] [kernel-poll:false]

Could not contact remote node myapp@127.0.0.1, reason: :nodedown. Aborting...
$

epmd -namesErlang VM ノードが実行中であることを報告します。

$ epmd -names
epmd: up and running on port 4369 with data:
name myapp at port 45671
$ 

vm.argsデプロイされたアプリの内容は次のとおりです。

-name myapp@127.0.0.1
-setcookie NMFJGSU0FwvGKlrqMuGfY1I6LtgSz1Rn2PLiDnqMS54=
-smp auto

質問:何が間違っていますか?

4

1 に答える 1

8

iexにあるものと同じ Cookie を に渡す必要がありますvm.args

iex --name testing@127.0.0.1 --remsh myapp@127.0.0.1 --cookie NMFJGSU0FwvGKlrqMuGfY1I6LtgSz1Rn2PLiDnqMS54=

Cookie が正しくない場合、:nodedownエラーが発生します。

シェル #1 から:

$ iex --cookie foo --name foo@127.0.0.1

シェル #2 から:

$ iex --name bar@localhost --remsh foo@127.0.0.1
Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

Could not contact remote node foo@127.0.0.1, reason: :nodedown. Aborting...
$ iex --name bar@localhost --remsh foo@127.0.0.1 --cookie foo
Erlang/OTP 19 [erts-8.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

Interactive Elixir (1.3.4) - press Ctrl+C to exit (type h() ENTER for help)
iex(foo@127.0.0.1)1>
于 2016-11-04T16:29:47.570 に答える