为分布式,用端口号区分,真分布式可用同端口不同ip
zookeeper是选举制,为了过半数选择3台
集群搭建
先复制三份
cp -r /root/zookeeper/zookeeper-3.4.10 /usr/local/solr-cloud/zookeeper01
cp -r /root/zookeeper/zookeeper-3.4.10 /usr/local/solr-cloud/zookeeper02
cp -r /root/zookeeper/zookeeper-3.4.10 /usr/local/solr-cloud/zookeeper03
创建data文件夹
mkdir /usr/local/solr-cloud/zookeeper01/data
mkdir /usr/local/solr-cloud/zookeeper02/data
mkdir /usr/local/solr-cloud/zookeeper03/data
配置id
创建myid文件
touch /usr/local/solr-cloud/zookeeper01/data/myid
touch /usr/local/solr-cloud/zookeeper02/data/myid
touch /usr/local/solr-cloud/zookeeper03/data/myid
配置01的文件
echo 1 > /usr/local/solr-cloud/zookeeper01/data/myid
echo 2 > /usr/local/solr-cloud/zookeeper02/data/myid
echo 3 > /usr/local/solr-cloud/zookeeper03/data/myid
测试
cat /usr/local/solr-cloud/zookeeper01/data/myid
cat /usr/local/solr-cloud/zookeeper02/data/myid
cat /usr/local/solr-cloud/zookeeper03/data/myid
正确结果
1
2
3
其他以此类推
配置cfg
改名
mv /usr/local/solr-cloud/zookeeper01/conf/zoo_sample.cfg /usr/local/solr-cloud/zookeeper01/conf/zoo.cfg
mv /usr/local/solr-cloud/zookeeper02/conf/zoo_sample.cfg /usr/local/solr-cloud/zookeeper02/conf/zoo.cfg
mv /usr/local/solr-cloud/zookeeper03/conf/zoo_sample.cfg /usr/local/solr-cloud/zookeeper03/conf/zoo.cfg
编辑cfg01
vim /usr/local/solr-cloud/zookeeper01/conf/zoo.cfg
修改如下
tickTime=2000
initLimit=10
tickTime=2000
initLimit=10
syncLimit=5
#改成data目录
dataDir=/usr/local/solr-cloud/zookeeper01/data/
#要求:每个zookeeper不一样,第一个不必改,为了防止和单机版冲突改了原来的2181
clientPort=2281
#添加每个集群节点的ip和端口号
#要求:内部通讯端口:选举端口,不能与clientport重(因为在一台服务器上)
server.1=192.168.25.129:2881:3881
server.2=192.168.25.129:2882:3882
server.3=192.168.25.129:2883:3883
开启服务
协议个批处理方便以后
vim start-all-zookeeper.sh
cd /usr/local/solr-cloud/zookeeper01/bin
chmod u+x zkServer.sh
./zkServer.sh start
cd /usr/local/solr-cloud/zookeeper02/bin
chmod u+x zkServer.sh
./zkServer.sh start
cd /usr/local/solr-cloud/zookeeper03/bin
chmod u+x zkServer.sh
./zkServer.sh start
修改权限
chmod u+x start-all-zookeeper.sh
测试服务
vim status-all-zookeeper.sh
cd /usr/local/solr-cloud/zookeeper01/bin
chmod u+x zkServer.sh
./zkServer.sh status
cd /usr/local/solr-cloud/zookeeper02/bin
chmod u+x zkServer.sh
./zkServer.sh status
cd /usr/local/solr-cloud/zookeeper03/bin
chmod u+x zkServer.sh
./zkServer.sh status
chmod u+x status-all-zookeeper.sh
停止服务
vim stop-all-zookeeper.sh
cd /usr/local/solr-cloud/zookeeper01/bin
chmod u+x zkServer.sh
./zkServer.sh stop
cd /usr/local/solr-cloud/zookeeper02/bin
chmod u+x zkServer.sh
./zkServer.sh stop
cd /usr/local/solr-cloud/zookeeper03/bin
chmod u+x zkServer.sh
./zkServer.sh stop
chmod u+x stop-all-zookeeper.sh