学习记录文档,若有错误多谢指出。
zookeeper.apache.org
zookeeper 是分布式应用程序的协调服务。
目录
搭建
VM软件配置(MacOS)
sudo vim /Library/Preferences/VMware\ Fusion/networking
修改 dhcp 为no,否则无法自定义ip。
新建虚拟机
CUP 1核
内存 1G
磁盘20G
禁用侧通道缓冲
分区
/boot 300mb
swap 2048mb
/ 剩余全部
关闭KDUMP
设置root用户密码
创建普通新用户
Centos7系统配置
永久关闭防火墙:
systemctl status firewalld.service
安装 java jdk8
VM集群配置
复制虚拟机物理副本
设置从机的hostname
hostname set-hostname xxx
Centos7集群配置
配置基于虚拟机虚拟网卡子网段的独立静态IP
配置hosts文件
免密登陆
部署
Zookeeper(将zk节点部署到2、3、4服务器,节点数量最好为2n+1个)
zk选举机制很重要喏,启动时选举策略为抢占式,如果中途选举的话稍微复杂一点。
配置
配置每个节点服务器的地址和端口
vim /opt/module/zookeeper-3.4.10/conf/zoo.cfg
#############cluster#############
server.2=centos7x8664-2:2888:3888
server.3=centos7x8664-3:2888:3888
server.4=centos7x8664-4:2888:3888
同步zookeeper可执行文件
3 ~ 4
scp /opt/module/zookeeper-3.4.10 root@centos7x8664-3:/opt/module/
scp /opt/module/zookeeper-3.4.10 root@centos7x8664-4:/opt/module/
配置每个zookeeper的id
2 ~ 4
touch /opt/module/zookeeper-3.4.10/zkData/myid
vim /opt/module/zookeeper-3.4.10/zkData/myid
启动
单节点启动 zk,半数以上节点启动zk才可以工作( 2个 )
sh /opt/module/zookeeper-3.4.10/bin/zkServer.sh start
查看zk服务状态 或 查看leader/follower
sh /opt/module/zookeeper-3.4.10/bin/zkServer.sh status
启动客户端
sh /opt/module/zookeeper-3.4.10/bin/zkCli.sh
群起脚本
vim ~/utils/zookeeper.sh
#!/bin/bash
case $1 in
"start"){
for i in centos7x8664-2 centos7x8664-3 centos7x8664-4
do
echo "------------------- start $i -------------------"
ssh $i "sh /opt/module/zookeeper-3.4.10/bin/zkServer.sh start"
done
};;
"stop"){
for i in centos7x8664-2 centos7x8664-3 centos7x8664-4
do
echo "------------------- stop $i -------------------"
ssh $i "sh /opt/module/zookeeper-3.4.10/bin/zkServer.sh stop"
done
};;
esac