rabbitmq是通过elang语言来开发的基于amqp协议,它是一个开源的消息代理和队列服务器,通过普通的协议(Amqp协议)来完成不同应用之间的数据共享。

一、RabbitMQ的安装

安装指导参考:https://www.cnblogs.com/sky-cheng/p/10709104.html

1、安装rabbitmq依赖的包;

yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gccc++ kernel-devel m4 ncurses-devel tk tc xz

2、下载 rabbitmq 安装包;

wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm
wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
wget www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm

3、安装下载的 rpm 包;

# 第一步:安装erlang语言环境
rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
# 第二步:安装socat加解密软件 rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
# 第三步:最后安装rabbitmq rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm

4、修改配置

# 修改主机名为 yufeng
vi /etc/hostname

# 在 hosts 文件中增加: 192.168.1.1 yufeng 
vim /etc/hosts

# 修改配置文件(不存在则创建),在文件中增加: NODENAME=rabbit 
vim /etc/rabbitmq/rabbitmq-env.conf

5、进入 rabbitmq 的安装目录(/usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5),修改用户权限;

vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app

修改:loopback_users 中的  <<guest>> ,只保留 guest (不修改就只能通过localhost访问)

RabbitMq的安装-风君雪科技博客

6、安装可视化管理插件 rabbitmq_management;

rabbitmq-plugins enable rabbitmq_management

7、启动 rabbitmq

rabbitmq-server start &

RabbitMq的安装-风君雪科技博客

8、检查安装

(1)检查端口  lsof -i:5672 

 (2)查看进程  ps -ef|grep rabbitmq 

RabbitMq的安装-风君雪科技博客

 (3)使用谷歌或火狐浏览器打开:http://192.168.1.1:15672;用户名/密码:guest/guest

RabbitMq的安装-风君雪科技博客

 二、RabbitMQ的实际使用

在平时的开发中,我们不会去使用 guest 账户,因为该账号的权限太大了,这样就需要去创建新的账号;

(1)查看当前创建的用户: rabbitmqctl list_users 

(2)创建用户并加权限:

# 创建一个用户名与密码都为yufeng的账号
rabbitmqctl add_user yufeng yufeng

# 给用户设置一个角色
rabbitmqctl set_user_tags yufeng administrator

# 给用户设置权限(格式:rabbitmqctl set_permissions -p {虚拟机} {用户名} ".*" ".*" ".*")
rabbitmqctl set_permissions -p / yufeng ".*"  ".*"  ".*"

RabbitMq的安装-风君雪科技博客

 (3)更新指定用户的密码,将 yufeng 密码修改为 123456;(rabbitmqctl change_password 用户名 新密码

rabbitmqctl change_password yufeng 123456

(4)删除用户: rabbitmqctl delete_user 用户名 

(5)列出用户权限: rabbitmqctl list_user_permissions 用户名

 (6)清除用户权限: rabbitmqctl clear_permissions -p {虚拟机} {用户名} 

/etc/rabbitmq/rabbitmq-env.conf