新手搭建zookeeper集群

zookeeper集群的搭建非常简单,随便网上一搜都几百篇搭建教程,本来不想写这文章的,但后来想想还是为学习留下一点记录吧。

步骤:

  1. 从网上下载zookeeper包并解压
  2. 修改zookeeper配置文件
  3. 把zookeeper文件夹拷贝到集群其他服务器(节点)
  4. 新建dataDir目录和myId文件
  5. 启动zookeeper,搭建成功

一、下载zookeeper

地址:https://www-us.apache.org/dist/zookeeper/stable/

//下载zookeeper
wget https://www-us.apache.org/dist/zookeeper/stable/zookeeper-3.4.12.tar.gz
//解压
tar -zxvf zookeeper-3.4.12.tar.gz

二、修改zookeeper配置文件

zookeeper的配置文件是zoo.cfg,但默认是不存在的,需要自己创建。
进入zookeeper/conf目录下把自带的zoo_sample.cfg 改名为真正的启动配置文件

cd conf/
cp zoo_sample.cfg zoo.cfg

zoo.cfg

tickTime=2000
initLimit=10
syncLimit=5
#重要提示,dataDir目录需要手动创建
dataDir=/usr/local/zookeeper/dataDir
#默认端口
clientPort=2181
#关键,集群ip配置,当前是x节点server.x就要用 0.0.0.0,不然报错。
server.1=0.0.0.0:2888:3888
server.2=tx002:2888:3888
server.3=tx003:2888:3888

三、把zookeeper文件夹拷贝到集群其他服务器(节点)

scp -r ./zookeeper ip:/usr/local/

四、新建dataDir目录和myId文件

新建的文件夹名和路径,取决于配置文件里的 dataDir属性。
例如,我的配置文件是 dataDir=/usr/local/zookeeper/dataDir

//所有节点分别创建dataDir目录
[ocj@tx001 zookeeper]$ mkdir dataDir
[ocj@tx001 zookeeper]$ cd dataDir
//在dataDir下创建文件myId,内容取决于配置文件的 server.x=ip:2888:3888中的x,如server.1,则内容为1
//如在服务器1,执行
[ocj@tx001 dataDir]$ echo 1 > myId
//如在服务器2,执行
[ocj@tx002 dataDir]$ echo 2 > myId
//如在服务器3,执行
[ocj@tx003 dataDir]$ echo 3 > myId

五.启动zookeeper

三个节点分别执行

[ocj@tx001 zookeeper]$ zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

检查zookeeper状态,有且只有一台是leader,其他都是follower。

[ocj@tx001 zookeeper]$ zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

停止zookeeper

[ocj@tx001 zookeeper]$ zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED

至此,zookeeper集群搭建完毕!

以下是一些注意事项:
1.集群搭建大部分的问题都是网络通信问题,请确保集群之间网络畅通,防火墙,防火墙,防火墙,重要的事情说三遍。
2.注意配置文件里面的 server.x=0.0.0.0:2888:3888,网上说云服务器采用虚拟化的技术,我们监听的是物理网卡,不是虚拟机的网卡,0.0.0.0相当于监听所有网卡。
3.所有节点一起启动。我在搭建的时候,启动了一个节点,直接看日志,怎么拒绝访问错误??? 后来想起尼玛其他节点都忘了启动。
4.出问题记得看日志。日志文件是zookeeper根目录下 zookeeper.out,百度一下基本解决问题。
5.保持良好心态。在学习搭建环境的过程中,总会因为一些很小的错漏导致启动失败,就因为上面3点,气得我差点执行 rm -rf /,现在再看回去真的是非常简单。

你可能感兴趣的:(Java)