Linux编译安装RabbitMQ

这里只介绍手动源码编译安装,特别是内网服务器器没有接入英特网时,先下载好安装文件通过ftp上传到指定目录然后,解压编译安装,操作步骤如下:


安装依赖包

安装GCC GCC-C++ Openssl等模块,安装过就不需要安装了

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

安装ncurses

官网下载地址:http://ftp.gnu.org/gnu/ncurses/

我选择的是最新版本:http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz

wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz
tar -zxvf ncurses-6.0.tar.gz
cd ncurses-6.0
./configure --with-shared --without-debug --without-ada --enable-overwrite  
make
make install

检查是否安装openssl

openssl version

如果有安装则显示openssl版本号,未安装则戳这里的安装教程

安装Erlang环境

安装erlang,官网下载地址:https://www.erlang.org/downloads ,选择自己喜欢的版本(建议慎选最新版本,可能存在兼容问题)

wget http://erlang.org/download/otp_src_18.2.1.tar.gz
tar xvfz otp_src_18.2.1.tar.gz 
cd otp_src_18.2.1
./configure --prefix=/usr/local/erlang --without-javac --with-ssl
make
make install

安装RabbitMQ

官网下载地址:https://www.rabbitmq.com/releases/rabbitmq-server/ 选择你喜欢的版本

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.9/rabbitmq-server-generic-unix-3.6.9.tar.xz

对rabbitmq包进行解压:

xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.6.9.tar

随后移动至/usr/local/下 改名rabbitmq:

mv rabbitmq_server-3.6.9 /usr/local/rabbitmq

这种下载的方式解压后直接可以使用,无需再编译安装

配置环境变量

vim ~/.bash_profile

添加Erlang和RabbitMQ路径到PATH:/usr/local/erlang/bin:/usr/local/rabbitmq/sbin


然后保存退出,执行如下命令使得PATH路径更新

source ~/.bash_profile

检查Erlang是否安装成功,执行erl命令

erl

启用MQ管理

rabbitmq-plugins enable rabbitmq_management   #启动后台管理
rabbitmq-server -detached   #后台运行rabbitmq

验证

打开浏览器,按如下形式访问后台,默认账号密码登录只能用于本地(127.0.0.1)访问登录,如果是远程登录需要重新添加一个账号,并设置角色,设置最下方的用户见基础命令。

http://ip地址:15672/#/
默认账号:guest
默认密码:guest

RabbitMQ的简单指令

启动服务:rabbitmq-server -detached【 /usr/local/rabbitmq/sbin/rabbitmq-server  -detached 】
重启服务:rabbitmq-server restart
关闭服务:rabbitmqctl stop
查看状态:rabbitmqctl status
列出角色:rabbitmqctl list_users
开启某个插件:rabbitmq-pluginsenable xxx
关闭某个插件:rabbitmq-pluginsdisablexxx
注意:重启服务器后生效。

 

基础命令

集群配置相关命令

rabbitmqctl stop_app 
rabbitmqctl reset 
在当前集群中加入某节点:rabbitmqctl join_cluster {rabbit_node_name} (某些低版本可以采用rabbitmqctl cluster {rabbit_node_name}) 
rabbitmqctl start_app 
集群状态:rabbitmqctl cluster_status 
将某节点剔除出当前集群:rabbitmqctl forget_cluster_node {rabbit_node_name}

插件管理

开启某个插件: rabbitmq-plugins enable {插件名} 
关闭某个插件: rabbitmq-plugins disable {插件名} 
有关插件名可以在rabbitmq的安装目录下的plugins目录中查看:$RABBITMQ_HOME/plugins 
举例: 

rabbitmq-plugins enable rabbitmq_management 
rabbitmq-plugins list

用户管理

添加用户:rabbitmqctl add_user {username} {password} 
删除用户:rabbitmqctl delete_user {username} 
修改密码:rabbitmqctl change_password {username} {newpassword} 
设置用户角色:rabbitmqctl set_user_tags {username} {tag} 
tag可以为administrator, monitoring, management 
举例: 

rabbitmqctl add_user root root 
rabbitmqctl set_user_tags root administrator 
rabbitmqctl list_users

权限管理

权限设置:rabbitmqctl set_permissions [-p vhostpath] {user} {conf} {write} {read} 
    conf:一个正则表达式match哪些配置资源能够被该用户访问。 
    write:一个正则表达式match哪些配置资源能够被该用户读。 
    read:一个正则表达式match哪些配置资源能够被该用户访问。

查看(指定vhost)所有用户的权限信息:rabbitmqctl list_permissions [-p vhostPath] 
查看指定用户的权限信息:rabbitmqctl list_user_permissions {username} 

清除用户的权限信息: rabbitmqctl clear_permissions [-p vhostPath] {username}

发布了284 篇原创文章 · 获赞 258 · 访问量 121万+

猜你喜欢

转载自blog.csdn.net/meimeieee/article/details/103141185