RabbitMQ安装指南

RabbitMQ 安装

这里首先介绍RabbitMQ 的安装过程,RabbitMQ 是由Erlang 语言编写的, 也正因如此, 在安装Rabb itMQ 之前需要安装Erlang 。建议采用较新版的Erlang ,这样可以获得较多更新和改进,可以到官网( http://www.erlang.orgldownloads ]下载。,我将以19.3的版本展开叙述:

Erlang安装

  • RabbitMQ多安装在Linux操作系统上,第一步,解压安装包,并配置安装目录,这里我们预备安装 到/opt/erlang 目录下:

[root@insighted]# tar zxvf otp_src_19.3.tar.gz
[root@insighted]# cd otp src 19.3
[root@insighted otp src_19.3]# ./configure-prefix=/opt/er1ang
  • 第二步,如果出现类似关键报错信息: No curses library functions found 。那么此时需要安装 ncurses ,安装步骤(遇到提示输入y 后直接回车即可]如下:

[root@insighted otp_src_19.3]# yum install ncurses-devel
  • 第三步,安装Erlang:

[root@insighted otp_src_19.3]# make
[root@insighted otp_src_19.3]# make install

如果在安装的过程中出现类似"No * found" 的提示,可根据提示信息安装相应的包, 之后再执行第二或者第三步,直到提示安装完毕为止。

  • 第四步,修改/etc/profile 配置文件,添加下面的环境变量:

ERLANG HOME=/opt/erlang
export PATH=$PATH:$ERLANG HOME/bin
export ERLANG_HOME
  • 最后执行如下命令让配置文件生效:

[root@insighted otp_src_19.3] # source /etc/profile

可以输入erl 命令来验证Erlang 是否安装成功,如果出现类似以下的提示即表示安装成功:

[root@insighted]# erl
Erlang/OTP 19 [erts-8.1][source] [64-bit][smp:4 : 4] [async-threads : 10][hipe]
[kernel-poll:false]
Eshell V8.1 (abort with ^G )

RabbitMQ 的安装

RabbitMQ 的安装比Erlang 的安装要简单,直接将下载的安装包解压到相应的目录下即可, 官网下载地址: http://www.rabbitmq.comlreleases/rabbitmq-server/ 。我将以3.612为例描述: 将RabbitMQ 安装到与Erlang 同一个目录(/ opt) 下面:

[root@insighted]# tar zvxf rabbitmq-server- generic-unix-3.6.10 . tar . gzc lopt
[root@insighted ]# cd lopt
[root@insighted]# mv rabbitmq_server-3.6.10 rabbitmq

同样修改/etc/profile 文件, 添加下面的环境变量:

export PATH=$PATH : /opt/rabbitmq/sbin
export RABBITMQ HOME=/opt/rabbitmq

之后执行source/etc/profile 命令让配置文件生效。

在修改了/etc/profile 配置文件之后,可以任意打开一个Shell 窗口,输入如下命令以 运行RabbitMQ 服务: rabbitmq-server -detached 在rabbitmq -s erver 命令后面添加一个"-detached" 参数是为了能够让RabbitMQ 服务以守护进程的方式在后台运行,这样就不会因为当前Shell 窗口的关闭而影响服务。 运行rabbitmqctl status 命令查看RabbitMQ 是否正常启动,示例如下:

[root@insighted]# rabbitmqctl status
Status of node rabbit@insighted
[{pid, 6458} ,
{running_applications ,
[{rabbitmq_management , "RabbitMQ Management Console " , " 3 . 6 . 10 " },
​
{rabbitmq_management agent , "RabbitMQ Management Agent" , "3 . 6 .1 0 " },
{rabbitmq_web_dispatch, "RabbitMQ Web Dispatcher " , " 3 . 6 . 10 "} ,
{rabbit , "RabbitMQ " , " 3.6 . 10 "} ,
{mnesia, "MNESIA CXC 138 12" , " 4 . 14 . 1 " },
{amqp c1ient , "RabbitMQ AMQP Client" , " 3.6.10 " },
{os mon , "CPO CXC 138 46 " , " 2 . 4.1"} ,
{rabbit common ,
"Modules shared by rabbitmq - server and rabbitmq-erlang-client " ,
" 3.6 . 10 " },
{compiler, "ERTS CXC 138 10" , " 7 . 0 . 2 " },
{inets , " INETS CXC 138 49 " , " 6 . 3.3 " },
{cowboy, " Small , fast , modular HTTP server ." ," 1. 0.4"} ,
{ranch, " Socket acceptor pool for TCP protocols ." , " 1.3 . 0 " },
{ssl , "Erlang/OTP SSL application" , " 8.0.2 " } ,
{public key , " Public key infrastructure " , " 1 . 2 " },
{cowlib, " Support library for manipulating Web protocols." , "1 . 0 . 2 " },
{crypto, " CRYPTO" , " 3.7 . 1 " },
{syntax tools , "Syntax tools " , " 2 . 1 " },
{asn1 , "The Erlang ASN1 compi1er version 4.0.4" , "4.0.4"} ,
{xmerl , "XML parser " , " 1 . 3.12 " },
{sasl , "SASL CXC 138 11 " , " 3 . 0.1 " },
{stdlib, "ERTS CXC 138 10 " , " 3 . 1 " },
{kernel , "ERTS CXC 138 10 " , " 5 . 1 " }]} ,
{os , {unix, linux}} ,
{er1ang version ,
"Erlang/OTP 19 [erts-8 . 1][source] [64-bit][smp:4:4]
[async-threads:64][hipe] [kernel- po11 : true]\n"} ,
{memory ,
[{total , 61061688} ,
{connection readers , O} ,
{connection writers , O} ,
{connection channels , O} ,
{connection other , 2832} ,
{queue_procs , 2832} ,
{queue slave procs , O} ,
{plugins , 487104} ,
{other proc , 21896528} ,
{mnesia, 60800} ,
{metrics , 193616} ,
{mgmt db, 137720} ,
{msg_index, 43392} ,
{other ets , 2485240} ,
{binary, 132984} ,
{code , 24661210} ,
{atom, 1033401} ,
{other_system, 10114813}] } ,
{alarms , []} ,
{listeners , [{clustering, 25672 ,"::"}, {amqp, 5672 ,"::" } , {http, 15672 ,": : " }]} ,
{vm memory high watermark, 0.4} ,{vm memory l imit , 3301929779} ,
{disk free limit , 50000000} ,
{disk free , 30244855808} ,
{file descriptors ,
[{total limit , 924} , {total used, 2} , {sockets limit , 829} , {sockets used, O}]} ,
{processes , [ {limit , 1048576} , {used, 323}]} ,
{run queue , O} ,
{uptime , ll} ,
{kernel , {net ticktime , 60}}]
​

如果RabbitMQ 正常启动, 会输出如上所示的信息。当然也可以通过rabbitmqctl cluster_status 命令来查看集群信息,目前只有一个RabbitMQ 服务节点,可以看作单节点 的集群:

[root@insighted]# rabbitmqctl cluster_status
Cluster status of node rabbit@insighted
[{nodes , [{disc, [rabbit@insighted]}]) ,
{running nodes , [rabbit@insighted]) ,
{cluster name , << " rabbit@insighted" >>) ,
{partitions , [] } ,
{alarms, [{rabbit@insighted, []}])]

 

Windows下安装RabbitMQ

 

关于RabbitMQ在windows 下的安装和基本设置步骤:准备好安装包、安装并配置环境变量!具体可参考别的博客。

1.安装对应版本的Erlang 并设置环境变量

2.安装RabbitMQ

3.设置环境变量

4.安装插件rabbitmq_management

5.有了插件rabbitmq_management很多事情就可以在这个可视化插件中来完成了。

 

 

 

 

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页