ZooKeeper组件部署教程

219次阅读
没有评论

一、集群模式部署ZooKeeper

1.解压安装

[root@master ~]#tar -zxvf /opt/software/zookeeper-3.4.8.tar.gz -C /usr/local/src/

[root@master ~]#mv /usr/local/src/zookeeper-3.4.8/ /usr/local/src/zookeeper

2.修改配置文件

Zookeeper的配置文件放置在conf下,提供zoo_sample.cfg样例,可重命名zoo.cfg后在此基础上修改。

[root@master ~]#cd /usr/local/src/zookeeper/conf/

[root@master ~]#mv zoo_sample.cfg /usr/local/src/zookeeper/conf/zoo.cfg

[root@master ~]#vi /usr/local/src/zookeeper/conf/zoo.cfg

完整配置内容如下:

tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
dataDir=/usr/local/src/zookeeper/data
dataLogDir=/usr/local/src/zookeeper/logs
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

tickTime:心跳时间,单位为毫秒,Leader服务器与Follower服务器连接超时时长。
initLimit:Leader服务器与Follower服务器连接初始化的心跳数。即超过10个心跳后Follower服务器没有接收到Leader服务器,则认为连接失败。与tickTime共同使用,每次心跳时间为2000毫秒,10*2000=20秒为连接超时时长。
syncLimit:Leader服务器与Follower服务器相互之间传输信息时能够等待的最大心跳时间,与tickTime共同使用。
clientPort:连接ZooKeeper的访问端口。
dataDir,dataLogDir:ZooKeeper的数据存储与日志存储目录。

[root@master ~]#mkdir -p /usr/local/src/zookeeper/data

[root@master ~]#mkdir -p /usr/local/src/zookeeper/logs

除了修改 zoo.cfg 配置文件,集群模式下还要配置一个文件 myid,这个文件在 dataDir 目录下。

[root@master ~]#vi /usr/local/src/zookeeper/data/myid

1

vi新建文件,并写入数据。以master节点为例,文件中只写入一个数字:1。ZooKeeper读取这个文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是那个 server。即为server.1=master:2888:3888中的server.X。本实验在master节点下配置,则为:1。

3.配置ZooKeeper环境变量

[root@master ~]# vi /etc/profile

添加如下配置:

#zookeeper environment
export ZK_HOME=/usr/local/src/zookeeper
export PATH=$PATH:$ZK_HOME/bin保存并退出

4.文件分发

将master主节点已经配置好ZooKeepr文件分发给集群从节点。

[root@master ~]#scp -r /usr/local/src/zookeeper  root@slave1:/usr/local/src/

[root@master ~]#scp -r /usr/local/src/zookeeper  root@slave2:/usr/local/src/

[root@master ~]# scp /etc/profile root@slave1:/etc/

[root@master ~]# scp /etc/profile root@slave2:/etc/

此时需要注意的是,在分发的从节点上需要对每一个myid文件进行修改,如slave1从节点修改为:2。与zoo.cfg配置文件相对应。

[root@ slave1 ~]#vi /usr/local/src/zookeeper/data/myid

2

[root@ slave2 ~]#vi /usr/local/src/zookeeper/data/myid

3

5.修改ZooKeeper安装目录的归属用户为hadoop用户。

[root@master ~]# chown -R hadoop:hadoop /usr/local/src/zookeeper

[root@slave1 ~] # chown -R hadoop:hadoop /usr/local/src/zookeeper

[root@slave2 ~] # chown -R hadoop:hadoop /usr/local/src/zookeeper

6.启动

关闭防火墙

[root@master ~]# systemctl stop firewalld.service

[root@slave1 ~]# systemctl stop firewalld.service

[root@slave2 ~]# systemctl stop firewalld.service

关闭防火墙自启

[root@master ~]# systemctl disable firewalld.service

Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

[root@slave1 ~]# systemctl disable firewalld.service

Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.

Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

[root@slave2 ~]# systemctl disable firewalld.service

Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

[root@master ~]su hadoop

[hadoop@master ~]source /etc/profile

[hadoop@master ~]$ ./zkServer.sh start

ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper … STARTED

启动完毕后可通过以下命令查询Leader节点与Follower节点。本实验经过内部选举slave1为Leader节点。

[hadoop@master ~]$ ./zkServer.sh status

ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeeper/bin/../conf/zoo.cfg
Mode: follower

[root@slave1 ~] su hadoop

[hadoop@slave1 ~] source /etc/profile

[hadoop@slave1 ~]$ ./zkServer.sh start

[hadoop@slave1  ~]$ ./zkServer.sh status

ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeeper/bin/../conf/zoo.cfg
Mode: follower

[root@slave2 ~] su  hadoop

[hadoop@slave2 ~] source /etc/profile

[hadoop@slave2 ~]$ ./zkServer.sh start

[hadoop@slave2  ~]$ ./zkServer.sh status

ZooKeeper JMX enabled by default
Using config: /usr/local/src/zookeeper/bin/../conf/zoo.cfg
Mode: leader

到点睡觉了
版权声明:本站原创文章,由 到点睡觉了2022-01-09发表,共计3713字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)