linux安装及配置RabbitMQ
安装erlang
# 安装依赖环境支持
sudo yum install -y gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf java-1.8.0-openjdk-devel git
把ealang压缩包上传
#解压
tar -zxvf otp_src_20.2.tar.gz
从
#进入解压目录
cd otp_src_20.2
#编译&安装
./otp_build autoconf
./configure && make && sudo make install
#安装 socat rabbitmq的依赖
sudo yum install -y socat
RabbitMQ 安装
上传资料中的rabbitmq-server-3.7.4-1.el7.noarch.rpm, 再离线安装
sudo rpm --nodeps -Uvh rabbitmq-server-3.7.4-1.el7.noarch.rpm
#查看状态
systemctl status rabbitmq-server
#启动服务
systemctl start rabbitmq-server
#设置为开机启动
systemctl enable rabbitmq-server
#重启服务
systemctl restart rabbitmq-server
RabbitMQ插件安装
安装web管理页面插件(先启动rabbitmq服务):
rabbitmq-plugins enable rabbitmq_management
访问控制台
访问
分析
原因:rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问
找到这个文件rabbit.app
vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.4/ebin/rabbit.app
将:{loopback_users, [<<”guest”>>]},
改为:{loopback_users, []},
配置
改完后,记得重启服务:systemctl restart rabbitmq-server
测试
图1
图2:
报错“Not management user”的处理方法
从提示可以看出,当前用户不是管理用户,这里使用rabbitmqctl set_user_tags 用户名 administrator给用户赋予管理员角色即可解决问题。
ternimal中输入一下命令赋予guest权限:
[root@iZwz9ammd32rpqnu92gvduZ ~]# rabbitmqctl set_user_tags guest administrator
Setting tags for user "guest" to [administrator] ...
[root@iZwz9ammd32rpqnu92gvduZ ~]# rabbitmqctl list_users
Listing users ...
guest [administrator]
创建管理RabbitMQ的用户
访问地址:http://localhost:15672 用户名与密码都是:guest
RabbitMQ的访问端口
1)15672: web访问(图形界面插件)的端口
2)5672:Java程序操作RabbitMQ的端口
登陆用户: guest/guest (默认)
添加用户
创建虚拟主机Virtual Hosts。
像mysql拥有数据库的概念并且可以指定用户对库和表等操作的权限。RabbitMQ也有类似的权限管理;在RabbitMQ中可以虚拟消息服务器Virtual Host,每个Virtual Hosts相当于一个相对独立的RabbitMQ服务器,每个VirtualHost之间是相互隔离的。exchange、queue、message不能互通。 相当于mysql的db。Virtual Name一般以/开头。
图1:新建虚拟主机
图2:设置Virtual Hosts权限
图3:设置虚拟主机的授权访问用户
小结
1. **如何安装rabbitmq?**
- 安装erlang环境(rabbitmq依赖的环境)
- 安装rabbitmq
2. **访问rabbitmq的后台我们需要做哪些的工作?**
- 进入rabbitmq的sbin目录安装插件
3. **安装完毕rabbitmq之后需要做哪些事情?**
- 创建用户
- 创建虚拟空间(虚拟主机)
- 分用户分配虚拟空间的权限
Memorial Day is 513 days |