cuidador del zoológico Descargar: http: //mirror.bit.edu.cn/apache/zookeeper/
Descargar bin bajo la fuente pidió no descarga los archivos de origen a veces no puede encontrar la clase
apache-zookeeper-3.6.0-bin.tar.gz
Planificación Cluster 1.1
Zookeeper implementa en linux1, linux2 y linux3 tres nodos, tres nodos se han instalado JDK.
Configurar claves SSH libre densa Login
1. En primer lugar configurar el archivo hosts
vim / etc / hosts
192.168 . 10.11 linux1 192.168 . 10.12 linux2 192.168 . 10.13 linux3
2. Generar RSA ssh
第一台机器
[@linux1 conf]$ ssh-keygen -t rsa
[hadoop@linux1 conf]$ ssh-copy-id linux2
[hadoop@linux1 conf]$ ssh-copy-id linux3
第二台机器
[hadoop@linux2 conf]$ ssh-keygen -t rsa
[hadoop@linux2 conf]$ ssh-copy-id linux1
[hadoop@linux2 conf]$ ssh-copy-id linux3
第三台机器
[hadoop@linux3 conf]$ ssh-keygen -t rsa
[hadoop@linux3 conf]$ ssh-copy-id linux1
[hadoop@linux3 conf]$ ssh-copy-id linux2
1.2 Extracción de la instalación
tar -zxvf apache-zookeeper-3.6.0-bin.tar.gz -C /opt/module/<br>mv /opt/module/apache-zookeeper-3.6.0-bin /opt/module/apache-zookeeper-3.6.0
Los datos creados en este directorio /opt/module/apache-zookeeper-3.6.0/
[hadoop@linux1 apache-zookeeper-3.6.0]$ mkdir Data
Modificar el nombre del archivo
mv zoo_sample.cfg zoo.cfg
1.3 Configuración de archivos zoo.cfg
configuración específica, modificar dateDir, añadir un directorio de almacenamiento de registro
ataDir=/opt/module/apache-zookeeper-3.6.0/Data
dataLogDir=/opt/module/apache-zookeeper-3.6.0/Data/logs
En el aumento final
servidor. 1 = linux1: 2888 : 3888 servidor. 2 = linux2: 2888 : 3888 servidor. 3 = linux3: 2888 : 3888
1.4 Configuración de clúster
(1) crear un archivo en el directorio myid /opt/module/apache-zookeeper-3.6.0/Data
[Hadoop @ linux1 datos] $ myid táctil
(2) la edición de servidor de archivos myid para añadir el número correspondiente en el archivo: La 1
[Hadoop @ linux1 datos] $ vi myid
wq guardar y salir
[hadoop @ linux1 módulo] $ scp -r Apache-zookeeper- 3.6 . 0 / hadoop @ linux2: / opt / módulo / [hadoop @ linux1 módulo] $ scp -r Apache-zookeeper- 3.6 . 0 / hadoop @ linux3: / opt / módulo /
Se encuentran linux1 y linux2 de archivo myid
[hadoop @ linux1 módulo] $ ssh linux2 Última entrada: Mar Mar 24 11 : 32 : 24 2020 de linux1 [hadoop @ linux2 ~] $ echo 2 > / opt / módulo / apache-zookeeper- 3.6 . 0 / Datos / myid [hadoop @ linux2 ~] $ cat / opt / módulo / apache-zookeeper- 3.6 . 0 / Datos / MyID 2 [hadoop @ linux2 ~ ] $ salida de cierre de sesión de conexión a linux2 cerrado. [hadoop @ linux1 módulo] $
[hadoop @ linux1 módulo] $ ssh linux3 Última entrada: Dom Sep 23 de 14 : 15 : 50 2020 [hadoop @ linux3 ~] $ echo 3 > / opt / módulo / apache-zookeeper- 3.6 . 0 / Datos / myid [hadoop @ linux3 ~] $ cat / opt / módulo / apache-zookeeper- 3.6 . 0 / Datos / MyID 3 [hadoop @ linux3 ~ ] $ salida de cierre de sesión de conexión a linux3 cerrado. [hadoop @ linux1 módulo] $
Inicio Cluster 1.5
[hadoop @ linux1 Apache-zookeeper- 3.6 . 0 ] $ ./bin/zkServer. sh empezar ZooKeeper JMX habilitado por defecto Uso de config: / opt / módulo / apache-zookeeper- 3.6 . 0 /bin/../conf/ zoo.cfg empleado del zoológico ... A partir EMPEZAR [hadoop @ linux1 Apache -zookeeper- 3.6 . 0 ] $ ssh linux2 Última entrada : Mar Mar 24 de 11 : 33 : 58 2020 de linux1 [hadoop @ linux2 ~] $ / opt / módulo / apache-zookeeper- 3.6 .0 / bin / zkServer. sh empezar ZooKeeper JMX habilitado por defecto Uso de config: / opt / módulo / apache-zookeeper- 3.6 . 0 /bin/../conf/ zoo.cfg empleado del zoológico ... A partir EMPEZAR [hadoop @ linux2 ~ ] $ salida de cierre de sesión de conexión a linux2 cerrado. [hadoop @ linux1 Apache -zookeeper- 3.6 . 0 ] $ ssh linux 2 ssh : No se pudo resolver el nombre de host Linux: Nombre o servicio no se conoce [hadoop @ linux1 Apache -zookeeper- 3.6 . 0 ] $ssh linux3 Última entrada : Mar Mar 24 de 11 : 35 : 38 2020 de linux1 [hadoop @ linux3 ~] $ / opt / módulo / apache-zookeeper- 3.6 . 0 / bin / zkServer. sh empezar ZooKeeper JMX habilitado por defecto Uso de config: / opt / módulo / apache-zookeeper- 3.6 . 0 /bin/../conf/ zoo.cfg empleado del zoológico ... A partir EMPEZAR [hadoop @ linux3 ~ ] $ salida de cierre de sesión de conexión a linux3 cerrado. [hadoop @ linux1 Apache -zookeeper- 3.6. 0 ] $
1.6 Configuración de variables de entorno
vi / etc / profile
exportación ZOOKEEPER_HOME = / opt / módulo / apache-zookeeper- 3.6 . 0 export PATH = $ PATH: $ ZOOKEEPER_HOME / bin
source / etc / profile
1.7zoo.cfg interpretación parámetros de configuración
Server.A = B: C: D.
A es un número, que indica que el servidor es los primeros números;
B es la dirección IP del servidor;
C es el puerto del servidor en los servidores de Leader de clústeres para intercambio de información;
D es el caso en el servidor líder del grupo de estar abajo, necesita un puerto a la reelección para elegir a un nuevo líder, y este puerto es el puerto utilizado para llevar a cabo la elección del servidor de comunicación mutua.
Un archivo de configuración MyID modo compartido, el archivo en el directorio DataDir, este documento no es un valor de datos A, este archivo se lee cuando el inicio Zookeeper, obtener información de configuración con los datos dentro de la comparación para determinar qué zoo.cfg al final es qué servidor.
1) tickTime = 2000: los latidos del corazón de Comunicación
tickTime: la comunicación de la frecuencia cardíaca, la hora del servidor latidos Zookeeper, en milisegundos
ZOOKEEPER uso básico tiempo, o el servidor se mantiene entre el cliente y el intervalo de tiempo latido del servidor, es decir, cada tickTime tiempo enviará un latido del corazón, el tiempo en milisegundos.
Se utilizó mecanismo de latido del corazón, y establece la sesión de tiempo de espera mínimo es el doble del tiempo de los latidos del corazón. (Mínimo de sesión de tiempo de espera es de 2 * tickTime)
2) initLimit = 10: LF tiempo de comunicación inicial
El número máximo de latidos entre seguidor servidor seguidor cluster (F) para el líder servidor del líder (L) cuando el tolerable conexión inicial (número de tickTime), que se define por el servidor de clúster está conectado a Leader Zookeeper de tiempo.
La votación para elegir a un nuevo líder del tiempo de inicialización
Seguidor durante el inicio, se sincronizarán todos los datos más recientes del líder, entonces se puede determinar el estado inicial de los servicios externos.
Líder permite F para completar este trabajo dentro del tiempo initLimit.
3) syncLimit = 5: LF tiempo de comunicación síncrona
unidades de clúster entre el líder máximo tiempo de respuesta y seguidor, si la respuesta excede syncLimit * tickTime,
Líder cree Follwer muertos, Follwer elimina de la lista de servidores.
Durante el funcionamiento, el líder responsable de la comunicación con el ZK todas las máquinas del clúster, por ejemplo, a través de un número de latidos del corazón mecanismo para detectar la supervivencia del estado de la máquina.
Después de emitir un latido del corazón si syncLimit L paquete, no ha recibido una respuesta de F que, a continuación, que ya no es la línea F hacia arriba.
4) DataDir: ruta del directorio de archivos de datos + datos de persistencia
Guardar la información de instantáneas de base de datos en memoria, si no se indica lo contrario, el registro de transacciones de actualización también se guarda en la base de datos.
5) clientPort = 2181: puerto Client
Puerto para escuchar las conexiones de clientes
Segunda operación de cliente de línea de comandos.
1) Iniciar el cliente
[Hadoop @ linux1 opt] $ zkCli.sh