mysql cluster configuración
TRANSCRIPT
-
11 junio de 2015
NOMBRE NO. DE CONTROL
MEZA GARCA ALFREDO ITTAY 12200640
MILLN VALDS GABRIEL 12200642
BECERRIL MARQUES JAZHEL 12200591
ARRIAGA MARTNEZ MICHEL JAVIER 12200590
BAOS SNCHEZ ALAN CRISTOPHER 12200596
GONZLEZ CASTAEDA JESS 12200606
INSTITUTO
TECNOLGICO
DE PACHUCA
Administracin de Bases De Datos.
CLSTER
ING. SISTEMAS COMPUTACIONALES
-
MySQL Clster
El trmino clster (del ingls cluster, "grupo" o "raz") se aplica a los conjuntos o
conglomerados de computadoras unidos entre s normalmente por una red de
alta velocidad y que se comportan como si fuesen una nica computadora.
MySQL clster es una tecnologa que permite el clustering de bases de datos en
memoria en un ambiente de no comparticin. La arquitectura de no
comparticin permite que el sistema gestor de base de datos (SGBD) funcione
utilizando hardware no muy costoso y con requerimientos mnimos tanto
de software como de hardware.
Como todo sistema de clustering, est diseado para no tener un slo punto de
falla, cada componente tiene su propia porcin de disco y memoria para
trabajar. Bajo este esquema no se recomienda el uso de mecanismos de
almacenamiento compartido como carpetas compartidas por red, sistemas de
archivos de red, etc.
Configurando el Clster
Los siguientes pasos se realizaran tanto en la computadora que servir como
administrador como para las computadoras con funcin de nodos.
Principalmente, se necesitan descargar los archivos de MySQL Clster de la
pgina oficial, seleccionando la opcin de Archivo ZIP observando que el
Sistema Operativo y la arquitectura de la computadora sean las indicadas.
En este caso utilizaremos la versin 7.1.34 de MySQL Cluster.
-
Al tener el archivo ZIP, se proceder a descomprimirlo en la carpeta raz del disco
duro, la carpeta C.
Una vez que se ha terminado la descompresin de los archivos, se renombrar la
carpeta creada en la raz con el nombre de mysql.
-
En esa misma direccin se procede a crear una nueva carpeta con el nombre de
my_cluster, la cual contendr 3 carpetas: conf, mysqld_data (esta carpeta
contendr 2 carpetas, mysql & ndbinfo) & ndb_data.
-
Ya que se han creado las carpetas es indispensable desactivar el antivirus y
firewall de cada computadora
Establecer las direcciones ip fijas para cada equipo (192.168.1.XX)
Administrador:192.168.1.10
Nodo 1:192.168.1.11
Nodo 2:192.168.1.12
Adems de asegurarse de que todas las computadoras se encuentren
conectadas en red, una prueba de esto es realizar ping en la lnea del cmd.
Lo siguiente a realizar es la configuracin de la computadora que servir como
administrador.
-
Nodo Administrador
En la carpeta conf crearemos un archivo en bloc de notas y lo guardemos como
config y con extensin .ini, es importante que este escrito de la misma forma tanto
las minsculas como las maysculas.
[ndb_mgmd]
#opciones de procesos
HostName=192.168.1.10
#se guardaran ac los logs de admon
DataDir=c:\my_cluster\ndb_data
Nodeid=1
[Ndbd default]
#numero de replicas
NoOfReplicas=2
#Datadir=c:/mysql/bin/cluster-data
#DataMemory=80M
#IndexMemory=18M
#nodo 1
[Ndbd]
HostName=192.168.1.11
DataDir=c:\my_cluster\ndb_data
Nodeid=2
#nodo 2
[Ndbd]
HostName=192.168.1.12
DataDir=c:\my_cluster\ndb_data
Nodeid=3
[Mysqld]
[Mysqld]
Nota: en la parte de HostName tiene que ir la direccin ip de nuestro equipo
-
Los nodos de datos se definen bajo el bloque [ndbd] definiendo casi los mismos
parmetros que para el nodo administrador ya que los nodos de datos no definen
el parmetro basedir, se debe definir tambin un Id para los nodos.
En config.ini se agregan los bloques [mysqld] dependiendo del nmero de nodos
SQL que se quieran levantar. Al terminar el archivo config.ini al nodo
administrador procede a abrir una nueva terminal cmd (ejecutada como
administrador) para iniciar el nodo administrador, escribimos lo siguiente en este
orden:
cd..
cd..
cd my_cluster
/mysql/bin/ndb_mgmd -f conf/config.ini --initial --configdir=c:\my_cluster\conf\
Si aparecen estos datos en su pantalla tal y como est en la imagen el nodo
administrador se habr levantado correctamente
-
Posteriormente abrimos un nuevo cmd como administrador y nos movemos a la
carpeta bin y escribimos lo siguiente:
cd..
cd..
cd mysql
cd bin
ndb_mgm
Pasamos ahora a configurar los nodos de datos.
-
CONFIGURACION DE LOS NODOS .
Inicialmente hacemos un ping para ver que la conectividad este correcta entre
las computadoras. Y desactivamos el servicio de MySQL desde los servicios locales
de Windows.
Vamos a descomprimir el archivo descargado del cluster y copiarlo a C:
Cambiandole el nombre a mysql , mas a aparte crearemos otra carpeta llamada
my_cluster
Dentro de la carpeta my_cluster creamos 3 carpetas y las nombramos como
aparece acontinuacion
-
Dentro de la carpeta mysql_data creamos dos carpetas mas y las llamamos
como muetra en la imagen siguiente.
Ahora abrimos una CMD en modo adminitrador y procederemos a copiar
algunos archivos necesarios para el clster. Llendonos a la raiz poniendo :
cd ..
cd ..
Y en C: poner el siguiente comando
copy c:\mysql\data\mysql my_cluster\mysqld_data\mysql
Terminado el proceso se nos copiaran 69 archivos.
-
La siguiente instruccin copiara 46 archivos:
copy c:\mysql\data\ndbinfo my_cluster\mysqld_data\ndbinfo
Dentro de la carpeta conf ahora crearemos un archivo de texto y dentro de el
pondremos la configuracion del nodo , asignandole la ip del administrador del
clster.
Es importante que cada nodo tenga un numero de puerto diferente.
-
Nota: escribir todos los cdigos o comandos, no copiarlos.
Despus de eso continuaremos con conectarnos al nodo administrador con el
siguiente comando:
c:\mysql\bin\ndbd c 192.168.1.10:1186
-
Ahora desde el administrador introduciremos el comando show que servira
para ver los usuarios o nodos conectados, no estaran conectados hasta que
levantemos la API de cada nodo
Lo que resta es levantar los nodos conectados, para ello introduciremo el
siguiente comando en otra CMD tambien como administrador.
-
NODO DE DATOS
Nuevamente en el nodo de datos cada nodo realizara el siguiente comando:
cd..
cd..
cd my_cluster
c: /mysql/bin/mysqld --defaults-file=conf/my.cnf console
y nos arrojara resultados como los siguientes.
Con esto hemos levantado leste nodo, haremos lo mismo para los que restan.
-
NODO ADMINISTRADOR. Una vez ingresado los comandos anteriores para levantar LAS APIS nuevamente
ingresamos show en el nodo administrador para verificar que han sido levantadas,
usando el comando show.
PRUEBAS
En todos los nodos hay que inicializar el MySQL, para esto se abre una nueva
consola y escribir lo siguiente:
mysql u root P400X En un nodo se hizo lo siguiente:
cd..
cd..
cd mysql
cd bin
MySQL u root P4002
Escribimos el comando show databases; para que nos muestre las bases de datos
que tenemos en MySQL
-
Dentro de la base de datos creada la ponemos en uso con el comando
use nombredelaBD
Y crearemos una tabla, cada nodo creo una con su nombre , como se puede
observar en la imagen.
Finalmente despus de haber realizado las pruebas necesarias con todos los
nodos conectados, el clster quedo bien configurado y con un funcionamiento
correcto.
Todos los nodos pueden crear bases de datos, tablas e insertar registros dentro de
ellas, tambin pueden eliminar y modificar los registros.
Conclusiones
Finalmente, se pudo observar la gran funcionalidad que tiene en la vida
real el uso de un clster dentro del campo de las bases de datos, siendo
de gran utilidad el tener las computadoras independientes entre s para
evitar posibles fallos y continuar as con las operaciones que se desean
realizar dentro de la base de datos.