您的位置:首页 > 其它

[置顶] zookeeper安装与集群配置

2017-11-11 15:44 295 查看

zookeeper安装与集群配置

    本文重点是介绍zookeeper安装与集群配置相关问题,对于尚未接触过的小伙伴来说按照本文顺序执完成集群搭建应该没有问题。

    

一、服务器基本配置

本案例将采用三台虚拟机作为zookeeper服务器,ip地址分别为192.168.72.140,192.168.72.141,192.168.72.142,首先做的是修改对应服务器IP地址与服务器名称。

vim /etc/sysconfig/network-scripts/ifcfg-eth0


修改BOOTPROTO dhcp为static

修改IP地址IPADDR=”192.168.72.140”

DNS DNS1=”8.8.8.8”

DNS2 =”114.114.114.114”

NETMASK=”255.255.255.0”

GATEWAY=”192.168.72.1”

保持退出执行service network start 重启网络服务使配置生效



配置服务器名称

hostname zookeeper-master


修改服务器名映射

vim /etc/hostname
192.168.72.140 zookeeper-master
192.168.72.141 zookeeper-slave1
192.168.72.142 zookeeper-slave2


软件下载

本文采用 jdk1.8+zookeeper3.3.6

    jdk下载地址jdk8下载链接

    zookeeper下载地址zookeeper下载链接

安装jdk并配置java相关环境变量

mkdir /usr/local/java
tar -zxvf jdk-8u151-linux-i586.tar.gz -C /usr/local/java/
export JAVA_HOME=/usr/local/java/jdk1.8.0_151/
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=./:$JAVA_HOME/lib


验证jdk配置 java -version 显示一下信息标识配置完成



    好,到这里zookeeper安装准备工作告一段落,接下来正式进入zookeeper安装与集群配置环节

二、zookeeper安装

1.解压zookeeper压缩包到/opt路径

tar -zxvf zookeeper-3.3.6.tar.gz -C /opt/


进入zookeeper的conf目录,并复制配置文件另存为zoo.cfg

cd /opt/zookeeper-3.3.6/conf/
cp zoo_sample.cfg zoo.cfg


在/opt/zookeeper-3.3.6/ 下创建data, logs 目录

mkdir /opt/zookeeper-3.3.6/data
mkdir /opt/zookeeper-3.3.6/logs


编辑zoo.cfg文件配置

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/opt/zookeeper-3.3.6/data
logDir=/opt/zookeeper-3.3.6/logs
# the port at which the clients will connect
clientPort=2181
server.1=zookeeper-master:8881:7771
server.2=zookeeper-slave1:8881:7771
server.3=zookeeper-slave2:8881:7771


zookeeper-master即192.168.72.140

zookeeper-slave1即192.168.72.141

zookeeper-slave2即192.168.72.142

server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号(伪集群只需要保证C:D部分不冲突)

echo "1" >> /opt/zookeeper-3.3.6/data/myid


完成这一步zookeeper集群基本已经大功告成,细心的你一定会发现怎么会只有一台192.168.72.140作者就说集群搭建完成了呢?没错,你答对了,不过好消息是要完成集群搭建剩下的内容几乎和上面的操作一样。只需要echo “1” >> /opt/zookeeper-3.3.6/data/myid 将 “1” 改为 对应的数字即可。为了节省时间本文将克隆192.168.72.140为 141作为zookeeper-slave1 ,142为zookeeper-salve2。

…….

经过一定时间,141,142服务器已经克隆完成,并按照上面介绍过的方式配置了静态ip,hostname 。好了,我本想说zookeeper配置完成,可是我骗不了聪明的你。分别在141,142将myid 中1 ,改为2,3保存退出。分别在三台服务器上执行/opt/zookeeper-3.3.6/bin/zkServer.sh start

当看到下面信息时表明zookeeper启动成功

[root@zookeeper-slave2 ~]# /opt/zookeeper-3.3.6/bin/zkServer.sh start
JMX enabled by default
Using config: /opt/zookeeper-3.3.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED


到这里集群环境已经配置成功,如果想验证是否集群可以通过一下命令进行验证(在不同主机上)

/opt/zookeeper-3.3.6/bin/zkCli.sh -server 192.168.72.141


切记关闭防火墙!!!命令如下

service iptables stop
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: