zookeeper 3.4集群搭建
来源:原创
时间:2020-07-25
作者:脚本小站
分类:Linux
安装zookeeper之前先安装java:
tar -xf jdk-8u231-linux-x64.tar.gz -C /usr/local/ cd /usr/local/ ln -sv jdk1.8.0_231/ jdk cat > /etc/profile.d/java.sh <<EOF export JAVA_HOME=/usr/local/jdk export JRE_HOME=\$JAVA_HOME/jre export CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar:\$JRE_HOME/lib export PATH=\$PATH:\$JAVA_HOME/bin:\$JRE_HOME/bin EOF . /etc/profile.d/java.sh java -version javac -version
zookeeper下载地址:
https://mirrors.aliyun.com/apache/zookeeper/
下载安装包:
wget https://mirrors.aliyun.com/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
配置DNS解析:
cat > /etc/hosts <<EOF 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.0.51 zookeeper1 192.168.0.52 zookeeper2 192.168.0.53 zookeeper3 EOF
设置主机名:
hostnamectl set-hostname zookeeper1 hostnamectl set-hostname zookeeper2 hostnamectl set-hostname zookeeper3
配置免秘钥:
ssh-copy-id -i .ssh/id_rsa.pub root@zookeeper1 ssh-copy-id -i .ssh/id_rsa.pub root@zookeeper2 ssh-copy-id -i .ssh/id_rsa.pub root@zookeeper3
解压安装:
tar -xf zookeeper-3.4.14.tar.gz -C /usr/local/ cd /usr/local/ ln -sv zookeeper-3.4.14/ zookeeper
配置环境变量:
cat > /etc/profile.d/zookeeper.sh <<EOF export ZOOKEEPER_HOME=/usr/local/zookeeper export PATH=\$PATH:\$ZOOKEEPER_HOME/bin EOF . /etc/profile.d/zookeeper.sh
日志目录:
mkdir /usr/local/zookeeper/logs
数据目录:
mkdir /data/zookeeper -pv
配置文件:
cat > /usr/local/zookeeper/conf/zoo.cfg <<EOF tickTime=2000 initLimit=10 syncLimit=5 dataDir=/data/zookeeper dataLogDir=/usr/local/zookeeper/logs clientPort=2181 # server.1 这个1是服务器的标识,可以是任意有效数字,标识这是第几个服务器节点,这个标识要写到dataDir目录下面myid文件里 # 指名集群间通讯端口和选举端口 server.1=zookeeper1:2287:3387 server.2=zookeeper2:2287:3387 server.3=zookeeper3:2287:3387 EOF
数据目录的myid文件的ID号和配置文件中的server.id对应:
zookeeper1 echo "1" > /data/zookeeper/myid zookeeper2 echo "2" > /data/zookeeper/myid zookeeper3 echo "3" > /data/zookeeper/myid
复制配置文件到其他节点:
scp /usr/local/zookeeper/conf/zoo.cfg root@zookeeper2:/usr/local/zookeeper/conf/ scp /usr/local/zookeeper/conf/zoo.cfg root@zookeeper3:/usr/local/zookeeper/conf/
使用普通用户启动集群:这里要和hadoop配合使用,一般情况下root即可。
useradd hadoop cd /usr/local/ chown -R hadoop.hadoop zookeeper/ zookeeper chmod g+w /usr/local/zookeeper/logs/ chown -R hadoop.hadoop /data/zookeeper/
启动集群:
su hadoop zkServer.sh start
查看状态:
~]$ zkServer.sh status ZooKeeper JMX enabled by default Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg Mode: follower
停止集群:
zkServer.sh stop