rabbimq

问题
启动RabbitMQ后,没法访问Web管理页面
 
解决
RabbitMQ安装后默认是不启动管理模块的,所以需要配置将管理模块启动
启动管理模块命令如下
 
rabbitmqctl start_app
rabbitmq-plugins enable rabbitmq_management
服务启动关闭
启动: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)所有用户的权限信息:rabbitmqctl 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]
-p Vhost:  可选参数,针对指定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”}’
---------------------
作者:朱小厮
来源:CSDN
原文:https://blog.csdn.net/u013256816/article/details/53524814
版权声明:本文为博主原创文章,转载请附上博文链接!
上一篇:一个简单演示样例来演示用PHP訪问表单变量


下一篇:缺陷分布可控的介孔二氧化钛微球-硫掺杂/三价钛离子自掺杂/非金属元素共掺杂型黑二氧化钛(TiO2)纳米片