centos7下rabbitmq集群部署,Zookeeper集群部署

centos7下rabbitmq集群部署,Zookeeper集群部署,第1张

rabbitmq集群,zookeeper集群
  • 1、rabbitmq集群部署
    • 1.1 全部设备都初始化
    • 1.2 全部设备下载rpm包
    • 1.3 设置hosts,然后再安装rpm包
    • 1.4 设置集群为镜像模式,集群节点互为对方节点的主节点
    • 1.5 确认集群是否同步
  • 2、Zookeeper集群部署
    • 2.1 全部设备初始化
    • 2.2 配置zookeeper-133
    • 2.3 配置zookeeper-134和zookeeper-135
    • 2.4 查看集群节点状态
    • 2.5 安装zookeeper客户端zoolnspector

1、rabbitmq集群部署

官网部署文档:rabbitmq集群
rabbitmq集群最好是奇数节点,所以一般需要3台设备以上。

1.1 全部设备都初始化
cd /etc/yum.repos.d/
yum install -y wget
wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.aliyun.com/repo/epel-7.repo
mv CentOS-Base.repo CentOS-Base.repo.bak
yum clean all
yum makecache
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/SELINUX=enforcing$/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
1.2 全部设备下载rpm包

rabbitmq需要erlang的支持,版本对应文档:rabbitmq和erlang版本对应

下载rabbitmq-erlang的rpm包,扎到对应的版本,选择Assets,centos 7系统选择e17的rpm包
下载地址:rabbitmq-erlang

下载rabbitmq的rpm包,扎到对应的版本,选择Assets,centos 7系统选择e17的rpm包
下载地址:rabbitmq

1.3 设置hosts,然后再安装rpm包

第一台设备设置hosts,然后安装rpm包

vi /etc/hosts

192.168.116.133  rabbitmq-133
192.168.116.134  rabbitmq-134
192.168.116.135  rabbitmq-135

hostnamectl set-hostname rabbitmq-133
yum install -y erlang-23.3.4.1-1.el7.x86_64.rpm
yum install -y rabbitmq-server-3.8.16-1.el7.noarch.rpm

erl    进入erlang的命令行,查看版本为23
q().   退出命令行
rabbitmqctl version   查看版本号


在rabbitmq-134设置hosts、安装rpm包

vi /etc/hosts

192.168.116.133  rabbitmq-133
192.168.116.134  rabbitmq-134
192.168.116.135  rabbitmq-135

hostnamectl set-hostname rabbitmq-134
yum install -y erlang-23.3.4.1-1.el7.x86_64.rpm
yum install -y rabbitmq-server-3.8.16-1.el7.noarch.rpm

erl    进入erlang的命令行,查看版本为23
q().   退出命令行
rabbitmqctl version   查看版本号


在rabbitmq-135设置hosts、安装rpm包

vi /etc/hosts
192.168.116.133  rabbitmq-133
192.168.116.134  rabbitmq-134
192.168.116.135  rabbitmq-135

hostnamectl set-hostname rabbitmq-135
yum install -y erlang-23.3.4.1-1.el7.x86_64.rpm
yum install -y rabbitmq-server-3.8.16-1.el7.noarch.rpm

erl    进入erlang的命令行,查看版本为23
q().   退出命令行
rabbitmqctl version   查看版本号

1.4 设置集群为镜像模式,集群节点互为对方节点的主节点

在rabbitmq-133 *** 作

systemctl enable rabbitmq-server
systemctl start rabbitmq-server

安装网页插件,使得集群可以通过网页访问
rabbitmq-plugins enable rabbitmq_management
将主节点的cookie复制到其他2个节点
scp /var/lib/rabbitmq/.erlang.cookie [email protected]:/var/lib/rabbitmq/.erlang.cookie 
scp /var/lib/rabbitmq/.erlang.cookie [email protected]:/var/lib/rabbitmq/.erlang.cookie 

rabbitmqctl cluster_status   查看集群状态
注意集群名字:加入集群要用到这个
Cluster name: rabbit@rabbitmq-133


在rabbitmq-134 *** 作

安装网页插件,使得集群可以通过网页访问
rabbitmq-plugins enable rabbitmq_management

让cookie信息重新加载
systemctl restart rabbitmq-server
systemctl enable rabbitmq-server

加入集群
rabbitmqctl stop_app     停止服务
rabbitmqctl reset        重置数据,会把数据都删除
rabbitmqctl    join_cluster  rabbit@rabbitmq-133   加入集群

rabbitmqctl start_app    启动服务
rabbitmqctl set_policy    ha-all "#"    '{"ha-mode":"all"}'  设置集群为镜像模式
rabbitmqctl cluster_status    确认集群状态


在rabbitmq-135 *** 作

安装网页插件,使得集群可以通过网页访问
rabbitmq-plugins enable rabbitmq_management

让cookie信息重新加载
systemctl restart rabbitmq-server
systemctl enable rabbitmq-server

加入集群
rabbitmqctl stop_app     停止服务
rabbitmqctl reset        重置数据,会把数据都删除
rabbitmqctl    join_cluster  rabbit@rabbitmq-133   加入集群

rabbitmqctl start_app    启动服务
rabbitmqctl set_policy    ha-all "#"    '{"ha-mode":"all"}'  设置集群为镜像模式
rabbitmqctl cluster_status    确认集群状态

1.5 确认集群是否同步

在rabbitmq-133创建一个账户

rabbitmqctl add_user aa test1234               添加账户
rabbitmqctl set_user_tags aa administrator     将账户打上最高权限标签
rabbitmqctl set_permissions aa ".*" ".*" ".*"  设置为最高权限
rabbitmqctl list_users  


在rabbitmq-134,rabbitmq-135确认账户生成,证明数据同步成功,集群搭建完成

rabbitmqctl list_users 



登录网页查看集群状态

http://192.168.116.133:15672/


2、Zookeeper集群部署

zookeeper官网:zookeeper

2.1 全部设备初始化
cd /etc/yum.repos.d/
yum install -y wget
wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.aliyun.com/repo/epel-7.repo
mv CentOS-Base.repo CentOS-Base.repo.bak
yum clean all
yum makecache
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/SELINUX=enforcing$/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
2.2 配置zookeeper-133
vi /etc/hosts
192.168.116.133 zookeeper-133
192.168.116.134 zookeeper-134
192.168.116.135 zookeeper-135

hostnamectl set-hostname zookeeper-133

下载java8
wget https://repo.huaweicloud.com/java/jdk/8u181-b13/jdk-8u181-linux-x64.tar.gz
tar xf jdk-8u181-linux-x64.tar.gz -C /usr/local/
cd /usr/local/
ln -s jdk1.8.0_181/ jdk

vi /etc/profile.d/java.sh    设置变量
#!/bin/bash
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
export JRE_HOME=$JAVA_HOME/jre 
export CLASSPATH=$JAVA_HOME/lib/:$JRE_HOME/lib

source /etc/profile.d/java.sh 
java -version

下载zookeeper
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

tar xf zookeeper-3.4.14.tar.gz -C /usr/local/
cd /usr/local/
ln -s zookeeper-3.4.14 zookeeper
cd /usr/local/zookeeper/conf/
cp zoo_sample.cfg zoo.cfg
mkdir /usr/local/zookeeper/data
mkdir /usr/local/zookeeper/logs

vi /etc/profile.d/zookeeper.sh     设置变量
export PATH=$PATH:/usr/local/zookeeper/bin

source /etc/profile.d/zookeeper.sh 

vi /usr/local/zookeeper/bin/zkServer.sh  添加java变量路径
#!/usr/bin/env bash     #在首行下面添加
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib/:$JRE_HOME/lib

vi /usr/local/zookpeer/conf/zoo.cfg   配置集群

maxClientCnxns=4096                    #单机和集群修改这行
dataDir=/usr/local/zookeeper/data      #单机和集群修改路径
dataLogDir=/usr/local/zookeeper/logs   #单机和集群添加这行
autopurge.purgeInterval=1              #集群配置
server.1=zookeeper-133:2888:3888       #集群配置
server.2=zookeeper-134:2888:3888       #集群配置
server.3=zookeeper-135:2888:3888       #集群配置

vi /usr/lib/systemd/system/zookeeper.service

[Unit]
Description=zookeeper.service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/zookeeper/bin/zkServer.sh start
ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop
ExecReload=/usr/local/zookeeper/bin/zkServer.sh restart
[Install]
WantedBy=multi-user.target

echo 1 >/usr/local/zookeeper/data/myid    设置ID号
systemctl daemon-reload
systemctl start zookeeper.service

2.3 配置zookeeper-134和zookeeper-135

zookeeper-134配置

按照上面安装配置,其他配置如下
vi /usr/local/zookpeer/conf/zoo.cfg   配置集群

maxClientCnxns=4096                    #单机和集群修改这行
dataDir=/usr/local/zookeeper/data      #单机和集群修改路径
dataLogDir=/usr/local/zookeeper/logs   #单机和集群添加这行
autopurge.purgeInterval=1              #集群配置
server.1=zookeeper-133:2888:3888       #集群配置
server.2=zookeeper-134:2888:3888       #集群配置
server.3=zookeeper-135:2888:3888       #集群配置

echo 2 >/usr/local/zookeeper/data/myid
systemctl daemon-reload
systemctl start zookeeper.service

zookeeper-135配置

按照上面安装配置,其他配置如下
vi /usr/local/zookpeer/conf/zoo.cfg   配置集群

maxClientCnxns=4096                    #单机和集群修改这行
dataDir=/usr/local/zookeeper/data      #单机和集群修改路径
dataLogDir=/usr/local/zookeeper/logs   #单机和集群添加这行
autopurge.purgeInterval=1              #集群配置
server.1=zookeeper-133:2888:3888       #集群配置
server.2=zookeeper-134:2888:3888       #集群配置
server.3=zookeeper-135:2888:3888       #集群配置

echo 3 >/usr/local/zookeeper/data/myid
systemctl daemon-reload
systemctl start zookeeper.service
2.4 查看集群节点状态

zookeeper-133查看

zkServer.sh status
Mode: follower             这个表示这个节点为从节点

ss -tnl                   3888端口打开,证明集群服务启用


zookeeper-134查看

zkServer.sh status
Mode: leader              这个表示这个节点为主节点

ss -tnl                   
2888端口是只有主节点才会开启的端口
3888端口打开,证明集群服务启用


zookeeper-135查看

zkServer.sh status
Mode: follower             这个表示这个节点为从节点

ss -tnl                   3888端口打开,证明集群服务启用

2.5 安装zookeeper客户端zoolnspector

Windows安装zookeeper客户端zoolnspector
需要先安装java环境
下载java:Windows-java8,然后直接打开安装

全部选择默认和下一步即可



右键此电脑点击属性

选择高级系统设置

选择环境变量

选择新建系统变量

输入java的安装目录,设置为变量

变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.8.0_181


然后再新建classpath变量

classpath
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar


最后在系统变量找到Path,点击编辑,修改Path变量

新建多一个java路径

在Path添加

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin



最后重启下系统,让变量生效。
重启后打开CMD,查看能否识别到java

安装下载zoolnspector:zoolnspector
将解压好的目录放到C盘
C:\ZooInspector\build\zookeeper-dev-ZooInspector.jar 双击打开

点击连接zookeeper集群

输入集群内的任一节点的IP和端口

在zookeeper-135连接集群,注册一个服务

/usr/local/zookeeper/bin/zkCli.sh -server 192.168.116.134
create /node1 "192.168.116.133:8080"
get /node1


在客户端确认服务注册成功

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/719919.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存