RedHat 安装RabbitMQ
1. 安装依赖环境
在线安装依赖环境:
yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz
2. 安装Erlang
使用工具上传服务器
自行百度搜索下载相关rpm安装包,不再写下载步骤
erlang-26.2.2-1.el8.x86_64.rpm
socat-1.7.4.2-1.el8.lux.x86_64.rpm
rabbitmq-server-3.13.0-1.el8.noarch.rpm
# 安装
[root@rhel soft]# rpm -ivh erlang-26.2.2-1.el8.x86_64.rpm
如果出现如下错误
说明gblic 版本太低。我们可以查看当前机器的gblic 版本
strings /lib64/libc.so.6 | grep GLIBC
当前最高版本2.12,需要2.15.所以需要升级glibc
- 使用yum更新安装依赖
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y
strings /lib64/libc.so.6 | grep GLIBC
3. 安装RabbitMQ
# 安装
[root@rhel soft]# rpm -ivh socat-1.7.4.2-1.el8.lux.x86_64.rpm
# 安装
[root@rhel soft]# rpm -ivh rabbitmq-server-3.13.0-1.el8.noarch.rpm
4. 开启管理界面及配置
# 开启管理界面
[root@rhel soft]# rabbitmq-plugins enable rabbitmq_management
# 修改默认配置信息
# 编辑
vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.13.0/plugins/rabbit-3.13.0/ebin/rabbit.app
# 登录localhost:15672 初次登录会登录不上 需要修改rabbit.app文件中的 loopback_users
# 比如修改密码、配置等等,例如:loopback_users 中的 <<"guest">>,只保留guest
5. 启动
service rabbitmq-server start # 启动服务
service rabbitmq-server stop # 停止服务
service rabbitmq-server restart # 重启服务
- 设置rabbitmq开机自启
[root@rhel ~]# chkconfig rabbitmq-server on
Note: Forwarding request to 'systemctl enable rabbitmq-server.service'.
Created symlink /etc/systemd/system/multi-user.target.wants/rabbitmq-server.service → /usr/lib/systemd/system/rabbitmq-server.service.
[root@rhel ~]#
执行好后,重启一下rabbitmq服务
service rabbitmq-server restart # 重启服务
然后重启linux系统验证不启服务就可以访问rabbitmq,可以就成功了
6. 配置虚拟主机及用户
6.1. 用户角色
RabbitMQ在安装好后,可以访问http://ip地址:15672
;其自带了guest/guest的用户名和密码;如果需要创建自定义用户;那么也可以登录管理界面后,如下操作:
角色说明:
1、 超级管理员(administrator)
可登陆管理控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。
2、 监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
3、 策略制定者(policymaker)
可登陆管理控制台, 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
4、 普通管理者(management)
仅可登陆管理控制台,无法看到节点信息,也无法对策略进行管理。
5、 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
6.2. Virtual Hosts配置
像mysql拥有数据库的概念并且可以指定用户对库和表等操作的权限。RabbitMQ也有类似的权限管理;在RabbitMQ中可以虚拟消息服务器Virtual Host,每个Virtual Hosts相当于一个相对独立的RabbitMQ服务器,每个VirtualHost之间是相互隔离的。exchange、queue、message不能互通。 相当于mysql的db。Virtual Name一般以/开头。
6.2.1. 创建Virtual Hosts