Zookeeper 集群搭建指的是 ZooKeeper 分布式模式安装。通常由 2n+1台 servers 组成。这是因为为了保证 Leader 选举(基于 Paxos 算法的实现)能过得到多数的支持,所以 ZooKeeper 集群的数量一般为奇数。
Zookeeper 运行需要 java 环境,所以需要提前安装 jdk
1. 卸载自带的jdk
查看当前jdk版本信息
获取java软件包的相关信息
卸载安装包及其依赖
上传并解压jdk
配置java环境变量并重新加载
测试安装是否成功
将安装包及环境变量配置信息发送到另外几台服务器上
注意:提前创建安装路径,如果没有配置主机域名映射,应root@主机ip
发送完毕,在其他机器上重新加载配置信息,执行命令:source /etc/profile
测试其他服务器jdk是否安装成功
2. 集群时间网络同步
ntpdate cn.pool.ntp.org#若失败,再次执行,执行多次还是失败,可以采用阿里网络时间同步
3. 永久关闭防火墙
4. 配置主机名及IP映射
配置主机名可以用命令:hostname 主机名
ip映射直接 vi /etc/hosts,添加 ip地址及主机名即可
5. 上传并解压zookeeper安装包
重命名安装包(可以省略,但后面配置需注意路径是否正确)
6. 修改配置
进入zookeeper的conf目录,cd zookeeper/conf/
拷贝并重命名zoo_sample.cfg文件(zk启动时默认加载安装目录下的conf/zoo.cfg文件),然后配置该文件信息
在配置的dataDir的路径中写入myid信息,并与配置的server.1=node-1:2888:3888一致
及如在如配置的为server.1=node-1:2888:3888,则再主机名为node-1的服务器中的/export/data/zkdata路径中写入文件myid,其内容为1
7. 配置其他服务器
将zookeeper安装包分发给其他服务器
在其他服务器上创建路径并修改myid的值
8. 启动zk集群
全路径启动zookeeper
查看是否启动成功
9. 一键启动zk集群脚本
在一台机器上编写一键启动与关闭zk集群脚本文件,需要配置该机器与其他每台机器(包括自己)ssh免密登录
设置执行权限
免密登录执行命令:
ssh-keygen
ssh-copy-id 主机名
测试是否可以一键启动或关闭zk集群
复制脚本并重命名,编辑脚本更改启动或关闭命令即可