RabbitMQ1.8.3安装文档

来源:互联网 发布:金山终端防护优化系统 编辑:程序博客网 时间:2024/06/06 13:56

RabbitMQ1.8.3安装文档

RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发。RabbitMQ据说具有良好的性能和时效性,同时还能够非常好的支持集群和负载部署,非常适合在较大规模的分布式系统中使用,具体特性还在验证中,待检验。由于项目需要,安装并配置了RabbitMQ,服务器操作系统是[CentOS7][6]。具体步骤如下:

安装依赖文件:

yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto

1.Erlang安装配置
下载安装包,地址

http://www.erlang.org/downloads

我选择的是otp_src_18.3.tar.gz。然后解压文件:

[root@iZ25e3bt9a6Z rabbitmq]# tar -xf otp_src_18.3.tar.gz
[root@iZ25e3bt9a6Z rabbitmq]# cd otp_src_18.3/

配置安装路径编译代码:

[root@iZ25e3bt9a6Z otp_src_18.3]# ./configure –prefix=/opt/erlang

执行编译结果:

[root@iZ25e3bt9a6Z otp_src_18.3]# make && make install

然后在配置Erlang环境变量,vi /etc/profile文件,增加下面的环境变量:

#set erlang environmentexport PATH=$PATH:/opt/erlang/bin

source /etc/profile使得文件生效
完成后进入/opt/erlang查看执行结果

[root@iZ25e3bt9a6Z rabbitmq]# cd /opt/erlang/
[root@iZ25e3bt9a6Z erlang]# erl

Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]Eshell V7.3  (abort with ^G)1>

当出现以上信息时表示安装完成。然后输入’halt().’退出即可。
在安装Erlang过程中,可能会遇到以下问题,一般都是因为系统中缺少相应的包引起的,缺少什么包直接yum安装即可。


2.下载安装RabbitMq

[root@iZ25e3bt9a6Z rabbitmq]# weget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz
  
解压文件

[root@iZ25e3bt9a6Z rabbitmq]# xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz[root@iZ25e3bt9a6Z rabbitmq]# tar -xvf rabbitmq-server-generic-unix-3.6.1.tar  -C /opt

解压后进入文件夹/opt发现多了个文件夹rabbitmq-server-generic-unix-3.6.1 ,重命名为rabbitmq以便记忆。
然后在配置rabbitmq环境变量,vi /etc/profile文件,增加下面的环境变量:

#set rabbitmq environmentexport PATH=$PATH:/opt/rabbitmq/sbin

source /etc/profile使得文件生效

3.RabbitMQ服务启动关闭

以上就已经完成了RabbitMq的安装,怎么启动服务呢?
启动服务:

[root@iZ25e3bt9a6Z rabbitmq]# cd sbin/[root@iZ25e3bt9a6Z sbin]# ./rabbitmq-server -detached

查看服务状态:

[root@iZ25e3bt9a6Z sbin]# ./rabbitmqctl statusStatus of node rabbit@iZ25e3bt9a6Z ...[{pid,11849}, {running_applications,    [{rabbitmq_management,"RabbitMQ Management Console","3.6.1"},      {rabbitmq_management_agent,"RabbitMQ Management Agent","3.6.1"},      {rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.6.1"},      {webmachine,"webmachine","1.10.3"},      {amqp_client,"RabbitMQ AMQP Client","3.6.1"},      {mochiweb,"MochiMedia Web Server","2.13.0"},      {syntax_tools,"Syntax tools","1.7"},      {ssl,"Erlang/OTP SSL application","7.3"},      {public_key,"Public key infrastructure","1.1.1"},      {asn1,"The Erlang ASN1 compiler version 4.0.2","4.0.2"},      {crypto,"CRYPTO","3.6.3"},      {compiler,"ERTS  CXC 138 10","6.0.3"},      {inets,"INETS  CXC 138 49","6.2"},      {rabbit,"RabbitMQ","3.6.1"},      {mnesia,"MNESIA  CXC 138 12","4.13.3"},      {rabbit_common,[],"3.6.1"},      {xmerl,"XML parser","1.3.10"},      {os_mon,"CPO  CXC 138 46","2.4"},      {ranch,"Socket acceptor pool for TCP protocols.","1.2.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] [smp:8:8] [async-threads:64] [hipe] [kernel-poll:true]\n"}, {memory,    [{total,64111264},      {connection_readers,0},      {connection_writers,0},      {connection_channels,0},      {connection_other,2808},      {queue_procs,2808},      {queue_slave_procs,0},      {plugins,367288},      {other_proc,19041296},      {mnesia,61720},      {mgmt_db,158696},      {msg_index,47120},      {other_ets,1372440},      {binary,128216},      {code,27368230},      {atom,992409},      {other_system,14568233}]}, {alarms,[]}, {listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]}, {vm_memory_high_watermark,0.4}, {vm_memory_limit,6556241100}, {disk_free_limit,50000000}, {disk_free,37431123968}, {file_descriptors,    [{total_limit,65435},      {total_used,2},      {sockets_limit,58889},      {sockets_used,0}]}, {processes,[{limit,1048576},{used,204}]}, {run_queue,0}, {uptime,412681}, {kernel,{net_ticktime,60}}]

关闭服务:

[root@iZ25e3bt9a6Z sbin]# ./rabbitmqctl stopStopping and halting node rabbit@iZ25e3bt9a6Z ...


  1. 配置网页插件
    首先创建目录,否则可能报错:

mkdir /etc/rabbitmq
然后启用插件:

1、abbitmq-plugins enable rabbitmq_management2、rabbitmq-plugins enable mochiweb webmachine 3、rabbitmq_web_dispatch amqp_client 4、rabbitmq_management_agent 5、rabbitmq_management

然后重启rabbitMQ服务。
  配置linux 端口 15672 网页管理 5672 AMQP端口
  然后访问http://localhost:15672即可
  默认用户guest 密码guest
这里写图片描述
5. 远程访问配置
  默认网页是不允许访问的,需要增加一个用户修改一下权限,代码如下:

  添加用户:rabbitmqctl add_user hxb hxb  添加权限:rabbitmqctl set_permissions -p "/" hxb ".*" ".*" ".*"      修改用户角色rabbitmqctl set_user_tags hxb administrator

  然后就可以远程访问了,然后可直接配置用户权限等信息。
  
  6. rabbitmq常用命令
  add_user
  delete_user
  change_password
  list_users
  add_vhost
  delete_vhost
  list_vhostsset_permissions [-p ]
  clear_permissions [-p ]
  list_permissions [-p ]
  list_user_permissions
  list_queues [-p ] [ …]
  list_exchanges [-p ] [ …]
  list_bindings [-p ]
  list_connections [ …]

0 0