LINUX

Cómo ejecutar el clúster Cassandra de un solo nodo en Ubuntu 16.04

Apache Cassandra es una solución de base de datos post-relacional de código abierto distribuida, de alto rendimiento, extremadamente escalable y tolerante a fallas. Puede servir como almacén de datos en tiempo real para aplicaciones en línea / transaccionales y como base de datos de lectura intensiva para sistemas de inteligencia empresarial.

DB relacional Vs Cassandra

Los sistemas de bases de datos relacionales manejan una velocidad de entrada de datos moderada y obtienen datos de una o pocas ubicaciones. Administra principalmente datos estructurados y admite transacciones complejas / anidadas con puntos únicos de falla con conmutación por error.

Cassandra maneja una alta velocidad de datos entrantes obteniendo datos de muchas ubicaciones. Administra todos los tipos de datos y admite transacciones simples sin puntos únicos de falla; proporciona un tiempo de actividad constante. Además, proporciona escalabilidad de lectura / escritura.

En este artículo, proporciono las pautas sobre cómo instalé Apache Cassandra y ejecuté un clúster de un solo nodo en mi servidor Ubuntu 16.04.

Prerrequisitos

  • Requiere una plataforma Java para ejecutarse
  • Un usuario para ejecutar esta aplicación.

Instalar Java

Cassandra necesita que la aplicación Java se ejecute en su servidor, asegúrese de haber instalado la última versión de Java. Puede actualizar los paquetes del repositorio APT e instalar Java. Cassandra 3 o posterior requiere la instalación de la versión Java 8+.

root@ubuntu:~# apt-get update

root@ubuntu:~# apt-get install default-jdk
Setting up default-jdk (2:1.8-56ubuntu2) ...
Setting up gconf-service-backend (3.2.6-3ubuntu6) ...
Setting up gconf2 (3.2.6-3ubuntu6) ...
Setting up libgnomevfs2-common (1:2.24.4-6.1ubuntu1) ...
Setting up libgnomevfs2-0:amd64 (1:2.24.4-6.1ubuntu1) ...
Setting up libgnome2-common (2.32.1-5ubuntu1) ...
Setting up libgnome-2-0:amd64 (2.32.1-5ubuntu1) ...
Processing triggers for libc-bin (2.23-0ubuntu3) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for systemd (229-4ubuntu4) ...
Processing triggers for ca-certificates (20160104ubuntu1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...

done.
done.

Puede confirmar la versión de Java instalada.

root@ubuntu:~# java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-0ubuntu4~16.04.1-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)

Crear un usuario para ejecutar Cassandra

Siempre se recomienda ejecutar esta aplicación como usuario en lugar de root. Por lo tanto, creé mi usuario de Cassandra para ejecutar esta aplicación.

root@ubuntu:~# groupadd cassandra
root@ubuntu:~# useradd -d /home/cassandra -s /bin/bash -m -g cassandra cassandra

root@ubuntu:~# grep cassandra /etc/passwd
cassandra:x:1000:1000::/home/cassandra:/bin/bash

Descargue e instale Cassandra

Ahora podemos descargar la última versión de Apache Cassandra de aquí y cópielo en su directorio preferido. Descargué este archivo tar en mi carpeta / tmp y extraje el contenido a mi «casa» de cassandra allí.

root@ubuntu:/tmp# wget http://mirror.cc.columbia.edu/pub/software/apache/cassandra/3.6/apache-cassandra-3.6-bin.tar.gz
--2016-06-12 08:36:47-- http://mirror.cc.columbia.edu/pub/software/apache/cassandra/3.6/apache-cassandra-3.6-bin.tar.gz
Resolving mirror.cc.columbia.edu (mirror.cc.columbia.edu)... 128.59.59.71
Connecting to mirror.cc.columbia.edu (mirror.cc.columbia.edu)|128.59.59.71|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 35552323 (34M) [application/x-gzip]
Saving to: ‘apache-cassandra-3.6-bin.tar.gz’

apache-cassandra-3.6-bin.tar.gz 100%[===================================================================>] 33.91M 6.43MB/s in 12s

2016-06-12 08:37:01 (2.93 MB/s) - ‘apache-cassandra-3.6-bin.tar.gz’ saved [35552323/35552323]

root@ubuntu:/tmp# tar -xvf apache-cassandra-3.6-bin.tar.gz -C /home/cassandra --strip-components=1

Corrigiendo las propiedades y estableciendo variables

Puede corregir las propiedades de los archivos y establecer las variables de entorno adecuadas para ejecutar esta aplicación sin problemas.

root@ubuntu:/home/cassandra# export CASSANDRA_HOME=/home/cassandra
root@ubuntu:/home/cassandra# export PATH=$PATH:$CASSANDRA_HOME/bin
root@ubuntu:/home/cassandra# chown -R cassandra.cassandra .

Ahora puede cambiar al usuario de cassandra y ejecutar esta aplicación de la siguiente manera:

cassandra@ubuntu:~$ sh bin/cassandra

INFO 09:10:39 Cassandra version: 3.6
INFO 09:10:39 Thrift API version: 20.1.0
INFO 09:10:39 CQL supported versions: 3.4.2 (default: 3.4.2)
INFO 09:10:39 Initializing index summary manager with a memory pool size of 24 MB and a resize interval of 60 minutes
INFO 09:10:39 Starting Messaging Service on localhost/127.0.0.1:7000 (lo)
INFO 09:10:39 Loading persisted ring state
INFO 09:10:39 Starting up server gossip
INFO 09:10:39 Updating topology for localhost/127.0.0.1
INFO 09:10:39 Updating topology for localhost/127.0.0.1
INFO 09:10:39 Node localhost/127.0.0.1 state jump to NORMAL

Esta salida significa que su servidor Cassandra está funcionando bien ahora. Ahora podemos verificar y confirmar el estado de nuestro Cluster con este comando.

root@ubuntu:/home/cassandra# 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 142.65 KiB 256 100.0% fc76be14-acde-47d4-a4a2-5d015804bb3c rack1

The status and state notation UN means it is up and normal.

Hemos terminado con la instalación del clúster Cassandra de nodo único. Ahora podemos ver cómo conectarnos a nuestro clúster.

Conectando a nuestro Cluster

Podemos ejecutar este script de shell «cqlsh«para conectarse a nuestro nodo de clúster.

cassandra1Estos son los diversos comandos de CQL que se utilizan en Cassandra. Puede obtener más información sobre cómo utilizar este aquí.

¡Hola! hemos terminado con un clúster Cassandra de un solo nodo en nuestro servidor Ubuntu 16.04. Espero que hayas disfrutado leyendo esto. Recomendaría sus valiosos comentarios y sugerencias al respecto.

¡Gracias!

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar