RabbitMQ常用命令

服务启动关闭

启动:rabbitmq-server -detached

关闭: rabbitmqctl stop

集群配置相关命令

rabbitmqctl stop_app

rabbitmqctl reset

在当前集群中加入某节点:rabbitmqctl join_cluster{rabbit_node_name}(某些低版本可以采用rabbitmqctl cluster{rabbit_node_name})

rabbitmqctl start_app

集群状态:rabbitmqctl cluster_status

将某节点剔除出当前集群:rabbitmqctl forget_cluster_node {rabbit_node_name}

插件管理

开启某个插件:rabbitmq-plugins enable {插件名}

关闭某个插件:rabbitmq-plugins disable{插件名}

有关插件名可以在rabbitmq的安装目录下的plugins目录中查看:¥RABBITMQ_HOME/plugins

举例:

rabbitmq-plugins enable rabbitmq_management

rabbitmq-plugins list

用户管理

添加用户:rabbitmqctl add_user {username} {password}

删除用户:rabbitmqctl delete_user {username}

修改密码:  rabbitmqctl change_password {username} {newpassword}

设置用户角色:rabbitmqctl set_user_tags {username} {tag}

tag可以为administrator,monitoring,management

举例:

rabbitmqctl add_user root root
rabbitmqctl set_user_tags root administrator
rabbitmqctl list_users

权限管理

权限设置:rabbitmqctl set_permissions [-p vhostpath] {user} {conf} {write} {read}

conf:一个正则表达式match哪些配置资源能够被该用户访问。

write:一个正则表达式match哪些配置资源能够被用户读。

read:一个正则表达式match哪些配置资源能够被该用户访问。

查看(指定vhost)所有用户的权限信息:rabbitmactl list_permissions [-p vhostPath]

查看指定用户的权限信息:rabbitmqctl list_user_permissions {username}

清除用户的权限信息:rabbitmqctl clear_permissions [-p vhostPath] {username}

举例:

rabbitmqctl set_permissions -p / root ".*” “.*” “.*”

获取服务器状态信息

服务器状态:rabbitmqctl status

队列信息: rabbitmqctl list_queues [-p vhostpath] [queueinfoitem ...]
queueinfoitem可以为:name,durable,auto_delete,arguments,messages_ready,messages_unacknowled,messages,consumers,memory.

Exchange信息:rabbitmqctl list_exchanges [-p vhostpath] [exchangeinfoitem ...]
exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments.

Binding信息:rabbitmqctl list_bindings [-p vhostpath] [bindinginfoitem ...]
bindinginfoitem有:source_name, source_kind, destination_name, destination_kind, routing_key, arguments.等

connection信息:rabbitmqctl list_connections [connectioninfoitem …]
connectioninfoitem有:recv_oct,recv_cnt,send_oct,send_cnt,send_pend等。

channel信息:rabbitmqctl list_channels [channelinfoitem …]
channelinfoitem有:consumer_count,messages_unacknowledged,messages_uncommitted,acks_uncommitted,messages_unconfirmed,prefetch_count,client_flow_blocked

举例:
rabbitmqctl list_queues name messages_ready pid slave_pids

更改节点类型

rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type disc

rabbitmqctl change_cluster_node_type ram
rabbitmqctl start_app

vhost管理

添加vhost: rabbitmqctl add vhost {name}
删除vhost: rabbitmqctl delete vhost {name}

镜像队列的设置

镜像队列的配置通过添加policy完成,policy添加的命令为:
rabbitmqctl set_policy [-p Vhost] Name Pattern Definition [Priority]
-pVhost: 可选参数,针对指定vhost下的queue进行设置
Name: policy的名称
Pattern: queue的匹配模式(正则表达式)
Definition: 镜像定义,包括三个部分 ha-mode,ha-params,ha-sync-mode
ha-mode: 指明镜像队列的模式,有效值为 all/exactly/nodes
all表示在集群所有的节点上进行镜像
exactly表示在指定个数的节点上进行镜像,节点的个数由ha-params指定
nodes表示在指定的节点上进行镜像,节点名称通过ha-params指定
ha-params: ha-mode模式需要用到的参数
ha-sync-mode: 镜像队列中消息的同步方式,有效值为automatic,manually
Priority: 可选参数, policy的优先级

例如,对队列名称以hello开头的所有队列进行镜像,并在集群的两个节点上完成镜像,policy的设置命令为:
rabbitmqctl set_policy hello-ha “^hello” ‘{“ha-mode”:“exactly”,“ha-params”:2,“ha-sync-mode”:“automatic”}’

  • 18
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值