安装zookeeper

安装zookeeper

集群配置如下:

服务器ip主机名myid的值
172.16.106.231node011
172.16.106.232node022
172.16.106.233node033

一、配置环境

cd /opt
curl https://repo.huaweicloud.com/java/jdk/8u172-b11/jdk-8u172-linux-x64.tar.gz -O 
tar zxvf jdk-8u172-linux-x64.tar.gz

vi /etc/profile
# 填入以下内容
# export  JAVA_HOME=/opt/jdk1.8.0_172
# export  PATH=$PATH:$JAVA_HOME/bin
source /etc/profile

cd /opt
curl https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz -O
tar zxvf zookeeper-3.4.9.tar.gz

二、修改配置文件

cd /opt/zookeeper-3.4.9/conf
cp zoo_sample.cfg zoo.cfg 
mkdir /opt/zookeeper-3.4.9/zkdatas/
vi zoo.cfg 

修改并添加以下内容

dataDir=/opt/zookeeper-3.4.9/zkdatas
autopurge.snapRetainCount=3            # 保留多少快照
autopurge.purgeInterval=1              # 日志几个小时清理一次
# 集群服务器地址
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888

添加myid配置
在第一台机器上/opt/zookeeper-3.4.9/zkdatas/这个路径下创建一个文件,文件名字是myid,内容是1

cd /opt/zookeeper-3.4.9/zkdatas/
echo 1 >>  myid

配置ip地址,将下面的内容填写在/etc/hosts中

172.16.106.231 node01 
172.16.106.232 node02
172.16.106.233 node03
scp -r /opt/zookeeper-3.4.9 node02:/opt/
scp -r /opt/zookeeper-3.4.9 node03:/opt/

修改每个主机的/opt/zookeeper-3.4.9/zkdatas/myid为对应的主机号

node02节点换为2
node03节点换为3

三、启动zookeeper

/opt/zookeeper-3.4.9/bin/zkServer.sh start

测试zookeeper是否启动

[root@node02 zkdatas]# jps  # 一个查看java相关的进程
1398 QuorumPeerMain         # 这个就是zookeeper
1418 Jps

查看谁是leader谁是following。

/opt/zookeeper-3.4.9/bin/zkServer.sh status

启动成功之后的输出为

[root@node01 ~]# /opt/zookeeper-3.4.9/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: follower

[root@node02 ~]# /opt/zookeeper-3.4.9/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: leader

[root@node03 ~]# /opt/zookeeper-3.4.9/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: follower

四、问题汇总

  1. 在启动的时候出现contact error。
[root@node02 zkdatas]#  /opt/zookeeper-3.4.9/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.9/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

答:需要关闭防火墙
centos7 关闭防火墙

sudo systemctl stop firewalld 临时关闭
sudo systemctl disable firewalld ,然后reboot 永久关闭
sudo systemctl status  firewalld 查看防火墙状态。
# 如果没有关闭,可以重启一下 
  1. 集群启动的自动化脚本

2.1 需要配置免密登录,请参考文章Hadoop安装(vmfusion for mac、centos7)中关于ssh免密登录。

# 生成一个公私钥对
ssh-keygen -t rsa

私钥在/root/.ssh/id_rsa中
公钥在/root/.ssh/id_rsa.pub中
将公钥的内容放在其他用户的~/.ssh/authorized_keys中,本机就能免密ssh访问其他用户了

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCk63c0LR+FKS6zMqNgGqRtxKBc8ht59v2qnI22JTeQQ7o864fVJYEzHqY33MGcBBYM/V/J1HDdqH0SgVwxLLlY0v2p5wnjRKnCcBULB/SVYU8vg57l8pZAD+gmCWaiKtWMZDVqxluj5P4YItfeS2cuKwmN7RRbA4YV3QjPdClbFSH2vrNq93O39ZjnLYO+WNejz1cOx5AZV3ml7ffQ/wcgEo+CRdp5p/K5XeV7zj4MEgpIgYVKhFlljtOHvOIx6lphlRNwz9SKuq/0nsiUapXLMTIR2qkFebAl0JcqfdZjs1ErYBXR0rpz5RBOESKFjvZVaI2cvIaLLsK8L9vQKYer root@node01
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDC30SFIXvbhzl7HqkDeU+VpFOHeVGg7ZUpYFdOUDLD0zU31QIFFEntW/St7jDYDkzxZyyUF0KOlWtomSoo6pHkL3Vp4TOf3bJu1L/lfKfnWX8nb7Mktb6mEHUu4/qkK35/AOr5F+e0UFRbaM7S2GMCOBpDcD4f8UmMG/ApbEalg4pURV6u02LXVcO+GZBcUupH8/Uv2FQ8w0QP7H1FxoLD9QP+KLDNmGbDAaTGFfORotg+Jm47S3jSXWNLAHEZIZN+44a/568hgOn5sX7IbKyrKNs4RbhOkEJ1ZK89Rf+SASUkJ4ClG4Eba+fLKYrP7Rc4OGwDTX26XotXPiVIS+/L root@node02
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCxfbBtCRUEKnJNGbTFCuFLyGCX6s336mZkGYNHRCVYf/MjNLo/qbRm1lUppZ1GAJ6xJdwmxighZEpdDgjgmhr2PxpgiL1E5usr1uUnB3KC9+qCAdWVSgLCr/+PixCL4u9cP89ngj4xIsmpqktg2QoZLL3KZUtmQNkUP3nwWeXlWQlCj3kRpA2dh+lMOxgd4FndllgPESHocZhFar1uwmQkJh9EHXHA6EN36BtJO+GN/dbMRhbSU5qFP8CkZEyHpIPdmUwADTZA/BAaGZ6x5HYyMBTFNsLGbmWFBgCorMveolePIkJoC2idPJu+qOfEL4JJ9qYoVptwETgTl08mTpO5 root@node03

2.2 编写脚本

#!/bin/bash 
# 参数 start   启动
# 参数 stop    关闭
# 参数 restart 重启
echo "start zkServer..."
for i in 01 02 03
do
ssh node$i "source /etc/profile;/opt/zookeeper-3.4.9/bin/zkServer.sh $1"
done
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值