Cómo instalar Apache Cassandra en Ubuntu 20.04

Apache Cassandra es un sistema de gestión de bases de datos NoSQL de código abierto que fue desarrollado originalmente en 2008 por ingenieros de Facebook que necesitaban un motor de almacenamiento escalable con soporte de replicación, partición y equilibrio de carga sin tener que poner restricciones al tipo o tamaño del hardware utilizado. Habían estado utilizando MySQL, pero no podía escalarse a medida que aumentaban su base de usuarios más allá de decenas de millones.

Las características clave son la extensibilidad, el escalado lineal (más nodos) para el rendimiento de escritura; la arquitectura totalmente distribuida: la separación entre servidores básicos se escala linealmente sin ningún punto único de fallo; la facilidad de instalación y funcionamiento: no requiere tareas de instalación complejas, como la configuración del hardware, y puede ejecutarse en hardware básico; la autorreparación: si un nodo se cae, será sustituido automáticamente por otro nodo del clúster.

La base de datos Apache Cassandra se utiliza a menudo como almacén de datos para análisis operativos y en tiempo real. Por ejemplo, en el sector minorista, las empresas la utilizan para hacer un seguimiento de los patrones de tráfico de los clientes, de modo que puedan hacer los ajustes pertinentes sin tener que esperar semanas o meses a que sus analistas les proporcionen información.

En otras palabras, si tienes un artículo que se vende bien en un lugar, pero no en otro, debido a fluctuaciones como las vacaciones, los cambios pueden hacerse de inmediato con este nuevo tipo de herramienta analítica.

Esta guía te guiará a través de la instalación de Apache Cassandra en Ubuntu 20.04, cubriendo también el proceso de desinstalación si fuera necesario.

Requisitos previos

  • Un servidor que ejecute Ubuntu Server 20.04
  • Un usuario con privilegios sudo

Cómo empezar

Actualizar tu sistema

Ubuntu 20.04 ya viene preinstalado con Apache Cassandra, pero para asegurarte de que todos los paquetes de tu sistema están actualizados, ejecuta los siguientes comandos en tu terminal:

sudo apt update -y
sudo apt upgrade -y

La opción -y se utiliza para responder automáticamente «sí» cuando hay actualizaciones que requieren la intervención del usuario.

El comando actualizar obtendrá la última versión de los paquetes de software. El comando actualizar actualiza los paquetes ya instalados a una revisión más reciente (y/o estable).

Ejemplo de salida:

Actualizando

Actualizando tu sistema

Actualización de

Actualizando tu sistema

Instalar dependencias

Para instalar Cassandra en Ubuntu, hay varias dependencias que deben instalarse primero.

sudo apt install apt-transport-https wget gnupg

La dependencia apt-transport-htps permitirá a Apache Cassandra comunicarse de forma segura con otros hosts mediante encriptación SSL. wget es un programa que te permite descargar contenidos de servidores en Internet. gnupg es un programa de gestión de claves que se utiliza para verificar la integridad de los archivos.

Ejemplo de salida:

Instalación de dependencias

Instalación de Java

Se necesita Java para que funcione Apache Cassandra. Ejecuta el siguiente comando para instalar OpenJDK:

sudo apt install openjdk-8-jdk

El comando descargará e instalará Java en tu sistema. El número «8» del comando se refiere a Java 8, que es la versión de Java por defecto.

Salida de ejemplo:

Instalar Java

Instalación de Java

Para comprobar si Java está instalado, ejecuta el siguiente comando:

java -version

Salida de ejemplo:

Verificando

Versión de Java

Instalar Apache Cassandra

Ahora que todos los requisitos previos están instalados, es hora de instalar Apache Cassandra. Para empezar, importaremos la clave GPG utilizando el comando wget como se indica a continuación:

wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -

-q es una opción que silenciará la salida.

El comando sudo apt-key add añadirá la clave necesaria para instalar Cassandra.

Ejemplo de salida:

Importar la clave GPG

Importando la clave GPG

A continuación, añade el repositorio de Apache Cassandra a tu archivo sources.list:

sudo sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'

echo mostrará el contenido del argumento proporcionado en una nueva línea y lo añadirá al final del archivo . list que se especifica en el segundo argumento de este comando, «/etc/apt/» entre comillas después de deb (abreviatura de paquete Debian). debian 311x main es el nombre del repositorio que se añadirá a tu archivo sources.list.

A continuación, actualiza el índice de paquetes de tu sistema:

sudo apt-get update

A continuación, instala Apache Cassandra:

sudo apt install cassandra

El comando anterior descargará e instalará Apache Cassandra en tu sistema.

Ejemplo de salida:

Instalación de Apache Cassandra

Instalando Cassandra

Puedes comprobar el estado de Apache Cassandra escribiendo:

sudo systemctl status cassandra

Salida de ejemplo:

Comprobar el estado de Apache Cassandra

Comprobando el estado de Apache Cassandra

Si necesitas reiniciar Apache Cassandra, escribe:

sudo systemctl restart cassandra

Además, puedes verificar las estadísticas del nodo en tu sistema escribiendo:

sudo nodetool status

Salida de ejemplo:

Estado de Nodetool

Estado de Nodetool

Una vez finalizada la instalación de Apache Cassandra, puedes iniciar sesión en Apache Cassandra con el siguiente comando:

cqlsh

Salida de ejemplo:

Cqlsh

Pantalla de inicio de sesión

Ahora, para salir de la herramienta cqlsh, escribe exit y pulsa Intro.

Configurar Apache Cassandra

Ahora que se ha instalado Apache Cassandra, es hora de configurarlo.

El directorio /var/lib/cassandra/data/ es la ubicación por defecto para los datos de Cassandra.

etc/cassandra es la ubicación por defecto para los archivos de configuración de Cassandra.

Es importante hacer una copia de seguridad de este archivo antes de realizar cualquier cambio para evitar la pérdida de datos.

El nombre por defecto del cluster de Cassandra es » cluster de prueba «. Si quieres utilizar otro nombre, puedes entrar en Cassandra y cambiarlo:

cqlsh
UPDATE system.local SET cluster_name = 'Howtoforge Cluster' WHERE KEY = 'local';

El comando anterior cambiará el nombre del clúster a «Clúster Howtoforge».

Una vez cambiado el nombre del clúster, debes reiniciar Cassandra para que surta efecto:

sudo systemctl restart cassandra

Ahora, cuando inicies sesión en la interfaz de Apache Cassandra, aparecerá el nuevo nombre del clúster.

Ejemplo de salida:

Cambiar el nombre del Cluster

Nuevo nombre de clúster

No puedes utilizar espacios ni símbolos especiales como guiones bajos (_) en los nombres de los clústeres (los nombres distinguen entre mayúsculas y minúsculas), por lo que tendrás que utilizar un nombre diferente para tu clúster.

Desinstalar Apache Cassandra

Puedes eliminar Apache Cassandra de tu máquina siguiendo los pasos que se indican a continuación:

Detener el servicio de Apache Cassandra si se está ejecutando:

sudo service cassandra stop

A continuación, elimina la biblioteca, los directorios de registro y desinstala Apache Casandra utilizando estos comandos:

sudo rm -r /var/lib/cassandra
sudo rm -r /var/log/Cassandra
sudo apt purge cassandra

Apache Cassandra se eliminará, pero aún te quedarán algunos archivos de otros paquetes que también se instalaron y podrás importarlos en cualquier momento. Por tanto, se recomienda eliminarlos también:

sudo rm -r /usr/lib/cassandra
sudo rm -r /etc/apache-cassandra
sudo rm -r ~/.cassandra

Solución de problemas

A continuación se indican los pasos habituales para solucionar los errores de Apache Cassandra, que pueden ayudar a resolver algunos problemas de instalación o configuración.

  • Si recibes el error «No se puede crear un hilo nativo», suele deberse a un fallo del sistema operativo subyacente. Esto puede deberse a que la memoria física no está disponible o a algún otro problema en el servidor. Comprueba los registros de tu servidor en busca de mensajes de error relacionados con la asignación de memoria virtual e intenta ajustar los parámetros del núcleo en consecuencia (por ejemplo, vmalloc=256m).
  • Si recibes un error «error al cargar bibliotecas compartidas: libcurl.so», se trata de un problema con la instalación de OpenSSL en tu sistema (por ejemplo, Ubuntu 16.04 o más reciente).
  • No se puede encontrar «cassandra-» en el directorio /etc/init.d al intentar iniciarlo manualmente. El primer paso es asegurarte de que tienes un script init de Apache Cassandra instalado y configurado correctamente en Ubuntu. Si esto no funciona, intenta ejecutar estos comandos con sudo: «update-rc.d cassandra defaults && service cassandra restart». Esto debería ayudar a resolver el problema.
  • «Error al intentar iniciar Apache Cassandra»: asegúrate de que los cambios que has realizado se guardan en los archivos de configuración del servicio antes de salir.

Conclusión

En este tutorial, hemos repasado los aspectos básicos de la instalación de Apache Cassandra en Ubuntu 20.04, así como algunos pasos adicionales que puedes querer dar después de la instalación. Puede ser útil para los principiantes que se están iniciando en Cassandra o para aquellos que deseen una actualización de su configuración actual.

Esperamos que este artículo te haya sido útil y nos vemos la próxima vez con otro tutorial.

¿Te ha gustado este artículo? Compártelo con tus amigos y síguenos en las redes sociales.

También te podría gustar...