RabbitMq常用命令

原文作者: xingguang
原文链接:https://www.tiance.club/post/77993866.html

一、消息对列常用命令

1、启插件

rabbitmq-plugins enable rabbitmq_management

2、移除服务

rabbitmq-service remove

3、安装服务

rabbitmq-service install

4、重启服务

rabbitmq-server restart

5、启用RabbitMq服务

rabbitmq-server start

6、停止应用程序

rabbitmqctl stop_app

7、启用运用

rabbitmqctl start_app

8、重置清除节点的配置(先stop_app,后reset节点)

rabbitmqctl stop_app
rabbitmqctl rest

9、启用日志插件命令

rabbitmq-plugins enable rabbitmq_tracing

原文作者: xingguang
原文链接:https://www.tiance.club/post/77993866.html

二、消息集群常用命令
1、加入集群[--ram添加内存模式 默认disk模式]

rabbitmqctl join_cluster --ram

2、查看集群状态

rabbitmqctl cluster_status

3、更改节点模式[顺序 关闭运用-〉更改类型->开启运用]

rabbitmqctl stop_app  –停止运用服务
rabbitmqctl change_cluster_node_type disc/ram –更改节点为磁盘或内存节点
rabbitmqctl start_app –开启运用服务

4、创建策略(集群同步策略……)

set_policy [-p vhostpath] {name} {pattern} {definition} [priority]

5、查看策略

rabbitmqctl list_policies

6、移除远程offline的节点
1.节点2停掉应用

rabbitmqctl stop_app

2.节点1执行删除

rabbitmqctl forget_cluster_node

7、设置集群名称

rabbitmqctl set_cluster_name cluster_name

8、设置镜像模式

Rabbit提供镜像功能,需要基于rabbitmq策略来实现,政策是用来控制和修改群集范围的某个vhost队列行为和Exchange行为 
set_policy [-p vhostpath] {name} {pattern} {definition} [priority]
rabbitmqctl set_policy ha-all "^ha." "{""ha-mode"":""all""}"
rabbitmqctl set_policy ha-all "^" "{""ha-mode"":""all"",""ha-sync-mode"":""automatic""}"
rabbitmqctl set_policy -p jjw-uplus  ha-all "^" "{""ha-mode"":""all"",""ha-sync-mode"":""automatic""}"
下面的例子将“two.”开头的queue mirror到cluster中两个节点,且自动同步
rabbitmqctl   rabbitmqctl set_policy ha-two "^two\." ‘{"ha-mode":"exactly","ha-params":2,"ha-sync-mode":"automatic"}‘
pattern 是匹配队列名称的正则表达式 , 进行区分哪些队列使用哪些策略
definition 其实就是一些arguments, 支持如下参数:
ha-mode:One of all, exactly or nodes (the latter currently not supported by web UI).
ha-params:Absent if ha-mode is all, a number if ha-mode is exactly, or an array of strings if ha-mode is nodes.
ha-sync-mode:One of manual or automatic. //如果不指定该参数默认为manual,这个在高可用集群测试的时候详细分析 
federation-upstream-set:A string; only if the federation plugin is enabled.
可通过如下命令确认哪些salve在同步
rabbitmqctl list_queues name slave_pids synchronised_slave_pids

9、手动同步queue

rabbitmqctl sync_queue name

10、取消queue同步

rabbitmqctl cancel_sync_queue name

11、查看所有队列信息

rabbitmqctl list_queues

12、获取队列信息

rabbitmqctl list_queues[-p vhostpath] [queueinfoitem ...]
Queueinfoitem可以为:name,durable,auto_delete,arguments,messages_ready,messages_unacknowledged,messages,consumers,memory。

13、获取Exchange信息

rabbitmqctl list_exchanges[-p vhostpath] [exchangeinfoitem ...]
Exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments。

14、获取Binding信息

rabbitmqctl list_bindings[-p vhostpath] [bindinginfoitem ...] 
Bindinginfoitem有:source_name,source_kind,destination_name,destination_kind,routing_key,arguments。

15、获取Connection信息

rabbitmqctl list_connections [connectioninfoitem ...]
Connectioninfoitem有:recv_oct,recv_cnt,send_oct,send_cnt,send_pend等。

16、获取Channel信息

rabbitmqctl list_channels[channelinfoitem ...]
Channelinfoitem有consumer_count,messages_unacknowledged,messages_uncommitted,acks_uncommitted,messages_unconfirmed,prefetch_count,client_flow_blocked。

原文作者: xingguang
原文链接:https://www.tiance.club/post/77993866.html

相关推荐