您的位置:首页 > 运维架构 > Linux

Linux系统的Zookeeper集群环境搭建

2016-08-24 16:49 323 查看
说明:提供服务的机器数量2*n + 1 奇数台

至少要超过半数,zookeeper才可以提供服务,因为Zookeeper只允许半数宕机。

操作步骤:

下载Zookeeper安装包

这里我用到的是zookeeper-3.4.8

下载地址:http://mirror.bit.edu.cn/apache/zookeeper/



解压到指定目录

准备三台linux服务器,每台服务器都放zookeeper压缩文件。解压zookeeper-3.4.8.tar.gz到一个目录下,比如解压到根目录下/zookeeper 文件夹

解压命令:

tar zxvf zookeeper-3.4.8.tar.gz

修改hosts文件

ZooKeeper建议使用hostname,而非ip。这需要对主机的/etc/hostname和/etc/hosts做host绑定。

ZooKeeper以Fast Paxos算法为基础,用于完成leader的选举工作,所以至少需要3个节点。

为此,我准备了以下3个节点:

172.16.101.83 ubuntu-zookeeper-01

172.16.101.91 ubuntu-zookeeper-02

172.16.101.94 ubuntu-zookeeper-03

修改命令:

sudo vim /etc/hosts

修改如下:



达到如下效果则配置成功:



修改配置文件

打开解压后的Zookeeper文件目录下conf目录的zoo_sample.xml文件

ubuntu-zookeeper-01:代表zookeeper的主机名

12888端口:代表访问Zookeeper的端口

13888端口:代表重新选举leader的端口



linux不同机器之间无法访问,端口没有开通处理办法

开放端口命令:

iptables -A INPUT -p tcp –dport 12888-j ACCEPT

或者编辑 /etc/sysconfig/iptables 增加:

-A INPUT -m state –state NEW -m tcp -p tcp –dport 12888 -j ACCEPT

查看端口是否已经开放

/etc/init.d/iptables status

查看端口占用,来检验下是不是已经打开了某某端口

netstat -an | grep 端口号

修改之后,重启iptables

service iptables restart

新建dataDir目录

在根目录下新建/tmp/zookeeper,不过不建议新建tmp目录,这个是临时目录,最好自己新建其他名字的目录。三台服务器都需要新建目录。

linux系统新建文件夹命令:

mkdir zookeeper

创建myid文件

在三台主机下,分别在刚才新建的dataDir目录下新建名称为myid,内容分别为1,2,3的文件

命令如下:

echo “1” > myid

echo “2” > myid

echo “3” > myid

打开myid文件查看内容:

cat myid

修改权限

修改bin目录下文件权限为可执行:

原来bin目录下文件权限为:

-rw-r–r–

修改bin目录下文件夹权限为可执行权限:

-rwxr-xr-x

给bin目录下所有用户添加x–可执行权限

chomd -R a+x bin/

启动Zookeeper

启动Zookeeper命令:

./zkServer.sh start

查看集群的状态:

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