引言
消息队列现在在互联网项目中应用的还是非常多的,在接下来的博客中小编会深入的了解MQ的实现过程,在此博客中将介绍如何在centos7下面安装MQ以及遇到的问题。
第一步:安装Erlang
因为rabbitMQ是Erlang语言编写的,所以我们首先需要安装Erlang
第二步、安装rabbitMQ-server
官网提供的安装方式:
rpm --import https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
yum install rabbitmq-server-3.5.6-1.noarch.rpm
以上方式会出现
网上有很多解决方案,但是尝试之后都未能解决
使用以下方式可以解决:
rpm -Uvh http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.6/rabbitmq-server-3.5.6-1.noarch.rpm
第三步、查看rabbitmq-server是否已经安装好了,能查到说明已经安装完成了
rpm -qa|grep rabbitmq
第四步、开启rabbit-server
service rabbitmq-server start
第五步、关闭rabbit-server(验证命令)
service rabbitmq-server stop
第六步、查看状态
rabbitmqctl status
这样虽然我们已经将rabbitmq的服务正常启动了,但是我们在物理机的浏览器中输入ip:15672时,并不能连接,因为我们还没有配置维护插件和开启远程连接
第七步、安装命令维护插件
rabbitmq-plugins enable rabbitmq_management
第八步、设置配置文件,并开启用户远程访问
vi /etc/rabbitmq/rabbitmq.config
注意:如果没有找到 rabbitmq.config 文件
解决如下:find / -name "rabbitmq.config.example" 找到相应的模板配置文件进行拷贝
cp /usr/share/doc/rabbitmq-server-3.6.6/rabbitmq.config.example /etc/rabbitmq/
mv rabbitmq.config.example rabbitmq.config
如果要登录需要设置用户
新建用户:rabbitmqctl add_user <user> pwd
设置用户角色:rabbitmqctl set_user_tags <user> [administrator | monitoring | policymaker | management]
以下属于部分配置信息
用户管理:
新建用户:rabbitmqctl add_user <user> pwd
删除用户: rabbitmqctl delete_user <user>
查看用户列表:rabbitmqctl list_users
用户权限:
查看所有用户的权限:rabbitmqctl list_permissions
设置用户权限:rabbitmqctl set_permissions <user> '.*' '.*' '.*' (<conf> <write> <read>,正则表达式,'.*'表示所有权限)
清除用户权限:rabbitmqctl clear_permissions <user>
各类角色:
- none
- 不能访问 management plugin
- management
- 用户可以通过AMQP做的任何事外加:
- 列出自己可以通过AMQP登入的virtual hosts
- 查看自己的virtual hosts中的queues, exchanges 和 bindings
- 查看和关闭自己的channels 和 connections
- 查看有关自己的virtual hosts的“全局”的统计信息,包含其他用户在这些virtual hosts中的活动。
policymaker
- management可以做的任何事外加:
- 查看、创建和删除自己的virtual hosts所属的policies和parameters
monitoring
- management可以做的任何事外加:
- 列出所有virtual hosts,包括他们不能登录的virtual hosts
- 查看其他用户的connections和channels
- 查看节点级别的数据如clustering和memory使用情况
- 查看真正的关于所有virtual hosts的全局的统计信息
administrator
- policymaker和monitoring可以做的任何事外加:
- 创建和删除virtual hosts
- 查看、创建和删除users
- 查看创建和删除permissions
- 关闭其他用户的connections
设置用户角色:rabbitmqctl set_user_tags <user> [administrator | monitoring | policymaker | management]
权限和角色参考:http://www.rabbitmq.com/access-control.html