linux cenos7安装rabbitMq 及基础使用
一、下载erlang和rabbitmq-server的rpm:
http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm
二、将下载好的erlang和rabbit(rpm)包上传到linux上面
1.解压:eg: rpm -ivh erlang-19.0.4-1.el7.centos.x86_64.rpm
2.如果 在解压安装 mq的时候出现

(1)则需要安装socat依赖

yum install socat
(2)再次解压安装mq即可
三、启动和关闭
1. /sbin/service rabbitmq-server stop #关闭
/sbin/service rabbitmq-server start #启动
/sbin/service rabbitmq-server status #状态
2. 启动rabbitmq,并验证启动情况
rabbitmq-server --detached &ps aux |grep rabbitmq
以服务的方式启动
service rabbitmq-server start
启用维护插件 15672端口
rabbitmq-plugins enable rabbitmq_management
# 开放端口 (mq的默认端口为15672)
firewall-cmd --add-port=15672/tcp --permanent
firewall-cmd --reload
3.配置mq
切换到 /etc/rabbitmq目录下 创建rabbitmq.config文件并在其中添加配置
[{rabbit, [{loopback_users, []}]}].
这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认 只能是本机访问,localhost或者127.0.0.1,从外部访问需要添加上面的配置。
4.开启web管理页面
rabbitmq-plugins enable rabbitmq_management
5.重启rabbitmq
service rabbitmq-server restart
四.登录mq
1.http://自己的ip:15672/ 第一次登录默认用户名密码为guest
2.用户管理
新增 rabbitmqctl add_user admin admin
删除 rabbitmqctl delete_user admin
修改 rabbitmqctl change_password admin admin12
用户列表 rabbitmqctl list_users
设置角色 rabbitmqctl set_user_tags admin administrator monitoring policymaker management
设置用户权限 rabbitmqctl set_permissions -p VHostPath admin ConfP WriteP ReadP VHostPath 为用户 是否可以访问虚拟机主机 也就是新建的用户是否可以登录web管理页面 我是在启动命令的时候把 VHostPath 替换为 / 就可以访问web管理页面了

查询所有权限 rabbitmqctl list_permissions [-p VHostPath]
指定用户权限 rabbitmqctl list_user_permissions admin
清除用户权限 rabbitmqctl clear_permissions [-p VHostPath] admin
五、官网参考命令
1.应用程序管理:
(1)rabbitmqctl force_reset 无条件重新设置
(2)rabbitmqctl reset 需要在当前rabbitmq关闭服务才能运行
(3)rabbitmqctl shutdown 关闭rabbitmq服务节点
(4)rabbitmqctl start_app 启动reabbitmq服务
(5)rabbitmqctl stop 停止运行RabbitMQ的Erlang节点。
(6)rabbitmqctl stop_app 停止rabbitmq服务
(7)rabbitmqctl hipe_compile /tmp/rabbit-hipe/ebin 对HiPE-compile模块并将它们存储到 / tmp / rabbit-hipe / ebin目录
(8)rabbitmqctl rotate_logs 此命令启动内部日志轮换过程
(9)rabbitmqctl wait /var/run/rabbitmq/pid 当RabbitMQ节点启动时,此命令将返回
2.集群管理
(1)rabbitmqctl join_cluster hare@elena --ram 此命令指示RabbitMQ节点加入“hare@elena (作为master)”所属的群集,作为ram节点 ,当前作为slave
(2)rabbitmqctl cluster_status 集群的节点状态
(3)rabbitmqctl change_cluster_node_type disc/ram 修改集群节点作为ram还是disc
(4)rabbitmqctl -n hare@mcnulty forget_cluster_node rabbit@stringer 删除集群中指定的节点 此命令将从节点“ hare @ mcnulty ”中删除节点“ rabbit @ stringer ”
(5)rabbitmqctl rename_cluster_node rabbit@misshelpful rabbit@cordelia 此命令将节点“ rabbit @ misshelpful ” 重命名为节点“ rabbit @ cordelia ”
(6)rabbitmqctl update_cluster_nodes -n A C. 对该命令的需求是由于在节点离线时集群可以改变的事实。考虑节点 A和B 聚类的情况。A下降, C群集与 B,然后 B离开群集。当 A醒来时,它会尝试联系 B,但这会失败,因为 B不再在群集中。
(6.1)以下命令将解决此问题
(6.1.1)rabbitmqctl force_boot
(6.1.2)sync_queue [-p vhost] queue 同步队列
(6.1.3)cancel_sync_queue [-p vhost] queue 取消队列同步
(6.1.4)purge_queue [-p vhost] queue 清空队列
(6.1.5)rabbitmqctl set_cluster_name london 这会将群集名称设置为“london”
3.用户管理
(1)rabbitmqctl add_user janeway changeit 添加
(2)rabbitmqctl delete_user janeway 删除
(3)rabbitmqctl change_password janeway newpass 修改密码
(4)rabbitmqctl clear_password janeway 清空密码
(5)rabbitmqctl authenticate_user janeway verifyit 验证用户名密码
(6)rabbitmqctl set_user_tags janeway administrator 此命令指示RabbitMQ代理确保名为“janeway”的用户是管理员
(7)rabbitmqctl set_user_tags janeway 指示RabbitMQ代理从名为“janeway”的用户中删除任何标记
(8)rabbitmqctl list_users 用户列表
4.访问控制
(1)rabbitmqctl add_vhost test 此命令指示RabbitMQ代理创建名为“test”的新虚拟主机
(2)rabbitmqctl delete_vhost test 此命令指示RabbitMQ代理删除名为“test”的虚拟主机
(3)rabbitmqctl list_vhosts name tracing 此命令指示RabbitMQ代理列出所有虚拟主机
(4)rabbitmqctl set_permissions -p my-vhost janeway “^janeway-.*” “.*” “.*” 此命令指示RabbitMQ代理向名为“janeway”的用户授予对名为“my-vhost”的虚拟主机的访问权限,并对名称以“janeway-”开头的所有资源具有配置权限,并具有写入和读取权限。
5.所有资源:
(1)rabbitmqctl clear_permissions -p my-vhost janeway 此命令指示RabbitMQ代理拒绝名为“janeway”的用户访问名为“my-vhost”的虚拟主机
(2)rabbitmqctl list_permissions -p my-vhost 此命令指示RabbitMQ代理列出已被授予对名为“my-vhost”的虚拟主机的访问权限的所有用户,以及他们对该虚拟主机中资源的操作所具有的权限。请注意,空字符串表示没有授予权限
(3)rabbitmqctl list_user_permissions janeway 此命令指示RabbitMQ代理列出已授予用户名为“janeway”的所有虚拟主机,以及用户对这些虚拟主机中的资源的操作所具有的权限:
rabbitmqctl set_topic_permissions -p my-vhost janeway amq.topic “^janeway-.*” “^janeway-.*”
rabbitmqctl set_topic_permissions -p my-vhost janeway amq.topic “^{username}-.*” “^{username}-.*”
(4)rabbitmqctl clear_topic_permissions -p my-vhost janeway amq.topic 此命令指示RabbitMQ代理删除名为“janeway”的用户的主题权限,用于名为“my-vhost”的虚拟主机中的主题交换“amq.topic”
(5)rabbitmqctl list_topic_permissions -p my-vhost 此命令指示RabbitMQ代理列出已在虚拟主机中被授予主题权限的所有用户,名为“my-vhost:”
rabbitmqctl list_topic_user_permissions janeway 此命令指示RabbitMQ代理列出已授予用户名为“janeway”的所有虚拟主机,以及用户在这些虚拟主机中拥有的主题权限
安装rabbit有两种包 一种就是我安装的rpm 另一种是大家熟悉的tar包
浙公网安备 33010602011771号