BigData & Cassandra (IV) - Configuración de Cassandra & Comandos adicionales

octubre 04, 2013

¡Un día más con Cassandra!


One More Eye!

Este Posts pertenece a la serie de BigData & Cassandra y a continuación tenéis el índice de Posts:

· ¿Qué es Cassandra? & Arquitectura
· ¿Por qué elegir Cassandra?. Esquema de BBDD y Particionado y Replicado de datos
· Instalación de Cassandra
· Configuración de Cassandra & Comandos adicionales
· SQL en Cassandra

Seguimos con este tutorial iniciador en Cassandra. Este os enseñará como configurarlo para un anillo de dos nodos, uno de los cuales es un Seed. Adelante :)


Configuración Cassandra de un anillo de dos nodos, un Seed/Nodo y un Nodo

Consideraciones Previas:

A. Utilizar el programa tokengentool en el servidor que hace de Seed (más abajo viene su configuración) y obtener el token para el nodo que cuelga del Seed. Aquí podéis descargarlo:
https://raw.github.com/riptano/ComboAMI/2.2/tokentoolv2.py


1. Configuración del archivo cassandra.yaml (dentro de la carpeta conf) para el Seed/Nodo (dejar todo por defecto excepto las siguientes líneas):

cluster_name: todos_el_mismo
initial_token: tenemos tres opciones:
- Vacio por defecto //No recomendable
- Virtual Nodes: Comentar esta línea y poner debajo el número de tokens que queremos que se autoasignen a los nodos. //Quizás algo más complicado pero más maleable.
- Generar los tokens. En el sede ponemos initial_token: 0 y en los demás los generamos con un programa sh de python (creamos el archivo tokentool y ejecutamos (dandole antes permisos chmod +x tokengentool). Indicamos el número de nodos)  //Opción recomendada, aunque un poco más tediosa.

seeds: ip_del_seed_elegido(para el nodo que sea seed, es su ip)
listen_address: ip_del_server_donde_estemos
rpc_address: ip_del_server_donde_estemos
endpoint_snitch: SimpleSnitch //Hay más opciones, investadlas



2. Configuración del archivo cassandra.yaml (dentro de la carpeta conf) para el Nodo (dejar todo por defecto excepto las siguientes líneas):

cluster_name: todos_el_mismo
initial_token: tenemos tres opciones:
- Vacio por defecto //No recomendable
- Virtual Nodes: Comentar esta línea y poner debajo el número de tokens que queremos que se autoasignen a los nodos. //Quizás algo más complicado pero más maleable.
- Generar los tokens. En el sede ponemos initial_token: 0 y en los demás los generamos con un programa sh de python (creamos el archivo tokentool y ejecutamos (dandole antes permisos chmod +x tokengentool). Indicamos el número de nodos)  //Opción recomendada, aunque un poco más tediosa.

seeds: ip_del_seed_elegido(para el nodo que sea seed, es su ip y para el nodo que sea nodo, tb es la ip del seed)
listen_address: ip_del_server_donde_estemos
rpc_address: ip_del_server_donde_estemos
endpoint_snitch: SimpleSnitch //Hay más opciones, investadlas


Comandos adicionales

1. Iniciar Servicio:
nohup sudo ./bin/cassandra

2. Si da error de memoria:
export _JAVA_OPTIONS="-Xmx256M -Xms128M"

3. Conexión con cqlsh: Antes de conectarnos poner:

export CQLSH_HOST=IP_SERVIDOR_SEED;
export CQLSH_PORT=9160;

4. Ver si funcionan todos los nodos:
sudo $CH/bin/cassandra-cli -h IP_SERVIDOR_SEED -p 9160

5. Parar cassandra:
ps auwx | grep cassandra
sudo kill NUM_PROCESO

6. Borrar los datos guardados de cassandra:
sudo rm -rf /var/lib/cassandra/*

7. Ver si un nodo sigue activo:
netstat -ant | grep 7000

Hasta aquí el Post. El siguiente finalizará el recorrido por esta tecnología.

¡Nos vemos!

You Might Also Like

0 comentarios

Sé respetuoso/a, en este blog caben todo tipo de opiniones con respeto y serenidad.

Contact Form :: (」゜ロ゜)」