Zookeeper 是Dubbo微服务集群的注册中心,它的高可用机制和K8S的etcd集群一致 由Java编写,所以需要jdk环境 环境规划: 主机名 角色 IP hdss7-11.host.com k8s代理节点1,zk1 10.4.7.11 hdss7-12.host.com k8s代理节点2,zk2 10.4.7.12 hdss7-21.host.com k8s运算节点1,zk3 10.4.7.21 hdss7-22.host.com k8s运维节点2,Jenkins 10.4.7.22 hdss7-200.host.com k8s运维节点(harbor仓库) 10.4.7.11 部署zookeeper jdk8 安装 jdk下载可以去oracle官网下载 也可以从这里下载:http://106.12.88.74/softdown/centos7/13_elk/jdk-8u221-linux-x64.tar.gz 10.4.7.11 10.4.7.12 10.4.7.21上面安装jdk8 mkdir -p /usr/java tar xf jdk-8u221-linux-x64.tar.gz -C /usr/java/ cd /usr/java ln -s /usr/java/jdk1.8.0_221 /usr/java/jdk 设置环境变量: vim /etc/profile ## 添加如下内容到最后面 export JAVA_HOME=/usr/java/jdk export PATH=$JAVA_HOME/bin:$JAVA_HOME/bin:$PATH export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar+++++++ 部署zookeeper [ 10.4.7.11 10.4.7.12 10.4.7.21 ] 下载地址:https://archive.apache.org/dist/zookeeper/ 此次实验用的版本是3.4.14 https://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz tar xf zookeeper-3.4.14.tar.gz -C /opt/ cd /opt/ && ln -s /opt/zookeeper-3.4.14 /opt/zookeeper 创建日志目录和数据目录 mkdir -p /data/zookeeper/data /data/zookeeper/logs vim /opt/zookeeper/conf/zoo.cfg tickTime=2000 initLimit=10 syncLimit=5 dataDir=/data/zookeeper/data dataLogDir=/data/zookeeper/logs clientPort=2181 server.1=zk1.od.com:2888:3888 server.2=zk2.od.com:2888:3888 server.3=zk3.od.com:2888:3888 ### 三个节点 zookeeper配置都一样 ##### 添加主机记录 10.4.7.11 上面操作: vim /var/named/od.com.zone
systemctl restart named
zookeeper 要做集群,需要一个myid的文件 配置myid ,在三个节点上都要配置 [ 10.4.7.11 10.4.7.12 10.4.7.21 ] 10.4.7.11 myid 1 10.4.7.12 myid 2 10.4.7.21 myid 3 vim /data/zookeeper/data/myid
![]()
![]()
##+++++++++ 依次启动zookeeper [ 10.4.7.11 10.4.7.12 10.4.7.21 ] /opt/zookeeper/bin/zkServer.sh start
![]()
/opt/zookeeper/bin/zkServer.sh status
![]()
![]()
用supervisor 来管理zookeeper服务 yum install supervisor -y ##创建supervisor启动zookeeper 的日志文件存放的目录 mkdir -p /data/logs/zookeeper cd /etc/supervisord.d vim zookeeper.ini [program:zookeeper-server-7-21] command=/opt/zookeeper/bin/zkServer.sh start-foreground numprocs=1 directory=/opt/zookeeper/bin autostart=true autorestart=true startsecs=30 startretries=3 exitcodes=0,2 stopsignal=QUIT stopwaitsecs=10 user=root redirect_stderr=true stdout_logfile=/data/logs/zookeeper/zookeeper.stdout.log stdout_logfile_maxbytes=64MB stdout_logfile_backups=4 stdout_capture_maxbytes=1MB stdout_events_enabled=false environment=JAVA_HOME=/usr/java/jdk #####+++++++++ ########+++++ supervisor zookeeper.ini 简化版 ########## [program:zookeeper] command=/opt/zookeeper/bin/zkServer.sh start-foreground user=root autostart=true autorestart=true startsecs=3 stdout_logfile=/data/logs/zookeeper/zookeeper.stdout.log environment=JAVA_HOME=/usr/java/jdk #####################+++++++++++++++ 注意:每个节点的服务名称不要一样,便于区分。 systemctl start supervisord systemctl enable supervisord #########+++++++ 如果已经安装了supervisor,只需要添加zookeeper.ini supervisorctl update ##更新配置文件 supervisorctl status ##查看supervisor启动服务的状态 ######## hdss7-11 /etc/supervisord.d/zookeeper.ini
######## hdss7-12 /etc/supervisord.d/zookeeper.ini
######## hdss7-21 /etc/supervisord.d/zookeeper.ini
![]()