RabbitMQのインストールとRabbitMQ管理画面の有効化までのステップのメモ
#Mac OSX
一番簡単
brew install rabbitmq
以上でインストール終了。裏でいろいろ(下で実施するLinuxインストール相当のことを)やってくれてる。
にアクセスすると管理画面が有効になっている。
user:guest password:guest でログインできる
#Linux
Erlangをインストール
sudo yum install erlang
RabbitMQをダウンロード
RPMはこちらから
http://www.rabbitmq.com/install-rpm.html
curl -O http://www.rabbitmq.com/releases/rabbitmq-server/v3.4.4/rabbitmq-server-3.4.4-1.noarch.rpm
RabbitMQをインストール
sudo rpm -ivh rabbitmq-server-3.4.4-1.noarch.rpm
RabbitMQを開始
sudo service rabbitmq-server start
ntsysvとかでOS起動時にBOOTするようにしておく(任意)
管理画面を有効化
sudo rabbitmq-plugins enable rabbitmq_management
ちなみにsudoしないとひどいエラーがでる
rabbitmq-plugins enable rabbitmq_management
[siori@localhost download]$ rabbitmq-plugins enable rabbitmq_management {error_logger,{{2015,3,2},{0,26,59}},"Error when reading ./.erlang.cookie: eacces",[]} {error_logger,{{2015,3,2},{0,26,59}},crash_report,[[{initial_call,{auth,init,['Argument__1']}},{pid,<0.19.0>},{registered_name,[]},{error_info,{exit,{"Error when reading ./.erlang.cookie: eacces",[{auth,init_cookie,0,[{file,"auth.erl"},{line,285}]},{auth,init,1,[{file,"auth.erl"},{line,139}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,304}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]},[{gen_server,init_it,6,[{file,"gen_server.erl"},{line,328}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]}},{ancestors,[net_sup,kernel_sup,<0.10.0>]},{messages,[]},{links,[<0.17.0>]},{dictionary,[]},{trap_exit,true},{status,running},{heap_size,987},{stack_size,27},{reductions,609}],[]]} {error_logger,{{2015,3,2},{0,26,59}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{"Error when reading ./.erlang.cookie: eacces",[{auth,init_cookie,0,[{file,"auth.erl"},{line,285}]},{auth,init,1,[{file,"auth.erl"},{line,139}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,304}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]}},{offender,[{pid,undefined},{name,auth},{mfargs,{auth,start_link,[]}},{restart_type,permanent},{shutdown,2000},{child_type,worker}]}]} {error_logger,{{2015,3,2},{0,26,59}},supervisor_report,[{supervisor,{local,kernel_sup}},{errorContext,start_error},{reason,{shutdown,{failed_to_start_child,auth,{"Error when reading ./.erlang.cookie: eacces",[{auth,init_cookie,0,[{file,"auth.erl"},{line,285}]},{auth,init,1,[{file,"auth.erl"},{line,139}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,304}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]}}}},{offender,[{pid,undefined},{name,net_sup},{mfargs,{erl_distribution,start_link,[]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor}]}]} {error_logger,{{2015,3,2},{0,26,59}},crash_report,[[{initial_call,{application_master,init,['Argument__1','Argument__2','Argument__3','Argument__4']}},{pid,<0.9.0>},{registered_name,[]},{error_info,{exit,{{shutdown,{failed_to_start_child,net_sup,{shutdown,{failed_to_start_child,auth,{"Error when reading ./.erlang.cookie: eacces",[{auth,init_cookie,0,[{file,"auth.erl"},{line,285}]},{auth,init,1,[{file,"auth.erl"},{line,139}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,304}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]}}}}},{kernel,start,[normal,[]]}},[{application_master,init,4,[{file,"application_master.erl"},{line,133}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}]}},{ancestors,[<0.8.0>]},{messages,[{'EXIT',<0.10.0>,normal}]},{links,[<0.8.0>,<0.7.0>]},{dictionary,[]},{trap_exit,true},{status,running},{heap_size,610},{stack_size,27},{reductions,148}],[]]}
管理画面が有効になったか調べる
[siori@localhost download]$ curl http://127.0.0.1:15672/
<html>
<head>
<title>RabbitMQ Management</title>
<script src="js/ejs.min.js" type="text/javascript"></script>
<script src="js/jquery-1.6.4.min.js" type="text/javascript"></script>
<script src="js/jquery.flot.min.js" type="text/javascript"></script>
<script src="js/jquery.flot.time.min.js" type="text/javascript"></script>
<script src="js/sammy-0.6.0.min.js" type="text/javascript"></script>
<script src="js/json2.js" type="text/javascript"></script>
<script src="js/base64.js" type="text/javascript"></script>
<script src="js/global.js" type="text/javascript"></script>
<script src="js/main.js" type="text/javascript"></script>
<script src="js/prefs.js" type="text/javascript"></script>
<script src="js/help.js" type="text/javascript"></script>
<script src="js/formatters.js" type="text/javascript"></script>
<script src="js/charts.js" type="text/javascript"></script>
<link href="css/main.css" rel="stylesheet" type="text/css"/>
<link href="favicon.ico" rel="shortcut icon" type="image/x-icon"/>
<!--[if lte IE 8]>
<script src="js/excanvas.min.js" type="text/javascript"></script>
<link href="css/evil.css" rel="stylesheet" type="text/css"/>
<![endif]-->
</head>
<body>
<div id="outer"></div>
<div id="debug"></div>
<div id="scratch"></div>
</body>
</html>
こんなのが返ってきたらOK
ポートフォワーディングして家のデスクトップから管理画面にアクセスできるようにする
Linuxは基本的にVPSなどリモート経由でアクセスする事が多いと思います。
デスクトップPC(Windows/Mac)から管理画面にアクセスするには ssh -L コマンドでポートフォワーディングを使います。
ここではLinux(VPS)のアドレスを111.111.111.111とし、ローカルのPCの25672ポートにフォワードします。
ssh -L 25672:111.111.111.111:15672 username@111.111.111.111
にアクセスし管理画面が開けたら成功・・・ですが、このままではguest/guestでログインできません(´・ω・`)
リモートからguest/guestで管理画面にアクセスできるようにする
RabbitMQのデフォルト設定ではguestユーザーはリモートPCからアクセスできないようになっています。
iptablesなどでセキュリティ確保していることを前提でguestユーザーをリモートアクセスできるようにします。
cd $RABBITMQ_HOME/etc/rabbitmq/
sudo touch rabbitmq.config
vi rabbitmq.config
[{rabbit, [{loopback_users, []}]}].
サービス再起動
sudo service rabbitmq-server restart
これでリモートからguestでログインできるようになります。
Windows
erlangのサイトからerlangをインストール
Windowsでアクセスした場合はWindowsのバイナリのリンクがでる
こういうのを落としてクリックインストール
RabbitMQをダウンロード
こういうのを落としてクリックインストール!
RabbitMQを有効化
サービスとしてインストールされるのでコントロールパネルの管理→サービスで有効化
管理系のコマンドがある場所まで移動
rabbitMQのコマンドはここらへんにインストールされるのでコマンドプロンプトに入りこのパスまで移動する
cd C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.4\sbin
有効になってるプラグインを見つめる
rabbitmq-plugins.bat list
を実行すると管理系のプラグインが有効になってないのがわかる
C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.4\sbin>rabbitmq-plugins.bat list
Configured: E = explicitly enabled; e = implicitly enabled
| Status: * = running on rabbit@MACHINE
|/
[ ] amqp_client 3.4.4
[ ] cowboy 0.5.0-rmq3.4.4-git4b93c2d
[ ] mochiweb 2.7.0-rmq3.4.4-git680dba8
[ ] rabbitmq_amqp1_0 3.4.4
[ ] rabbitmq_auth_backend_ldap 3.4.4
[ ] rabbitmq_auth_mechanism_ssl 3.4.4
[ ] rabbitmq_consistent_hash_exchange 3.4.4
[ ] rabbitmq_federation 3.4.4
[ ] rabbitmq_federation_management 3.4.4
[ ] rabbitmq_management 3.4.4
[ ] rabbitmq_management_agent 3.4.4
[ ] rabbitmq_management_visualiser 3.4.4
[ ] rabbitmq_mqtt 3.4.4
[ ] rabbitmq_shovel 3.4.4
[ ] rabbitmq_shovel_management 3.4.4
[ ] rabbitmq_stomp 3.4.4
[ ] rabbitmq_test 3.4.4
[ ] rabbitmq_tracing 3.4.4
[ ] rabbitmq_web_dispatch 3.4.4
[ ] rabbitmq_web_stomp 3.4.4
[ ] rabbitmq_web_stomp_examples 3.4.4
[ ] sockjs 0.3.4-rmq3.4.4-git3132eb9
[ ] webmachine 1.10.3-rmq3.4.4-gite9359c7
全部無効になってる(´・ω・`)
管理プラグインを有効化する
C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.4\sbin>rabbitmq-plugins.bat enable rabbitmq _management
以下のようになったらOK
The following plugins have been enabled:
mochiweb
webmachine
rabbitmq_web_dispatch
amqp_client
rabbitmq_management_agent
rabbitmq_management
Applying plugin configuration to rabbit@MACHINE... started 6 plugins.
管理プラグインが有効になったか調べる
C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.4\sbin>rabbitmq-plugins.bat list
Configured: E = explicitly enabled; e = implicitly enabled
| Status: * = running on rabbit@MACHINE
|/
[e*] amqp_client 3.4.4
[ ] cowboy 0.5.0-rmq3.4.4-git4b93c2d
[e*] mochiweb 2.7.0-rmq3.4.4-git680dba8
[ ] rabbitmq_amqp1_0 3.4.4
[ ] rabbitmq_auth_backend_ldap 3.4.4
[ ] rabbitmq_auth_mechanism_ssl 3.4.4
[ ] rabbitmq_consistent_hash_exchange 3.4.4
[ ] rabbitmq_federation 3.4.4
[ ] rabbitmq_federation_management 3.4.4
[E*] rabbitmq_management 3.4.4
[e*] rabbitmq_management_agent 3.4.4
[ ] rabbitmq_management_visualiser 3.4.4
[ ] rabbitmq_mqtt 3.4.4
[ ] rabbitmq_shovel 3.4.4
[ ] rabbitmq_shovel_management 3.4.4
[ ] rabbitmq_stomp 3.4.4
[ ] rabbitmq_test 3.4.4
[ ] rabbitmq_tracing 3.4.4
[e*] rabbitmq_web_dispatch 3.4.4
[ ] rabbitmq_web_stomp 3.4.4
[ ] rabbitmq_web_stomp_examples 3.4.4
[ ] sockjs 0.3.4-rmq3.4.4-git3132eb9
[e*] webmachine 1.10.3-rmq3.4.4-gite9359c7
OK!(`・ω・´)シャキーン
なんとなくビジュアライザーも有効化しておく
C:\Program Files (x86)\RabbitMQ Server\rabbitmq_server-3.4.4\sbin>rabbitmq-plugins.bat enable rabbitmq
_management_visualiser
The following plugins have been enabled:
rabbitmq_management_visualiser
Applying plugin configuration to rabbit@MACHINE... started 1 plugin.
以上