文档章节

Rabbitmq学习之路2-rabbitmqctl

China_OS
 China_OS
发布于 2013/12/21 10:54
字数 1005
阅读 3.9W
收藏 16

    学习rabbitmq,原理之后第一个要掌握的就是rabbitmqctl这个命令的用法了,rabbitmq的管理功能最全的就是rabbitmqctl命令了,当然还有HTTP API和UI两种管理手段。

rabbitmqctl的使用方法:

rabbitmqctl [-n <node>] [-q] <command> [<command options>] 
    -n node 默认node名称是"rabbit@server",如果你的主机明是'server.example.com',那么node名称是'rabbit@server'。
    -q 安静输出模式,信息会被禁止输出
Commands:

基本的管理功能

stop [<pid_file>]  
    #停止在erlang node上运行的rabbitmq,会使rabbitmq停止
stop_app   
    #停止erlang node上的rabbitmq的应用,但是erlang node还是会继续运行的
start_app   
    #启动erlan node上的rabbitmq的应用
wait <pid_file>  
    #等待rabbitmq服务启动
reset  
    #初始化node状态,会从集群中删除该节点,从管理数据库中删除所有数据,例如vhosts等等。在初始化之前rabbitmq的应用必须先停止
force_reset  
    #无条件的初始化node状态
rotate_logs <suffix>   
    #轮转日志文件
cluster管理
join_cluster <clusternode> [--ram]  
    #clusternode表示node名称,--ram表示node以ram node加入集群中。默认node以disc node加入集群,在一个node加入cluster之前,必须先停止该node的rabbitmq应用,即先执行stop_app。
cluster_status  
    #显示cluster中的所有node
change_cluster_node_type disc | ram  
    #改变一个cluster中node的模式,该节点在转换前必须先停止,不能把一个集群中唯一的disk node转化为ram node
forget_cluster_node [--offline]  
    #远程移除cluster中的一个node,前提是该node必须处于offline状态,如果是online状态,则需要加--offline参数。
update_cluster_nodes clusternode   
    #
sync_queue queue  
    #同步镜像队列
cancel_sync_queue queue    
    #
用户管理
add_user <username> <password>  
    #在rabbitmq的内部数据库添加用户
delete_user <username>  
    #删除一个用户
change_password <username> <newpassword>  
    #改变用户密码  \\改变web管理登陆密码
clear_password <username> 
    #清除用户密码,禁止用户登录
set_user_tags <username> <tag> ...
    #设置用户tags
list_users  
    #列出用户
add_vhost <vhostpath>  
    #创建一个vhosts
delete_vhost <vhostpath>  
    #删除一个vhosts
list_vhosts [<vhostinfoitem> ...]  
    #列出vhosts
set_permissions [-p <vhostpath>] <user> <conf> <write> <read>  
    #针对一个vhosts 给用户赋予相关权限
clear_permissions [-p <vhostpath>] <username>  
    #清除一个用户对vhosts的权限
list_permissions [-p <vhostpath>]   
    #列出哪些用户可以访问该vhosts
list_user_permissions <username>  
    #列出该用户的访问权限
set_parameter [-p <vhostpath>] <component_name> <name> <value>
    #
clear_parameter [-p <vhostpath>] <component_name> <key>
    #
list_parameters [-p <vhostpath>]
    #
policy管理,策略用来控制和修改queues和exchange在集群中的行为,策略可以应用到vhost
set_policy [-p <vhostpath>] [--priority <priority>] [--apply-to <apply-to>]  
<name> <pattern> <definition>    
    #name 策略名称,pattern  正则表达式,用来匹配资源,符合的就会应用设置的策略,apply-to 表示策略应用到什么类型的地方,一般有queues、exchange和all,默认是all。priority 是个整数优先级,definition 是json格式设置的策略。
clear_policy [-p <vhostpath>] <name>  
    #清除一个策略
list_policies [-p <vhostpath>]  
    #列出已有的策略
queues && exchange状态信息
list_queues [-p <vhostpath>] [<queueinfoitem> ...]  
    #返回queue的信息,如果省略了-p参数,则默认显示的是"/"vhosts的信息。
list_exchanges [-p <vhostpath>] [<exchangeinfoitem> ...]  
    #返回exchange的信息。
list_bindings [-p <vhostpath>] [<bindinginfoitem> ...] 
    #返回绑定信息。
list_connections [<connectioninfoitem> ...]  
    #返回链接信息。
list_channels [<channelinfoitem> ...]  
    #返回目前所有的channels。
list_consumers [-p <vhostpath>]  
    #返回consumers,
status  
    #显示broker的状态
environment  
    #显示环境参数的信息
report  
    #返回一个服务状态report,
eval <expr>

rabbitmq支持各种插件,开启插件可以使用rabbitmq-plugins命令

插件的开启和关闭方法

rabbitmq-plugins <command> [<command options>]
Commands:
    list [-v] [-m] [-E] [-e] [<pattern>]  显示所有的的插件。-v 显示版本 -m 显示名称 -E 显示明确已经开启的 -e显示明确的和暗中开启的
    enable <plugin> ...   开启一个插件
    disable <plugin> ...  关闭一个插件
在debian/ubuntu下插件一般安装路径:/usr/lib/rabbitmq/lib/rabbitmq_server-3.2.2/plugins


开启:rabbitmq-plugins enable rabbitmq_management

       rabbitmq_management提供一个基于HTTP的API接口,来管理和监控你的rabbitmq。他有web方式和CLI方式,其实web方式是在后端调用HTTP api

rabbitmq_management插件的用法:

web http://host:15672/   
api http://host:15672/api/ 
cli http://host:15672/cli



© 著作权归作者所有

China_OS
粉丝 428
博文 463
码字总数 520228
作品 0
静安
技术主管
私信 提问
加载中

评论(0)

ubuntu16.04 安装rabbitmq

1、apt-get install rabbitmq-server 2、新增管理员用户 rabbitmqctl adduser admin admin rabbitmqctl setusertags admin administrator 3、安装RabbitMQ监控管理插件进行RabbitMQ的管理,插......

诗和_远方
2018/06/29
0
0
High availability RabbitMQ cluster based on docker

@TOC rabbitmq cluster 1 | node name | url | user name | password | description ||:---|:---|:---|:---|:---|| rabbitmq-node-1a | http://47.92.229.64:11101/#/ | guest | guest | rab......

qwfys
2018/11/22
0
0
生产环境Rabbitmq集群安装部署与配置

更多:生产环境Rabbitmq集群安装 创建用户 创建用户名 sudo adduser rabbitmq 添加到sudo组里面 sudo usermod -a -G sudo rabbitmq 切换用户 sudo su - rabbtimq cd /data sudo mkdir rabbitm......

C恒一
03/31
0
0
RabbitMQ管理插件的安装

先安装rabbitmq-server这里就不写了,之前有篇文章里有相关步骤:RabbitMQ的安装与配置 如果/etc/rabbitmq不存在会报如下错误: Error: {cannotwriteenabledpluginsfile,”/etc/rabbitmq/ena...

openthings
2015/05/21
3.9K
0
安装 RabbitMQ 消息队列

1、安装运行环境 yum install erlang 2、安装RabbitMQ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.5/rabbitmq-server-3.3.5-1.noarch.rpm yum install rabbitmq-server-3.......

李伟铭k
2018/07/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【 开发指南 】智能家居技能

本文作者:DuerOs 目录 一、教学视频 二、整体架构 三、开发步骤&资料整理 四、常见问题解答 五、智能家居文档 树状提纲 ————————————————————————————————...

百度开发者中心
2019/03/29
23
0
008. 并发容器类 Map

1. JDK 源码学习方法 1. 演绎推导法 示例:因果推理。 因为 JAVA 中只提供了 BIO 和 NIO 两种方式,所以一切框架中,涉及到网络处理的,都可以用这两个知识点去探究原理。 2. 归纳总结法 示例...

紫穹
今天
75
0
如何使用sed替换换行符(\\ n)? - How can I replace a newline (\n) using sed?

问题: How can I replace a newline (" \\n ") with a space (" 如何将换行符(“ \\n ”)替换为空格(“ ") using the sed command? “)使用sed命令? I unsuccessfully tried: 我尝试失......

javail
今天
109
0
OSChina 周一乱弹 —— 原来这叫分别焦虑

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《A Careful Tearing》- Levi Patel 手机党少年们想听歌,请使劲儿戳(这里) 清明...

小小编辑
今天
182
0
trim、stripslashes、htmlspecialchars函数

通过 PHP 验证表单数据 我们要做的第一件事是通过 PHP 的 htmlspecialchars() 函数传递所有变量。 在我们使用 htmlspecialchars() 函数后,如果用户试图在文本字段中提交以下内容: <script>...

imzchloe
今天
130
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部