Cómo instalar Apache Cassandra en Debian 11
Apache Cassandra es un sistema de gestión de bases de datos gratuito, de código abierto y distribuido. Es capaz de manejar grandes cantidades de datos a través de muchos servidores y proporciona alta disponibilidad sin ningún punto de fallo. Lo utilizan muchas empresas, como Github, NetFlix, Reddit e Instagram. Cassandra funciona con una arquitectura peer to peer, en la que cada nodo está conectado a todos los demás nodos. Cada nodo de Cassandra realiza todas las operaciones de la base de datos y puede atender las peticiones de los clientes sin necesidad de un nodo maestro.
En este post, te mostraremos cómo instalar el sistema de gestión de bases de datos Apache Cassandra en Debian 11.
Requisitos previos
- Un servidor con Debian 11.
- Una contraseña de root configurada en el servidor.
Instalar Java
Antes de empezar, necesitarás instalar Java en tu servidor. Puedes instalarlo ejecutando el siguiente comando:
apt-get install openjdk-11-jre -y
Después de instalar Java, verifica la instalación de Java con el siguiente comando:
java -version
Deberías obtener la siguiente salida:
openjdk version "11.0.12" 2021-07-20 OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2) OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)
Instalar Cassandra
Por defecto, el paquete Cassandra no está incluido en el repositorio por defecto de Debian 11. Así que tendrás que añadir el repositorio de Cassandra a APT.
En primer lugar, instala las dependencias necesarias con el siguiente comando:
apt-get install curl gnupg2 -y
A continuación, añade la clave GPG de Cassandra y el repositorio con el siguiente comando:
curl https://downloads.apache.org/cassandra/KEYS | apt-key add -
echo "deb https://downloads.apache.org/cassandra/debian 40x main" | tee -a /etc/apt/sources.list.d/cassandra.list
Una vez añadido el repositorio, actualiza el repositorio e instala el paquete Cassandra con el siguiente comando:
apt-get update -y
apt-get install cassandra -y
Una vez instalado Cassandra, puedes verificar el estado de Cassandra con el siguiente comando:
systemctl status cassandra
Deberías obtener la siguiente salida:
? cassandra.service - LSB: distributed storage system for structured data Loaded: loaded (/etc/init.d/cassandra; generated) Active: active (running) since Sat 2021-09-25 17:23:08 UTC; 23s ago Docs: man:systemd-sysv-generator(8) Process: 24537 ExecStart=/etc/init.d/cassandra start (code=exited, status=0/SUCCESS) Tasks: 53 (limit: 9510) Memory: 2.2G CPU: 23.439s CGroup: /system.slice/cassandra.service ??24666 /usr/bin/java -ea -da:net.openhft... -XX:+UseThreadPriorities -XX:+HeapDumpOnOutOfMemoryError -Xss256k -XX:+AlwaysPreTouc> Sep 25 17:23:08 debian11 systemd[1]: Starting LSB: distributed storage system for structured data... Sep 25 17:23:08 debian11 systemd[1]: Started LSB: distributed storage system for structured data.
Verificar el clúster de Apache Cassandra
Espera un tiempo a que se levante el clúster de Cassandra y luego ejecuta el siguiente comando para verificar el estado del clúster:
nodetool status
Deberías ver la siguiente salida:
Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 69.09 KiB 16 100.0% 2813344d-5006-4360-a57e-61deeea9fe70 rack1
A continuación, conéctate al clúster Cassandra con el siguiente comando:
cqlsh
Deberías obtener la siguiente salida:
Connected to Test Cluster at 127.0.0.1:9042 [cqlsh 6.0.0 | Cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5] Use HELP for help. cqlsh>
Configurar Cassandra
Si quieres cambiar el nombre del clúster Cassandra, ejecuta el siguiente comando
cqlsh> UPDATE system.local SET cluster_name = 'New Cluster' WHERE KEY = 'local';
A continuación, sal del shell cqlsh con el siguiente comando:
cqlsh> exit
A continuación, edita el archivo de configuración principal de Cassandra:
nano /etc/cassandra/cassandra.yaml
Cambia el nombre del clúster de Cassandra como se muestra a continuación:
cluster_name: 'New Cluster'
Guarda y cierra el archivo y reinicia el servicio Cassandra para aplicar los cambios:
systemctl restart cassandra
A continuación, verifica el nombre del clúster con el siguiente comando:
cqlsh
Deberías ver el nuevo nombre del cluster en la siguiente salida:
Connected to New Cluster at 127.0.0.1:9042 [cqlsh 6.0.0 | Cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5] Use HELP for help.
Conclusión
Enhorabuena, has instalado correctamente Apache Cassandra en Debian 11. Ahora puedes empezar a utilizar Apache Cassandra según tus necesidades.