zookeeper的安装
ZooKeeper安装模式
1、单机模式:只在一个节点上安装,只能启动这个框架的部分服务
2、伪分布式:在一个节点上安装模拟集群环境,能启动这个框架大部分甚至全部的服务
3、完全分布式:在集群中安装,启动这个框架全部的服务
单机模式安装
安装环境:CentOS7
1、创建并进入目录
cd /home/software/
2、关闭防火墙
systemctl status firewalld 检查防火墙状态
systemctl stop firewalld 关闭防火墙
systemctl disabled firewalld 关闭防火墙开机自启动
3、安装JDK
4、下载zookeeper安装包
wget tar包地址
wget https://downloads.apache.org/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
wget http://bj-yzjd.ufile.cn-north-02.ucloud.cn/zookeeper-3.4.8.tar.gz
5、解压安装
tar -xvf zookeeper-3.4.8.tar.gz
6、进入Zookeeper安装包的conf目录
cd zookeeper-3.4.8/conf
7、赋值配置文件
cp zoo_sample.cfg zoo.cfg
8、编辑zoo.cfg
vim zoo.cfg
修改
dataDir=/home/software/zookeeper-3.4.8/tmp
该目录是zk用作数据存储的目录,zk相关的数据都存储在这个目录里面。
9、进入Zookeeper安装目录的bin目录下
cd …/bin
10、启动Zookeeper
sh zkServer.sh start
11、查看在运行的Java进程
jps
1376 QuorumPeerMain 这个是zk进程
12、查看Zookeeper的状态
sh zkServer.sh status
单机模式下应该出现 Mode:standalone
伪分布式安装
可以在一台机器上启动一个zookeeper集群
需要创建三份不同的配置文件zoo1.cfg,zoo2.cfg,zoo3.cfg
分别做以下配置
zoo1.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zk1/data
dataLogDir=/tmp/zk1/log
clientPort=2181
server.1=localhost:2888:3888
server.2=localhost:2899:3899
server.3=localhost:2877:3877
zoo2.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zk1/data
dataLogDir=/tmp/zk1/log
clientPort=2181
server.1=localhost:2888:3888
server.2=localhost:2899:3899
server.3=localhost:2877:3877
zoo3.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zk3/data
dataLogDir=/tmp/zk3/log
clientPort=2183
server.1=localhost:2888:3888
server.2=localhost:2899:3899
server.3=localhost:2877:3877
分别在dataDir目录下创建myid文件
echo 1 > /tmp/zk1/data/myid
echo 2 > /tmp/zk2/data/myid
echo 3 > /tmp/zk3/data/myid
启动三个节点
bin/zkServer.sh start conf/zoo1.cfg
bin/zkServer.sh start conf/zoo2.cfg
bin/zkServer.sh start conf/zoo3.cfg
zk的配置文件说明
dataDir zookeeper实例的数据存储目录
dataLogDir zk实例的日志存储目录
clientPort zk实例的服务访问端口
完全
分布式安装
安装环境 CentOS 6.5
1、如果主机上有运行zookeeper的话需要先将zk实例停止,可以通过jps查看
2、关闭防火墙
3、如果上面有安装过单机模式的,先将上面安装的单机模式删除
4、解压zookeeper安装包
tar -xvf zookeeper-3.4.8.tar.gz
5、进入conf目录,拷贝出zoo.cfg并且配置
修改dataDir
dataDir=/home/software/zookeeper-3.4.8/tmp
并且在文件尾部添加上集群中其他节点的信息
server.1=10.42.149.244:2888:3888
server.2=10.42.155.72:2888:3888
server.3=10.42.185.115:2888:3888
2888是集群之间服务的通信端口,3888是选举端口
6、创建配置的dataDir目录
mkdir /home/software/zookeeper-3.4.8/tmp
7、进入创建的tmp目录并且创建文件myid,并且当前服务器的编号(server.x)后面的x是多少,就在myid文件中写多少
echo “1” >> myid
8、将/home/software/zookeeper-3.4.8/整个文件夹拷贝到其他两台服务器上
scp -r zookeeper-3.4.8 root@10.42.155.72:/home/software/
scp -r zookeeper-3.4.8 root@10.42.185.115:/home/software/
9、修改第二台机器和第三台机器的myid
10、在三台主机下执行命令开启zk
sh zkServer.sh start
11、通过jsp查看是否有相应的进程
12、查看zk的状态
sh zkServer.sh status