Pre-Requisitos Tres servidores con Red Hat 5.5. Cada uno de estos tres servidores debe tener 3 placas Ethernet conectadas en estas condiciones: eth0 conectada a la red 192.168.0.x, eth1 conectada a la red 10.10.100.x y eth2 a la red 172.16.200.x. Un servicio iSCSI clusterizado idntico al montado en este post. Ver esquema aclaratorio en PDF descargable desde aqu. Procedimiento
1. Configuracin fichero /etc/hosts Los ficheros /etc/hosts deben tener este aspecto en rhmaster, rhnodo1 y rhnodo2 # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 10.10.100.100 rhmaster 192.168.0.103 openfiler 10.10.100.101 rhnodo1 10.10.100.102 rhnodo2
2. Crear en Openfiler dos luns y mapearlar a un target iscsi, una para las configuraciones de Apache y otra para los datos.
3. Conectar almacenamiento compartido en ambos nodos Instalar en los dos nodos (rhnodo1 y rhnodo2) paquete iscsi-initiator-utils: yum -y install iscsi-initiator-utils service iscsi start chkconfig iscsi on Para luego conectar en los dos nodos el servicio iSCSI que tenemos en la IP 192.168.0.103 (no usar nombre de mquina, usar IP) iscsiadm --mode discovery --type sendtargets --portal 192.168.0.103 service iscsi restart (hacer antes y despus un cat /proc/partitions para ver qu pasa) 4. Instalar en rhnodo1, rhnodo2 las suites Clustering, ClusterStorage y la suite Clustering en rhmaster Despus de instalar los grupos de paquetes, en rhnodo1 y en rhnodo2 haremos: service ricci start chkconfig ricci on
mientras que en rhmaster heremos: luci_admin init
nos pedir que introduzcamos la password del usuario administrador y una vez hecho heremos: service luci restart chkconfig luci on
5. Creacin del clster Nos iremos con un navegador a https://rhmaster:8084, nos pedir usuaria, podremos admin y acto seguido introduciremos la password que hemos definido en el paso anterior. Desde el entorno grfico, crear el clster usando como nodos rhnodo1 y rhnodo2. 6. Creacin del almacenamiento compartido Revisar en rhnodo1 y rhnodo2 que en /etc/lvm/lvm.conf tengamos sto: locking_type = 3 Esto habilita a cada nodo para poder usar Logical Volumes clusterizados. A continuacin crearemos dos particiones en el almacenamiento compartido y las conectaremos. Pare ellos haremos desde rhnodo1 lo siguiente: fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-1011, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-1011, default 1011): Using default value 1011
Command (m for help):w
Y luego, tambin desde rhnodo1 heremos:
fdisk /dev/sdc Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-1009, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-1009, default 1009): Using default value 1009
Command (m for help):w
Ahora iremos a rhnodo2 y hacemos: service iscsi restart
Volvemos a rhnodo1 y hecemos: pvcreate /dev/sdb1 pvcreate /dev/sdc1
vgcreate -c y ApacheVGConf /dev/sdb1 vgcreate -c y ApacheVGData /dev/sdc1
El siguiente paso consiste en montar los sistemas GFS formateados manualmente. Primero crearemos el punto de montaje de la parte de configuracin en rhnodo1 y rhnodo2: mkdir /var/www/config
Para luego montar ambos filesystem: mount o noatime /dev/mapper/ApacheVGConf-ApacheLVConf /var/www/config mount o noatime /dev/mapper/ApacheVGData-ApacheLVData /var/www/html
Para que en futuros reinicios de ambos nodos estos filesystem se vuelvan a montar, modificaremos el fichero /etc/fstab aadiendo al final del mismo las siguientes dos lneas (hay que hacerlo tanto en rhnodo1 como rhnodo2): /dev/mapper/ApacheVGConf-ApacheLVConf /var/www/config gfs2 rw,noatime 0 0 /dev/mapper/ApacheVGData-ApacheLVData /var/www/html gfs2 rw,noatime 0 0
Movemos los ficheros de configuracin de Apache y creamos enlaces simblicos Hacer en rhnodo1:
7. Definir Failover Domain Usando un navegador y el entorno de administracin del clster (https://rhmaster:8084), nos adentramos en la configuracin del clster cluster01. Despus de desplegar el apartado Failover Domain seleccionamos Add a Failover Domain. En el campo Failover Domain Name ponemos prefer_rhnodo1, marcamos la casilla titulada Prioritized , marcamos tambin las casillas de ambos nodos en el apartado Member , y finalmente en el campo Priority de rhnodo1 ponemos 1 mientras que el de rhnodo2 ponemos 10. Concluimos tocando el botn de Submit.
8. Definicin de recursos para el servicio Normalmente necesitaremos definir dos recursos para un servicio Web clusterizado: Una direccin IP virtual Un script de start/stop del servicio
Direccin IP Virtual: Usando un navegador y el entorno de administracin del clster (https://rhmaster:8084), nos adentramos en la configuracin del clster cluster01. Despus de desplegar el apartado Resources seleccionamos Add a Resource. En la lista desplegable titulada Select a resource type seleccionamos IP Address. En la pantalla que se nos muestra a continuacin aadimos la ip que queramos asignarle, en nuestro caso 172.16.200.103 y marcamos la casilla de verificacin titulada Monitor link. Script de START/STOP: Continuamos en el apartado Resources y volvemos a seleccionar Add a Resource. En la lista desplegable seleccionamos Script. En la pantalla que se muestra a continuacin, en el campo Name ponemos Apache-Script mientras que en el campos Full path to script file ponemos /etc/rc.d/init.d/httpd .
9. Definicin del servicio Lo primero que tenemos que hacer es modificar en el fichero /etc/httpd/conf/httpd.conf la lnea que empieza por Listen para que quede as: Listen 172.16.200.103:80 Para definir el servicio procedemos as: Usando un navegador y el entorno de administracin del clster (https://rhmaster:8084), nos adentramos en la configuracin del clster cluster01. Despus de desplegar el apartado Services seleccionamos Add a Service. En la pantalla que se nos muestra a continuacin, en el campo Service Name ponemos Apache, marcamos la casilla de verificacin titulada Automatically start this service , en la lista de seleccin titulada Failover domain seleccionamos prefer_rhnodo1, en la lista de seleccin titulada Recovery policy seleccionamos Relocate, tocamos el botn Add a resource to this service , en la pantalla que nos aparece a continuacin desplegaremos la lista titulada Use an existing global resource y seleccionamos 172.16.200.103 (IP), volvemos a tocar el botn Add a resource to this service, volvemos a desplegar la lista Use an existing global resource y seleccionamos Apache-Script (Script), para finalmente tocar el botn titulado Submit . Esto nos conduce a una pantalla en la que habr una lista desplegable que contiene Choose a task, deberemos desplegarla y seleccionar Start this service to rhnodo1. Esto pondr en marcha el servicio Apache clusterizado por primera vez. FIN