CentOS7安装RabbitMQ,并设置远程访问
1、安装erlang环境
wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm

rpm -ivh erlang-19.0.-.el7.centos.x86_64.rpm

2、安装rabbitmq
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm

yum install rabbitmq-server-3.6.-.el7.noarch.rpm

3、启动rabbitmq服务,并查看运行状态
启动RabbitMQ
service rabbitmq-server start
查看RabbitMQ运行状态,即配置文件
service rabbitmq-server status

查看已安装插件
rabbitmq-plugins list
启动浏览器,管理RabbitMQ功能,目的是浏览器访问RabbitMQ,进行后台管理
rabbitmq-plugins enable rabbitmq_management
4、开启防火墙15672端口
让某个端口链接外网需要声明,否则外面链接不上,15672是给浏览器使用的,另外给python应用程序使用5672,也需要重复开启端口。
firewall-cmd --zone=public --add-port=/tcp --permanent firewall-cmd --reload

5、修改rabbitmq.conf,使外部可以访问
( 1 )文件备份
cp /usr/share/doc/rabbitmq-server-3.6./rabbitmq.config.example /etc/rabbitmq/rabbitmq.config
( 2 )进入备份文件进行修改
cd /etc/rabbitmq
vim rabbitmq.config
( 3 )修改第64行内容,相当于取消注释 ,开启,外网链接模式。

设置外网链接端口
这里的意思是开放使用,rabbitmq默认创建的用户guest,密码也是guest,这个用户默认只能用于本机访问,或者在浏览器中访问,如果想应用在程序中,则需要另外创建用户。
另外,如果是应用程序链接RabbitMQ,默认端口是以下设置中的5672,而浏览器则是15672端口,

重启服务器
service rabbitmq-server restart
6、 添加用户
rabbitmqctl add_user lc lc 添加用户 rabbitmqctl set_permissions -p "/" lc ".*" ".*" ".*" 权限设置 rabbitmqctl set_user_tags lc administrator 设计角色 rabbitmqctl set_user_tags hncscwc monitoring policymaker 设计多个角色 rabbitmqctl clear_permissions [-p VHostPath] User 删除角色 rabbitmqctl list_user_permissions User 查看指定用户权限
用户角色
(1) 超级管理员(administrator)
可登陆管理控制台(启用management plugin的情况下),可查看所有的信息,并且可以对用户,策略(policy)进行操作。
(2) 监控者(monitoring)
可登陆管理控制台(启用management plugin的情况下),同时可以查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
(3) 策略制定者(policymaker)
可登陆管理控制台(启用management plugin的情况下), 同时可以对policy进行管理。但无法查看节点的相关信息(上图红框标识的部分)。
(4) 普通管理者(management)
仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。
(5) 其他
无法登陆管理控制台,通常就是普通的生产者和消费者。
用户添加可参考文章 https://www.cnblogs.com/AloneSword/p/4200051.html
7、 其他命令
rabbitmqctl add_user <UserName> <Password> 添加用户 rabbitmqctl delete_user <UserName> 删除用户 rabbitmqctl change_password <UserName> <NewPassword> 修改密码 rabbitmqctl list_users 查看已有用户
rabbitmqctl add_vhost <VHostPath> rabbitmqctl delete_vhost <VHostPath> rabbitmqctl list_vhostsset_permissions [-p <VHostPath>] <UserName> <Regexp> <Regexp> <Regexp> rabbitmqctl clear_permissions [-p <VHostPath>] <UserName> rabbitmqctl list_permissions [-p <VHostPath>] rabbitmqctl list_user_permissions <UserName> rabbitmqctl list_queues [-p <VHostPath>] [<QueueInfoItem> ...] rabbitmqctl list_exchanges [-p <VHostPath>] [<ExchangeInfoItem> ...] rabbitmqctl list_bindings [-p <VHostPath>] rabbitmqctl list_connections [<ConnectionInfoItem> ...]
8、 浏览器管理
( 1 ) 作用
在浏览器中可以进行后台管理,类似admin,对RabbitMQ进行增删改查用户等操作。
( 2 ) 开启浏览器访问模式,需要启动以下插件
rabbitmq-plugins enable rabbitmq_management
( 3 ) 在浏览器中访问
http://192.168.0.108:15672 # 其中192.168.0.108是配置的centerOS的ip地址,端口号是浏览器访问默认端口

( 4 ) 在页面中进行增删改操作

9 、卸载
rabbitmq是运行在erlang环境下的,所以卸载时应将erlang卸载。
1、卸载rabbitmq相关
卸载前先停掉rabbitmq服务,执行命令
$ service rabbitmq-server stop
查看rabbitmq安装的相关列表
$ yum list | grep rabbitmq
卸载rabbitmq已安装的相关内容
$ yum -y remove rabbitmq-server.noarch
2、卸载erlang
查看erlang安装的相关列表
$ yum list | grep erlang
卸载erlang已安装的相关内容
$ yum -y remove erlang-*
$ yum remove erlang.x86_64
卸载完之后就可以重新安装了
10、 文章参考
CentOS7安装RabbitMQ,并设置远程访问的更多相关文章
- Ubuntu 16.04 安装mysql并设置远程访问
说明: 一个朋友在使用ubuntu-server 16.04安装mysql,设置远程访问的时候出现了问题,请我帮忙.但是,我也没有使用过ubuntu安装mysql,于是乎搜索了很多技术文件,比着葫芦画 ...
- centos7安装rabbitmq 总结
centos7下安装rabbitmq 折腾了三天最后做了以下总结 先查看一电脑名 :示例 #hostname name 查看一下hosts配置文件:如果如下结果,就要修改下 #cat /etc/ho ...
- Centos7安装RabbitMQ解决Erlang依赖报错
通过yum等软件仓库都可以直接安装RabbitMQ,但版本一般都较为保守. RabbitMQ官网提供了新版的rpm包(http://www.rabbitmq.com/download.html),但是 ...
- Centos7 安装rabbitmq(转载)
原文地址:http://blog.csdn.net/wenyu826/article/details/71108279 安装Erlang 从链接https://packages.erlang-solu ...
- CentOS7安装rabbitmq集群(二进制)
一.RabbiMQ简介 RabbiMQ是用Erang开发的,集群非常方便,因为Erlang天生就是一门分布式语言,但其本身并不支持负载均衡. RabbiMQ模式 RabbitMQ模式大概分为以下三种: ...
- Centos7安装RabbitMQ详细教程
MQ引言 什么是MQ MQ:message Queue翻译为消息队列,通过典型的生产者和消费者模型不断向消息队列中生产消息,消费者不断从队列中获取消息.因为消息的生产和消费都是一部的,而且只关心消息的 ...
- Centos7 安装RabbitMQ 3.6.1
如果你看过前两章对RabbitMQ已经有了一定了解,现在已经摩拳擦掌,来吧动手吧! 用什么系统 本文使用的是Centos7,为了保证对linux不太熟悉的伙伴也能轻松上手(避免折在安装的路上),下面是 ...
- CentOS7安装RabbitMQ集群
实验环境 RabbitMQ 集群 server1.example.com IP: 10.10.10.11 Node: diskserver2.example.com IP: 10.1 ...
- 【Linux】CentOS7 安装rabbitmq
[1.安装erlang环境]yum install http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64. ...
随机推荐
- Flutter实体与JSON解析的一种方法
vs code作为编辑器 1. 首先,json对象与字符串的转换是使用json.encode和json.decode的,需要导入import 'dart:convert'; 这里主要的自然不是这个,而 ...
- Git 版本及版本范围表示法
很多 Git 命令都使用 revision(修订版本)作为参数.根据不同的命令,有时候 revision 参 数代表一个特定的提交,有时候代表某一个提交可以追踪到的所有的父提交(比如 git log) ...
- uni-app通过判断接口403跳转登录页面的问题
需求: 当向后端请求接口返回 403 的时候,直接跳到登录页面让用户登录 实现方案: 在请求结束后拦截器中判断,如果是 403 就跳转 遇到难题: 一级页面(我的) onShow() 中有接口请求,用 ...
- 定时任务突然中止,告警:Thread starvation or clock leap detected
1.背景 定时任务告警信息如下: 02:38:24.112 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool - H ...
- Linux发展史与安装-Linux从入门到精通第一天(非原创)
文章大纲 一.Linux发展史二.Linux系统的安装三.Linux系统的文件四.学习资料下载五.参考文章 一.Linux发展史 1. Linux前身-Unix 1968年 Multics项目MI ...
- Elasticsearch 在 7.X版本中去除type的概念
背景说明 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎.无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进.性能最好的.功能最全的搜索引擎库. El ...
- 我是这样手写Spring的,麻雀虽小五脏俱全
人见人爱的Spring已然不仅仅只是一个框架了.如今,Spring已然成为了一个生态.但深入了解Spring的却寥寥无几.这里,我带大家一起来看看,我是如何手写Spring的.我将结合对Spring十 ...
- Flask 中字典数据返回(jsonify)
不多说,直接上代码,flask中的字典数据的处理: from flask import Flask, jsonify app = Flask(__name__, static_folder=" ...
- 短uuid生成
UUID UUID是128位的全局唯一标识符,通常由32字节的字符串表示.它可以保证时间和空间的唯一性,python中称为UUID,其他语言中可能称为GUID. 它通过MAC地址.时间戳.命名空间.随 ...
- Nginx 核心配置-长连接配置
Nginx 核心配置-长连接配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.长连接配置参数说明 keepalive_timeout number; 设定保持连接超时时长,0 ...