Apache Cassandra es un sistema de gestión de bases de datos distribuido, gratuito y de código abierto. Es capaz de manejar grandes cantidades de datos en muchos servidores y proporciona alta disponibilidad sin un punto único de falla. Es utilizado por muchas empresas, incluidas Github, NetFlix, Reddit e Instagram. Cassandra trabaja con una arquitectura de igual a igual, con cada nodo conectado a todos los demás nodos. Cada nodo de Cassandra realiza todas las operaciones de la base de datos y puede atender las solicitudes de los clientes sin necesidad de un nodo maestro.
En esta publicación, le mostraremos cómo instalar el sistema de administración de bases de datos Apache Cassandra en Debian 11.
Requisitos
- Un servidor que ejecuta Debian 11.
- Se configura una contraseña raíz en el servidor.
Instalar Java
Antes de comenzar, deberá instalar Java en su servidor. Puede instalarlo ejecutando el siguiente comando:
apt-get install openjdk-11-jre -y
Después de instalar Java, verifique la instalación de Java usando el siguiente comando:
java -version
Deberías obtener el siguiente resultado:
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
De forma predeterminada, el paquete Cassandra no está incluido en el repositorio predeterminado de Debian 11. Por lo tanto, deberá agregar el repositorio de Cassandra a APT.
Primero, instale las dependencias requeridas usando el siguiente comando:
apt-get install curl gnupg2 -y
A continuación, agregue 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 que se agrega el repositorio, actualice el repositorio e instale el paquete Cassandra con el siguiente comando:
apt-get update -y
apt-get install cassandra -y
Una vez que se haya instalado Cassandra, puede verificar el estado de Cassandra usando el siguiente comando:
systemctl status cassandra
Deberías obtener el siguiente resultado:
? 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 clúster de Apache Cassandra
Espere un tiempo para subir el clúster de Cassandra y luego ejecute el siguiente comando para verificar el estado del clúster:
nodetool status
Debería ver el siguiente resultado:
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éctese al clúster de Cassandra con el siguiente comando:
cqlsh
Deberías obtener el siguiente resultado:
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 desea cambiar el nombre del clúster de Cassandra, ejecute el siguiente comando:
cqlsh> UPDATE system.local SET cluster_name = 'New Cluster' WHERE KEY = 'local';
Luego, salga del shell cqlsh con el siguiente comando:
cqlsh> exit
A continuación, edite el archivo de configuración principal de Cassandra:
nano /etc/cassandra/cassandra.yaml
Cambie el nombre del clúster de Cassandra como se muestra a continuación:
cluster_name: 'New Cluster'
Guarde y cierre el archivo, luego reinicie el servicio Cassandra para aplicar los cambios:
systemctl restart cassandra
A continuación, verifique el nombre del clúster con el siguiente comando:
cqlsh
Debería ver el nuevo nombre del clúster en el siguiente resultado:
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
¡Felicidades! Ha instalado con éxito Apache Cassandra en Debian 11. Ahora puede comenzar a usar Apache Cassandra según sus requisitos.