26 de junio de 209
CLUSTER CON MYSQL EN UBUNTU
Configuración del Cluster. | Edwin Nájera Jr.
CLUSTER CON MYSQL EN UBUNTU
~2~
Configuración de un Cluster con MySQL Antes que nada debemos de tener ciertas cosas para que nuestro cluster funcione correctamente, para ello voy a enumerar las cosas que debemos de tener en nuestro sistema operativo. Debemos tener instaldo una distribución Linux, en mi caso tengo Ubuntu 8.10 Debemos tener una conexión de red entre las computadoras que usaremos para realizar el cluster Establecer una IP fija a cada equipo. Instalar el paquete de mysql-server, este lo podemos agregar al sistema desde synaptic. Instalar el paquete de mysql-client, este lo podemos agregar al sistema desde synaptic. Instalar el paquete de mysql-admin, este lo podemos agregar al sistema desde synaptic. Después de que tengamos todo esto listo, podemos empezar a configurar nuestro administrador y nuestros nodos. En mi caso tengo 3 equipos los cuales van a ser: Administrador – IP 192.168.1.100 Nodo 1 – IP 192.168.1.101 Nodo 2 – IP 192.168.1.102
Configuración del Administrador Paso 1. Vamos a crear un archivo que se llame ndb_mgmd.cnf en la dirección /etc/mysql $sudo gedit /etc/mysql/ndb_mgmd.cnf Paso 2. Vamos a llenar dicho archivo con el siguiente contenido: [NDBD DEFAULT] NoOfReplicas=2 DataMemory=80M # cantidad de memoria que le vamos a asignar IndexMemory=18M # cantidad de memoria que le vamos a asignar #Configuracion del Cluster [MYSQLD DEFAULT] [NDB_MGMD DEFAULT] [TCP DEFAULT]
CLUSTER CON MYSQL EN UBUNTU
~3~
#En esta sección vamos a configurar el nodo administrativo del cluster [NDB_MGMD] #IP del nodo administrativo (este sistema) HostName=192.168.1.100 [NDBD] #Sección de los nodos de almacenamiento #IP del primer nodo HostName=192.168.1.101 DataDir=/var/lib/mysql-cluster BackupDataDir=/var/lib/mysql-cluster/backup DataMemory=128M [NDBD] #Sección de los nodos de almacenamiento #IP del primer nodo HostName=192.168.1.101 DataDir=/var/lib/mysql-cluster BackupDataDir=/var/lib/mysql-cluster/backup DataMemory=128M #Por cada nodo debemos de incluir un [ MYSQLD] [MYSQLD] [MYSQLD]
Paso 3. En el archivo my.cnf que esta ubicado en /etc/mysql debemos de comentar la línea #bind-address = 127.0.0.1 Paso 4. Debemos de reiniciar el servicio de mysql-ndb.mgm $sudo /etc/init.d/mysql-ndb-mgm restart Paso 5. Ingresamos al ndb_mgm $ ndb_mgm Paso 6. Una vez estando adentro de esa aplicación ejecutamos un show;
CLUSTER CON MYSQL EN UBUNTU
~4~
Con estos pasos ya tenemos configurado nuestro nodo Administrador.
Configuración Nodo de almacenamiento Paso 1. Vamos a configurar nuestro nodo para ello nos vamos al archivo my.cnf que esta ubicado en /etc/mysql $ sudo gedit /etc/mysql/my.cnf Paso 2. Una vez abierto el archivo vamos a buscar la etiqueta [mysqld] y agregamos las siguientes líneas ndbcluster ndb-connectstring=192.168.1.100 #IP del nodo administrador
CLUSTER CON MYSQL EN UBUNTU Paso 3. Buscamos dentro del mismo archive la etiqueta [MYSQL_CLUSTER] descomentamos.
~5~ Y la
[MYSQL_CLUSTER] ndb-connectstring=192.168.1.100 #IP del nodo administrado r. Paso 4. Buscamos el bind-address y lo comentamos #bind-address = 127.0.0.1 Paso 5. Vamos a crear una carpeta en donde vamos a tener toda la información del cluster $sudo mkdir /var/lib/mysql-cluster/backup Paso 6. Ahora vamos a cambiar el propietario de esta carpeta, para ello vamos a realizar este comando. $ sudo chown mysql:mysql /var/lib/mysql-cluster Paso 7. Vamos a reiniciar el servicio de mysql. $ sudo /etc/init.d/mysql restart Paso 8. Ahora el servicio de ndd. $ sudo /etc/init.d/mysql-ndb restart Con estos pasos ya tenemos configurado nuestro nodo, estos son los pasos que debemos seguir para configurar los demás nodos. Ahora solo nos queda comprobar que los nodos estén conectados. Para eso en el nodo administrador vamos a ejecutar el comando ndb_mgm una vez estando allí le damos show; si todo esta bien nos tiene que aparecer lo siguiente.
CLUSTER CON MYSQL EN UBUNTU
~6~
NOTA. Si en dado caso no miramos que se conectan los nodos al nodo administrador, debemos de reinciar los servicios: En el nodo administrador $sudo /etc/init.d/mysql-ndb-mgm restart En el nodo de almacenamiento $ sudo /etc/init.d/mysql-ndb restart Y otra vez reiniciamos el nodo administrador $sudo /etc/init.d/mysql-ndb-mgm restart