Apache Cassandra es una base de datos NoSQL gratuita y de código abierto sin un único punto de falla. Proporciona escalabilidad lineal y alta disponibilidad sin comprometer el rendimiento. Varias organizaciones, incluidas Apple, NetFlix, eBay y Easou, utilizan Apache Cassandra.
En este tutorial, le mostraremos cómo instalar Apache Cassandra en Ubuntu 18.04. Las mismas instrucciones se aplican a Ubuntu 16.04 y cualquier distribución basada en Ubuntu, incluidas Linux Mint, Kubuntu y Elementary OS.
Requisitos previos #
Para poder instalar paquetes en su sistema Ubuntu, debe iniciar sesión como usuario con privilegios de sudo.
Instalando Apache Cassandra #
La forma más fácil de instalar Apache Cassandra en Ubuntu 18.04 es instalando el paquete deb desde el repositorio oficial de Apache Cassandra.
Al momento de escribir este artículo, la última versión de Apache Cassandra es 3.11
y requiere que OpenJDK 8 esté instalado en el sistema.
La instalación de Java es bastante simple, comience actualizando el índice del paquete:
sudo apt update
Instale el paquete OpenJDK escribiendo:
sudo apt install openjdk-8-jdk
Verifique la instalación de Java ejecutando el siguiente comando que imprimirá la versión de Java:
java -version
La salida debería verse así:
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-2ubuntu0.18.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
Instale el apt-transport-https
paquete necesario para acceder a un repositorio a través de HTTPS:
sudo apt install apt-transport-https
El siguiente paso es agregar el repositorio de Apache Cassandra.
Importe el GPG del repositorio usando el siguiente wget
comando:
wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -
El comando anterior debería mostrar OK
lo que significa que la clave se ha importado correctamente y los paquetes de este repositorio se considerarán de confianza.
A continuación, agregue el depósito de Cassandra al sistema emitiendo:
sudo sh -c 'echo "deb http://www.apache.org/dist/cassandra/debian 311x main" > /etc/apt/sources.list.d/cassandra.list'
Una vez que el repositorio esté habilitado, actualice el apt
lista de paquetes e instale la última versión de Apache Cassandra escribiendo:
sudo apt update
sudo apt install cassandra
El servicio de Cassandra se iniciará automáticamente después de que se complete el proceso de instalación. Puede verificar que Cassandra se está ejecutando escribiendo:
nodetool status
Deberías ver algo similar a esto:
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 114.55 KiB 256 100.0% d8c27e24-ea26-4eeb-883c-5986218ba3ca rack1
Felicitaciones, en este momento tiene Apache Cassandra instalado en su servidor Ubuntu.
Configurando Apache Cassandra #
Los datos de Apache Cassandra se almacenan en /var/lib/cassandra
directorio, los archivos de configuración se encuentran en /etc/cassandra
y las opciones de inicio de Java se pueden configurar en /etc/default/cassandra
archivo.
De manera predeterminada, Cassandra está configurada para escuchar solo en localhost. Si el cliente que se conecta a la base de datos también se ejecuta en el mismo host, no necesita cambiar el archivo de configuración predeterminado.
Para interactuar con Cassandra a través de CQL (el lenguaje de consulta de Cassandra), puede usar una utilidad de línea de comando llamada cqlsh
que se envía con el paquete Cassandra.
cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.4 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>
Renombrar Apache Cassandra Cluster #
De forma predeterminada, el clúster de Cassandra se denomina "Clúster de prueba". Si desea cambiar el nombre, siga los pasos a continuación:
-
Inicie sesión en el terminal Cassandra CQL con
cqlsh
:cqlsh
Ejecute el siguiente comando para cambiar el nombre del clúster a "Linuxize Cluster":
UPDATE system.local SET cluster_name = 'Linuxize Cluster' WHERE KEY = 'local';
Cambie "Linuxize Cluster" con el nombre que desee. Una vez hecho esto, escriba
exit
para salir de la consola. -
Edite el
/etc/cassandra/cassandra.yamlcassandra.yaml
archivo de configuración e ingrese su nuevo nombre de clúster.cluster_name: 'Linuxize Cluster'
-
Ejecute el siguiente comando para borrar el caché del sistema:
nodetool flush system
-
Finalmente reinicie el servicio Cassandra:
sudo systemctl restart cassandra