记一次在Linux centos7上安装rabbit 的过程, 需要注意rabbit和erlang之间的版本要求。
首先Rabbit依赖erlang,高版本的Rabbbit 对erlang有要求,下载比较新的erlang就没问题了。
本次安装的rabbit是 3.6.9
本次安装说明:rabbitmq-server 版本 3.9.6 下载链接 https://github.com/rabbitmq/rabbitmq-server/releases/tag/rabbitmq_v3_6_9 (有时候github可能第一次打不开,刷新下就出来了)
erlang 版本 23.1 下载链接 https://www.erlang.org/downloads/23.1
准备环境,依次执行
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
yum -y install make gcc gcc-c++ kernel m4 ncurses openssl
第一步,下载完成后将相应文件上传至 服务器。
第二步,进入服务器相应目录下,执行安装命令。
先安装erlang,解压
tar -xvf otp_src_23.1.tar.gz
进入目录
//进入解压后的erlang目录
cd otp_src_23.1
//配置安装规则 ./configure --prefix=/usr/local/erlang --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac
安装
make && make install
配置环境变量
//编辑配置文件,
vim /etc/profile
//在文件末尾,最后添加
export PATH=$PATH:/usr/local/erlang/bin
添加完成后退出编辑器,输入 source /etc/profile使配置生效
source /etc/profile
输入erl
查看是否检查到版本信息。能够看到,则erl安装成功
erlang安装完毕,接下来安装 rabbitmq-server,这是从erlang的安装目录下退出,进入rabbitmqServer安装包的同级目录执行命令
yum install rabbitmq-server-3.6.9-1.el6.noarch.rpm
安装完毕后,启动服务。
service rabbitmq-server start
到这里rabbit服务就安装好了,接下来可以根据需要开启相应的组件。
RabbitMQ的一些基本操作:
# 添加开机启动RabbitMQ服务
systemctl enable rabbitmq-server.service
# 查看服务状态
systemctl status rabbitmq-server.service
# 启动服务
systemctl start rabbitmq-server.service
# 停止服务
systemctl stop rabbitmq-server.service
# 查看当前所有用户
rabbitmqctl list_users
# 查看默认guest用户的权限
rabbitmqctl list_user_permissions guest
# 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户
rabbitmqctl delete_user guest
# 添加新用户
rabbitmqctl add_user username password
# 设置用户tag
rabbitmqctl set_user_tags username administrator
# 赋予用户默认vhost的全部操作权限
rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
# 查看用户的权限
rabbitmqctl list_user_permissions username
更多关于rabbitmqctl
的使用,可以参考帮助手册。
开启web管理接口
如果只从命令行操作RabbitMQ,多少有点不方便。幸好RabbitMQ自带了web管理界面,只需要启动插件便可以使用。
rabbitmq-plugins enable rabbitmq_management
访问: http://localhost:15672
开启Webstomp,依次执行以下两个命令
rabbitmq-plugins enable rabbitmq_web_stomp
rabbitmq-plugins enable rabbitmq_web_stomp_examples