一、基础安装
1、基础环境
CentOS7.x + Erlang + RabbitMQ
注意版本,不同版本的RabbitMQ,对应不同的erlang版本
二、安装Erlang环境
1、查看系统版本号
[root@localhost rabbitmq]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core
# 如果提示命令不存在,则执行下述命令进行安装
yum install redhat-lsb -y
2、安装下载
1、安装erlang环境
方式一:
参考地址:https://packagecloud.io/rabbitmq/erlang
# 执行命令安装仓库
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
# 执行命令安装
sudo yum install erlang-23.3.4.6-1.el7.x86_64
方式二:
参考地址:https://www.erlang-solutions.com/downloads/
# 执行下载
wget https://packages.erlang-solutions.com/erlang-solutions-2.0-1.noarch.rpm
# 执行安装
rpm -Uvh erlang-solutions-2.0-1.noarch.rpm
# yum安装erlang
yum install -y erlang
# 安装成功查看版本号
erl -v
2、安装socat依赖
yum install -y socat
三、安装RabbitMQ
参考地址:https://packagecloud.io/rabbitmq/rabbitmq-server
或者: https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.9.5
# 执行下载
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.9.5/rabbitmq-server-3.9.5-1.el7.noarch.rpm
# 执行安装
rpm -Uvh rabbitmq-server-3.9.5-1.el7.noarch.rpm
yum install rabbitmq-server -y
# 启动rabbitmq
systemctl start rabbitmq-server
# 重新启动rabbitmq
systemctl restart rabbitmq-server
# 设置为开机自启动
systemctl enable rabbitmq-server
# 查看rabbitmq的状态
systemctl status rabbitmq-server
# 停止rabbitmq
systemctl stop rabbitmq-server
四、安装桌面管理插件
默认情况下,rabbitmq是没有安装web端的客户端插件,需要安装才可以生效
# 安装插件
rabbitmq-plugins enable rabbitmq_management
# 安装完毕重启服务
systemctl restart rabbitmq-server
# 访问:http://ip:15672
说明:rabbitmq有一个默认账号和密码是:guest,默认情况下只能在localhost本机下访问,所以需要添加一个远程登录的用户
# 新增用户
rabbitmqctl add_user admin admin
# 设置用户分配操作权限
rabbitmqctl set_user_tags admin administrator
# 用户级别
# administrator:可以登录控制台,查看所有信息,可以对rabbitmq进行管理
# monitoring:监控者,登录控制台,查看所有信息
# policymaker:策略制定者,登录控制台,指定策略
# managment:普通管理员,登录控制台
# 为用户添加资源权限
# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
# 其他命令
# 修改密码
rabbitmqctl change_password username newpassword
# 删除用户
rabbitmqctl delete_user username
# 查看用户清单
rabbitmqctl list_users
五、RabbitMQ角色分类
1、none
特点:
- 不能访问management plugin
2、management:查看自己相关节点信息
特点:
- 列出自己可以通过AMQP登入的虚拟机
- 查看自己的虚拟机节点,virtual hosts的queues,exchanges和binding信息
- 查看和关闭自己的channels和connections
- 查看有关自己的虚拟机节点virtual hosts的统计信息,包括其他用户在这个节点virtual hosts的活动信息
3、Policymaker
特点:
- 包含management所有权限
- 查看和创建和删除自己的virtual hosts所属的policies和parameters信息
4、Monitoring
特点:
- 包含management所有权限
- 罗列出所有的virtual hosts,包含不能登录的virtual hosts
- 查看其他用户的connections和channels信息
- 查看节点级别的数据和clustering和memory使用情况
- 查看所有的virtual hosts的全局统计信息
5、Administrator
特点:
- 最高权限
- 可以创建和删除virtual hosts
- 可以查看,创建和删除users
- 查看创建permissions
六、RabbitMQ和erlang卸载
# 卸载erlang
yum list | grep erlang
yum -y remove erlang-*
rm -rf /usr/lib64/erlang
# 卸载RabbitMQ
yum list | grep rabbitmq
yum -y remove rabbitmq-server.noarch
find / -name rabbit*
rm -rf 依次删除