虚拟机建立高可用集群。单机和集群版,保姆级教学

最终版进群搭建看这篇博客

在虚拟机中搭建高可用集群,超详解,保姆级教学_一个学习的博客-CSDN博客

首先建立集群的前提条件是你的每个虚拟机之间能够ping通,并且能够相互连接和自连接,并且你虚拟机都要有java jdk的环境

具体免密登录可看

如何实现夸虚拟机免密登录,能够通过一台进入其他虚拟机_一个学习的博客-CSDN博客

 其他虚拟机都要实现这个要求

虚拟机建立高可用集群。单机和集群版,保姆级教学_第1张图片

没有ping通的原因是进入

[root@gree2 ~]# vi /etc/hosts

看这里有没有写全,host我命名为gree个人按照个人的来

虚拟机建立高可用集群。单机和集群版,保姆级教学_第2张图片

接着开始安装单机版集群,

进入opt我这里有个install文件夹专门放解压包的

虚拟机建立高可用集群。单机和集群版,保姆级教学_第3张图片

 虚拟机建立高可用集群。单机和集群版,保姆级教学_第4张图片

开始解压zookeeper包

我放在opt目录下的soft下

[root@gree2 install]# tar -zxvf zookeeper-3.4.5-cdh5.14.2.tar.gz -C /opt/soft 虚拟机建立高可用集群。单机和集群版,保姆级教学_第5张图片

 进入soft看是否有解压包虚拟机建立高可用集群。单机和集群版,保姆级教学_第6张图片

这里改个名方便用

[root@gree2 soft]# mv zookeeper-3.4.5-cdh5.14.2/ zookeeper345
虚拟机建立高可用集群。单机和集群版,保姆级教学_第7张图片

接着进入zookeeper345下的conf文件里面

[root@gree2 soft]# cd ./zookeeper345/conf

虚拟机建立高可用集群。单机和集群版,保姆级教学_第8张图片

复制里面的zoo_sample.cfg为zoo.cfg方便用

虚拟机建立高可用集群。单机和集群版,保姆级教学_第9张图片

虚拟机建立高可用集群。单机和集群版,保姆级教学_第10张图片

 进入zoo.cfg

[root@gree2 conf]# vi zoo.cfg 像我这样修改,目录路径可能不一样和你的路径一样就行
虚拟机建立高可用集群。单机和集群版,保姆级教学_第11张图片

保存退出后,回到zookeeper345的目录下建立datatmp

虚拟机建立高可用集群。单机和集群版,保姆级教学_第12张图片

 进入datatmp,里面是空的,建立一个文件myid

[root@gree2 zookeeper345]# cd ./datatmp/

 写入1,接着保存退出

虚拟机建立高可用集群。单机和集群版,保姆级教学_第13张图片

 最后配置环境

[root@gree2 conf]# vi /etc/profile,拉到最下面,写完保存退出

然后吧文件写入

[root@gree2 conf]# source /etc/profile
 

添加的两行如下,路径为自己的路径别搞错

export ZOOKEEPER_HOME=/opt/soft/zookeeper345
export PATH=$PATH:$ZOOKEEPER_HOME/bin
 


虚拟机建立高可用集群。单机和集群版,保姆级教学_第14张图片

 最后可以看单机版集群是否成功呢

输入命令

[root@gree2 conf]# zkServer.sh start
[root@gree2 conf]# zkServer.sh status
出现这种结果就是正确的

虚拟机建立高可用集群。单机和集群版,保姆级教学_第15张图片

 接着安装高可用多集群的方法,在原来的单机模式下继续进行。上面提到只要修改一下server里面的东西就行

[root@gree2 conf]# pwd
/opt/soft/zookeeper345/conf
进入conf目录下的zoo.cfg文件

[root@gree2 conf]# vi ./zoo.cfg 
虚拟机建立高可用集群。单机和集群版,保姆级教学_第16张图片

 我要建立三台集群就写三个ip,记住本身的写脚本的虚拟机是不用的,也可以用自己,你下面写谁的ip地址就会用谁,server。1的顺序代表的ip位置也可以不一样,你用那几个就写谁的ip,但是ip前的数字对应要记住后面要对应

虚拟机建立高可用集群。单机和集群版,保姆级教学_第17张图片

接着来到

[root@gree2 conf]# cd /usr/bin
的目录下写脚本就可以全局都用

虚拟机建立高可用集群。单机和集群版,保姆级教学_第18张图片

 写xsync

[root@gree2 bin]# vi xsync

写入

#!/bin/bash
argCount=$#
if [ $argCount == 0  ]; then
echo 'no args'
exit 0
fi

# 获取文件名称

f=$1
fname=`basename $f`
echo $fname

# 获取文件的绝对路径

pdir=`cd -P $(dirname $f  ); pwd`

echo $pdir

# 获取当前用户

user=`whoami`
echo $user

# 循环拷贝
for host in gree4 gree5 gree1    //这边代表运行这文件后循环拷贝到的集群
do
  echo "------$host------"
  rsync -av $pdir/$fname $user@$host:$pdir

done


 

虚拟机建立高可用集群。单机和集群版,保姆级教学_第19张图片

 给脚本赋权

[root@gree2 soft]# chmod 777 /usr/bin/xsync
安装ysync

[root@gree2 soft]# yum -y install ysync,每台虚拟机都要安装

接着运行脚本

可以回到soft的目录下

虚拟机建立高可用集群。单机和集群版,保姆级教学_第20张图片

 我这里三个虚拟机都安装成功呢

虚拟机建立高可用集群。单机和集群版,保姆级教学_第21张图片

 接着进入你的集群三台虚拟机中的、/opt/soft里面发现zookeeper345都有呢

虚拟机建立高可用集群。单机和集群版,保姆级教学_第22张图片

 接着继续拷贝环境profile

[root@gree6 bin]# xsync /etc/profile,这样显示成功
虚拟机建立高可用集群。单机和集群版,保姆级教学_第23张图片

 并且进入每一个虚拟机查看profile是不是都有的

虚拟机建立高可用集群。单机和集群版,保姆级教学_第24张图片

我倒这边发现一个问题我是在gree2的里面做的没影响两台虚拟机我写的一样,这里调回来

最后在每一台虚拟机里面的目录下,到datatmp1的目录下都有myid,进入myid

[root@gree4 datatmp]# pwd
/opt/soft/zookeeper345/datatmp


虚拟机建立高可用集群。单机和集群版,保姆级教学_第25张图片

 之前配置server.1的ip地址是gree4,所以gree4里面的myid写1,同理虚拟机建立高可用集群。单机和集群版,保姆级教学_第26张图片

 虚拟机建立高可用集群。单机和集群版,保姆级教学_第27张图片

 虚拟机建立高可用集群。单机和集群版,保姆级教学_第28张图片

 这样三台虚拟机全部配置完成,每一台虚拟机运行下面的命令

[root@gree4 conf]# zkServer.sh start
[root@gree4 conf]# zkServer.sh status

虚拟机建立高可用集群。单机和集群版,保姆级教学_第29张图片

 其他虚拟机一样

有用的大家点个赞收藏一下谢谢

你可能感兴趣的:(zookeeper,分布式,云原生)