ZooKeeper的安装与部署
注意点:最新版本3.5.5开始,带有bin名称的包才是我们想要的下载可以直接使用的里面有编译后的二进制的包,而之前的普通的tar.gz的包里面是只是源码的包无法直接使用。
一、单机安装
1.1 下载
进入要下载的版本的目录,选择.tar.gz文件下载
下载链接:http://archive.apache.org/dist/zookeeper/
1.2 安装
使用tar解压要安装的目录即可,以3.4.13版本为例
这里以解压到/opt/data/software,实际安装根据自己的想安装的目录修改(注意如果修改,那后边的命令和配置文件中的路径都要相应修改)
tar -zxf zookeeper-3.4.13.tar.gz -C /opt/data/software
1.3 配置
在主目录下创建data和logs两个目录用于存储数据和日志:
cd /opt/data/zookeeper-3.4.13
mkdir data
mkdir logs
在conf目录下新建zoo.cfg文件,写入以下内容保存:
tickTime=2000
dataDir=/opt/data/zookeeper-3.4.13/data
dataLogDir=/opt/data/zookeeper-3.4.13/logs
clientPort=2181
1.4 启动和停止
进入bin目录,启动、停止、重启分和查看当前节点状态(包括集群中是何角色)别执行:
./zkServer.sh start
./zkServer.sh stop
./zkServer.sh restart
./zkServer.sh status
二、伪集群模式
伪集群模式就是在同一主机启动多个zookeeper并组成集群,下边以在192.168.220.128主机上创3个zookeeper组集群为例。
将通过第一大点安装的zookeeper,复制成zookeeper1/zookeeper2/zookeeper3三份
**myid文件,其内容分别为1,2,3。然后分别在这三台机器上启动zk进程,这样我们便将zk集群启动了起来。**
2.1 zookeeper1配置
zookeeper1配置文件conf/zoo.cfg修改如下:
复制代码
tickTime=2000
dataDir=/opt/data/zookeeper1/data
dataLogDir=/opt/data/zookeeper1/logs
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.128:4888:5888
server.3=192.168.220.128:6888:7888
复制代码
zookeeper1的data/myid配置如下:
echo '1' > data/myid
2.2 zookeeper2配置
zookeeper2配置文件conf/zoo.cfg修改如下:
复制代码
tickTime=2000
dataDir=/opt/data/zookeeper2/data
dataLogDir=/opt/data/zookeeper2/logs
clientPort=3181
initLimit=5
syncLimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.128:4888:5888
server.3=192.168.220.128:6888:7888
复制代码
zookeeper2的data/myid配置如下:
echo '2' > data/myid
2.3 zookeeper3配置
zookeeper3配置文件conf/zoo.cfg修改如下:
复制代码
tickTime=2000
dataDir=/opt/data/zookeeper3/data
dataLogDir=/opt/data/zookeeper3/logs
clientPort=4181
initLimit=5
syncLimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.128:4888:5888
server.3=192.168.220.128:6888:7888
复制代码
zookeeper3的data/myid配置如下:
echo '3' > data/myid
最后使用1.4的命令把三个zookeeper都启动即可,启动顺序随意没要求。
三、集群模式
集群模式就是在不同主机上安装zookeeper然后组成集群的模式;下边以在192.168.220.128/129/130三台主机为例。
将第1.1到1.3步中安装好的zookeeper打包复制到129和130上,并都解压到同样的目录下。
3.1 conf/zoo.cfg文件修改
三个zookeeper的conf/zoo.cfg修改如下:
复制代码
tickTime=2000
dataDir=/opt/data/zookeeper-3.4.13/data
dataLogDir=/opt/data/zookeeper-3.4.13/logs
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.220.128:2888:3888
server.2=192.168.220.129:2888:3888
server.3=192.168.220.130:2888:3888
复制代码
对于129和130,由于安装目录都是zookeeper-3.4.13所以dataDir和dataLogDir不需要改变,又由于在不同机器上所以clientPort也不需要改变
所以此时129和130的conf/zoo.cfg的内容与128一样即可。
3.2 data/myid文件修改
128 data/myid修改如下:
echo '1' > data/myid
129 data/myid修改如下:
echo '2' > data/myid
130 data/myid修改如下:
echo '3' > data/myid
最后使用1.4的命令把三个zookeeper都启动即可,启动顺序随意没要求。