rabbitmq常见运维命令和问题总结
来源:互联网 发布:淘宝拍摄基地 编辑:程序博客网 时间:2024/06/06 11:02
常见运维命令作用:
yum安装erlang的环境配置:
ERLANG_HOME=/usr/lib64/erlangexport PATH=$PATH:$ERLANG_HOME/bin
常见rabbitmq server命令:
service rabbitmq-server startservice rabbitmq-server stopservice rabbitmq-server statusservice rabbitmq-server rotate-logs|service rabbitmq-server restartservice rabbitmq-server condrestartservice rabbitmq-server try-restartservice rabbitmq-server reloadservice rabbitmq-server force-reloadps -ef | grep rabbitmq 查看rabbitMq进程kill -9 pidnetstat -anplt | grep LISTEN rabbitmq默认监听端口15672/5672
然后开启rabbitmq web管理页面插件:
rabbitmq-plugins enable rabbitmq_management
查看相应端口占用
[yf482@bogon rabbitmq]$ sudo netstat -lnutp |grep 15672
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 8794/erl
管理员账号
rabbitmqctl add_user rabbitadmin 123456
[yf482@bogon rabbitmq]$ sudo rabbitmqctl add_user rabbitadmin 123456Creating user "rabbitadmin"
分配用户标签-设置为管理用户
rabbitmqctl set_user_tags rabbitadmin administrator
[yf482@bogon rabbitmq]$ sudo rabbitmqctl set_user_tags rabbitadmin administrator Setting tags for user "rabbitadmin" to [administrator]
创建和赋角色完成后查看并确认存在用户: guest是默认用户 密码为guest
因为缺省的guest/guet 用户只能在本地豋录,所以先用命令行创建一个admin/admin123,并让他成为管理员
rabbitmqctl list_users
[yf482@bogon rabbitmq]$ sudo rabbitmqctl list_users Listing usersrabbitadmin [administrator]guest [administrator]
删除一个用户:
sh-4.1# rabbitmqctl list_usersListing users ...admin [administrator]guest [administrator]sh-4.1# rabbitmqctl delete_user guestDeleting user "guest" ...sh-4.1# rabbitmqctl list_usersListing users ...admin [administrator]
修改用户的密码:
sh-4.1# rabbitmqctl change_password admin admin@testChanging password for user "admin" ...
查看所有队列消息:
sh-4.1# rabbitmqctl list_queuesListing queues ...
清除所有队列:
sh-4.1# rabbitmqctl reset
发现问题:刚装的rabbitmq无法用guest豋录
[root@NB ok]# rabbitmqctl add_user admin admin@test
Creating user “admin” …
新增用户,但并没有设置角色的情况下,也不能用网页来管理,只有设置角色后才可以
[root@NB ok]# rabbitmqctl set_user_tags admin administratorSetting tags for user "admin" to [administrator] ...
登录rabbitmq管理界面
浏览器输入地址:http://服务器IP地址:15672/ 端口 15672是默认配置,修改在配置文件改。
用户名密码:rabbitadmin/123456
如果主机配有防火墙,要把用到的端口都打开
-A INPUT -p tcp -m state --state NEW -m tcp --dport 15672 -j ACCEPT-A INPUT -p tcp -m state --state NEW -m tcp --dport 25672 -j ACCEPT-A INPUT -p tcp -m state --state NEW -m tcp --dport 5672 -j ACCEPT-A INPUT -p tcp -m state --state NEW -m tcp --dport 4369 -j ACCEPT-A INPUT -p tcp -m state --state NEW -m tcp --dport 5671 -j ACCEPT
web管理
Rabbitmq服务器的主要通过rabbitmqctl和rabbimq-plugins两个工具来管理,以下是一些常用功能。
所有指令列表(很简单的英文):add_user <UserName> <Password>delete_user <UserName>change_password <UserName> <NewPassword>list_usersadd_vhost <VHostPath>delete_vhost <VHostPath>list_vhostsset_permissions [-p <VHostPath>] <UserName> <Regexp> <Regexp> <Regexp>clear_permissions [-p <VHostPath>] <UserName>list_permissions [-p <VHostPath>]list_user_permissions <UserName>list_queues [-p <VHostPath>] [<QueueInfoItem> ...]list_exchanges [-p <VHostPath>] [<ExchangeInfoItem> ...]list_bindings [-p <VHostPath>] list_connections [<ConnectionInfoItem> ...]
1). 服务器启动与关闭
启动: rabbitmq-server –detached 关闭:rabbitmqctl stop 若单机有多个实例,则在rabbitmqctlh后加–n 指定名称
2). 插件管理
开启某个插件:rabbitmq-pluginsenable xxx 关闭某个插件:rabbitmq-pluginsdisablexxx 注意:重启服务器后生效。
3).virtual_host管理
新建virtual_host: rabbitmqctladd_vhost xxx 撤销virtual_host:rabbitmqctl delete_vhost xxx
4). 用户管理
新建用户:rabbitmqctl add_user xxxpwd 删除用户: rabbitmqctl delete_user xxx 改密码: rabbimqctlchange_password {username} {newpassword} 设置用户角色:rabbitmqctlset_user_tags {username} {tag ...} Tag可以为 administrator,monitoring, management
5). 权限管理
权限设置:set_permissions [-pvhostpath] {user} {conf} {write} {read} Vhostpath Vhost路径 user 用户名 Conf 一个正则表达式match哪些配置资源能够被该用户访问。 Write 一个正则表达式match哪些配置资源能够被该用户读。 Read 一个正则表达式match哪些配置资源能够被该用户访问。
6). 获取服务器状态信息
服务器状态:rabbitmqctl status 队列信息:rabbitmqctl list_queues[-p vhostpath] [queueinfoitem ...] Queueinfoitem可以为:name,durable,auto_delete,arguments,messages_ready, messages_unacknowledged,messages,consumers,memory Exchange信息:rabbitmqctllist_exchanges[-p vhostpath] [exchangeinfoitem ...] Exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments. Binding信息:rabbitmqctllist_bindings[-p vhostpath] [bindinginfoitem ...] Bindinginfoitem有:source_name,source_kind,destination_name,destination_kind,routing_key,arguments Connection信息:rabbitmqctllist_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
部分内容参考自:http://blog.csdn.net/mlks_2008/article/details/18988301
rabbitmq配置
一般情况下,RabbitMQ的默认配置就足够了。如果希望特殊设置的话,有两个途径:
一个是环境变量的配置文件 rabbitmq-env.conf ;
一个是配置信息的配置文件 rabbitmq.config;
注意,这两个文件默认是没有的,如果需要必须自己创建。
rabbitmq-env.conf
这个文件的位置是确定和不能改变的,位于:/etc/rabbitmq目录下(这个目录需要自己创建)。
文件的内容包括了RabbitMQ的一些环境变量,常用的有:
#RABBITMQ_NODE_PORT= //端口号#HOSTNAME=RABBITMQ_NODENAME=mqRABBITMQ_CONFIG_FILE= //配置文件的路径RABBITMQ_MNESIA_BASE=/rabbitmq/data //需要使用的MNESIA数据库的路径RABBITMQ_LOG_BASE=/rabbitmq/log //log的路径RABBITMQ_PLUGINS_DIR=/rabbitmq/plugins //插件的路径具体的列表见:http://www.rabbitmq.com/configure.html#define-environment-variables
rabbitmq.config
这是一个标准的erlang配置文件。它必须符合erlang配置文件的标准。
它既有默认的目录,也可以在rabbitmq-env.conf文件中配置。
文件的内容详见:http://www.rabbitmq.com/configure.html#config-items
- rabbitmq常见运维命令和问题总结
- 安卓按键下常见滑动命令和滑动问题总结(改)
- 常见java 和数据结构算法 问题总结
- 常见运维命令
- 数据库常见命令总结
- 常见命令用法总结
- android 常见命令总结
- Linux常见命令总结
- git常见命令总结
- Mysql 常见命令总结
- 常见dos命令总结
- 常见DOS命令总结
- Git常见命令总结
- git常见命令总结
- 【Linux】常见命令总结
- Git常见命令总结
- 关于RabbitMQ关键性问题的总结
- 常见javaweb问题总结
- pca主成成分分析
- NFS文件共享服务器的搭建
- 网页内容抓取之确定网页是否gzip压缩
- Socket编程-QHZ
- css 中的小技巧和存在的坑
- rabbitmq常见运维命令和问题总结
- Android提取HTML代码内的所有文字内容
- jsp判断用户是否登录
- 测试理论基础
- 1217: 二进制计算
- 第一次课安卓
- MatConvNet 网络模型结构可视化的方法
- Swift在同一条语句中传递方法结果到方法参数情况的处理
- duilib——WindowImplBase的使用