环境:CentOS 7
安装包:
1、ncurses-5.2.tar.gz (它是一个可以使应用程序直接控制终端屏幕显示的库,在安装rabbitmq-server中会报错缺少这个库)
下载地址:http://ftp.gnu.org/gnu/ncurses/
2、otp_src_R15B01.tar.gz(RabbitMQ是基于Erlang的,所以首先必须配置Erlang环境,otp_src_R15B01是提供该环境的包)
下载地址:http://erlang.org/download/?M=A/otp_src_R15B01.tar.gz
3、simplejson-3.10.0.tar.gz(它是 Python解析JSON的程序库。)
下载地址:http://www.mirrorservice.org/sites/distfiles.macports.org/py-simplejson/
下载地址:https://pypi.python.org/pypi/simplejson/#downloads
4、xmlto-0.0.18.tar.bz2
下载地址:http://freecode.com/projects/xmlto
下载地址:http://download.chinaunix.net/download/0012000/11917.shtml
5、rabbitmq-server-3.5.4.tar.gz
下载地址:http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.4/
# mkdir /ane/rabbit/
# mkdir /ane/rabbit/erlang
# mkdir /ane/rabbit/rabbitmq
# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel ncurses-devel xz
一、安装ncurses-5.2.tar.gz
# cd /ane/rabbit/
# wget http://ftp.gnu.org/gnu/ncurses/ncurses-5.2.tar.gz
# tar -xf ncurses-5.2.tar.gz
# cd ncurses-5.2
# ./configure
# make
# make install
注意:出现错误可重新执行./configure --without-cxx-binding然后重新执行make
二、安装otp_src_R15B01.tar.gz
# cd /ane/rabbit/
# wget http://erlang.org/download/otp_src_R15B01.tar.gz
# tar -xf otp_src_R15B01.tar.gz
# cd otp_src_R15B01
# ./configure --prefix=/ane/rabbit/erlang
# make
# make install
配置环境变量
# vim /etc/profile
ERLANG_HOME=/ane/rabbit/erlang
export PATH=\$PATH:$ERLANG_HOME/bin
export ERLANG_HOME
# source /etc/profile
三、安装simplejson-3.10.0.tar.gz
安装RabbitMQ-Server之前,必须先安装simplejson
# cd /ane/rabbit/
# wget http://www.mirrorservice.org/sites/distfiles.macports.org/py-simplejson/simplejson-3.10.0.tar.gz
# tar -xf simplejson-3.10.0.tar.gz
# cd simplejson-3.10.0
# python setup.py install
安装失败,fatal error: Python.h: No such file or directory
出现No such file or directory的错误,有两种情况,一种是真的没有Python.h这个文件,一种是Python的版本不对,可以进入/usr/include/文件夹下的Python2.x文件夹里查找是否有Python.h这个文件。
查找之后没有这个文件,那么需要安装python-devel这个包
# yum install python-devel
# python setup.py install
四、安装rabbitmq-server-3.5.4.tar.gz
# cd /ane/rabbit/
# yum install xmlto
# tar -xf rabbitmq-server-3.5.4.tar.gz
# cd rabbitmq-server-3.5.4
# make
# TARGET_DIR=/ane/rabbit/rabbitmq SBIN_DIR=/ane/rabbit/rabbitmq/sbin MAN_DIR=/ane/rabbit/rabbitmq/man make install
安装成功
配置环境变量:
# vim /etc/profile
export PATH=$PATH:/ane/rabbit/rabbitmq/sbin
# source /etc/profile
1.找到sbin/目录,默认目录在:/ane/rabbit/rabbitmq/sbin/下
运行程序:
# rabbitmq-server –-detached
停止程序:
# rabbitmqctl stop
2.安装管理插件
# mkdir /etc/rabbitmq
# cd /ane/rabbit/rabbitmq/sbin/
# ./rabbitmq-plugins enable rabbitmq_management
# ./rabbitmq-server --detached
插件相关,开启管理插件:
rabbitmq-plugins enable rabbitmq_management
rabbitmq-plugins enable rabbitmq_management_agent
开启某个插件:rabbitmq-plugins enable xxx
关闭某个插件:rabbitmq-plugins disable xxx
查看插件列表:rabbitmq-plugins list
启动RabbitMQ,输入http://server-name:15672就能够进入到监控页面。默认的用户名和密码是: guest 和 guest
server-name:你指定的linux服务器ip,我的是172.16.100.17
浏览器输入:http://172.16.100.17:15672/ 则说明环境搭建成功
3.创建用户并设置角色:
输入默认用户名和密码:guest ,提示登陆失败
翻看官方的release文档后,得知由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq(该功能是在3.3.0版本引入的)。
解决方法:
进入/ane/rabbit//rabbitmq-server-3.5.4/ebin目录下rabbit.app中找到:loopback_users里的<<”guest”>>删除。
4.可以创建新的admin管理员用户,负责整个MQ的运维:
用户相关:
rabbitmqctl add_user aaa 111111 //新建用户
rabbitmqctl delete_user aaa //删除用户
rabbitmqctl change_password aaa 123456 //更改、创建密码
rabbitmqctl set_user_tags abc administrator //设置标签
//[administrator|monitoring|management]
# cd /ane/rabbit/rabbitmq/sbin/
# ls
rabbitmqctl rabbitmq-defaults rabbitmq-env rabbitmq-plugins rabbitmq-server
# ./rabbitmqctl list_users
# ./rabbitmqctl add_user admin 123456 添加管理员
# ./rabbitmqctl set_user_tags admin administrator
# ./rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
# ./rabbitmqctl list_users
重启rabbitmq,则可以用admin账号登陆管理控制台。
使用管理员admin账户创建一个imove用户,密码:123456 角色为:management