集群安装zookeeper(详细步骤)

1、解压zookeeper文件

首先在主节点配置:

将下载到的zookeeper-3.4.6.tar.gz安装文件上传到主机点的/usr/local目录,解压后进入根目录创建data文件夹和logs文件夹

cd /usr/local                       #移动到安装的目录下
tar -zxvf zookeeper-3.4.6.tar.gz    #解压文件
sudo mv zookeeper-3.4.6 zk          #为方便将zookeeper-3.4.6改为zk
cd zk
mkdir data
mkdir logs

2、配置zoo.cfg

进入conf目录,将zoo_sample.cfg重命名或拷贝一份,且命名为zoo.cfg

# 重命名
cd /usr/local/zk/conf    #进入zookeeper的conf目录下

# 拷贝
cp zoo_sample.cfg zoo.cfg             #拷贝该文件并命名为zoo.cfg

修改zoo.cfg配置

tickTime=2000
initLimit=10
syncLimit=5

# 指向zookeeper目录下的data目录
dataDir=/usr/local/zk/data
# 增加日志目录
dataLogDir=/usr/local/zk/logs

clientPort=2181

#添加服务通讯端口以及程序通讯端口
#mao-101我们已经在 hosts里面配置过
server.1=master:2888:3888
server.2=node01:2888:3888
server.3=node02:2888:3888

3、创建myid文件

cd /usr/local/zk/data
vim myid

# 加入内容:1   保存退出vim
1

4、将zk文件压缩打包复制到其他的节点上

tar -zcf ~/zk.master.tar.gz ./zk    #打包
scp ./zk.master.tar.gz node01:/home/hadoop    #复制到node01节点
scp ./zk.master.tar.gz node02:/home/hadoop    #复制到node02节点

 5、在其他节点上解压并修改相关文件

cd /usr/local/zk/data    #到zk中的data目录下
vim myid                 #修改文件

 将1改为2(参照主机点中的/usr/local/zk/conf/zoo.cfg中的server.X=主机名:2888:3888的x值),保存并退出

若还有其他子节点,和上面的步骤一模一样。

6、环境变量

编辑文件 ~/.bashrc,添加如下:

export ZOOKEEPER_HOME=/usr/local/zk
export PATH=$ZOOKEEPER_HOME/bin:$PATH

刷新生效

source ~/.bashrc

7、修改zookeeper用户组和拥有者(防止以后运行zookeeper相关的操作需要拥root权限)

 chown -R hadoop:hadoop /usr/lcoal/zk/

8、防火墙

sudo su

sudo service iptables stop   # 关闭防火墙服务
sudo chkconfig iptables off  # 禁止防火墙开机自启,就不用手动关闭了

#编辑iptables
vim /etc/sysconfig/iptables
#增加以下内容
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2181 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2888 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3888 -j ACCEPT


# 重启防火墙并查看端口状态
service iptables restart

 

9、添加zookeeper开机启动

// 切换到init.d目录
cd /etc/rc.d/init.d

// 创建zookeeper文件并更新权限
touch zookeeper && chmod +x zookeeper

// 编辑zookeeper文件,并添加如下内容
vim zookeeper

====下面是文件内容=====

#!/bin/bash
#chkconfig:2345 20 90
#description:zookeeper
#processname:zookeeper
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.191.x86_64
export PATH=$JAVA_HOME/bin:$PATH
case $1 in
         start) su root /usr/local/zk/bin/zkServer.sh start;;
         stop) su root /usr/local/zk/bin/zkServer.sh stop;;
         status) su root /usr/local/zk/bin/zkServer.sh status;;
         restart) su root /usr/local/zk/bin/zkServer.shrestart;;
         *)  echo "requirestart|stop|status|restart"  ;;
esac
~      

10、启动zookeeper

zkServer.sh start

每一个节点都需要执行该步

11、验证:

jps

当有进行QuorumPeerMain出现,则说明启动成功

12、查看状态

zkServer.sh status

可明显看到其中一个节点是Leader,其他都是follow.

猜你喜欢

转载自blog.csdn.net/qq_38709565/article/details/82717598