常见运维命令作用:

yum安装erlang的环境配置:

ERLANG_HOME=/usr/lib64/erlang
export PATH=$PATH:$ERLANG_HOME/bin

常见rabbitmq server命令:

service rabbitmq-server   start
service rabbitmq-server stop
service rabbitmq-server status
service rabbitmq-server rotate-logs|
service rabbitmq-server restart
service rabbitmq-server condrestart
service rabbitmq-server try-restart
service rabbitmq-server reload
service rabbitmq-server force-reload ps -ef | grep rabbitmq 查看rabbitMq进程 kill -9 pid netstat -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 123456
Creating 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 users
rabbitadmin [administrator]
guest [administrator]

删除一个用户:

sh-4.1# rabbitmqctl list_users
Listing users ...
admin [administrator]
guest [administrator]
sh-4.1# rabbitmqctl delete_user guest
Deleting user "guest" ...
sh-4.1# rabbitmqctl list_users
Listing users ...
admin [administrator]

修改用户的密码:

sh-4.1# rabbitmqctl change_password admin admin@test
Changing password for user "admin" ...

查看所有队列消息:

sh-4.1# rabbitmqctl list_queues
Listing 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 administrator
Setting 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_users
add_vhost <VHostPath>
delete_vhost <VHostPath>
list_vhosts
set_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=mq
RABBITMQ_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常见运维命令和问题总结的更多相关文章

  1. DG常用运维命令及常见问题解决

    DG常见运维命令及常见问题解决方法 l> DG库启动.关闭标准操作Dataguard关闭1).先取消日志应用alter database recover managed standby data ...

  2. Liunx常用运维命令整理记录

    前言 作为后端开发者,掌握一些常用的运维命令也是很有必要的,本文记录常用Liunx运维命令 基本命令 目录切换 cd base-admin/ 切换到当前目录下的base-admin目录 cd .. 切 ...

  3. linux基本语法和常用运维命令

    linux上的操作一般是命令行操作,看起来很高大上,让人畏而远之. Help!Help! 忽然间闯入的linux黑黑的世界,怎么办,不要慌.赶紧敲出一个help命令,然后回车,黑色的窗口就会展示一些常 ...

  4. hadoop记录-hadoop集群日常运维命令

    hadoop集群日常运维命令 #1.namenode hadoop namenode -format #格式化,慎用 su hdfs hadoop-daemon.sh start namenode h ...

  5. 关于总结一些CentOS7常用的运维命令

    Centos7日常需要用的运维命令 1.删除0字节文件 find-type f -size 0 -exec rm -rf {} \ 2.查看进程 按内存从大到小排列 ps -e   -o " ...

  6. Linux运维命令总结(-)

    Linux运维命令总结(-)  此次整理linux运维常用命令13个,常用linux运维命令大概有150个,约占百分之十,大牛见笑,本人菜鸟一枚不才整理如下,如有不正确之处,请多多指正. 1.创建目录 ...

  7. DB2常用运维命令

    DB2是IBM公司推出关系型数据库管理系统.主要应用于银行.医院等大型机构.现今DB2主要包含以下三个系列:DB2 for Linux, UNIX and Windows(LUW) . DB2在Lin ...

  8. linux系列之常用运维命令整理笔录

    目录 本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍 ...

  9. Linux运维命令总结

    .什么是运维?什么是游戏运维? 1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常, 在他运转的过程中,对他进行维护,他集合了网络.系统.数据库.开发.安全.监控于一身 ...

随机推荐

  1. 欢迎来怼-----Beta冲刺贡献分数分配结果

    队名:欢迎来怼 小组成员 队长:田继平 成员:李圆圆,葛美义,王伟东,姜珊,邵朔,阚博文

  2. 模仿qq列表信息滑动删除效果

    这个效果的完成主要分为两个部分 自定义view作为listview的列表项 一个view里面包括 显示头像,名字,消息内容等的contentView和滑动才能显示出来的删除,置顶的右边菜单menuVi ...

  3. 【Alpha】阶段第二次Scrum Meeting

    [Alpha]阶段第二次Scrum Meeting 工作情况 团队成员 今日已完成任务 明日待完成任务 刘峻辰 发表评论接口 更新评论接口 赵智源 部署实际项目 编写脚本实现持续集成 肖萌威 编写注册 ...

  4. OOP 学习笔记汇总

    1.1 引用 1.2 const关键字 1.3 动态内存分配 1.4 内联函数和重载函数函数参数缺省值 1.5 类和对象的基本概念与用法1 2.1 类和对象的基本概念2

  5. sql主表分页查询关联子表取任意一条高效方案

    有个业务场景,主表中一条数据,在子表中有多条详情数据.对数据进行展示的时候,产品希望随意拿一条子表的数据关联展示出来,用了很多方案,但是都不够好. sql查询取子表任意一条,多个字段的方案 最终找到一 ...

  6. Android工程方法数超过64k,The number of method references in a .dex file cannot exceed 64K.

    最近将一个老的Eclipse项目转到Android Studio后,用gradle添加了几个依赖,项目可以make,但是一旦run就报错 Error:The number of method refe ...

  7. 解决:Invalid character found in the request target.The valid characters are defined in RFC 7230 and RFC3986

    目录 背景 原因分析 处理方法 参考 背景 在将tomcat升级到7.0.81版后,发现系统的有些功能不能使用了,查询日志发现是有些地址直接被tomcat认为存在不合法字符,返回HTTP 400错误响 ...

  8. 2nd 词频统计效能测试

    词频统计效能测试 使用性能分析工具分析结果如下 :

  9. ubuntu下安装 openssl&&编译运行测试代码

    检查是否已安装 openssl: sudo apt-get install openssl 如果已安装执行以下操作:sudo apt-get install libssl-devsudo apt-ge ...

  10. TP中模型实例化

    模型的实例化操作(重点) 模型虽然已经创建完成,但是由于模型的本质是一个类,类在使用的时候需要实例化操作. 5.1.普通实例化方法 普通实例化方法是指通过自己编写代码来new一个对象. $obj = ...