En este artículo veremos cómo instalar Cassandra en Debian 10 Buster paso a paso, de manera que puedas trabajar con este motor de bases de datos NoSQL distribuidas sobre tu servidor o VPS Debian.
Tabla de contenidos
Antes de instalar Cassandra en Debian 10 Buster
Si tienes intención de seguir esta guía de instalación de Cassandra en Debian 10 Buster deberás tener en cuenta los siguientes requisitos:
- Una máquina Debian 10 Buster actualizada.
- Un usuario con permisos de sudo.
- Acceso a Internet.
Cassandra trabaja sobre Java, pero incluye como dependencia la versión por defecto de OpenJDK incluida en Debian 10 Buster, por lo que no debemos preocuparnos de este aspecto.
También necesitaremos alguna herramienta del sistema, que obtendremos directamente de los repositorios de Debian 10 Buster, por lo que actualizamos su información:
~$ sudo apt update
E instalamos todo lo necesario:
~$ sudo apt install -y gnupg
Cómo configurar el repositorio de Cassandra en Debian 10 Buster
Necesitamos configurar el repositorio oficial de Cassandra para Debian 10 Buster, por lo que crearemos su propio archivo de fuentes:
~$ sudo nano /etc/apt/sources.list.d/cassandra.list
Con la siguiente línea como contenido:
deb http://www.apache.org/dist/cassandra/debian 40x main
Ya podemos guardar y cerrar el archivo.
También debemos importar la clave pública con la que se firman los paquetes de Cassandra procedentes de este repositorio:
~$ wget -qO- https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
Finalmente, actualizamos de nuevo la información de los repositorios, para que se incluya el que acabamos de añadir:
~$ sudo apt update
Cómo instalar Cassandra en Debian 10 Buster
Vamos a instalar Cassandra en Debian 10 Buster desde el repositorio oficial recién configurado, para lo que necesitaremos únicamente el paquete cassandra:
~$ sudo apt install -y cassandra
Tras la descarga e instalación de Cassandra se crea un nuevo servicio en Debian 10, el servicio cassandra.service, o simplemente cassandra, que queda iniciado automáticamente, lo que podemos comprobar con el comando systemctl:
~$ systemctl status cassandra
Comprobar Cassandra en Debian 10 Buster
Para comprobar el funcionamiento de Cassandra en Debian 10 Buster podemos utilizar el comando nodetool, incluido en el paquete que acabamos de instalar:
~$ nodetool status Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 127.0.0.1 68,89 KiB 16 ? 20439d25-c7d7-43e8-a70e-0a554c0a1a98 rack1
La información ofrecida es muy básica, pero queda claro que el servicio se encuentra activo y en funcionamiento.
También podremos conectar al servicio Cassandra con el cliente de consola cqlsh:
Veremos datos interesantes como el nombre del clúster, dirección y puerto de escucha, versión del cliente y del servidor, etc.
Podemos regresar a la consola de Debian 10 con el comando exit.
Cómo configurar Cassandra en Debian 10 Buster
Para configurar Cassandra en Debian 10 podemos trabajar sobre sus archivos de configuración, ubicados bajo la ruta /etc/cassandra/.
Cómo cambiar el tamaño de memoria RAM utilizada
Editamos el archivo jvm-server.options:
~$ sudo nano /etc/cassandra/jvm-server.options
Localizamos las directivas Xms y Xmx:
... #-Xms4G #-Xmx4G ...
Aunque su valor es en ambos casos 4 GB, por defecto están desactivadas, así que se calcula automáticamente. Si quieres especificar un valor concreto acorde a las características de la máquina Debian 10 puedes añadir un valor expresado en GB o MB. Por ejemplo, para 512 MB:
... -Xms512M -Xmx512M ...
Guardamos los cambios y reiniciamos Cassandra.
Cómo cambiar el nombre del clúster
Conectamos a Cassandra con el cliente de consola:
~$ cqlsh
Actualizamos el nombre con el comando update:
cqlsh> update system.local set cluster_name='Debian 10 Cluster' where key='local';
Y cerramos la conexión:
cqlsh> exit
Ahora editamos el archivo de configuración cassandra.yaml:
~$ sudo nano /etc/cassandra/cassandra.yaml
Buscamos la directiva cluster_name:
... # The name of the cluster. This is mainly used to prevent machines in # one logical cluster from joining another. cluster_name: 'Test Cluster' ...
Y cambiamos su valor por el mismo nombre que hemos indicado en el cliente de consola:
... cluster_name: 'Debian 10 Cluster' ...
Guardamos los cambios y reiniciamos el servicio:
~$ sudo systemctl restart cassandra
Una vez que el servicio esté de nuevo activo (lo que puede tomar unos instantes), conectamos de nuevo con el cliente cqlsh:
~$ cqlsh Connected to Debian 10 Cluster at 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 4.0 | CQL spec 3.4.5 | Native protocol v4] Use HELP for help. cqlsh>
Y veremos que el cambio se ha reflejado.
Conclusión
Ahora que sabes cómo instalar Cassandra en Debian 10 Buster ya puedes desarrollar bases de datos NoSQL para tus propios proyectos, o fijar los requisitos de aplicaciones de terceros.
Y si ya has hecho funcionar esta plataforma en tu sistema y quieres agradecérnoslo colaborando con el mantenimiento de este sitio y la creación de nuevos tutoriales, puedes hacerlo dejando 1 $ de propina desde PayPal:
O, si te sientes especialmente agradecido, invitándonos a un café:
¡Gracias!