目录
RabbitMQ安装---rpm安装
一、安装erlang环境
下载相关rpm包
[root@localhost ~]# wget --content-disposition https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-22.3.4.12-1.el7.x86_64.rpm/download.rpm
安装rpm软件包
[root@localhost ~]# yum -y install erlang-22.3.4.12-1.el7.x86_64.rpm
二、安装RabbitMQ
下载RabbitMQ包
[root@localhost software]# wget --content-disposition https://packagecloud.io/rabbitmq/rabbitmq-server/packages/el/7/rabbitmq-server-3.8.13-1.el7.noarch.rpm/download.rpm
[root@localhost software]# rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
安装rabbitmq的rpm包
[root@localhost software]# yum -y install rabbitmq-server-3.8.13-1.el7.noarch.rpm
启动rabbitmq
[root@localhost software]# systemctl start rabbitmq-server
三、安装Web界面
[root@localhost software]# rabbitmq-plugins enable rabbitmq_management
重启服务
[root@localhost software]# systemctl restart rabbitmq-server
防火墙放行15672端口
[root@localhost software]# firewall-cmd --zone=public --add-port=15672/tcp --permanent
[root@localhost software]# systemctl restart firewalld
创建登录用户
[root@localhost software]# rabbitmqctl add_user admin 123456
设置用户权限
[root@localhost software]# rabbitmqctl set_user_tags admin administrator
设置vhost的用户权限
[root@localhost software]# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
访问ip+15672即可
RabbitMQ安装---源码安装
一、安装erlang所需依赖
运行以下命令,安装erlang所需要的依赖
[root@localhost ~]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel ncurses-devel
下载erlang
[root@localhost software]# wget http://erlang.org/download/otp_src_21.1.tar.gz
解压缩
[root@localhost software]# tar -zxvf otp_src_21.1.tar.gz
创建erlang数据目录
[root@localhost software]# cd otp_src_21.1
[root@localhost software]# mkdir -p /usr/local/erlang
编译安装
[root@localhost software]# ./configure --prefix=/usr/local/erlang
[root@localhost software]# make && make install
设置环境变量
[root@localhost software]# echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile
刷新环境变量
[root@localhost software]# source /etc/profile
验证安装成功
[root@localhost software]# erl -version
二、下载安装RabbitMQ
下载安装
[root@localhost software]# wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz
解压缩安装包
[root@localhost software]# tar -xvf rabbitmq-server-generic-unix-3.7.8.tar.xz
配置环境变量
[root@localhost software]# echo 'export PATH=$PATH:/root/rabbitmq_server-3.7.8/sbin' >> /etc/profile
刷新环境变量
[root@localhost software]# source /etc/profile
配置rabbitmq启动
[root@localhost software]# rabbitmq-server -detached
配置Web界面
[root@localhost software]# rabbitmq-plugins enable rabbitmq_management
删除默认用户
[root@localhost software]# rabbitmqctl delete_user guest
创建新用户,授于相关权限,及设置登录密码
[root@localhost software]# rabbitmqctl add_user <用户名> <密码>
[root@localhost software]# rabbitmqctl set_user_tags <用户名> administrator
[root@localhost software]# rabbitmqctl set_permissions -p / <用户名> ".*" ".*" ".*"
配置rabbitmq的rabbitmq-server文件
#在该文件189行下添加以下参数
[root@localhost software]# vim /software/rabbitmq_server-3.7.8/sbin/rabbitmq-server
export PATH=$PATH:/usr/local/erlang/bin
export HOME=/root/rabbitmq_server-3.7.8/
过滤15672端口
[root@localhost software]# netstat -anpt | grep 15672
使用ip+端口登录界面
RabbitMQ集群搭建
一、镜像模式
镜像队列是基于普通的集群模式
1.点击admin菜单–>右侧的Policies选项–>左侧最下下边的Add / update a policy 2.按照图中的内容根据自己的需求填写 3.点击Add policy添加策略的,所以你还是得先配置普通集群,然后才能设置镜像队列.
下面我们来添加一个queues队列来看看效果,这里只是测试结果,其它的先不填写
注意红框中的 x-ha-policy = all 这个,网上说没有这个不会进行复制,但是我测试的时候好像可以复制的,至少queues队列是可以的,先添上吧. 在这里边添加的时候你是可以指定Node选项也就是把这个queues放在哪个node节点上,不过做镜像的时候就没有必要了
这里的镜像队列的集群介绍就到这里,要想做到高可用,需要HA软件的配合哦~轮询两个ram rabbitmq节点的接口(ip:5672)disc 节点一般当做备份节点,不做生产也不做消费。
二、RabbitMQ常用命令
1.用户管理
(1)新增用户
rabbitmqctl add_user 用户名 密码
(2)删除用户
rabbitmqctl delete_user 用户名
(3)修改用户的密码
rabbitmqctl change_password 用户名 新密码
(4)查看当前用户列表
rabbitmqctl list_users
2.用户角色
(1)超级管理员: administrator
(2)监控者: monitoring
(3)策略制定者: policymaker
(4)普通管理者 management
(5)其他
设置用户角色的命令为:
rabbitmqctl set_user_tags 用户名 角色(上述五种角色 administrator monitoring policymaker management)
也可以给同一用户设置多个角色,例如
rabbitmqctl set_user_tags user01 monitoring policymaker
3.用户权限
用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限,配置权限会影响到exchange,queue的声明和删除。读写权限影响到从queue里取消息,向 exchange发送消息以及queue和exchange的绑定操作
(1)设置用户权限
rabbitmqctl set_permissions -p vhostpath user confp writep readp
(2) 查看(指定hostpath)所有用户的权限信息
rabbitmqctl list_permissions [-p VHostPath]
(3) 查看指定用户的权限信息
rabbitmqctl list_user_permissions User
(4) 清除用户的权限信息
rabbitmqctl clear_permissions [-p VHostPath] User
rabbitmqctl set_permissions -p / admin ‘.’ '.’ ‘.*’