RabbitMQ 消息队列安装:

  linux版本:CentOS 7

安装第一步:先关闭防火墙

1、Centos7.x关闭防火墙

[root@rabbitmq /]# systemctl stop firewalld.service

[root@rabbitmq /]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

如果不想关闭防火墙,可以通过如下方法处理:

开放5672端口:

firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload

第二步:安装Erlang

  由于RabbitMQ依赖Erlang, 所以需要先安装Erlang。

Erlang的安装方式大概有两种:

1)从Erlang Solution安装(推荐)

# 添加erlang solutions源
$ wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
$ sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm $ sudo yum install erlang

2)从EPEL源安装(这种方式安装的Erlang版本可能不是最新的,有时候不能满足RabbitMQ需要的最低版本)

# 启动EPEL源
$ sudo yum install epel-release
# 安装erlang
$ sudo yum install erlang

安装第三步:安装RabbitMQ

$ sudo rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
$ wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm # 下载RabbitMQ安装包
$ sudo yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm

  注意:安装时如果遇到下面的依赖错误

Error: Package: socat-1.7.2.3-1.el6.x86_64 (epel)
Requires: libreadline.so.5()(64bit)

可以尝试先执行:$ sudo yum install socat

  至此,如果没有报错的话,RabbitMQ已经安装成功!此时我们需要测试RabbitMQ是否可以正常使用。

测试:

1、开启服务及查看工作状态

$ rabbitmq-server #启动RabbitMQ队列
$ sudo chkconfig rabbitmq-server on # 添加开机启动RabbitMQ服务
$ sudo /sbin/service rabbitmq-server start # 启动服务
$ sudo /sbin/service rabbitmq-server status # 查看服务状态
$ sudo /sbin/service rabbitmq-server stop # 停止服务
$ netstat -tulnp |grep rabbitmq #查看默认启用的端口号,5672

2、关于RabbitMQ的一些基本操作

# 查看当前所有用户
$ sudo rabbitmqctl list_users $ rabbitmqctl list_queues #查看当前的消息队列列表

# 查看默认guest用户的权限
$ sudo rabbitmqctl list_user_permissions guest # 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户
$ sudo rabbitmqctl delete_user guest # 添加新用户
$ sudo rabbitmqctl add_user username password # 设置用户tag
$ sudo rabbitmqctl set_user_tags username administrator # 赋予用户默认vhost的全部操作权限
$ sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*" # 查看用户的权限
$ sudo rabbitmqctl list_user_permissions username
更多关于rabbitmqctl的使用,可以参考帮助手册

3、开启web管理接口

  如果只从命令行操作RabbitMQ,多少有点不方便。幸好RabbitMQ自带了web管理界面,只需要启动插件便可以使用。

$ sudo rabbitmq-plugins enable rabbitmq_management
然后通过浏览器访问   http://localhost:5672 输入用户名和密码访问web管理界面了。

4、配置RabbitMQ

  关于RabbitMQ的配置,可以下载RabbitMQ的配置文件模板到/etc/rabbitmq/rabbitmq.config, 然后按照需求更改即可。
  关于每个配置项的具体作用,可以参考官方文档
  更新配置后,别忘了重启服务哦!

5、开启用户远程访问

  默认情况下,RabbitMQ的默认的guest用户只允许本机访问, 如果想让guest用户能够远程访问的话,只需要将配置文件中的loopback_users列表置为空即可,如下:

  {loopback_users, []}

  另外关于新添加的用户,直接就可以从远程访问的,如果想让新添加的用户只能本地访问,可以将用户名添加到上面的列表, 如只允许admin用户本机访问。

{loopback_users, ["admin"]}

更新配置后,别忘了重启服务哦!

RabbitMQ 消息队列 安装及使用的更多相关文章

  1. (五)RabbitMQ消息队列-安装amqp扩展并订阅/发布Demo(PHP版)

    原文:(五)RabbitMQ消息队列-安装amqp扩展并订阅/发布Demo(PHP版) 本文将介绍在PHP中如何使用RabbitMQ来实现消息的订阅和发布.我使用的系统依然是Centos7,为了方便, ...

  2. RabbitMQ消息队列安装和配置以及推送消息

    好久没有写了,最近项目用到RabbitMQ,找了一些资料试验,最后终于成功了,把安装配置的步骤分享给大家. 一.Erlang安装具体过程: 1.双击otp_win32_R16801.exe(不同版本可 ...

  3. RabbitMQ消息队列———安装(一)

    一.RabbitMQ队列 不同进程间的通信,简称IPC.不同的进程间的通信,可以基于队列解决,将生产者和消费者进行解耦,中间的队列作为其桥梁.RabbitMQ是一个在AMQP基础上完整的,可复用的企业 ...

  4. RabbitMQ消息队列+安装+工具介绍

    1.MQ为Message Queue,消息队列是应用程序和应用程序之间的通信方法 2. 多种开发语言支持,其实就是一个驱动,如连接数据库的mysql驱动,oracle驱动等. 3. 4.采用以下语言开 ...

  5. RabbitMQ消息队列安装

    [root@VM_119_179_centos ~]# rpm -ivh erlang-19.0.4-1.el6.x86_64.rpm [root@VM_119_179_centos ~]# rpm ...

  6. RabbitMQ消息队列系列教程(二)Windows下安装和部署RabbitMQ

    摘要 本篇经验将和大家介绍Windows下安装和部署RabbitMQ消息队列服务器,希望对大家的工作和学习有所帮助! 目录 一.Erlang语言环境的搭建 二.RabbitMQ服务环境的搭建 三.Ra ...

  7. 第二百九十一节,RabbitMQ多设备消息队列-安装与简介

    RabbitMQ多设备消息队列-安装与简介 RabbitMQ简介 解释RabbitMQ,就不得不提到AMQP(Advanced Message Queuing Protocol)协议. AMQP协议是 ...

  8. OpenStack 安装数据库和rabbitmq消息队列 (三)

    一)安装配置数据库 1.1.安装包 # yum install mariadb mariadb-server python2-PyMySQL -y 1.2.配置数据库 # vim /etc/my.cn ...

  9. (三)RabbitMQ消息队列-Centos7下安装RabbitMQ3.6.1

    原文:(三)RabbitMQ消息队列-Centos7下安装RabbitMQ3.6.1 如果你看过前两章对RabbitMQ已经有了一定了解,现在已经摩拳擦掌,来吧动手吧! 用什么系统 本文使用的是Cen ...

随机推荐

  1. Hive数据类型总结

    转载自:http://blog.csdn.net/chenxingzhen001/article/details/20901045 Hive的内置数据类型可以分为两大类:(1).基础数据类型:(2). ...

  2. linux平台及windows平台mysql重启方法

    各个平台mysql 重启: inux平台及windows平台mysql重启方法 Linux下重启MySQL的正确方法: 1.通过rpm包安装的MySQL service mysqld restart ...

  3. sshfs的挂载与卸载

    在CentOS中 sshfs的使用依赖EPEL(只安装sshfs不会出错,但是却无法使用) 挂载 安装EPEL rpm -i https://dl.fedoraproject.org/pub/epel ...

  4. nova Scheduling 配置

    Nova中调度配置: scheduler_driver_task_period = scheduler_driver = nova.scheduler.filter_scheduler.FilterS ...

  5. 开发者必备,超实用的PHP代码片段!

    此前,研发频道曾发布<直接拿来用,10个PHP代码片段>,得到了网友们的一致好评.本文,笔者将继续分享九个超级有用的PHP代码片段.当你在开发网站.应用或者博客时,利用这些代码能为你节省大 ...

  6. ajax_基础

    ajax  请求过程 1.准备发送请求 2.填写请求地址和数据 3.请请求到服务器 4.等待服务器处理数据. 5.接受服务器返回信息 --------------------------------- ...

  7. TCP/IP 详解笔记

    最早的 TCP 协议文档是 RFC793. TCP 提供一种面向连接的.可靠的字节流服务. 面向连接容易理解,那么什么是字节流服务呢? 答:两个应用程序通过 TCP 连接交换 8 bit 字节构成的字 ...

  8. Redis源码研究:哈希表 - 蕫的博客

    [http://dongxicheng.org/nosql/redis-code-hashtable/] 1. Redis中的哈希表 前面提到Redis是个key/value存储系统,学过数据结构的人 ...

  9. element-ui树结构懒加载

    在实际项目中,往往树结构数据量较大,这时树节点必须懒加载 element-ui树的懒加载: <div style="width:100%;height:420px;overflow: ...

  10. 原生js模态框实现

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...