Zookeeper 完全分布式(3.5.7)部署(清爽版)

1. 分布式部署

1.1 集群规划

服务器hadoop102 服务器hadoop103 服务器hadoop104
Zookeeper Zookeeper Zookeeper Zookeeper

1.2 解压安装

1.2.1 上传安装包

上传压缩包到 /opt/software(其他目录也可,但下面的操作路径都得改)

压缩包下载地址

1.2.2 解压安装包

[harry@hadoop102 software]$ tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/

1.2.3 修改文件名(可选)

[harry@hadoop102 module]$ mv apache-zookeeper-3.5.7-bin/ zookeeper

1.2.4 配置服务器编号

# 在/opt/module/zookeeper-3.5.7/这个目录下创建zkData
[harry@hadoop102 zookeeper]$ mkdir zkData

# 在/opt/module/zookeeper-3.5.7/zkData目录下创建一个myid的文件
[harry@hadoop102 zkData]$ vim myid

# 在文件中添加与server对应的编号:
2

1.2.5 配置 zoo.cfg 文件

# 重命名/opt/module/zookeeper-3.5.7/conf这个目录下的zoo_sample.cfg为zoo.cfg
[harry@hadoop102 conf]$ mv zoo_sample.cfg zoo.cfg

# 打开zoo.cfg文件,并修改配置
[harry@hadoop102 conf]$ vim zoo.cfg
####### 修改:
dataDir=/opt/module/zookeeper/zkData
#######################新增cluster##########################
server.2=hadoop102:2888:3888
server.3=hadoop103:2888:3888
server.4=hadoop104:2888:3888

1.2.6 分发/opt/module/zookeeper-3.5.7目录内容到hadoop103、hadoop104

[harry@hadoop102 conf]$ scp -r /opt/module/zookeeper-3.5.7 hadoop103:/opt/module/
[harry@hadoop102 conf]$ scp -r /opt/module/zookeeper-3.5.7 hadoop104:/opt/module/

1.2.7 分别修改hadoop103、hadoop104上的myid文件中内容为3、4

1.2.8 启动 zk

[harry@hadoop102 zookeeper]$ bin/zkServer.sh start
[harry@hadoop103 zookeeper]$ bin/zkServer.sh start
[harry@hadoop104 zookeeper]$ bin/zkServer.sh start

1.2.9 查看状态

[harry@hadoop102 zookeeper]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/module/zookeeper/bin/../conf/zoo.cfg
Mode: follower
[harry@hadoop103 zookeeper]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/module/zookeeper/bin/../conf/zoo.cfg
Mode: leader
[harry@hadoop104 zookeeper]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/module/zookeeper/bin/../conf/zoo.cfg
Mode: follower

2. zk 集群启动停止脚本(可选)

2.1 在hadoop102的/home/harry/bin目录下创建脚本

[harry@hadoop102 bin]$ vim zk.sh

#!/bin/bash

case $1 in
"start"){
	for i in hadoop102 hadoop103 hadoop104
	do
        echo ---------- zookeeper $i 启动 ------------
		ssh $i "/opt/module/zookeeper/bin/zkServer.sh start"
	done
};;
"stop"){
	for i in hadoop102 hadoop103 hadoop104
	do
        echo ---------- zookeeper $i 停止 ------------    
		ssh $i "/opt/module/zookeeper/bin/zkServer.sh stop"
	done
};;
"status"){
	for i in hadoop102 hadoop103 hadoop104
	do
        echo ---------- zookeeper $i 状态 ------------    
		ssh $i "/opt/module/zookeeper/bin/zkServer.sh status"
	done
};;
esac

# 赋予权限
[harry@hadoop102 bin]$ chmod 777 zk.sh

# 脚本使用
[harry@hadoop102 module]$ zk.sh start
[harry@hadoop102 module]$ zk.sh stop

3. 客户端命令行操作

命令基本语法 功能描述
help 显示所有操作命令
ls path 使用 ls 命令来查看当前znode的子节点 -w 监听子节点变化 -s 附加次级信息
create 普通创建 -s 含有序列 -e 临时(重启或者超时消失)
get path 获得节点的值 -w 监听节点内容变化 -s 附加次级信息
set 设置节点的具体值
stat 查看节点状态
delete 删除节点
deleteall 递归删除节点

参考 blog

你可能感兴趣的:(zookeeper,zookeeper,分布式,linux)