赞
踩
Zookeeper 引入了 leader、follower 和 observer 这 3 种角色
Zookeeper 集群中的所有机器通过一个 leader 选举过程来选定一台名为 leader 的机器,leader 既可以为客户端提供写服务,又可以提供读服务。
follower 和 observer 都只能提供读服务。follower 和 observer 唯一的区别在于 observer 机器不参与 leader 的选举过程,也不参与写操作的“过半写成功”策略
目录
1、将zookeeper-3.4.5解压到simple目录下
2、进入到zookeeper安装目录下,并创建文件data_sing,在data_sing文件下新建myid文件并进行编译
3、cdata_sing_2 文件夹,并在文件夹下新建 myid 文件,为 myid 文件赋值 2
4、通过相同步骤在zookeeper安装目录下新建data_sing_3
5、进入 zookeeper-3.4.5/conf 目录下,复制 zoo_sample.cfg 文件并改名为 zoo.cfg
1)在ZooKeeper 的安装目录下创建 data_sing 和 logs 文件夹,
2)在 master 节点的 data_sing 目录中创建文件 myid,将 1 写入该节点的 myid
3)在 master 节点的/simple/zookeeper3.4.5/conf 下,复制并修改zoo.cfg文件
1)从 master 节点复制 Zookeeper 安装目录到 slave1、slave2 节点
2)在 slave1 节点上修改 zookeeper 目录的权限用户为 hadoop 用户
4)在 slave2 节点上修改 zookeeper 目录的权限用户为 hadoop 用户
1)启动 Zookeeper,在/simple/zookeeper-3.4.5/bin 下执行命令
2)查看服务状态及集群,重启 ZooKeeper,停止 ZooKeeper
tar –zxvf zookeeper-3.4.5.tar.gz –C /simple/
- #切换zookeeper目录下
- cd /simple/zookeeper-3.4.5/
- #创建data_sing目录
- mkdir data_sing
- #新建myid文件
- touch myid
- #对myid文件进行编译
- echo 1 >> myid
- mkdir data_sing_2
- cd data_sing_2
- touch myid
- echo 2 >> myid
- cat myid
- mkdir data_sing_3
- cd data_sing_3
- touch myid
- echo 3 >> myid
- cat myid
- #复制zoo_sample.cfg文件并改名为zoo.cfg
- cp zoo_sample.cfg zoo.cfg
- dataDir=/simple/zookeeper-3.4.5/data_sing
- clientPort=2181
- # 设置伪集群配置参数,添加伪集群配置,在文件末尾增加:
- server.1=127.0.0.1:2222:2223
- server.2=127.0.0.1:3333:3334
- server.3=127.0.0.1:4444:4445
- #将zoo.cfg文件复制第二份,并进行修改
- cp zoo.cfg zk2.cfg
- # 修改zk2.cfg
- vi zk2.cfg
-
- dataDir=/simple/zookeeper-3.4.5/data_sing_2
- #the port at which the clients will connect
- clientPort=2182
- #将zoo.cfg文件复制第三份,并进行修改
- cp zoo.cfg zk3.cfg
- # 修改zk3.cfg
- vi zk3.cfg
-
- dataDir=/simple/zookeeper-3.4.5/data_sing_3
- #the port at which the clients will connect
- clientPort=2183
- #切换到zookeeper/bin目录下
- cd /simple/zookeeper-3.4.5/bin
- #启动zookeeper集群
- ./zkServer.sh start
- #启动第zk2.cfg
- ./zkServer.sh start zk2.cfg
- #启动第zk3.cfg
- ./zkServer.sh startzk3.cfg
- #查看进程列表
- jps
- #切换目录
- cd /simple/zookeeper-3.4.5/
- #同时创建data_sing和logs文件夹
- mkdir data_sing && mkdir logs
- cd data_sing
- touch myid
- echo 1 >> myid
- # 查看myid内容
- cat myid
- cd /simple/zookeeper-3.4.5/conf/
- #目录conf 下文件zoo_sample.cfg 复制成zoo.cfg
- cp zoo_sample.cfg zoo.cfg
- # 修改配置文件zoo.cfg
- vi zoo.cfg
- dataDir=/simple/zookeeper-3.4.5/data_sing
- clientPort=2181
- 配置文件zoo.cfg末尾添加以下代码
- server.1=master:2222:2223
- server.2=slave1:3333:3334
- server.3=slave2:4444:4445
- #master节点下的zookeeper分发到slave1和slave2
- scp -r /simple/zookeeper-3.4.5/ root@slave1:/simple/zookeeper-3.4.5/
- scp -r /simple/zookeeper-3.4.5/ root@slave1:/simple/zookeeper-3.4.5/
chown -R hadoop:hadoop /simple/zookeeper-3.4.5
- mkdir data_sing
- cd data_sing
- touch myid
- echo 2 >> myid
chown -R hadoop:hadoop /simple/zookeeper-3.4.5
- mkdir data_sing
- cd data_sing
- touch myid
- echo 3 >> myid
- # 查看myid文件内容
- cat myid
在 master、slave1、slave2 三个节点上增加环境变量配置
- vi /etc/profile
- # 在文件末尾插入语句:
- export ZOOKEEPER_HOME=/simple/zookeeper-3.4.5
- export PATH=$PATH:ZOOKEEPER_HOME/bin
Zookeeper 命令行工具类似于 Linux 的 Shell 环境,不过功能不及 Shell,但是使用它可以简单地对 ZooKeeper 进行访问、数据创建、数据修改等操作。
节点就是一台服务器,数据就是这台服务器实际地址。使用 zkCli.sh-server 127.0.0.1:2181 连接到 ZooKeeper 服务,连接成功后,并通过 ls、create、de;ete、get、set 等命令操作这些节点。客户端命令常用的有:
- 1)显示根节点信息
- ls /
- 2)创建节点,并设置初始内容
- create /zk test;
- 3)获得文件内容:(获得 zk 所包含的信息)
- get /zk
- 4)修改文件内容
- set /zk “zkbak”。对 zk 所关联的字符串进行设置。
- 5)删除文件
- delete /zk。将节点 znode 删除(只能删除没有子节点的节点)。rmr /zk 删除节点及所有的子节点。
- 6)使用 zookeeper 客户链接 zookeeper 服务器
- ./zkCli.sh –server IP:192.168.100.110:2181
- 7)退出客户端
- quit
- 8)帮助命令
- help
./zkServer.sh start
- #启动zookeeper集群
- ./zkServer.sh start
- #重新启动zookeeper集群
- ./zkServer.sh restart
- #停止zookeeper集群
- ./zkServer.sh stop
- #查看zookeeper集群状态
- ./zkServer.sh status
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。