Centos8环境下 RabbitMQ 安装
1:首先安装好jdk1.8
https://www.cnblogs.com/fzhu/articles/15231797.html
2:上传erlang,rabbitmq

3:安装RabbitMQ依赖包
yum install -y gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf


4: 安装Erlang
RabbitMQ和Erlang / OTP兼容性列表
下表提供了当前支持的RabbitMQ版本系列的Erlang兼容性列表。对于已到期的RabbitMQ版本,请参阅不支持的系列兼容性列表。
https://www.rabbitmq.com/which-erlang.html

5:安装erlang
1):先解压tar -vxf otp_src_24.1.tar.gz,然后进入解压目录

2):安装
./otp_build autoconf
./configure && make && make install

3):查看版本号erl -version

6: 安装Socat
yum install -y socat

7: 安装RabbitMQ
rpm -Uvh rabbitmq-server-3.9.7-1.el8.noarch.rpm --nodeps

8: 启动RabbitMQ
启用Rabbit MQ服务
systemctl enable rabbitmq-server

启动Rabbit MQ服务
systemctl start rabbitmq-server

查看服务状态
systemctl status rabbitmq-server

停止服务
systemctl stop rabbitmq-server
重启服务
systemctl restart rabbitmq-server
9: Web插件安装
rabbitmq-plugins enable rabbitmq_management

10: 配置用户远程 ,没有rabbitmq.config新建一个
vi /etc/rabbitmq/rabbitmq.config
[
{loopback_users, []}
].

11: 修改默认配置文件路径
rabbitmq默认数据目录和日志路径
默认数据目录 /var/lib/rabbitmq/mnesia
日志路径 /var/log/rabbitmq/
配置文件路径 /etc/rabbitmq/
创建新的数据文件和日志文件目录并给权限
mkdir -p /usr/local/rabbitmq/log;
mkdir -p /usr/local/rabbitmq/mnesia;
chmod -R 755 /usr/local/rabbitmq;
chown -R rabbitmq:rabbitmq /usr/local/rabbitmq;

创建或者新增环境参数配置文件,没有rabbitmq-env.conf,新建一个。
vim /etc/rabbitmq/rabbitmq-env.conf
输入
RABBITMQ_MNESIA_BASE=/usr/local/rabbitmq/mnesia
RABBITMQ_LOG_BASE=/usr/local/rabbitmq/log


12: 重启RabbitMQ
systemctl restart rabbitmq-server
13: 开放防火墙端口
####firewalld防火墙
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload
####iptables防火墙
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5672 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 15672 -j ACCEPT
systemctl restart iptables
13: 访问管理页面
地址:http://IP:15672
账号和密码默认都是guest,但是默认账号无法登录

15: 创建管理用户
添加用户(用户admin,密码admin)
rabbitmqctl add_user admin admin

设置用户角色(admin为管理员)
rabbitmqctl set_user_tags admin administrator

设置用户权限(接受来自所有Host的所有操作)
rabbitmqctl set_permissions -p "/" admin '.*' '.*' '.*'

查看用户权限
rabbitmqctl list_user_permissions admin

然后使用 admin 管理员用户登录web管理页面
用户和密码是上面添加设置的 admin admin

RabbitMQ常用命令
# 添加用户
rabbitmqctl add_user <username> <password>
# 删除用户
rabbitmqctl delete_user <username>
# 修改用户密码
rabbitmqctl change_password <username> <newpassword>
# 清除用户密码(该用户将不能使用密码登陆,但是可以通过SASL登陆如果配置了SASL认证)
rabbitmqctl clear_password <username>
# 设置用户tags(相当于角色,包含administrator,monitoring,policymaker,management)
rabbitmqctl set_user_tags <username> <tag>
# 列出所有用户
rabbitmqctl list_users
# 创建一个vhosts
rabbitmqctl add_vhost <vhostpath>
# 删除一个vhosts
rabbitmqctl delete_vhost <vhostpath>
# 列出vhosts
rabbitmqctl list_vhosts [<vhostinfoitem> ...]
# 针对一个vhosts给用户赋予相关权限;
rabbitmqctl set_permissions [-p <vhostpath>] <user> <conf> <write> <read>
# 清除一个用户对vhosts的权限;
rabbitmqctl clear_permissions [-p <vhostpath>] <username>
# 列出哪些用户可以访问该vhosts;
rabbitmqctl list_permissions [-p <vhostpath>]
# 列出用户访问权限;
rabbitmqctl list_user_permissions <username>

浙公网安备 33010602011771号