「RabbitMQ」の版間の差分
(翻訳) |
(同期) |
||
(同じ利用者による、間の1版が非表示) | |||
9行目: | 9行目: | ||
== 設定 == |
== 設定 == |
||
− | + | 設定は不要です。{{ic|rabbitmq}} サービスを[[起動]]してください。 |
|
+ | |||
+ | デフォルトの設定ファイルは {{ic|/etc/rabbitmq/rabbitmq-env.conf}} に存在します。設定に関する詳細は [https://www.rabbitmq.com/configure.html 公式ドキュメント] を読んでください。 |
||
+ | |||
+ | === MQTT の有効化 === |
||
+ | |||
+ | RabbitMQ は MQTT サーバーとして使えます。機能させるには以下のようにプラグインをインストールする必要があります: |
||
+ | |||
+ | $ sudo -u rabbitmq rabbitmq-plugins enable rabbitmq_mqtt |
||
+ | |||
+ | インストールしたら RabbitMQ サービスを再起動して変更を適用してください。 |
||
+ | |||
+ | トピックに投稿する前にクライアントを認証する必要があります。RabbitMQ はバーチャルホストによってトラフィックを分離するため、ユーザー名を `'''your_user_name:configured_vhost_name'''` として認証を行ってください。 |
||
+ | |||
+ | === HTTP 管理の有効化 === |
||
+ | |||
+ | HTTP 管理ページを有効にするには: |
||
+ | |||
+ | rabbitmq-plugins enable rabbitmq_management |
||
+ | |||
+ | {{ic|<ip_address_of_host>:15672}} から管理することができます。デフォルトのログイン情報は {{ic|username:guest password:guest}} です。 |
||
+ | |||
+ | リモートマシンから HTTP 管理ページに接続できるようにするには {{ic|/etc/rabbitmq/rabbitmq.config}} を作成・編集: |
||
+ | |||
+ | [{rabbit, [{loopback_users, []}]}]. |
||
== トラブルシューティング == |
== トラブルシューティング == |
||
40行目: | 64行目: | ||
... |
... |
||
</nowiki>}} |
</nowiki>}} |
||
+ | |||
+ | === can't establish TCP connection === |
||
+ | |||
+ | TCP 接続を確立できないというエラーが表示される場合、{{ic|/etc/hosts}} に記述されているホストネームのエントリが {{ic|/etc/rabbitmq/rabbitmq-env.conf}} に書いた IP アドレスと一致しているか確認してください (rabbitmq を特定のインターフェイスにバインドするよう設定した場合によく発生するエラーです)。 |
||
+ | |||
+ | == 参照 == |
||
+ | * [http://erlang.org/doc/man/kernel_app.html erlang kernel parameters] - 高度な設定のカーネルパラメータ |
||
+ | * [https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.config.example rabbitmq.config example] - rabbitmq.config のサンプル (rabbitmq パッケージには含まれていません) |
2017年11月4日 (土) 03:11時点における最新版
RabbitMQ はメッセージを仲介するメッセージングブローカーです。メッセージを送受信したりするための共通プラットフォームとしてメッセージが受け取られるまで安全な場所に保管することができます。
目次
インストール
設定
設定は不要です。rabbitmq
サービスを起動してください。
デフォルトの設定ファイルは /etc/rabbitmq/rabbitmq-env.conf
に存在します。設定に関する詳細は 公式ドキュメント を読んでください。
MQTT の有効化
RabbitMQ は MQTT サーバーとして使えます。機能させるには以下のようにプラグインをインストールする必要があります:
$ sudo -u rabbitmq rabbitmq-plugins enable rabbitmq_mqtt
インストールしたら RabbitMQ サービスを再起動して変更を適用してください。
トピックに投稿する前にクライアントを認証する必要があります。RabbitMQ はバーチャルホストによってトラフィックを分離するため、ユーザー名を `your_user_name:configured_vhost_name` として認証を行ってください。
HTTP 管理の有効化
HTTP 管理ページを有効にするには:
rabbitmq-plugins enable rabbitmq_management
<ip_address_of_host>:15672
から管理することができます。デフォルトのログイン情報は username:guest password:guest
です。
リモートマシンから HTTP 管理ページに接続できるようにするには /etc/rabbitmq/rabbitmq.config
を作成・編集:
[{rabbit, [{loopback_users, []}]}].
トラブルシューティング
ホストネームの変更
rabbitmq をインストールした後にホストネームを変更した場合、起動できなくなります。/etc/rabbitmq/rabbitmq-env.conf
に記述されている NODENAME
が原因です。新しいホストネームにあわせて変更してください:
/etc/rabbitmq/rabbitmq-env.conf
NODENAME=rabbit@my-new-hostname ...
RabbitMQ を最新版にアップグレードしたら起動できない
/etc/rabbitmq/rabbitmq-env.conf
の NODENAME
が間違っているのが原因です。例えば @hostname
が追加されてしまうことがあります。ホストネームの変更のときと同じようにすることで解決できます。
Erlang の cookie エラー
rabbitmq の HOME 設定が間違っていると認証に失敗することがあります:
Authentication failed (rejected by the remote node), please check the Erlang cookie ... home dir: /root
HOME は設定ファイルで設定できます:
/etc/rabbitmq/rabbitmq-env.conf
... HOME=/var/lib/rabbitmq ...
can't establish TCP connection
TCP 接続を確立できないというエラーが表示される場合、/etc/hosts
に記述されているホストネームのエントリが /etc/rabbitmq/rabbitmq-env.conf
に書いた IP アドレスと一致しているか確認してください (rabbitmq を特定のインターフェイスにバインドするよう設定した場合によく発生するエラーです)。
参照
- erlang kernel parameters - 高度な設定のカーネルパラメータ
- rabbitmq.config example - rabbitmq.config のサンプル (rabbitmq パッケージには含まれていません)