SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
 Luis Josué Chávez Vigil
 Josué Daniel Orellana Aguirre
 Erick Stanley Cruz Martínez
Objetivos:
 Conocer el funcionamiento del clúster en MySQL, así como de la manera de configurarlo en una red local,
además de distinguir los elementos que lo conforman.
 Identificar las características, requerimientos hardware/software, ventajas y desventajas de un clúster MySQL.
 Definir lo que es un clúster, así como los diferentes tipos de nodos que el clúster MySQL maneja, y además,
aprender la manera correcta de configuración.
Introducción:
MySQL Cluster es la versión de MySQL pensada para alta disponibilidad, escalabilidad y alto rendimiento. Un
MySQL server que es parte de un MySQL Clúster difiere sólo en un aspecto de un servidor MySQL normal (no
clúster), en que emplea el motor NDB Clúster.
Este motor también se conoce simplemente como NDB, las dos formas del nombre son sinónimas. Desde que
MySQL server es parte del clúster, necesita datos de configuración que sepa cómo acceder al nodo MGM para
obtener datos de configuración del clúster.
El comportamiento por defecto es buscar el nodo MGM en localhost. Sin embargo, puede necesitar especificar su
localización donde se encuentre, esto puede hacerse en my.cnf o en la línea de comandos del servidor MySQL.
Antes de poderse usar el NDB, al menos un nodo MGM debe ser operacional, así como los nodos de datos
deseados.
Conceptos Básicos:
Clúster: Grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es
visto como un único ordenador, más potente que los comunes de escritorio.
De un clúster se espera lo siguiente:
 Alto rendimiento
 Alta disponibilidad
 Equilibrio de carga
 Escalabilidad
Clúster: Grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es
visto como un único ordenador, más potente que los comunes de escritorio.
Características:
Para comunicación entre nodos, el clúster soporta red TCP/IP en cualquier topología estándar, y como mínimo se
espera una red 100 Mbps Ethernet, más un switch, hub, o router para proporcionar conectividad de red al clúster
entero. Recomendamos que MySQL Clúster se ejecute en su subred que no está compartida con máquinas no-clúster
por las siguientes razones:
 Seguridad: La comunicación entre nodos del clúster no está cifrada. La única forma de proteger transmisiones
dentro de un MySQL Clúster es ejecutar su clúster en una red protegida.
 Eficiencia: Inicializar un MySQL Clúster en una red privada o protegida permite que el clúster haga uso
exclusivo del ancho de banda entre máquinas del clúster.
ndbd_mgm.
Es el nodo de Management. Tiene la configuración del clúster. No es necesario más de uno, pero consume tan poco
que se pueden tener dos. Nosotros lo usamos para lanzar backups, reiniciar nodos, activar el log… además, los
nodos ndbd lo usan al entrar en el clúster para recoger la configuración
ndbd:
Son los nodos de almacenamiento. Estos deben tener la capacidad de procesamiento y la memoria RAM suficiente
para trabajar con los datos. Al menos debemos tener dos nodos ndbd. Si queremos usar múltiples cores, el demonio
será ndbmtd mysqld. Al clúster se puede acceder usando la API o mediante un servicio.
mysqld:
Al menos debemos tener dos nodos mysqld o tendremos un SPOF
Desventajas:
 La configuración y puesta en marcha difiere completamente de la versión estándar de la base de datos.
 Requiere gran cantidad de memoria RAM.
 Índices en RAM siempre.
 Datos en RAM o en disco duro.
 El engine es ndbclúster, no se puede usar InnoDB o MyISAM en clúster.
 No es una base de datos de propósito general.
 Subqueries lentas
 Joins lentas
 No soporta integridad referencial y claves externas
 No hay rollbacks parciales ni savepoints, solo rollbacks completos
 No se garantiza el commit
Recomendaciones:
La web de MySQL recomienda 5 servidores:
 2 ndbd
 2 mysqld
 1 ndb_mgmd
Podemos mejorar esta arquitectura y hacerla más barata montando un ndb_mgmd en cada mysqld
 2 ndbd
 2 mysqld + ndb_mgmd
Topología:
Hardware:
 3 COMPUTADORAS CON WINDOWS 7
 MYSQL CLÚSTER EN C/U DE PC
 SWITCH
 CABLES DE RED
Archivos de Configuración:
ndb_mgm
config.ini
Acá estan las configuraciones para el manejo de nodos. Dentro se encuentra los datadir y los database.
· En el database se encuentran los binarios y archivos de configuracion para la ejecución correcta de config.
· En el datadir se hace referencia a los logs que arroja el clúster.
ndbd
Se arranca desde los binarios alojados en el directorio /mysqlc/bin/ndbd -c 192.168.4.1:1186
mysqld
Se configura el my.cnf el cual es el encargado de enlazar el nodo de MySQL al nodo de administrador, soportando el
engine ndbclúster.
Procedimiento:
Descargamos el cluster mysql de la siguiente dirección: http://dev.mysql.com/downloads/cluster/
Definimos nuestro sistema operativo y descargamos:
Nos pedirá que ingresemos nuestra cuenta de Oracle (sino posee una deberá crearla). Una vez descargado,
descomprimimos el archivo y genera una carpeta con los siguientes directorios:
Arrancar Cluster
c:/mysql/bin/ndb_mgmd -f conf/config.ini --initial --configdir=c:my_clusterconf
Mostrar los nodos conectados al administrador
c:mysqlbinndb_mgm -e show
Arrancar todo
start /B c:Users"Chavez Vigil"mysqlbinndbd -c localhost:1186
Arrancando mysql
start /B c:Users"Chavez Vigil"mysqlbinmysqld --defaults-file=confmy.ini
c:Users"Chavez Vigil"mysqlbinmysql -h 127.0.0.1 -P5000 -u root
Apagando servicios
c:Users"Chavez Vigil"mysqlbinmysqladmin -u root -h 127.0.0.1 -P5000 shutdown
c:Users"Chavez Vigil"mysqlbinndb_mgm -e shutdown
C:UsersChavez Vigilmy_clusterndb_data
Pasos a seguir:
Cree las siguientes carpetas en el directorio raíz del sistema. Para ello abrimos cmd y presionamos Ctrl+Shift+Enter
para abrirlo en modo administrador:
Creamos una nueva carpeta llamada mysql:
Cuando descargamos el cluster desde el enlace mostrado anteriormente y lo descomprimimos, el contenido de la
carpeta que se crea cuando se descomprime lo copiamos completamente en la carpeta mysql que acabamos de crear:
Abrimos una nueva consola en modo de administrador y copiamos el contenido de esta carpeta mysql en mycluster:
Se deberán copiar aproximadamente 72 archivos.
Se deberán copiar aproximadamente 42 archivos.
Se deberán copiar aproximadamente 18 archivos.
Ahora bien, dentro de mycluster creamos un archivo config.ini
Entramos en la carpeta conf. Lo que continúa será editar el archivo config.ini para los nodos de datos:
[ndb_mgmd]
HostName=192.168.4.1
DataDir=c:my_clusterndb_data
Nodeid=1
Esto significa que el nodo de administrador tendra esa ip y que los
log's que generen se estaran almacenando el esa direccion de archivo.
[Ndbd default]
NoOfReplicas=2
Esto significa que seran 2 nodos de datos por defecto; si queremos agregar mas solo incrementamos ese numero.
[Ndbd]
HostName=192.168.4.2
DataDir=c:my_clusterndb_data
Nodeid=3
Esto significa que es el primer nodo de datos y esta alojado en esa ip y los logs iran a parar a esa direccion.
Nodeid=4
HostName=192.168.4.3
DataDir=c:my_clusterndb_data
Esto significa que es el segundo nodo de datos y esta alojado en esa ip y los logs iran a parar a esa direccion.
[Mysqld]
[Mysqld]
Y estas 2 lineas significan que por cada nodo de datos tendremos 1 nodo mysql .
Ahora crearemos las variables de entorno del sistema. Desde el menú inico escribimos variables de entorno y
escogemos la que dice SISTEMA:
En la ventana que aparece damos clic en el icono Variables de Entorno. Ahí buscamos la variable path que es la que
vamos a editar. Al final de la variable escribimos:
C:mysqlbin:C;my_clusterndb_data
Esto es para que ejecute los binarios necesarios para el funcionamiento del cluster. Reiniciamos la computadora.
Después del reinicio abrimos como administrador la consola y arrancamos el cluster:
Abrimos una nueva consola y ejecutamos netstat –b para verificar si esta corriendo el cluster:
En este momento ya está escuchando peticiones de los nodos de datos. En la misma terminal ejecutamos:
Con el comando show mostramos los nodos de datos conectados:
Por el momento NO tenemos nodos de datos conectados.
Esto deberíamos ver al tener los nodos conectados:
Ahora pasamos a la configuración de los nodos de datos. Esto se hará en cada máquina que será nodo de datos y
mysql. Creamos la misma estructura de directorios que se hizo en el nodo de administrador. Descomprimimos el
archivo del cluster y hacemos lo siguiente:
Volvemos a copiar el contenido del archivo descomprimido, tal como en el administador. Una vez hecho esto,
entramos en la carpeta conf. Editamos un archivo llamado my.cnf que se encuentra en el directorio conf. Cada uno
de los nodos de datos lo poseerá:
En síntesis, lo que este archivo significa es que el nodo mysql ocupará el motor ndbcluster para conectarse al nodo
de administrador a través del puerto 4002, la cadena de conexión muestra la ip del administrador y el mysql_cluster
se encontrará también en la misma máquina administrador.
Posteriormente abrimos la cmd de Windows y una vez arrancados los servicios, estas ventanas NO deben cerrarse,
de lo contrario se interrumpirá la comunicación.
Arrancamos el nodo de datos:
Vemos si el servicio está corriendo:
Iniciamos el nodo mysql:
Nos conectamos a una instancia MySQL:
A manera de ejemplo, veamos los motores. Veremos que ndbcluster está corriendo usando el comando show
engines; (Este es el motor del cluster) y para ver las bases de datos usamos show databases;
En uno de los nodos de datos se ha creado una base de datos llamada prueba. Si ejecutamos nuevamente show
databases; debemos verla reflejada:
Ahora bien, vamos a crear una tabla en este nodo de datos. Para ello escribimos use prueba; que representa que
ocuparemos la base de datos prueba. Luego creamos la tabla en ella llamada alumno, y al final de la consulta de
create table alumno escribimos engine=ndb;para que esta sentencia se ejecute en todos los nodos conectados:
Ahora insertamos un alumno nuevo y describimos la tabla:
Bibliografía
 MySQL®, obtenida el 26 de abril de 2013, de
http://downloads.mysql.com/tutorials/cluster/mysql_wp_cluster_quickstart_windows.pdf
 Uv.mx, obtenida el 26 de abril de 2013, de
http://www.uv.mx/personal/lizhernandez/files/2013/04/Comandos-mysql.pdf
 Manuales Guebs.com®, obtenida el 27 de abril de 2013, de http://manuales.guebs.com/mysql-
5.0/ndbcluster.html#mysql-cluster-configuration
 Slideshare® Base de Datos MySQL, obtenida el 27 de abril de 2013,
de http://www.slideshare.net/miguelangelnieto/mysql-high-availavility-load-balacing-cluster
 Scribd® ¿Qué es un CLUSTER?, obtenida el 27 de abril de 2013,
de http://es.scribd.com/doc/6858172/QUE-ES-UN-CLUSTER

Weitere ähnliche Inhalte

Was ist angesagt?

CLIENTE - SERVIDOR 2 Y 3 CAPAS
CLIENTE - SERVIDOR 2 Y 3 CAPASCLIENTE - SERVIDOR 2 Y 3 CAPAS
CLIENTE - SERVIDOR 2 Y 3 CAPASAndrés Cueva
 
Fundamentos de BD - Unidad 4 diseño de bd relacional
Fundamentos de BD - Unidad 4 diseño de bd relacionalFundamentos de BD - Unidad 4 diseño de bd relacional
Fundamentos de BD - Unidad 4 diseño de bd relacionalJosé Antonio Sandoval Acosta
 
VLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarraVLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarracesartg65
 
subneteo de redes
subneteo de redessubneteo de redes
subneteo de redesalexgrz81
 
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best PracticesMySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best PracticesKenny Gryp
 
Ibm db2 10.5 for linux, unix, and windows data movement utilities guide and...
Ibm db2 10.5 for linux, unix, and windows   data movement utilities guide and...Ibm db2 10.5 for linux, unix, and windows   data movement utilities guide and...
Ibm db2 10.5 for linux, unix, and windows data movement utilities guide and...bupbechanhgmail
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityOSSCube
 
MySQL Multi Master Replication
MySQL Multi Master ReplicationMySQL Multi Master Replication
MySQL Multi Master ReplicationMoshe Kaplan
 
Sistemas de almacenamiento raid
Sistemas de almacenamiento raidSistemas de almacenamiento raid
Sistemas de almacenamiento raidAntonio Aguilar
 
Introduccion a Cassandra
Introduccion a CassandraIntroduccion a Cassandra
Introduccion a CassandraStratebi
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera ) Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera ) Mydbops
 
Sesión01 - Gestión de instancia (Oracle)
Sesión01 - Gestión de instancia (Oracle)Sesión01 - Gestión de instancia (Oracle)
Sesión01 - Gestión de instancia (Oracle)José Toro
 

Was ist angesagt? (20)

CLIENTE - SERVIDOR 2 Y 3 CAPAS
CLIENTE - SERVIDOR 2 Y 3 CAPASCLIENTE - SERVIDOR 2 Y 3 CAPAS
CLIENTE - SERVIDOR 2 Y 3 CAPAS
 
Fundamentos de BD - Unidad 4 diseño de bd relacional
Fundamentos de BD - Unidad 4 diseño de bd relacionalFundamentos de BD - Unidad 4 diseño de bd relacional
Fundamentos de BD - Unidad 4 diseño de bd relacional
 
Captura de la trama Mac 802.11
Captura de la trama Mac 802.11Captura de la trama Mac 802.11
Captura de la trama Mac 802.11
 
VLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarraVLSM y CIDR (características, implementación torres gamarra
VLSM y CIDR (características, implementación torres gamarra
 
subneteo de redes
subneteo de redessubneteo de redes
subneteo de redes
 
VLSM y CIDR
VLSM   y  CIDRVLSM   y  CIDR
VLSM y CIDR
 
ISDN o RDSI
ISDN o RDSIISDN o RDSI
ISDN o RDSI
 
Presentacion Red Hat
Presentacion Red HatPresentacion Red Hat
Presentacion Red Hat
 
4.2. Un enfoque WAN
4.2. Un enfoque WAN4.2. Un enfoque WAN
4.2. Un enfoque WAN
 
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best PracticesMySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
 
Control de Flujo [Telecomunicaciones]
Control de Flujo [Telecomunicaciones]Control de Flujo [Telecomunicaciones]
Control de Flujo [Telecomunicaciones]
 
Vlsm
VlsmVlsm
Vlsm
 
Ibm db2 10.5 for linux, unix, and windows data movement utilities guide and...
Ibm db2 10.5 for linux, unix, and windows   data movement utilities guide and...Ibm db2 10.5 for linux, unix, and windows   data movement utilities guide and...
Ibm db2 10.5 for linux, unix, and windows data movement utilities guide and...
 
Maria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High AvailabilityMaria DB Galera Cluster for High Availability
Maria DB Galera Cluster for High Availability
 
Sistema de Monitoreo
Sistema de Monitoreo Sistema de Monitoreo
Sistema de Monitoreo
 
MySQL Multi Master Replication
MySQL Multi Master ReplicationMySQL Multi Master Replication
MySQL Multi Master Replication
 
Sistemas de almacenamiento raid
Sistemas de almacenamiento raidSistemas de almacenamiento raid
Sistemas de almacenamiento raid
 
Introduccion a Cassandra
Introduccion a CassandraIntroduccion a Cassandra
Introduccion a Cassandra
 
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera ) Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
Wars of MySQL Cluster ( InnoDB Cluster VS Galera )
 
Sesión01 - Gestión de instancia (Oracle)
Sesión01 - Gestión de instancia (Oracle)Sesión01 - Gestión de instancia (Oracle)
Sesión01 - Gestión de instancia (Oracle)
 

Ähnlich wie Cluster MySQL en Windows

Ähnlich wie Cluster MySQL en Windows (20)

Clúster
ClústerClúster
Clúster
 
Bases de datos distribuidas
Bases de datos distribuidasBases de datos distribuidas
Bases de datos distribuidas
 
Reporte cluster
Reporte clusterReporte cluster
Reporte cluster
 
Mysql cluster
Mysql clusterMysql cluster
Mysql cluster
 
Manual del cluster mysql
Manual del cluster mysqlManual del cluster mysql
Manual del cluster mysql
 
Manual del cluster mysql
Manual del cluster mysqlManual del cluster mysql
Manual del cluster mysql
 
Guia cluster
Guia clusterGuia cluster
Guia cluster
 
Reporte cluster
Reporte clusterReporte cluster
Reporte cluster
 
Mysql(1)
Mysql(1)Mysql(1)
Mysql(1)
 
MYSQL
MYSQL MYSQL
MYSQL
 
Manual my sql Utu atlantida 2015
Manual my sql Utu atlantida 2015Manual my sql Utu atlantida 2015
Manual my sql Utu atlantida 2015
 
Manual de mysql
Manual de mysqlManual de mysql
Manual de mysql
 
Mysql
MysqlMysql
Mysql
 
Mysql
MysqlMysql
Mysql
 
instalacion-configuracion-y-comprobacion-de-un-my sql-cluster-en-ubuntu-11-10
instalacion-configuracion-y-comprobacion-de-un-my sql-cluster-en-ubuntu-11-10instalacion-configuracion-y-comprobacion-de-un-my sql-cluster-en-ubuntu-11-10
instalacion-configuracion-y-comprobacion-de-un-my sql-cluster-en-ubuntu-11-10
 
Funcionamiento con my sql
Funcionamiento con my sqlFuncionamiento con my sql
Funcionamiento con my sql
 
Mysql
MysqlMysql
Mysql
 
Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slony
 
Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slony
 
Bases distribuidas en mysql
Bases distribuidas en mysqlBases distribuidas en mysql
Bases distribuidas en mysql
 

Kürzlich hochgeladen

Revista Actualidad Espiritista N°33.pdf
Revista  Actualidad Espiritista N°33.pdfRevista  Actualidad Espiritista N°33.pdf
Revista Actualidad Espiritista N°33.pdfPatricia487970
 
Cuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginasCuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginasNinettAB
 
Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...
Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...
Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...JulianaosorioAlmecig
 
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docxLAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docxRafael Reverte Pérez
 
CATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOS
CATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOSCATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOS
CATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOSFredyMolina26
 
4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf
4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf
4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdfMiNeyi1
 
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantesGUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantesDiegoGandara5
 
La Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdfLa Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdfvan graznarth
 
El enamoramiento es una fuente de inspiración.pdf
El enamoramiento es una fuente de inspiración.pdfEl enamoramiento es una fuente de inspiración.pdf
El enamoramiento es una fuente de inspiración.pdfEdward Chero Valdivieso
 
Puede un cristiano genuino ser poseído por.pptx
Puede un cristiano genuino ser poseído por.pptxPuede un cristiano genuino ser poseído por.pptx
Puede un cristiano genuino ser poseído por.pptxRicardoMoreno95679
 
la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024Jose Aguilar
 
el desafío del amor .pdf el desafío del amor
el desafío del amor .pdf el desafío del amorel desafío del amor .pdf el desafío del amor
el desafío del amor .pdf el desafío del amorrtvmfd5s46
 
La acción psicosocial desde la perspectiva humanista.pptx
La acción psicosocial desde la perspectiva humanista.pptxLa acción psicosocial desde la perspectiva humanista.pptx
La acción psicosocial desde la perspectiva humanista.pptxnomadadigital14
 

Kürzlich hochgeladen (13)

Revista Actualidad Espiritista N°33.pdf
Revista  Actualidad Espiritista N°33.pdfRevista  Actualidad Espiritista N°33.pdf
Revista Actualidad Espiritista N°33.pdf
 
Cuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginasCuadernillo para niños inicial 2 años con 15 páginas
Cuadernillo para niños inicial 2 años con 15 páginas
 
Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...
Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...
Programa - CIEI 2024.pdf Desafíos, avances y recomendaciones en el acceso a ...
 
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docxLAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
LAS CIRCULARES Y MIS COMUNICADOS de los Maestres COMENTADOS.docx
 
CATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOS
CATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOSCATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOS
CATEQUESIS SOBRE LA FE CATÓLICA PARA ADULTOS
 
4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf
4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf
4.- COMO HACER QUE TE PASEN COSAS BUENAS.pdf
 
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantesGUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
GUIA DE NUTRICION Y ENTRENAMIENTO para principiantes
 
La Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdfLa Magia de Pensar en Grande -- David J_ Schwartz.pdf
La Magia de Pensar en Grande -- David J_ Schwartz.pdf
 
El enamoramiento es una fuente de inspiración.pdf
El enamoramiento es una fuente de inspiración.pdfEl enamoramiento es una fuente de inspiración.pdf
El enamoramiento es una fuente de inspiración.pdf
 
Puede un cristiano genuino ser poseído por.pptx
Puede un cristiano genuino ser poseído por.pptxPuede un cristiano genuino ser poseído por.pptx
Puede un cristiano genuino ser poseído por.pptx
 
la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024la obra literaria EL AVARO DE moliere 2024
la obra literaria EL AVARO DE moliere 2024
 
el desafío del amor .pdf el desafío del amor
el desafío del amor .pdf el desafío del amorel desafío del amor .pdf el desafío del amor
el desafío del amor .pdf el desafío del amor
 
La acción psicosocial desde la perspectiva humanista.pptx
La acción psicosocial desde la perspectiva humanista.pptxLa acción psicosocial desde la perspectiva humanista.pptx
La acción psicosocial desde la perspectiva humanista.pptx
 

Cluster MySQL en Windows

  • 1.  Luis Josué Chávez Vigil  Josué Daniel Orellana Aguirre  Erick Stanley Cruz Martínez Objetivos:  Conocer el funcionamiento del clúster en MySQL, así como de la manera de configurarlo en una red local, además de distinguir los elementos que lo conforman.  Identificar las características, requerimientos hardware/software, ventajas y desventajas de un clúster MySQL.  Definir lo que es un clúster, así como los diferentes tipos de nodos que el clúster MySQL maneja, y además, aprender la manera correcta de configuración. Introducción: MySQL Cluster es la versión de MySQL pensada para alta disponibilidad, escalabilidad y alto rendimiento. Un MySQL server que es parte de un MySQL Clúster difiere sólo en un aspecto de un servidor MySQL normal (no clúster), en que emplea el motor NDB Clúster. Este motor también se conoce simplemente como NDB, las dos formas del nombre son sinónimas. Desde que MySQL server es parte del clúster, necesita datos de configuración que sepa cómo acceder al nodo MGM para obtener datos de configuración del clúster. El comportamiento por defecto es buscar el nodo MGM en localhost. Sin embargo, puede necesitar especificar su localización donde se encuentre, esto puede hacerse en my.cnf o en la línea de comandos del servidor MySQL. Antes de poderse usar el NDB, al menos un nodo MGM debe ser operacional, así como los nodos de datos deseados. Conceptos Básicos: Clúster: Grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es visto como un único ordenador, más potente que los comunes de escritorio. De un clúster se espera lo siguiente:  Alto rendimiento  Alta disponibilidad  Equilibrio de carga  Escalabilidad
  • 2. Clúster: Grupo de múltiples ordenadores unidos mediante una red de alta velocidad, de tal forma que el conjunto es visto como un único ordenador, más potente que los comunes de escritorio. Características: Para comunicación entre nodos, el clúster soporta red TCP/IP en cualquier topología estándar, y como mínimo se espera una red 100 Mbps Ethernet, más un switch, hub, o router para proporcionar conectividad de red al clúster entero. Recomendamos que MySQL Clúster se ejecute en su subred que no está compartida con máquinas no-clúster por las siguientes razones:  Seguridad: La comunicación entre nodos del clúster no está cifrada. La única forma de proteger transmisiones dentro de un MySQL Clúster es ejecutar su clúster en una red protegida.  Eficiencia: Inicializar un MySQL Clúster en una red privada o protegida permite que el clúster haga uso exclusivo del ancho de banda entre máquinas del clúster. ndbd_mgm. Es el nodo de Management. Tiene la configuración del clúster. No es necesario más de uno, pero consume tan poco que se pueden tener dos. Nosotros lo usamos para lanzar backups, reiniciar nodos, activar el log… además, los nodos ndbd lo usan al entrar en el clúster para recoger la configuración ndbd: Son los nodos de almacenamiento. Estos deben tener la capacidad de procesamiento y la memoria RAM suficiente para trabajar con los datos. Al menos debemos tener dos nodos ndbd. Si queremos usar múltiples cores, el demonio será ndbmtd mysqld. Al clúster se puede acceder usando la API o mediante un servicio. mysqld: Al menos debemos tener dos nodos mysqld o tendremos un SPOF Desventajas:  La configuración y puesta en marcha difiere completamente de la versión estándar de la base de datos.  Requiere gran cantidad de memoria RAM.  Índices en RAM siempre.  Datos en RAM o en disco duro.  El engine es ndbclúster, no se puede usar InnoDB o MyISAM en clúster.  No es una base de datos de propósito general.  Subqueries lentas  Joins lentas  No soporta integridad referencial y claves externas  No hay rollbacks parciales ni savepoints, solo rollbacks completos  No se garantiza el commit Recomendaciones: La web de MySQL recomienda 5 servidores:  2 ndbd  2 mysqld  1 ndb_mgmd Podemos mejorar esta arquitectura y hacerla más barata montando un ndb_mgmd en cada mysqld  2 ndbd  2 mysqld + ndb_mgmd
  • 3. Topología: Hardware:  3 COMPUTADORAS CON WINDOWS 7  MYSQL CLÚSTER EN C/U DE PC  SWITCH  CABLES DE RED Archivos de Configuración: ndb_mgm config.ini Acá estan las configuraciones para el manejo de nodos. Dentro se encuentra los datadir y los database. · En el database se encuentran los binarios y archivos de configuracion para la ejecución correcta de config. · En el datadir se hace referencia a los logs que arroja el clúster. ndbd Se arranca desde los binarios alojados en el directorio /mysqlc/bin/ndbd -c 192.168.4.1:1186 mysqld Se configura el my.cnf el cual es el encargado de enlazar el nodo de MySQL al nodo de administrador, soportando el engine ndbclúster.
  • 4. Procedimiento: Descargamos el cluster mysql de la siguiente dirección: http://dev.mysql.com/downloads/cluster/ Definimos nuestro sistema operativo y descargamos: Nos pedirá que ingresemos nuestra cuenta de Oracle (sino posee una deberá crearla). Una vez descargado, descomprimimos el archivo y genera una carpeta con los siguientes directorios: Arrancar Cluster c:/mysql/bin/ndb_mgmd -f conf/config.ini --initial --configdir=c:my_clusterconf Mostrar los nodos conectados al administrador c:mysqlbinndb_mgm -e show Arrancar todo start /B c:Users"Chavez Vigil"mysqlbinndbd -c localhost:1186 Arrancando mysql start /B c:Users"Chavez Vigil"mysqlbinmysqld --defaults-file=confmy.ini c:Users"Chavez Vigil"mysqlbinmysql -h 127.0.0.1 -P5000 -u root Apagando servicios c:Users"Chavez Vigil"mysqlbinmysqladmin -u root -h 127.0.0.1 -P5000 shutdown c:Users"Chavez Vigil"mysqlbinndb_mgm -e shutdown C:UsersChavez Vigilmy_clusterndb_data
  • 5. Pasos a seguir: Cree las siguientes carpetas en el directorio raíz del sistema. Para ello abrimos cmd y presionamos Ctrl+Shift+Enter para abrirlo en modo administrador: Creamos una nueva carpeta llamada mysql: Cuando descargamos el cluster desde el enlace mostrado anteriormente y lo descomprimimos, el contenido de la carpeta que se crea cuando se descomprime lo copiamos completamente en la carpeta mysql que acabamos de crear:
  • 6. Abrimos una nueva consola en modo de administrador y copiamos el contenido de esta carpeta mysql en mycluster: Se deberán copiar aproximadamente 72 archivos. Se deberán copiar aproximadamente 42 archivos. Se deberán copiar aproximadamente 18 archivos. Ahora bien, dentro de mycluster creamos un archivo config.ini Entramos en la carpeta conf. Lo que continúa será editar el archivo config.ini para los nodos de datos: [ndb_mgmd] HostName=192.168.4.1 DataDir=c:my_clusterndb_data Nodeid=1 Esto significa que el nodo de administrador tendra esa ip y que los log's que generen se estaran almacenando el esa direccion de archivo. [Ndbd default] NoOfReplicas=2
  • 7. Esto significa que seran 2 nodos de datos por defecto; si queremos agregar mas solo incrementamos ese numero. [Ndbd] HostName=192.168.4.2 DataDir=c:my_clusterndb_data Nodeid=3 Esto significa que es el primer nodo de datos y esta alojado en esa ip y los logs iran a parar a esa direccion. Nodeid=4 HostName=192.168.4.3 DataDir=c:my_clusterndb_data Esto significa que es el segundo nodo de datos y esta alojado en esa ip y los logs iran a parar a esa direccion. [Mysqld] [Mysqld] Y estas 2 lineas significan que por cada nodo de datos tendremos 1 nodo mysql . Ahora crearemos las variables de entorno del sistema. Desde el menú inico escribimos variables de entorno y escogemos la que dice SISTEMA: En la ventana que aparece damos clic en el icono Variables de Entorno. Ahí buscamos la variable path que es la que vamos a editar. Al final de la variable escribimos: C:mysqlbin:C;my_clusterndb_data Esto es para que ejecute los binarios necesarios para el funcionamiento del cluster. Reiniciamos la computadora. Después del reinicio abrimos como administrador la consola y arrancamos el cluster:
  • 8. Abrimos una nueva consola y ejecutamos netstat –b para verificar si esta corriendo el cluster: En este momento ya está escuchando peticiones de los nodos de datos. En la misma terminal ejecutamos: Con el comando show mostramos los nodos de datos conectados: Por el momento NO tenemos nodos de datos conectados. Esto deberíamos ver al tener los nodos conectados:
  • 9. Ahora pasamos a la configuración de los nodos de datos. Esto se hará en cada máquina que será nodo de datos y mysql. Creamos la misma estructura de directorios que se hizo en el nodo de administrador. Descomprimimos el archivo del cluster y hacemos lo siguiente: Volvemos a copiar el contenido del archivo descomprimido, tal como en el administador. Una vez hecho esto, entramos en la carpeta conf. Editamos un archivo llamado my.cnf que se encuentra en el directorio conf. Cada uno de los nodos de datos lo poseerá: En síntesis, lo que este archivo significa es que el nodo mysql ocupará el motor ndbcluster para conectarse al nodo de administrador a través del puerto 4002, la cadena de conexión muestra la ip del administrador y el mysql_cluster se encontrará también en la misma máquina administrador. Posteriormente abrimos la cmd de Windows y una vez arrancados los servicios, estas ventanas NO deben cerrarse, de lo contrario se interrumpirá la comunicación. Arrancamos el nodo de datos:
  • 10. Vemos si el servicio está corriendo: Iniciamos el nodo mysql: Nos conectamos a una instancia MySQL:
  • 11. A manera de ejemplo, veamos los motores. Veremos que ndbcluster está corriendo usando el comando show engines; (Este es el motor del cluster) y para ver las bases de datos usamos show databases; En uno de los nodos de datos se ha creado una base de datos llamada prueba. Si ejecutamos nuevamente show databases; debemos verla reflejada:
  • 12. Ahora bien, vamos a crear una tabla en este nodo de datos. Para ello escribimos use prueba; que representa que ocuparemos la base de datos prueba. Luego creamos la tabla en ella llamada alumno, y al final de la consulta de create table alumno escribimos engine=ndb;para que esta sentencia se ejecute en todos los nodos conectados: Ahora insertamos un alumno nuevo y describimos la tabla:
  • 13. Bibliografía  MySQL®, obtenida el 26 de abril de 2013, de http://downloads.mysql.com/tutorials/cluster/mysql_wp_cluster_quickstart_windows.pdf  Uv.mx, obtenida el 26 de abril de 2013, de http://www.uv.mx/personal/lizhernandez/files/2013/04/Comandos-mysql.pdf  Manuales Guebs.com®, obtenida el 27 de abril de 2013, de http://manuales.guebs.com/mysql- 5.0/ndbcluster.html#mysql-cluster-configuration  Slideshare® Base de Datos MySQL, obtenida el 27 de abril de 2013, de http://www.slideshare.net/miguelangelnieto/mysql-high-availavility-load-balacing-cluster  Scribd® ¿Qué es un CLUSTER?, obtenida el 27 de abril de 2013, de http://es.scribd.com/doc/6858172/QUE-ES-UN-CLUSTER