rabbitmqadmin是rabbitmq-management plugin支持的命令行工具。
相比rabbitmqctl而言,其功能更加强大。
rabbitmq-management插件提供了一个基于HTTP的API,用于管理和监控您的RabbitMQ服务器,以及基于浏览器的用户界面和命令行工具rabbitmqadmin。
具体的功能包括:
声明,列出和删除交换,队列,绑定,用户,虚拟主机和权限。
监控队列长度,全局和每个通道的消息速率,每个连接的数据速率等。
监视资源使用情况,如文件描述符,内存使用情况,可用磁盘空间。
管理用户(提供当前用户的管理权限)。
将对象定义(虚拟主机,用户,权限,队列,交换,绑定,参数,策略)导出和导入JSON。
强制关闭连接,清除队列。
发送和接收消息(在开发环境和故障排除中很有用)。
1. enable rabbitmqadmin:
[root@localhost rabbitmq]# rabbitmq-plugins enable rabbitmq_management
2. 安装:其实安装了rabbitmq之后就有了
wget http://10.30.30.126:15672/cli/rabbitmqadmin
或
[root@localhost rabbitmq]# cp /var/lib/rabbitmq/mnesia/rabbit@localhost-plugins-expand/rabbitmq_management-3.8.9/priv/www/cli/rabbitmqadmin /usr/bin/
[root@localhost rabbitmq]# chmod +x /usr/bin/rabbitmqadmin
3. rabbitmqadmin 命令汇总:
登录执行列出所有用户:rabbitmqadmin -u username -p password list users
**rabbitmqctl命令**
启动服务:rabbitmq-server -detached //后台
停止运行:rabbitmqctl stop
查看状态:rabbitmqctl status
关闭服务:rabbitmqctl stop
列出角色:rabbitmqctl list_users
rabbitmqctl add_user{用户名}{密码}//添加用户,后面两个参数分别是用户名和密码
rabbitmqctl set_permissions -p / {用户名} ".*" ".*" ".*" //添加权限
rabbitmqctl set_user_tags {用户名} administrator //修改用户角色
删除节点、
rabbitmqctl stop_app
rabbitmqctl forget_cluster_node { rabbit@节点名称}
rabbitmqctl start_app
增加节点、
scp /root/.erlang.cookie root@{ip}:/root/ //在已有节点执行。
//以下在要新增的节点执行。
rabbitmqctl stop_app
rabbitmqctl join_cluster --ram { rabbit@节点名称}
rabbitmqctl start_app
查看集群状态:
rabbitmqctl cluster_status
**rabbitmqadmin命令**
rabbitmqadmin --help
rabbitmqadmin help subcommands
rabbitmqadmin help config
rabbitmqadmin list users 查看所有用户 User
rabbitmqadmin list users name 查看所有用户名 Username
rabbitmqadmin list users tags 查看所有用户角色
rabbitmqadmin list vhosts 查看所有虚拟主机
rabbitmqadmin list connections 查看所有连接
rabbitmqadmin list exchanges 查看所有路由 Exchange
rabbitmqadmin list bindings 查看所有路由与队列的关系绑定binding
rabbitmqadmin list permissions 查看所有角色的权限 Permission
rabbitmqadmin list channels 查看所有通道 Channel
rabbitmqadmin list consumers 查看所有消费者 Consumer
rabbitmqadmin list queues 查看所有消息队列 Queue
rabbitmqadmin list nodes 查看所有节点 Node
rabbitmqadmin show overview 概览 Overview
rabbitmqadmin list bindings source destination_type destination properties_key 查看所有路由与队列的关系绑定的详细信息 Binding
rabbitmqadmin purge queue name=test 清空队列
rabbitmqadmin -f raw_json list users 格式化输出
rabbitmqadmin -f long list users 格式化输出
rabbitmqadmin -f pretty_json list users
rabbitmqadmin -f kvp list users
rabbitmqadmin -f tsv list users
rabbitmqadmin -f table list users
rabbitmqadmin -f bash list users
rabbitmqadmin declare queue name=test durable=true 定义一个队列queue,durable=true 代表持久化打开。
rabbitmqadmin publish routing_key=test payload="just for test" 发布一条消息
rabbitmqadmin get queue=test requeue=true 消费一条信息
rabbitmqadmin get queue=test requeue=false
rabbitmqadmin declare exchange name=my.fanout type=fanout 定义一个Fanout路由
rabbitmqadmin declare exchange name=my.direct type=direct 定义一个Direct路由
rabbitmqadmin declare exchange name=my.topic type=topic 定义一个Topic路由
rabbitmqadmin declare binding source=my.fanout destination=test routing_key=first 定义 binding
rabbitmqadmin delete queue name=hello 删除消息队列 Queue
rabbitmqadmin delete user name=test 删除用户 User
rabbitmqadmin delete exchange name=test 删除路由器 Exchange
rabbitmqadmin delete binding source='kk' destination_type=queue destination=test properties_key=test 删除路由器与消息队列的关系绑定 Binding
rabbitmqadmin publish routing_key=first exchange=my.fanout payload="just for test1" 使用路由转发消息
待添加ing。。。
登录执行列出所有用户:rabbitmqadmin -u username -p password list users
命令 | 解释 |
---|---|
rabbitmqadmin list users | 查看所有用户 User |
rabbitmqadmin list users name | 查看所有用户名 Username |
rabbitmqadmin list users tags | 查看所有用户角色 |
rabbitmqadmin list vhosts | 查看所有虚拟主机 |
rabbitmqadmin list connections | 查看所有连接 |
rabbitmqadmin list exchanges | 查看所有路由 Exchange |
rabbitmqadmin list bindings | 查看所有路由与队列的关系绑定 Binding |
rabbitmqadmin list permissions | 查看所有角色的权限 Permission |
rabbitmqadmin list channels | 查看所有通道 Channel |
rabbitmqadmin list consumers | 查看所有消费者 Consumer |
rabbitmqadmin list queues | 查看所有消息队列 Queue |
rabbitmqadmin list nodes | 查看所有节点 Node |
rabbitmqadmin show overview | 概览 Overview |
rabbitmqadmin list bindings source destination_type destination properties_key | 查看所有路由与队列的关系绑定的详细信息 Binding |
rabbitmqadmin declare queue name=test durable=true | 定义一个队列queue,durable=true代表持久化打开。 |
rabbitmqadmin declare exchange name=my.fanout type=fanout | 定义一个Fanout路由 |
rabbitmqadmin declare exchange name=my.direct type=direct | 定义一个Direct路由 |
rabbitmqadmin declare exchange name=my.topic type=topic | 定义一个Topic路由 |
rabbitmqadmin declare binding source=my.fanout destination=test routing_key=first | 定义 binding |
rabbitmqadmin publish routing_key=test payload="hello world" | 发布一条消息 |
rabbitmqadmin publish routing_key=my.test exchange=my.topic payload="hello world" | 使用路由转发消息 |
rabbitmqadmin get queue=test requeue=true | 查看消息,不消费 |
rabbitmqadmin get queue=test requeue=false | 查看消息,并消费 |
rabbitmqadmin purge queue name=test | 删除队列中的所有消息 |
rabbitmqadmin delete queue name=hello | 删除消息队列 Queue |
rabbitmqadmin delete user name=test | 删除用户 User |
rabbitmqadmin delete exchange name=test | 删除路由器 Exchange |
rabbitmqadmin delete binding source='kk' destination_type=queue destination=test properties_key=test | 删除路由器与消息队列的关系绑定 Binding |
rabbitmqadmin -f raw_json list users | raw_json 格式化输出 |
rabbitmqadmin -f long list users | 格式化输出 |
rabbitmqadmin -f pretty_json list users | pretty_json 格式化输出 |
rabbitmqadmin -f kvp list users | 格式化输出 |
rabbitmqadmin -f tsv list users | 格式化输出 |
rabbitmqadmin -f table list users | table 格式化输出 |
rabbitmqadmin -f bash list users | bash 格式化输出 |
rabbitmq-diagnostics
rabbitmq-diagnostics(8) — RabbitMQ
作用 诊断 监控 健康检查
语法
rabbitmq-diagnostics [-n {nodename}] [-t timeout] [-q] [-s] [-l]{command} [command options...]
-n 指定操作命令的节点 格式 rabbit@target-hostname rabbit 是前缀 ,target-hostname 是hostname
-t 指定操作超时时间 单位秒
-q 指 信息消息会被隐藏
-s 信息消息会被隐藏 和 表头 信息减少
-l 如果指定的节点 配置了longname nodenames 环境变量,则操作的时候必须带上-l 参数,代表使用 longname nodenames