0

ラップトップに RabbitMQ をインストールしました。サーバー ( rabbitmq-server -detached)を起動してから、rabbitmqctl start_app問題なく動作します (私の Java アプリケーションは接続してメッセージを送受信できます)。

$ rabbitmqctl start_app
Starting node 'rabbit@11-020-7206' ...

しかし、ネットワークが異なる別の場所に行くと、ラップトップは別のホスト名を取得し、それで何もできなくなります。停止または開始しようとすると、ノードがダウンしているというエラーが表示されます。

$ rabbitmqctl stop
Stopping and halting node 'rabbit@Mahdis-MacBook-Pro' ...
Error: unable to connect to node 'rabbit@Mahdis-MacBook-Pro': nodedown

DIAGNOSTICS
===========

attempted to contact: ['rabbit@Mahdis-MacBook-Pro']

rabbit@Mahdis-MacBook-Pro:
  * connected to epmd (port 4369) on Mahdis-MacBook-Pro
  * epmd reports node 'rabbit' running on port 25672
  * TCP connection succeeded but Erlang distribution failed
  * suggestion: hostname mismatch?
  * suggestion: is the cookie set correctly?
  * suggestion: is the Erlang distribution using TLS?

current node details:
- node name: 'rabbitmq-cli-14528@Mahdis-MacBook-Pro'
- home dir: /Users/mahdi
- cookie hash: HBqyY/jYPLAyrH1wt3dTWQ==

サーバーを完全に起動しようとすると、ノードが実行されていると表示されます。

$ rabbitmq-server -detached
Warning: PID file not written; -detached was passed.
ERROR: node with name "rabbit" already running on "Mahdis-MacBook-Pro"

この混乱を避けるためにホスト名を修正するにはどうすればよいですか?

4

2 に答える 2

0

としてrabbitmqノードを起動し11-020-7206、ホスト名(ネットワークに関連する)を次のように変更しました Mahdis-MacBook-Pro

通常、常に同じhostnameものを使用する必要がありますが、それが不可能な場合は使用できますrabbitmqctl -n node_name

ここに例があります:

gabrielesMacBookPro:sbin gabriele$ ./rabbitmqctl status
Status of node rabbit@gabrielesMacBookPro ...
[{pid,59273},
 {running_applications,
     [{rabbitmq_management,"RabbitMQ Management Console","3.5.5"},
     ...

ここでホスト名を変更します。

gabrielesMacBookPro:sbin gabriele$ sudo hostname temp_hostname
Password:
gabrielesMacBookPro:sbin gabriele$ ./rabbitmqctl status
Status of node rabbit@temp_hostname ...
Error: unable to connect to node rabbit@temp_hostname: nodedown

DIAGNOSTICS
===========

attempted to contact: [rabbit@temp_hostname]

このようにして、実行中のノードに接続できます。

gabrielesMacBookPro:sbin gabriele$ ./rabbitmqctl -n rabbit@gabrielesMacBookPro status
Status of node rabbit@gabrielesMacBookPro ...
[{pid,59273},
 {running_applications,
     [{rabbitmq_management,"RabbitMQ Management Console","3.5.5"},
      {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.5.5"},

それが役に立てば幸い

于 2015-09-30T06:41:31.010 に答える
0

@Gas の提案に触発されて、回避策を見つけました。ホスト名をラップトップを 2 番目の場所に移動する前の状態に戻すと、rabbitmq (およびそのツール) が再び機能し始めます。

$ sudo hostname 11-020-7206
$ rabbitmqctl status
Status of node 'rabbit@11-020-7206' ...
[{pid,16230},
 {running_applications,[{rabbit,"RabbitMQ","3.5.4"},
....
于 2015-09-30T20:42:55.207 に答える