安装之前,把一些依赖的包先装好
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
rabbitMQ依赖于Erlang,安装rabbitMQ之前先要安装Erlang,安装rabbitmq之前最好查一下,rabbitMQ的版本对erlang版本的要求,版本要匹配,要不然安装的时候会有问题。
1.首先从官网(http://www.erlang.org)下载Erlang,我选择的是otp_src_18.3.tar.gz
2.将下载的文件进行解压
$ tar -xzvf otp_src_18.3.tar.gz
3.进行安装
$ cd otp_src_18.3/
$ ./configure --prefix=/opt/erlang #编译配置erlang的安装路径,便于自己以后查找
注:执行./configure的时候,可能会报错,一般是还有依赖的包没有装,直接用yum命令装好依赖的包就行了
$ make&make install
4.验证安装。安装完成后,执行erl命令,若出现如下信息,表示安装成功
$ cd /opt/erlang/sbin
$ erl
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V7.3 (abort with ^G)
rabbitMQ的安装
1.从官网(http://www.rabbitmq.com)下载rabbitMQ,我选择的是3.6.1版本
$ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz
或者直接在网页上下载也行
2.解压安装包
$ xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
$ tar -xvf rabbitmq-server-generic-unix-3.6.1.tar
配置rabbitmq环境变量,vi /etc/profile文件,增加下面的环境变量:
#set rabbitmq environment
export PATH=$PATH:/opt/rabbitmq/sbin
$ source /etc/profile使得文件生效
3.RabbitMQ服务启动关闭
$ cd sbin
$ ./rabbitmq-server -detached
#查看服务状态
$ ./rabbitmqctl status
Status of node rabbit@localhost ...
[{pid,14953},
{running_applications,[{rabbit,"RabbitMQ","3.6.1"},
{ranch,"Socket acceptor pool for TCP protocols.",
"1.2.1"},
{os_mon,"CPO CXC 138 46","2.4"},
{xmerl,"XML parser","1.3.10"},
{mnesia,"MNESIA CXC 138 12","4.13.3"},
{rabbit_common,[],"3.6.1"},
{sasl,"SASL CXC 138 11","2.7"},
{stdlib,"ERTS CXC 138 10","2.8"},
{kernel,"ERTS CXC 138 10","4.2"}]},
{os,{unix,linux}},
{erlang_version,"Erlang/OTP 18 [erts-7.3] [source] [64-bit] [async-threads:64] [hipe] [kernel-poll:true]\n"},
{memory,[{total,41149512},
{connection_readers,0},
{connection_writers,0},
{connection_channels,0},
{connection_other,0},
{queue_procs,2680},
{queue_slave_procs,0},
{plugins,0},
{other_proc,18788128},
{mnesia,57624},
{mgmt_db,0},
{msg_index,34656},
{other_ets,801632},
{binary,21776},
{code,17293380},
{atom,662409},
{other_system,3487227}]},
{alarms,[]},
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
{vm_memory_high_watermark,0.4},
{vm_memory_limit,414767513},
{disk_free_limit,50000000},
{disk_free,16197820416},
{file_descriptors,[{total_limit,924},
{total_used,2},
{sockets_limit,829},
{sockets_used,0}]},
{processes,[{limit,1048576},{used,137}]},
{run_queue,0},
{uptime,18},
{kernel,{net_ticktime,60}}]
#关闭服务
$ ./rabbitmqctl stop
Stopping and halting node rabbit@localhost ...
4.配置网页插件
rabbitMQ有一套完善的网页版插件,可以清晰的看到rabbitMQ的运行状态以及各个参数的情况,安装网页版插件,能很方便的对rabbitMQ进行管理
#创建目录
$ mkdir /etc/rabbitmq
#启用插件
$ ./rabbitmq-plugins enable rabbitmq_management
如果是本机,此时可以通过http://localhost:15672 ,就可以打开页面版管理界面
如果你跟我一样,是在虚拟机里面安装的,此时你会发现通过浏览器访问http://远程ip:15672,无法打开网页,是怎么回事?
原来,rabbitMQ网页版插件默认是不允许远程访问的,需要开放远程访问的权限
5.开放远程访问权限
#增加一个用户
$ rabbitmqctl add_user admin admin #新增一个用户admin,密码为admin
$ rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" #给admin用户授权
$ rabbitmqctl set_user_tags admin administrator #修改admin用户的角色
此时,访问http://远程ip:15672,试一下,是不是可以正常访问啦!
输入用户名 admin 密码 admin,你就可以进入rabbitMQ的网页版管理界面了!!!