部署ZooKeeper
准备三台服务器同步时间配置hosts并配置好jdk(部署系统为:CentOS-7-x86_64-Minimal-1810)
#配置/etc/hosts 192.168.0.151 node1 192.168.0.152 node2 192.168.0.153 node3 #关闭防火墙 [root@node1 scorpion]# systemctl stop firewalld [root@node1 scorpion]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
下载ZooKeeper二进制部署包上传到node1的/home/scorpion
解压重命名
mkdir -p /home/scorpion && cd /home/scorpion
tar -xzvf apache-zookeeper-3.5.7-bin.tar.gz mv apache-zookeeper-3.5.7-bin zookeeper rm -rf apache-zookeeper-3.5.7-bin.tar.gz
修改配置
mkdir -p /home/scorpion/zookeeper/data cd zookeeper/conf && \cp zoo_sample.cfg zoo.cfg vi zoo.cfg #数据存储目录 dataDir=/home/scorpion/zookeeper/data #配置集群信息 server.1=node1:2888:3888 server.2=node2:2888:3888 server.3=node3:2888:3888
在dataDir目录中标记服务id(该id值对应上述server.x中的x值),每台机器的myid值不一样,第一台为1,第二台为2,第三台为3
cat > /home/scorpion/zookeeper/data/myid <<'EOF' 1 EOF
登陆node2、node3执行
mkdir -p /home/scorpion && cd /home/scorpion scp -r root@node1:/home/scorpion/zookeeper ./
修改node2、node3中myid值
#修改node2节点myid中的内容为2 #修改node3节点myid中的内容为3 vi /home/scorpion/zookeeper/data/myid
配置环境变量(所有节点执行)
vi ~/.bash_profile #ZOOKEEPER_HOME export ZOOKEEPER_HOME=/home/scorpion/zookeeper export PATH=$PATH:${ZOOKEEPER_HOME}/bin
让配置生效(所有节点执行)
source ~/.bash_profile
启动(所有节点执行)
[root@node1 scorpion]# zkServer.sh start ZooKeeper JMX enabled by default Using config: /home/scorpion/zookeeper/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
查看zk状态(任意节点执行)
[root@node1 scorpion]# zkServer.sh status ZooKeeper JMX enabled by default Using config: /home/scorpion/zookeeper/bin/../conf/zoo.cfg Client port found: 2181. Client address: localhost. Mode: follower