博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安装rabbitMQ
阅读量:6331 次
发布时间:2019-06-22

本文共 3443 字,大约阅读时间需要 11 分钟。

  hot3.png

1.安装erlang

 

下载rpm仓库:wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

安装rpm仓库

rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

安装erlang

yum -y install erlang

2.安装RabbitMQ

下载RabbitMQ的rpm:wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el6.noarch.rpm

 

yum -y install rabbitmq-server-3.6.6-1.el6.noarch.rpm

 

注:

 

如果报:Requires: socat

 

更新源wget –no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo -O /etc/yum.repos.d/convirt.repo

yum install socat

启动rabbitmq服务:   

  1. service rabbitmq-server start  
  2.      service rabbitmq-server stop  
  3.      service rabbitmq-server restart 

开机自启动:

  1. chkconfig rabbitmq-server on  

配置配置文件:

cd /etc/rabbitmq 

  1. cp /usr/share/doc/rabbitmq-server-3.6.12/rabbitmq.config.example /etc/rabbitmq/  

mv rabbitmq.config.example rabbitmq.config 

开启用户远程访问:

vi /etc/rabbitmq/rabbitmq.config

225659_VIb7_2713027.png

去掉后面的逗号

开启web界面管理工具

rabbitmq-plugins enable rabbitmq_management

service rabbitmq-server restart  

开放端口:15672/5672

3.安装插件

 

启动web管理界面

rabbitmq-plugins enable rabbitmq-management

 

 

 

 

 

注:

 

 

 

 

 

4、好了,到这里rabbitmq已经配置好了,可以启动了:

  • 我们再来查看看一下rabbitmq的默认监听端口5672:  
  • #netstat -tnlp|grep 5672        
  • 最好我们就可以在浏览器上输入http://ip:15672/登录管理界面了:  
  • 使用登录的名户名和密码默认都算guest,登录后的页面如下:  
  • 另一台机器访问rabbitmq(就是本机之外),需要打开15672端口  
  • #vi /etc/sysconfig/iptables  把15672端口加进去。然后重启service iptables restart
  •  

5、添加远程管理账户

由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq。

这里我们以创建个test帐号,密码123456为例,创建一个账号并支持远程ip访问。

  • 创建账号
rabbitmqctl add_user test 123456
  • 设置用户角色
rabbitmqctl  set_user_tags  test  administrator
  • 设置用户权限
rabbitmqctl set_permissions -p "/" test ".*" ".*" ".*"
  • 设置完成后可以查看当前用户和角色(需要开启服务)
rabbitmqctl list_users

这是你就可以通过其他主机的访问RabbitMQ的Web管理界面了,访问方式,浏览器输入:serverip:15672。其中serverip是RabbitMQ-Server所在主机的ip。

RabbitMQ常用操作:

1、用户管理

用户管理包括增加用户,删除用户,查看用户列表,修改用户密码。
(1) 新增一个用户

rabbitmqctl  add_user  Username  Password

(2) 删除一个用户

rabbitmqctl  delete_user  Username

(3) 修改用户的密码

rabbitmqctl  change_password  Username  Newpassword

(4) 查看当前用户列表

rabbitmqctl  list_users

2、 用户角色

按照个人理解,用户角色可分为五类,超级管理员, 监控者, 策略制定者, 普通管理者以及其他。
(1) 超级管理员(administrator)
可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
(2) 监控者(monitoring)
可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
(3) 策略制定者(policymaker)
可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。与administrator的对比,administrator能看到这些内容。
(4) 普通管理者(management)
仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。
(5) 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。

了解了这些后,就可以根据需要给不同的用户设置不同的角色,以便按需管理。

设置用户角色的命令为:

rabbitmqctl  set_user_tags  User  Tag

User为用户名, Tag为角色名(对应于上面的administrator,monitoring,policymaker,management,或其他自定义名称)。

也可以给同一用户设置多个角色,例如

rabbitmqctl  set_user_tags  username  monitoring  policymaker

3、用户权限

用户权限指的是用户对exchange,queue的操作权限,包括配置权限,读写权限。配置权限会影响到exchange,queue的声明和删除。读写权限影响到从queue里取消息,向exchange发送消息以及queue和exchange的绑定(bind)操作。

例如: 将queue绑定到某exchange上,需要具有queue的可写权限,以及exchange的可读权限;向exchange发送消息需要具有exchange的可写权限;从queue里取数据需要具有queue的可读权限。详细请参考官方文档中"How permissions work"部分。

相关命令为:

(1) 设置用户权限

rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP

(2) 查看(指定hostpath)所有用户的权限信息

rabbitmqctl  list_permissions  [-p  VHostPath]

(3) 查看指定用户的权限信息

rabbitmqctl  list_user_permissions  User

(4) 清除用户的权限信息

rabbitmqctl  clear_permissions  [-p VHostPath]  User

作者:dzgdp888
链接:http://www.jianshu.com/p/e3af4cf97820
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

转载于:https://my.oschina.net/fymoon/blog/1542067

你可能感兴趣的文章
ThreadLocal真会内存泄露?
查看>>
IntelliJ IDEA
查看>>
低版本mybatis不能用PageHeper插件的时候用这个分页
查看>>
javaweb使用自定义id,快速编码与生成ID
查看>>
[leetcode] Add Two Numbers
查看>>
elasticsearch suggest 的几种使用-completion 的基本 使用
查看>>
04-【MongoDB入门教程】mongo命令行
查看>>
字符串与整数之间的转换
查看>>
断点传输HTTP和URL协议
查看>>
redis 数据类型详解 以及 redis适用场景场合
查看>>
mysql服务器的主从配置
查看>>
巧用AJAX技术,通过updatePanel控件实现局部刷新
查看>>
20140420技术交流活动总结
查看>>
SaltStack配置salt-api
查看>>
各种情况下block的类型
查看>>
ThinkPHP 3.2.x 集成极光推送指北
查看>>
MYSQL 表情评论存储(emoji)
查看>>
js作用域链
查看>>
java中如何选择Collection Class--java线程(第3版)
查看>>
为运维人员插上腾飞更远的翅膀!
查看>>