martes, 4 de febrero de 2014

Instalación de Cassandra db para Windows paso a paso


     El objetivo de este blog es ayudar a las personas que quieran instalar e implementar un clúster básico de Cassandra, nuestra practica se basa en dos nodos en clúster y que ustedes puedan animarse a ponerlo en producción.

  Cassandra es una base de datos No-SQL muy simple y fácil de configurar, una vez instalada con una buena estrategia no es necesaria mucha administración, lo que si les garantizo es que van a experimentar con una de las más fuertes y potentes bases de datos.


     A continuación les muestro los pasos sencillos para instalar cassandra en máquinas virtuales, si ustedes tienen servidores físicos para hacer la prueba incluso PC adelante,  solo necesitan seguir estos sesillos pasos.





Paso 4 Agregar un nodo a un clúster de Cassandra


Para agregar un nodo al clúster de Cassandra se tiene que tomar en cuenta la instalación de la máquina virtual NODO1 y hacer lo mismo para la máquina virtual NODO2.



  • Deshabilitar el Firewall de Windows.
  • Cambiarle el nombre a la máquina Virtual y nombrarlo como “CLUS-CASS-NODO2”
  • Colocar una IP Fija
  • Ingresar el servidor al dominio

Para este ejemplo partiremos de que ya hicimos el NODO2 en máquinas virtuales y le aplicamos todas las configuraciones del NODO1.

Iniciamos instalando Cassandra en el NODO2





Hacemos clic en el botón “Ejecutar”




Hacemos clic en el botón “Next”



En esta pantalla nos muestra la redacción del licenciamiento.


Aceptamos los términos y hacemos clic en “Next”




Hacer clic en el botón “Change…”



En la siguiente ventana creamos una carpeta “Cassandra” en raíz. 


Hacemos clic en el botón “OK”



Hacemos clic en el botón “Next”




Hacemos clic en el botón “Next”



Hacemos clic en el botón “Install”




Hacemos clic en el botón “SI”




En la siguiente ventana nos muestra el estatus de la instalación.




Hacemos clic en el botón “Finish”


Como pueden observar todos los servicios están en linea por que anticipadamente instale el archivo “vcredist_x86”





Ahora vamos a probar que la instancia del NODO2 ya está lista e intentaremos acceder a la instancia.


Hacemos clic en el botón inicio >> Todos los Programas >> Cassandra CQL Shell



Listo…!!! Si esta online el cassandra del NODO2


Hasta aquí el NODO2 está en modo stand alone lo que vamos hacer es configurarlo para que entre al clúster.





Configuración del clúster de cassandra.

Una de las características que tiene que tener un clúster de cassandra es un nodo semilla y a continuación describiremos de que se trata.

    En un clúster de cassandra se debe de especificar al menos un nodo que tenga el rol de semilla para los otros nodos que conforman el anillo, no piensen que un nodo semilla es el "maestro" o el nodo "central" ósea el manda - más de la película. Los nodos semilla son solo contactos para los nuevos nodos que se agregan al anillo utilizando la dirección  ip que configuren en la lista de semillas. En ese momento las semillas proporcionan la información acerca de los nodos del anillo por ejemplo:

¿Qué otros nodos están incluidos en el anillo?
¿Cuáles son sus ubicaciones?
¿Qué nombre tienen?
…y así sucesivamente.

No hay una regla escrita para determinar cuál servidor o nodo se convertirá en semilla, pero todos los nodos del clúster deben de contener la misma lista de semillas configuradas. Para una configuración en producción yo recomiendo que por lo menos tenga dos semillas por centro de datos.


Para configurar el clúster es necesario abrir un archivo de texto de configuración de cassandra llamado cassandra.yaml que se encuentra en la siguiente dirección.
C:\Cassandra\apache-cassandra\conf\cassandra.yaml







Y para poder visualizar mejor el archivo y para este ejemplo yo utilizo una herramienta gratuita de edición con el nombre de “Sublime Text 2.0.2”


Hacemos clic en el botón “Sí”







Hacemos clic en el botón “Next >”



Hacemos clic en el botón “Next >”



Hacemos clic en el botón “Next >”




Hacemos clic en el botón “Install”



Nota: Este programa tiene que estar instalado en los dos nodos de forma sugerida.



Configurar los nodos para que se unan en la estructura de anillo.


Hacemos clic en el botón inicio >> “Sublime Text 2”


En este momento nos encontramos en el NODO1 configurando el archivo



Hacemos clic en el botón File >> “Open File…”



En la siguiente pantalla buscamos el archivo en la siguiente ruta “C:\Cassandra\apache-cassandra\conf”


Seleccionamos el archivo y Hacemos clic  en el botón “Abrir”




En la siguiente pantalla configuramos la el nodo semilla – seeds: “192.168.40.101” para este ejemplo el NODO1 será el semillero.






También configuramos el listen_address: 192.168.40.101  aún estamos en el NODO1




Ya nos encontramos configurando el NODO2

En la siguiente pantalla configuramos la el nodo semilla – seeds: “192.168.40.101” agregamos la IP del NODO1 será el semillero.




Como estamos en el NODO2 también configuramos el listen_address: 192.168.40.102  


Y listo guardamos los archivos y reiniciamos los nodos o los servicios de comunicación de cassandra.



Una vez reiniciado los servicios o los servidores no importa el orden.

En la consola de administración web observamos que después de reiniciar ya se ven los dos NODOS




En la opción de Clúster >> RING VIEW nos muestra los dos puntos verdes que representan los nodos en el anillo así es como se representan el clúster.




Esta consulta la ejecuté desde NODO2 y la tabla la creamos en el NODO1




Con esto comprobamos que nuestro clúster funciona…

       Nosotros podemos agregar nodos los que queramos solo configurándolos como ya lo hemos hecho y también podemos agregar más semilleros con solo.


Agregas más semillas IP separadas por comas.


– seeds: “192.168.40.101, 0.0.0.0, 0.0.0.0”


Listo hasta aquí termino la instalación del Clúster de Cassandra.