Notas de estudio de Zookeeper (dos) configuración de automatización de la instalación y comandos comunes

Instalación en una sola máquina o distribuida

Descomprime zookeeper en las rutas correspondientes en diferentes máquinas.

Para una instalación independiente, cambie el bucle for a la IP de su propio host

#!/bin/bash

zootmp=/root/liutao/zookeeper/tmp		# zk的目录下的数据目录,需要自己创建,此路径用于存储zookeeper中数据的内存快照、及事物日志文件
zoocfg=/root/liutao/zookeeper/conf/zoo.cfg	# zk目录下的配置文件的路径

myid=1
for h7_node in h71 h72 h73;do
ssh -Tq root@$h7_node << EOF
echo $myid
if test -e $zootmp
then 
        rm -rf $zootmp
        mkdir $zootmp
        touch $zootmp/myid
        echo $myid >> ~/liutao/zookeeper/tmp/myid		// zk主机号
else
        mkdir $zootmp
        touch $zootmp/myid
        echo $myid >> ~/liutao/zookeeper/tmp/myid		// // zk主机号
fi

if test -e $zoocfg
then
        echo "tickTime=2000" > $zoocfg
        echo "initLimit=10" >> $zoocfg
        echo "syncLimit=5"  >> $zoocfg
        echo "dataDir=/root/liutao/zookeeper/tmp" >> $zoocfg
        echo  "clientPort=2181" >> $zoocfg		// 2181:对cline端提供服务
        echo "server.1=h71:2888:3888" >> $zoocfg 		// 3888:选举leader使用 , 2888:集群内机器通讯使用(Leader监听此端口)
        echo "server.2=h72:2888:3888" >> $zoocfg 
        echo "server.3=h73:2888:3888" >> $zoocfg 
         

else
        touch $zoocfg
        echo "tickTime=2000" > $zoocfg
        echo "initLimit=10" >> $zoocfg
        echo "syncLimit=5"  >> $zoocfg
        echo "dataDir=/root/liutao/zookeeper/tmp" >> $zoocfg
        echo  "clientPort=2181" >> $zoocfg
        echo "server.1=h71:2888:3888" >> $zoocfg 
        echo "server.2=h72:2888:3888" >> $zoocfg 
        echo "server.3=h73:2888:3888" >> $zoocfg 
         
fi
exit
EOF

myid=`expr $myid + 1`
done

Variable ambiental

export ZOOKEEPER_HOME=/root/liutao/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin

Comandos comunes

empezar a parar

// 启动zookeeper		zkServer.sh start
// 停止zookeeper	    zkServer.sh stop
// 查看状态:zkServer.sh status

Crear nodo

zkCli.sh  链接本地zk服务器,退出使用quit
create [-s] [-e] path data #其中-s 为有序节点,-e 临时节点,-s会记录每个子节点创建的先后顺序

Cree un nodo persistente y escriba datos, obtenga el comando para obtener datos

Inserte la descripción de la imagen aquí

Nodos ordenados persistentes y datos de escritura, el nombre del nodo se cambiará a una combinación de nombre y número, la función es crear una ID única

Inserte la descripción de la imagen aquí

Una vez creado el nodo temporal, salir sale de la sesión, el nodo se elimina automáticamente y el nodo temporal no puede tener nodos secundarios.

Actualizar nodo

El número de versión se actualizará después de que se actualice el nodo.

zkCli.sh  链接本地zk服务器,退出使用quit
set 路径 更新的数据 【当前dataversion,可选】		#

Inserte la descripción de la imagen aquí

Eliminar nodo

delete path	【当前dataversion,可选】		# 结点有子结点,是不允许删除的
rmr path		# 删除该结点以及所有的子结点

Ver nodo

get path		# 返回数据和当前结点的属性
stat path		# 返回当前结点属性

Descripción de propiedad:
Inserte la descripción de la imagen aquí

Regresar a la lista de nodos

ls path		# 返回当前路径下的所有子结点
ls2 path	# 返回当前路径下的所有子结点和当前子结点的属性

Supongo que te gusta

Origin blog.csdn.net/liutao43/article/details/115347903
Recomendado
Clasificación