Zookeeper3.5.7集群搭建

Zookeeper集群搭建

集群规划:目前我有hadoop1、hadoop2、hadoop3三个节点,都部署Zookeeper

资源:

zookeeper3.5.7

补充知识:

一、上传Zookeeper

zookeeper上传到虚拟机的/opt/software目录下,专门存放软件包的位置

rz

选择文件zookeeper进上传

补充知识:主要是通过lrzsz

  • sudo yum install lrzsz
    

如果上传时,出现apache-zookeeper-3.5.7-bin.tar.gz was skipped错误,说明权限不够

在这里插入图片描述

可以用sudo rz,因为上传的目录的所有权不是你

sudo rz

在这里插入图片描述

在这里插入图片描述

​ 也可以修改拥有者

sudo chown 用户名:用户名 -R 目录

-R 是递归将该目录下的文件的拥有者全部一同修改

在这里插入图片描述

二、解压Zookeeper

apache-zookeeper-3.5.7-bin.tar.gz解压到/opt/module

tar -zxvf /opt/software/apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/

并进行重命名为zookeeper-3.5.7

mv  apache-zookeeper-3.5.7-bin zookeeper-3.5.7

三、进入Zookeeper中创建一个zkData文件夹

1、在/opt/module/zookeeper-3.5.7中创建一个zkData,用来保存zookeeper的数据

cd /opt/module/zookeeper-3.5.7
mkdir zkData

在这里插入图片描述

2、在zkData目录下创建一个myid文档(作用:服务器的编号)

vim myid

在里面添加数值,作为你的主机的固定id号,一般从1开始依次往后递增,并分别在hadoop2、hadoop3中添加myid为2、3

1

注意:上下不要有空行,左右不要有空格

四、进入conf中,将zoo_simple.cfg进行重命名

1、重新命名/opt/module/zookeeper-3.5.7/confzoo_sample.cfg,改为zoo.cfg

mv zoo_sample.cfg  zoo.cfg

在这里插入图片描述

五、配置zoo.cfg

1、打开zoo.cfg

vim zoo.cfg

修改数据存储路径

dataDir=/opt/module/zookeeper-3.5.7/zkData

添加集群节点信息

server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
server.3=hadoop3:2888:3888

2、补充知识:

  • zoo.cfg详细解读

在这里插入图片描述

注意:myid中这个文件时放在==dataDir==目录下的,zookeeper启动时会读取该文件,拿到里面的数据与zoo.cfg配置文件进行比较那个是server,因此为什么不能myid中上下左右不要空格了

六、进行分发zookeeper

将配置好的zookeeper分发到其他节点上

可以通过scp、rsync都是可以的

详细请看linux远程拷贝命令

这里分别用scp和rsync进行分发

scp -rv /opt/module/zookeeper-3.5.7 hadoop2:/opt/module/
rsync -av /opt/module/zookeeper-3.5.7 hadoop3:/opt/module/

注意:hadoop2、hadoop3是我自己的主机名,在/etc/hostname进行修改了的,并在/etc/hosts进行映射的

可看下面详细教程

hadoop3.3.0集群搭建(详细教程)

七、修改hadoop2和hadoop3的myid

分别将修改成自己对应的myid,hadoop2和hadoop3myid是hadoop1的

八、集群操作

1、分别在Hadoop1、hadoop2、hadoop3中执行下面命令启动zookeeper

/opt/module/zookeeper-3.5.7/bin/zkServer.sh start

在这里插入图片描述

在这里插入图片描述

停止zkServer.sh stop

2、查看状态,需要在每一个节点中查看太麻烦了

/opt/module/zookeeper-3.5.7/bin/zkServer.sh status

在这里插入图片描述

在这里插入图片描述

九、启动、停止脚本

1、在$HOME/bin中创建脚本zk.sh,如果没有bin目录,需要自己创建一个

vim zk.sh
#!/bin/bash
case $1 in
"start"){

	for i in hadooop1 hadoop2 hadoop3
	do
	echo "-----启动$i------"
		ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
	done
	}
;;
"stop"){
	for i in hadoop1 hadoop2 hadoop3
	do
		echo "----停止$i----"
		ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
	done
	}
;;
"status"){
	for i in hadoop1 hadoop2 hadoop3
	do
		echo "-----查看$i状态-----"
		ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
	done
	}
;;
esac

注意:目前文件是没有执行权限的,默认创建的文件都是没有执行权限,因此我们需要增加文件的执行权限

相关知识可以查看umask

Linux——umask命令

2、提高权限

chmod u+x zk.sh

$HOME/bin是在PATH路径上的,因此可以任何地方能执行
在这里插入图片描述

3、使用

zk.sh start

在这里插入图片描述

zk.sh status

在这里插入图片描述

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值