CenterOS7上搭建RabbitMQ集群
1 保证多个主机之间能够互相访问
修改host ,
vi /etc/hosts
例如修改成下面的内容:
192.168.10.157 rabbitmq-1 192.168.10.159 rabbitmq-2 192.168.10.161 rabbitmq-3.
修改后,测试各个主机是否能够互相ping通
2 关闭防火墙,或者添加以下端口
systemctl stop firewalld
或者添加端口
firewall-cmd --permanent --zone=public --add-port=4369/tcp
firewall-cmd --permanent --zone=public --add-port=5672/tcp
firewall-cmd --permanent --zone=public --add-port=25672/tcp
firewall-cmd --permanent --zone=public --add-port=5671-5672/tcp
firewall-cmd --permanent --zone=public --add-port=15672/tcp
firewall-cmd --permanent --zone=public --add-port=61613-61614/tcp
firewall-cmd --permanent --zone=public --add-port=1883/tcp
firewall-cmd --permanent --zone=public --add-port=8883/tcp
添加后重启防火墙生效 systemctl reload firewalld.service
3 安装Erlang (RabbitMq是用Erlang编写的)
3.1 新建 /etc/yum.repos.d/rabbitmq-erlang.repo 文件并添加一下内容
[rabbitmq-erlang]
name=rabbitmq-erlang
baseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/20/el/7
gpgcheck=1
gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
repo_gpgcheck=0
enabled=1
3.2 执行命令 yum install erlang
,安装的过程中提示yes/no 选择yes 3.3 检查是否安装成功,输入命令 erl
,如果有返回版本号之类的信息就说明安装成功 连续 按两次 Ctrl +C
退出 Erlang命令交互环境
4 安装RabbitMQ
4.1 新建 /etc/yum.repos.d/rabbitmq.repo 文件并添加一下内容
[bintray-rabbitmq-server]
name=bintray-rabbitmq-rpm
baseurl=https://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/
gpgcheck=0
repo_gpgcheck=0
enabled=1
4.2 下载安装包
mkdir /usr/rabbitmq_pkg
cd /usr/rabbitmq_pkg
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm
4.3 安装 yum install rabbitmq-server-3.6.10-1.el7.noarch.rpm
5 设置各个主机的Erlang Cookie相同
输入命令cat /var/lib/rabbitmq/.erlang.cookie
查看节点的Cookie 一般安装后各个节点的的Cookie 是不相同的,需要设置成一样的才行 用scp命令快速复制, 如 scp /var/lib/rabbitmq/.erlang.cookie root@192.168.5.239:/var/lib/rabbitmq/.erlang.cookie
将当前主机的cookie 复制到239主机上
6 启动RabbitMq服务
启动服务 service rabbitmq-server start
查看服务是否启动 service rabbitmq-server status
设置服务随系统自动启动 chkconfig rabbitmq-server on
如果安装前,没有设置/etc/hosts
,现在设置也行最好提前设置,免得修改配置或有其它影响 ,设置后需要重启生效 service rabbitmq-server restart
7 设置集群
各个主机rabbitmq都启动后 ,分别运行 rabbitmqctl status
看返回内容的第一行 ,Status of node 后面的值 ,如Status of node 'rabbit@rabbitmq-1'
表明了当前的Rabbit节点的名称 在要设置为子节点的主机上运行命令: rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@rabbitmq-1
//注意 rabbit@rabbitmq-1 为主节点名称 rabbitmqctl start_app
运行 rabbitmqctl cluster_status
检查当前节点的状态 如果需要更改节点类型 ,输入下面的命令 rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type ram
设置为内存节点 (注意集群中至少需要一个磁盘节点) rabbitmqctl change_cluster_node_type disc
设置为磁盘节点 (注意集群中至少需要一个磁盘节点) rabbitmqctl start_app
8 设置访问权限编辑每个主机的rabbitmq配置
运行命令: cp /usr/share/doc/rabbitmq-server- 3.6.10/rabbitmq.config.example/etc/rabbitmq/rabbitmq.config
;
vim /etc/rabbitmq/rabbitmq.config
修改内容,查找loopback_users ,将所在行修改为 %% {loopback_users, []} ,
保存并退出 , 使用命令 service rabbitmq-server restart
重启服务
9 添加用户
rabbitmqctl add_user root 123456
// root 为用户名, 123456为密码 rabbitmqctl set_user_tags root administrator
rabbitmqctl set_permissions -p / root ".*" ".*" ".*"
service rabbitmq-server restart
10 开启管理功能
开启主节点的web管理功能 rabbitmq-plugins enable rabbitmq_management
; 检查已开启的插件 rabbitmq-plugins list
;
浏览器访问 http://192.168.xxx.xxx:15672/#/ 输入用户名root ,密码123456登录查看
CenterOS7上搭建RabbitMQ集群的更多相关文章
- Docker:搭建RabbitMQ集群
RabbitMQ原理介绍(一) RabbitMQ安装使用(二) RabbitMQ添加新用户并支持远程访问(三) RabbitMQ管理命令rabbitmqctl详解(四) RabbitMQ两种集群模式配 ...
- 搭建RabbitMQ集群(Docker)
前一篇搭建RabbitMQ集群(通用)只是把笔记直接移动过来了,因为我的机器硬盘已经满了,实在是开不了那么虚拟机. 还好,我的Linux中安装了Docker,这篇文章就简单介绍一下Docker中搭建R ...
- Docker搭建RabbitMQ集群
Docker搭建RabbitMQ集群 Docker安装 见官网 RabbitMQ镜像下载及配置 见此博文 集群搭建 首先,我们需要启动运行RabbitMQ docker run -d --hostna ...
- nginx的简单使用和使用nginx在windows上搭建tomcat集群
nginx是一款轻量级的web服务器,常用的作用为服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理服务器 1.为什么我们要使用Nginx? 反向代理: 反向代理(Reverse Proxy ...
- 在windows上搭建redis集群
一 所需软件 Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二 安装配置redis redis下载地址 ...
- CentOS7 搭建RabbitMQ集群 后台管理 历史消费记录查看
简介 通过 Erlang 的分布式特性(通过 magic cookie 认证节点)进行 RabbitMQ 集群,各 RabbitMQ 服务为对等节点,即每个节点都提供服务给客户端连接,进行消息发送与接 ...
- 搭建rabbitmq集群
查看rabbitmq日志文件 开启web管理工具 [root@controller rabbitmq]# rabbitmq-plugins list [root@controller rabbitmq ...
- 用 HAproxy 搭建 RabbitMQ 集群
构建参考: [ Rabbitmq cluster setup with HAproxy ] [ python demo ] RabbitMQ Cluster 遇到的问题 python pika 作为c ...
- Azure上搭建ActiveMQ集群-基于ZooKeeper配置ActiveMQ高可用性集群
ActiveMQ从5.9.0版本开始,集群实现方式取消了传统的Master-Slave方式,增加了基于ZooKeeper+LevelDB的实现方式. 本文主要介绍了在Windows环境下配置基于Zoo ...
- Kubernetes-在Kubernetes集群上搭建HBase集群
经过3天的努力,终于在Kubernetes上把HBase集群搭建起来了,搭建步骤如下. 创建HBase镜像 配置文件包含core-site.xml.hbase-site.xml.hdfs-site ...
随机推荐
- JavaScript笔记基础
JavaScript合集 学完HTML5+CSS3的小伙伴,学习JS时,要多敲多练多想多拓展 刚开始入门JS的时候,我们不需要纠结那么多,有些需要先记住,后面会慢慢明白为什么是这样的 JS基础部分 我 ...
- TypeScript 之 Type
Type 描述:全称叫做 '类型别名',为类型字面量提供名称.比 Interface 支持更丰富的类型系统特性. Type 与 Interface 区别 Interface 只能描述对象的形状,Typ ...
- 单点登录系统使用Spring Security的权限功能
背景 在配置中心增加权限功能 目前配置中心已经包含了单点登录功能,可以通过统一页面进行登录,登录完会将用户写入用户表 RBAC的用户.角色.权限表CRUD.授权等都已经完成 希望不用用户再次登录,就可 ...
- Java中将 int[] 数组 转换为 List(ArrayList)
前言 说起数组转换成 ArrayList,很多同学第一反应就是遍历数组,将元素逐个添加到 ArrayList 中,但是这个看着就lower,一般不会这么答. 所以马上就会想到Arrays工具类的 as ...
- java中对象存在形式
本文主要讲述jvm中对象的存储形式: class Cat{ String name; int age; String color; // 行为 } 依据Cat类创建对象 public class Ob ...
- 洛谷P2196例题分析
[NOIP1996 提高组] 挖地雷(原题) 题目描述 在一个地图上有\(N\)个地窖\((N \le 20)\),每个地窖中埋有一定数量的地雷.同时,给出地窖之间的连接路径.当地窖及其连接的数据给出 ...
- C++ 之 cout 格式化输出
写代码时每次用到格式化输出就各种搜来搜去,今天好好整理一下,方便以后查阅和使用. 参考链接: C++ 之 cout 使用攻略 C++ 格式化输出 首先,加上头文件 #include <ioman ...
- Ubuntu 中科大源的使用
官方网址: https://mirrors.ustc.edu.cn/help/ubuntu.html
- FalseSharing-伪共享
1.CPU缓存 要了解什么是伪共享,首先得了解CPU缓存架构与缓存行的知识 (1)<CPU缓存架构> 主内存RAM是数据存在的地方,CPU和主内存之间有好几级缓存,因为即使直接访问主内存相 ...
- 移动端微信小程序开发学习报错记录--toast.js:41 未找到 van-toast 节点,请确认 selector 及 context 是否正确
这个问题仔细检查了一下代码引入,是没有问题的, 根本原因是在页面上忘了加<van-toast id="van-toast" /> 具体引入代码如下: app.json ...