1. 安装Socat
在线安装依赖环境:
yum install gcc
yum install socat
yum install openssl
yum install openssl-devel
或者
yum install -y gcc socat openssl openssl-devel
2. 安装Erlang
#1、创建文件夹rabbitmq,并打开该目录
mkdir /rabbitmq && cd /rabbitmq
#2、将下载号的压缩包上传 erlang-22.0.7-1.el7.x86_64.rpm 安装包上传
#3、安装(按照这个来,不能自己换成其他按照目录,否则后面启动会出错)
rpm -ivh erlang-22.0.7-1.el7.x86_64.rpm
3. 安装RabbitMQ
#打开目录
cd /rabbitmq
#上传 rabbitmq-server-3.7.17-1.el7.noarch.rpm 安装包
#安装 (按照这个来,不能自己换成其他按照目录,否则后面启动会出错)
rpm -ivh rabbitmq-server-3.7.17-1.el7.noarch.rpm
4. 开启管理界面及配置
# 开启管理界面
rabbitmq-plugins enable rabbitmq_management
# 配置远程可使用guest登录mq
cd /usr/share/doc/rabbitmq-server-3.7.17
cp rabbitmq.config.example /etc/rabbitmq/rabbitmq.config
# 修改配置文件
vi /etc/rabbitmq/rabbitmq.config
修改/etc/rabbitmq/rabbitmq.config
配置文件:
5. 启动
centos6用这个命令:
/sbin/service rabbitmq-server restart
centos7用这个命令:
systemctl start rabbitmq-server
6. 配置虚拟主机及用户
6.1. 用户角色
RabbitMQ在安装好后,可以访问http://ip地址:15672
;其自带了用户名和密码为guest/guest;如果需要创建自定义用户;那么也可以登录管理界面后,如下操作:
添加角色
部分命令总结(命令有很多种方式,大家喜欢就好)
# 添加开机启动RabbitMQ服务
sudo chkconfig rabbitmq-server on
# 启动服务
sudo /sbin/service rabbitmq-server start
service rabbitmq-server start
# 查看服务状态
sudo /sbin/service rabbitmq-server status
# 停止服务
sudo /sbin/service rabbitmq-server stop
service rabbitmq-server stop
# 查看当前所有用户
sudo rabbitmqctl list_users
# 查看默认guest用户的权限
sudo rabbitmqctl list_user_permissions guest
# 删除用户
sudo rabbitmqctl delete_user guest
# 添加新用户
sudo rabbitmqctl add_user username password
# 设置用户tag(具体标签百度)
sudo rabbitmqctl set_user_tags username administrator
# 赋予用户默认vhost的全部操作权限(假如只赋值读写权限,消息队列会发送失败)
sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
# 查看用户的权限
sudo rabbitmqctl list_user_permissions username
# 修改用户的密码
sudo rabbitmqctl change_password Username Newpassword
# 清除用户的权限信息
rabbitmqctl clear_permissions [-p VHostPath] User
卸载RabbitMQ
# 查看rabbitmq安装的相关列表
yum list | grep rabbitmq
# 卸载rabbitmq已安装的相关内容
yum -y remove rabbitmq-server.noarch
# 查看erlang安装的相关列表
yum list | grep erlang
# 卸载erlang已安装的相关内容
yum -y remove erlang-*
yum remove erlang.x86_64(当卸载不干净时执行这个)
角色说明:
- 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
6.2.2. 设置Virtual Hosts权限