Zookeeper安装

在一台机器上模拟3个 zk server的集群安装 准备内容: zookeeper-3.4.8.tar.gz

1.上传安装文件

zookeeper下载地址

# mkdir /opt/zookeeper-1 /opt/zookeeper-2 /opt/zookeeper-3

# cd /home
# rz

# cp /home/zookeeper-3.4.8.tar.gz /opt/zookeeper-1
# cp /home/zookeeper-3.4.8.tar.gz /opt/zookeeper-2
# cp /home/zookeeper-3.4.8.tar.gz /opt/zookeeper-3

2.安装文件

# tar zxvf /opt/zookeeper-1/zookeeper-3.4.8.tar.gz -C /opt/zookeeper-1
# tar zxvf /opt/zookeeper-2/zookeeper-3.4.8.tar.gz -C /opt/zookeeper-2
# tar zxvf /opt/zookeeper-3/zookeeper-3.4.8.tar.gz -C /opt/zookeeper-3

3.配置

每个zk的instance,都需要设置独立的数据存储目录、日志存储目录

编辑zookeeper-1的配置文件

# cd /opt/zookeeper-1/zookeeper-3.4.8/conf/
# cp zoo_sample.cfg zoo.cfg

创建数据和日志文件夹

# mkdir /opt/zookeeper-1/data /opt/zookeeper-1/logs

编辑zoo.cfg文件

# vim /opt/zookeeper-1/zookeeper-3.4.8/conf/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=/opt/zookeeper-1/data

### the log directory
dataLogDir=/opt/zookeeper-1/logs

### the port at which the clients will connect
clientPort=2181

###
server.1=127.0.0.1:2287:3387
server.2=127.0.0.1:2288:3388
server.3=127.0.0.1:2289:3389

### the maximum number of client connections. increase this if you need to handle more clients
#maxClientCnxns=60

# :wq!

同理,编辑zookeeper-2,zookeeper-3的配置文件

# mkdir /opt/zookeeper-2/data /opt/zookeeper-2/logs
# cp /opt/zookeeper-2/zookeeper-3.4.8/conf/zoo_sample.cfg /opt/zookeeper-2/zookeeper-3.4.8/conf/zoo.cfg
# vim /opt/zookeeper-2/zookeeper-3.4.8/conf/zoo.cfg

### the directory where the snapshot is stored. do not use /tmp for storage, /tmp here is just example sakes.
dataDir=/opt/zookeeper-2/data

### the log directory
dataLogDir=/opt/zookeeper-2/logs

### the port at which the clients will connect
clientPort=2182

###
server.1=127.0.0.1:2287:3387
server.2=127.0.0.1:2288:3388
server.3=127.0.0.1:2289:3389

# :wq!
# mkdir /opt/zookeeper-3/data /opt/zookeeper-2/logs
# cp /opt/zookeeper-3/zookeeper-3.4.8/conf/zoo_sample.cfg /opt/zookeeper-3/zookeeper-3.4.8/conf/zoo.cfg
# vim /opt/zookeeper-3/zookeeper-3.4.8/conf/zoo.cfg

### the directory where the snapshot is stored. do not use /tmp for storage, /tmp here is just example sakes.
dataDir=/opt/zookeeper-3/data

### the log directory
dataLogDir=/opt/zookeeper-3/logs

### the port at which the clients will connect
clientPort=2183

###
server.1=127.0.0.1:2287:3387
server.2=127.0.0.1:2288:3388
server.3=127.0.0.1:2289:3389

# :wq!

注意:因为是在一台机器上模拟集群,所以端口不能重复,这里用2181~2183,2287~2289,以及3387~3389相互错开.另外每个zk的instance,都需要设置独立的数据存储目录、日志存储目录,所以dataDir、dataLogDir这二个节点对应的目录,需要手动先创建好

增加myid文件

在每个zk server配置文件的dataDir所对应的目录下,必须创建一个名为myid的文件,其中的内容必须与zoo.cfg中server.x 中的x相同,即:

/opt/zookeeper-1/data/myid 中的内容为1,对应server.1中的1 /opt/zookeeper-2/data/myid 中的内容为2,对应server.2中的2 /opt/zookeeper-3/data/myid 中的内容为3,对应server.3中的3

# vim /opt/zookeeper-1/data/myid

1

:wq!

4.验证

开启zk服务

# /opt/zookeeper-1/zookeeper-3.4.8/bin/zkServer.sh start
# /opt/zookeeper-2/zookeeper-3.4.8/bin/zkServer.sh start
# /opt/zookeeper-3/zookeeper-3.4.8/bin/zkServer.sh start

查看zk进程

# jps

测试zk服务

# ./zkCli.sh -server 127.0.0.1:2181
# ./zkCli.sh -server 127.0.0.1:2182
# ./zkCli.sh -server 127.0.0.1:2183

5.其它

使用zookeeper时,需要开放2181端口

# firewall-cmd --zone=public --remove-port=2181/tcp --permanent
# firewall-cmd --reload

results matching ""

    No results matching ""