GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Apache ZooKeeper en Ubuntu 20.04

ZooKeeper es un proyecto de software de Apache Software Foundation que proporciona un servicio de datos compartidos de alto rendimiento que se utiliza para crear aplicaciones distribuidas. Es utilizado por un clúster para mantener datos compartidos con técnicas de sincronización sólidas. Proporciona una interfaz sencilla para gestionar la información de configuración, la asignación de nombres, la sincronización distribuida y el aprovisionamiento de servicios de grupo.

En este tutorial, le mostraremos cómo instalar Apache ZooKeeper en un servidor Ubuntu 20.04.

Requisitos

  • Un servidor con Ubuntu 20.04.
  • Se configura una contraseña de root en el servidor.

Instalar Java

Apache ZooKeeper está escrito en Java, por lo que deberá instalar Java en su sistema. Puede instalarlo con el siguiente comando:

apt-get install default-jdk -y

Después de instalar Java, verifique la versión instalada de Java con el siguiente comando:

java --version

Deberías obtener el siguiente resultado:

openjdk 11.0.8 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)

Instalar Zookeeper

Antes de instalar Apache zookeeper, deberá crear un nuevo usuario para zookeeper. Puedes crearlo con el siguiente comando:

useradd zookeeper -m

A continuación, establezca la contraseña para este usuario y agréguelo al grupo sudo con el siguiente comando:

usermod --shell /bin/bash zookeeper
passwd zookeeper
usermod -aG sudo zookeeper

A continuación, cree un directorio de datos para zookeeper y cambie la propiedad de este directorio:

mkdir /zookeeper
chown -R zookeeper:zookeeper /zookeeper

A continuación, deberá descargar la última versión de zookeeper en el directorio /opt. Puedes descargarlo con el siguiente comando:

cd /opt
wget https://mirrors.estointernet.in/apache/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz

Una vez que se complete la descarga, extraiga el archivo descargado con el siguiente comando:

tar -xvzf apache-zookeeper-3.6.2-bin.tar.gz

A continuación, cambie el nombre del directorio extraído a zookeeper con el siguiente comando:

mv apache-zookeeper-3.6.2-bin zookeeper

A continuación, cambie la propiedad del directorio zookeeper con el siguiente comando:

chown -R zookeeper:zookeeper /opt/zookeeper

Configurar ZooKeeper en modo independiente

A continuación, deberá crear un archivo de configuración de ZooKeeper para configurar ZooKeeper en modo independiente. Puedes crearlo con el siguiente comando:

nano /opt/zookeeper/conf/zoo.cfg

Agregue las siguientes líneas:

tickTime=2500
dataDir=/zookeeper
clientPort=2181
maxClientCnxns=80

Guarde y cierre el archivo cuando haya terminado. Luego, inicie el servicio ZooKeeper con el siguiente comando:

cd /opt/zookeeper
bin/zkServer.sh start

Deberías obtener el siguiente resultado:

ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

De forma predeterminada, ZooKeeper escucha en el puerto 2181. Puede verificarlo con el siguiente comando:

ss -ntpl | grep 2181

Deberías obtener el siguiente resultado:

LISTEN    0         50                       *:2181                   *:*        users:(("java",pid=12749,fd=53)) 

Ahora puede conectarse al servidor local de ZooKeeper con el siguiente comando:

bin/zkCli.sh -server 127.0.0.1:2181

Una vez conectado, debería obtener el siguiente resultado:

WATCHER::

WatchedEvent state:SyncConnected type:None path:null
[zk: 127.0.0.1:2181(CONNECTED) 0] 

Ahora, sal de la sesión con el siguiente comando:

quit

A continuación, detenga el servicio ZooKeeper con el siguiente comando:

bin/zkServer.sh stop

Debería ver el siguiente resultado:

ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED

Crear un archivo de servicio Systemd para ZooKeeper

A continuación, deberá crear un archivo de servicio systemd para administrar el servicio ZooKeeper. Puedes crearlo con el siguiente comando:

nano /etc/systemd/system/zookeeper.service

Agregue las siguientes líneas:

[Unit]
Description=Zookeeper Daemon
Documentation=http://zookeeper.apache.org
Requires=network.target
After=network.target

[Service]    
Type=forking
WorkingDirectory=/opt/zookeeper
User=zookeeper
Group=zookeeper
ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg
ExecStop=/opt/zookeeper/bin/zkServer.sh stop /opt/zookeeper/conf/zoo.cfg
ExecReload=/opt/zookeeper/bin/zkServer.sh restart /opt/zookeeper/conf/zoo.cfg
TimeoutSec=30
Restart=on-failure

[Install]
WantedBy=default.target

Guarde y cierre el archivo, luego vuelva a cargar el demonio systemd para aplicar los cambios de configuración:

systemctl daemon-reload

A continuación, cambie la propiedad del ZooKeeper y el directorio de datos con el siguiente comando:

chown -R zookeeper:zookeeper /opt/zookeeper
chown -R zookeeper:zookeeper /zookeeper

A continuación, inicie el servicio ZooKeeper y habilítelo para que se inicie al reiniciar el sistema con el siguiente comando:

systemctl start zookeeper
systemctl enable zookeeper

Ahora puede verificar el estado del servicio ZooKeeper con el siguiente comando:

systemctl status zookeeper

Deberías obtener el siguiente resultado:

? zookeeper.service - Zookeeper Daemon
     Loaded: loaded (/etc/systemd/system/zookeeper.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-09-27 06:43:28 UTC; 8s ago
       Docs: http://zookeeper.apache.org
    Process: 13915 ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg (code=exited, status=0/SUCCESS)
   Main PID: 13946 (java)
      Tasks: 37 (limit: 4691)
     Memory: 50.6M
     CGroup: /system.slice/zookeeper.service
             ??13946 java -Dzookeeper.log.dir=/opt/zookeeper/bin/../logs -Dzookeeper.log.file=zookeeper-zookeeper-server-ubuntu2004.log -Dzook>

Sep 27 06:43:27 ubuntu2004 systemd[1]: Starting Zookeeper Daemon...
Sep 27 06:43:27 ubuntu2004 zkServer.sh[13915]: /usr/bin/java
Sep 27 06:43:27 ubuntu2004 zkServer.sh[13915]: ZooKeeper JMX enabled by default
Sep 27 06:43:27 ubuntu2004 zkServer.sh[13915]: Using config: /opt/zookeeper/conf/zoo.cfg
Sep 27 06:43:28 ubuntu2004 zkServer.sh[13915]: Starting zookeeper ... STARTED
Sep 27 06:43:28 ubuntu2004 systemd[1]: Started Zookeeper Daemon.

Conclusión

¡Felicidades! Ha instalado y configurado con éxito ZooKeeper en el servidor Ubuntu 20.04. Ahora puede crear e implementar fácilmente la aplicación distribuida con ZooKeeper.


Ubuntu
  1. Cómo instalar Logstash en Ubuntu 18.04

  2. Cómo instalar Apache Maven en Ubuntu 20.04

  3. Cómo instalar Apache Cassandra en Ubuntu 20.04

  4. Cómo instalar R en Ubuntu 18.04

  5. ¿Cómo instalar Apache en Ubuntu?

Cómo instalar Apache Solr en Ubuntu 20.04

Cómo instalar Apache Spark en Ubuntu 20.04

Cómo instalar Syncthing en Ubuntu 20.04

Cómo instalar Apache ZooKeeper en Ubuntu 20.04 LTS

Cómo instalar el servidor Apache Tomcat en Ubuntu 22.04

Cómo instalar Apache en Ubuntu 20.04