1. 安装erlang:
下载所需的源码:wget http://erlang.org/download/otp_src_R13B04.tar.gz wget http://erlang.org/download/otp_src_R13B04.tar.gz
然后./configure && make && make install
注:在configure之后发现有以下提示信息:
(1) odbc : ODBC library – link check failed
需要yum -y install unixODBC unixODBC-devel
(2)“ wxWidgets not found, wx will NOT be usable”及“fop is missing.”这两个可以忽略。
安装完毕,在命令行键入erl,将会出现如下命令行:
Erlang R13B04 (erts-5.7.5) [source] [smp:2:2] [rq:2][async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.7.5
(abort with ^G)
1>
2.安装RabbitMQ
RabbitMQ的安装有很多版本,我们使用Generic Unix版本。
在http://www.rabbitmq.com/install-generic-unix.html中下载http://www.rabbitmq.com/releases/rabbitmq-server/v3.4.3/rabbitmq-server-generic-unix-3.4.3.tar.gz并解压到Linux中的任意目录(/mysoftware/rabbitmq_server-3.4.3/),解压后即可使用。
3.RabbitMQ开启与关闭
进入rabbitmq安装目录下的sbin目录,分别执行以下命令:
开启RabbitMQ服务:.
./rabbitmq-server -detached (-detached为可选参数,表示后台开启)
开启RabbitMQ管理工具,通过浏览器访问http://localhost:15672使用:.
./rabbitmq-plugins enable rabbitmq_management (3.3.1版本以后默认不允许用guest远程管理。可以手动创建管理员帐号来远程管理,具体参见4.4)
关闭RabbitMQ服务:
./rabbitmqctl stop
4.设置RabbitMQ管理权限
Rabbitmq服务器的主要通过rabbitmqctl和rabbimq-plugins两个工具来管理,以下是一些常用功能。
1). 服务器启动与关闭
启动: rabbitmq-server –detached
关闭:rabbitmqctl stop
若单机有多个实例,则在rabbitmqctlh后加–n 指定名称
2). 插件管理
开启某个插件:rabbitmq-pluginsenable xxx
关闭某个插件:rabbitmq-pluginsdisablexxx
注意:重启服务器后生效。
3).virtual_host管理
新建virtual_host: rabbitmqctladd_vhost xxx
撤销virtual_host:rabbitmqctl delete_vhost xxx
4). 用户管理
新建用户:rabbitmqctl add_user xxx pwd
删除用户: rabbitmqctl delete_user xxx
改密码: rabbimqctl change_password {username} {newpassword}
设置用户角色:rabbitmqctl set_user_tags {username} {tag ...}
Tag可以为 administrator,monitoring, management
5). 权限管理
权限设置:set_permissions [-pvhostpath] {user} {conf} {write} {read}
Vhostpath
Vhost路径
user
用户名
Conf
一个正则表达式match哪些配置资源能够被该用户访问。
Write
一个正则表达式match哪些配置资源能够被该用户读。
Read
一个正则表达式match哪些配置资源能够被该用户访问。
6). 获取服务器状态信息
服务器状态:rabbitmqctl status
队列信息:rabbitmqctl list_queues[-p vhostpath] [queueinfoitem ...]
Queueinfoitem可以为:name,durable,auto_delete,arguments,messages_ready,
messages_unacknowledged,messages,consumers,memory
Exchange信息:rabbitmqctllist_exchanges[-p vhostpath] [exchangeinfoitem ...]
Exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments.
Binding信息:rabbitmqctllist_bindings[-p vhostpath] [bindinginfoitem ...]
Bindinginfoitem有:source_name,source_kind,destination_name,destination_kind,routing_key,arguments
Connection信息:rabbitmqctllist_connections [connectioninfoitem ...]
Connectioninfoitem有:recv_oct,recv_cnt,send_oct,send_cnt,send_pend等。
Channel信息:rabbitmqctl list_channels[channelinfoitem ...]
Channelinfoitem有consumer_count,messages_unacknowledged,messages_uncommitted,acks_uncommitted,messages_unconfirmed,prefetch_count,client_flow_blocked