集群安装


集群规划:在那些机器上部署集群(本机 | 3台分布式 | 5、11台分布式等 )一般学习集群取3台


安装:

  1. 解压到/opt/moudle目录
tar -zxvf apache-zookeeper-3.5.7- bin.tar.gz -C /opt/moudle/
## 重命名方便使用
mv apache-zookeeper-3.5.7- bin.tar.gz zookeeper-3.5.7
  1. 配置服务器编号
    2.1. 在/opt/moudle/zookeeper-3.5.7/这个目录下创建 zkData
 mkdir zkData

      2.2.在/opt/moudle/zookeeper-3.5.7/zkData 目录下创建一个 myid 的文件

 vim myid
 ## 机器依照编号自己赋值
 ## 如第一个机器 Hadoop102写2 Hadoop103写3 Hadoop104写4等等
 2

3.拷贝配置好的 zookeeper 到其他机器上 xsync
4. 配置zoo.cfg文件

  1. 重命名/opt/moudle/zookeeper-3.5.7/conf 这个目录下的 zoo_sample.cfg 为 zoo.cfg
  mv zoo_sample.cfg zoo.cfg
  1. 修改zoo.cfg
  vim zoo.cfg
  ### 修改存储路劲配置
  dataDir=/opt/module/zookeeper-3.5.7/zkData
  ###增加以下
  #######################cluster##########################
  server.2=hadoop102:2888:3888
  server.3=hadoop103:2888:3888
  server.4=hadoop104:2888:3888
  1. 配置参数解读
    server.A=B:C:D
A 是一个数字,表示这个是第几号服务器
集群模式下配置一个文件myid,这个文件在 dataDir 目录下,这个文件里面有一个数据就是 A 的值,Zookeeper 启动时读取此文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是哪个 server
B:服务器ip地址
C:Follower与leader服务器交换信息端口
D 是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口
  1. 同步zoo.cfg 配置文件
    xsync zoo.cfg
  2. 集群操作
    分别启动Zookeeper 三台机器
    bin/zkServer.sh start
  3. ZK 集群启动停止脚本
  4. 在hadoop102 的/home/atguigu/bin 目录下创建脚本vim zk.sh
  5. 内容
#!/bin/bash

case $1 in 
"start"){
  for i in hadoop102 hadoop103 hadoop104
  do
    echo ---------- zookeeper $i 启动 ------------
    ssh   $i   "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
  done
};;

"stop"){
for i in hadoop102 hadoop103 hadoop104
do
  echo ---------- zookeeper $i 停止 ------------
  ssh   $i   "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
done
};;
"status"){
for i in hadoop102 hadoop103 hadoop104
do
  echo ---------- zookeeper $i 状态 ------------
  ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
done
};;
esac
  1. 增加脚本权限
    chmod u+x zk.sh
  2. 启动脚本
zk.sh start
  1. 停止脚本
    zk.sh stop

Zookeeper常用命令

一、zk服务命令

  1. 启动ZK服务: bin/zkServer.sh start
  2. 查看ZK服务状态: bin/zkServer.sh status
  3. 停止ZK服务: bin/zkServer.sh stop
  4. 重启ZK服务: bin/zkServer.sh restart
  5. 连接服务器: zkCli.sh -server 127.0.0.1:2181

二、连接zk Linux环境下:

eg、zkCli.sh -server 127.0.0.1:2181
连接成功后,系统会输出 ZooKeeper 的相关环境以及配置信息
命令行工具的一些常用操作命令如下:
1.ls -- 查看某个目录包含的所有文件,例如:
ls /
2.ls2 -- 查看某个目录包含的所有文件,与ls不同的是它查看到time、version等信息,例如:
ls2 /
3.create -- 创建znode,并设置初始内容,例如:
create /test "test"
4.get -- 获取znode的数据,如下:
get /test
5.set -- 修改znode内容,例如:
set /test "ricky"
6.delete -- 删除znode,例如:
delete /test
7.quit -- 退出客户端
8.help -- 帮助命令