分布式ZooKeeper-3.4.10集群安装

ZooKeeper是一个为分布式应用所设计的开源协调服务,其设计目的是为了减轻分布式应用程序所承担的协调任务。它可以为用户提供同步、配置管理、分组和命名等服务。

jstorm需要zk配合使用,记录安装文档。

一、基础环境:

JDK    :1.8.0_65 (要求1.6+)

ZooKeeper:3.4.10

主机数:3(要求3+,且必须是奇数,因为ZooKeeper的选举算法)

主机名 IP地址 JDK ZooKeeper myid
Master 10.116.33.109 1.8.0_65 server.1 1
Slave1 10.27.185.72 1.8.0_65 server.2 2
Slave2 10.25.203.67 1.8.0_65 server.3 3

二、节点上安装配置:

下载并解压ZooKeeper

wget 'http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz'
tar zxvf zookeeper-3.4.10.tar.gz

设置zoo.cfg

$ZOOKEEPER_HOME 路径: /data/jstorm/zookeeper-3.4.10

cd $ZOOKEEPER_HOME/conf/
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/home/fesh/data/zookeeper
# the port at which the clients will connect
clientPort=2181

 server.1=master:2888:3888
 server.2=slave1:2888:3888
 server.3=slave2:2888:3888

zk端口号说明

1、2181:对cline端提供服务

2、3888:选举leader使用

3、2888:集群内机器通讯使用(Leader监听此端口)

设置myid

在节点配置的dataDir指定的目录下面,创建一个myid文件,里面内容为一个数字,用来标识当前主机,$ZOOKEEPER_HOME/conf/zoo.cfg文件中配置的server.X,则myid文件中就输入这个数字X。(即在每个节点上新建并设置文件myid,其内容与zoo.cfg中的id相对应)这里master节点为 1

mkdir -p /data/zookeeper
cd /data/zookeeper
touch myid
echo "1" > myid

启动服务

每台服务器上$ZOOKEEPER_HOME/bin目录下执行

 ./zkServer.sh start

查看状态

./zkServer.sh status


分布式ZooKeeper-3.4.10集群安装_第1张图片
 

你可能感兴趣的:(Hadoop)