【头歌】ZooKeeper之分布式环境搭建 答案

专栏已收集头歌大数据所有答案

第1关 ZooKeeper之仲裁模式 答案

答案

安装ZooKeeper第1个节点,与standalone安装方法相同(且开发环境中已经安装,安装目录/opt/zookeeper-3.4.12),这里不再赘述

java 复制代码
cd /opt/zookeeper-3.4.12
vi /opt/zookeeper-3.4.12/conf/zoo.cfg

将zoo.cfg配置文件修改如下配置:

java 复制代码
dataDir=/opt/zookeeper-3.4.12/tmp/data
 
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890

其中,每一行分别是ip,通信端口,选举leader端口。

安装ZooKeeper第1个节点,与standalone安装方法相同(且开发环境中已经安装,安装目录/opt/zookeeper-3.4.12),这里不再赘述

java 复制代码
cd /opt/zookeeper-3.4.12
vi /opt/zookeeper-3.4.12/conf/zoo.cfg

将zoo.cfg配置文件修改如下配置:

java 复制代码
dataDir=/opt/zookeeper-3.4.12/tmp/data
 
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2890:3890

其中,每一行分别是ip,通信端口,选举leader端口。

修改后配置文件如下图所示:

指定myid。在配置项dataDir指定目录下,新建myid文件,并写入数字1(即第1个服务器节点),使用以下命令:

java 复制代码
mkdir -p /opt/zookeeper-3.4.12/tmp/data/
echo 1 > /opt/zookeeper-3.4.12/tmp/data/myid
cat /opt/zookeeper-3.4.12/tmp/data/myid

将ZooKeeper的安装目录复制2个副本(即第2个和第3个服务器节点,命名可根据实际情况更改),使用如下命令(可根据实际安装目录修改):

java 复制代码
cp -r /opt/zookeeper-3.4.12 /opt/zookeeper-3.4.12-01
cp -r /opt/zookeeper-3.4.12 /opt/zookeeper-3.4.12-02
cp -r /opt/zookeeper-3.4.12 /opt/zookeeper-3.4.12-03

第一个节点修改zoo.cfg

java 复制代码
vi /opt/zookeeper-3.4.12-01/conf/zoo.cfg 
dataDir=/opt/zookeeper-3.4.12-01/tmp/data

第二个节点修改zoo.cfg

java 复制代码
vi /opt/zookeeper-3.4.12-02/conf/zoo.cfg 
 
clientPort=2182
dataDir=/opt/zookeeper-3.4.12-02/tmp/data

第二个节点添加myid文件

java 复制代码
echo 2 > /opt/zookeeper-3.4.12-02/tmp/data/myid
cat /opt/zookeeper-3.4.12-02/tmp/data/myid

第三个节点 修改zoo.cfg

java 复制代码
vi /opt/zookeeper-3.4.12-03/conf/zoo.cfg 
 
clientPort=2183
dataDir=/opt/zookeeper-3.4.12-03/tmp/data
 

第三个节点添加myid文件

java 复制代码
echo 3 > /opt/zookeeper-3.4.12-03/tmp/data/myid
cat /opt/zookeeper-3.4.12-03/tmp/data/myid

分别三个启动节点

java 复制代码
/opt/zookeeper-3.4.12-01/bin/zkServer.sh start
/opt/zookeeper-3.4.12-02/bin/zkServer.sh start
/opt/zookeeper-3.4.12-03/bin/zkServer.sh start

利用jps命令查看当前进程,如下图所示,则伪分布式安装成功

第2关:伪分布式体验及分布式安装配置 答案

第一关操作成功基础上操作

启动节点

java 复制代码
/opt/zookeeper-3.4.12/bin/zkServer.sh start
/opt/zookeeper-3.4.12-01/bin/zkServer.sh start
/opt/zookeeper-3.4.12-02/bin/zkServer.sh start
/opt/zookeeper-3.4.12-03/bin/zkServer.sh start
java 复制代码
#客户端连接服务器
zkCli.sh -server 127.0.0.1:2181
#创建节点
create /quorum_test "quorum_test"
#关闭节点
quit
 
 
zkCli.sh -server 127.0.0.1:2182
create /quorum_test "quorum_test"
quit
 
 
zkCli.sh -server 127.0.0.1:2183
create /quorum_test "quorum_test"
quit
相关推荐
Theodore_10226 分钟前
大数据(2) 大数据处理架构Hadoop
大数据·服务器·hadoop·分布式·ubuntu·架构
簌簌曌1 小时前
CentOS7 + JDK8 虚拟机安装与 Hadoop + Spark 集群搭建实践
大数据·hadoop·spark
Theodore_10223 小时前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
Aurora_NeAr3 小时前
Apache Spark详解
大数据·后端·spark
IvanCodes5 小时前
六、Sqoop 导出
大数据·hadoop·sqoop
G探险者5 小时前
《深入理解 Nacos 集群与 Raft 协议》系列五:为什么集群未过半,系统就不可用?从 Raft 的投票机制说起
分布式·后端
G探险者5 小时前
《深入理解 Nacos 集群与 Raft 协议》系列一:为什么 Nacos 集群必须过半节点存活?从 Raft 协议说起
分布式·后端
G探险者5 小时前
《深入理解 Nacos 集群与 Raft 协议》系列四:日志复制机制:Raft 如何确保提交可靠且幂等
分布式·后端
G探险者5 小时前
《深入理解 Nacos 集群与 Raft 协议》系列三:日志对比机制:Raft 如何防止数据丢失与错误选主
分布式·后端
G探险者5 小时前
《深入理解 Nacos 集群与 Raft 协议》系列二:Raft 为什么要“选主”?选主的触发条件与机制详解
分布式·后端