Posts in Category: Virtualización

Red Hat, VMware.

EqualLogic listo para entrar en producción.

Estamos entrando a producción con nuestro nuevo sistema de VMware usando un almacenamiento iSCSI.

SAN EqualLogic PS6100

DSCF4148

24 discos de 600 GB, con un servidor Dell R910 utilizando VMware 5.1

DSCF4149

Manual Transfer Utility

Volvemos nuevamente con este asunto del equipo de almacenamiento EqualLogic y la replicación de volúmenes.

Vamos a comentar el siguiente escenario; anteriormente en otro escrito de este blog se realizo la replica de volúmenes entre dos SAN EqualLogic una en la ciudad de México y otra en la ciudad de Querétaro. Debido a que el enlace WAN es pequeño para enviar una replicación de un volumen de al menos 200 GB optamos por realizar una replica manual mediante la utilidad MTU.

La primera copia del equipo de la ciudad de México sera apoyándonos con la utilidad gráfica sin embargo la computadora del lado de Querétaro es un poco limitada y el navegador al usar esta interfaz gráfica se bloquea debido a que la aplicación de EqualLogic requiere la totalidad del procesador en este equipo por lo que vamos a describir un poco mas el uso de la consola y a meter instrucciones directamente a la SAN.

Bueno el respaldo lo tenemos en un disco duro externo mediante USB.

Aquí vemos el proceso de copiado mediante el modo gráfico desde una computadora con Windows XP.

Copiado finalizado es hora de transportarnos a Querétaro, en un autobus de estación a estación el tiempo de viaje es de al menos dos horas y media (sin trafico) entre las dos ciudades en cuestión.

Utilizaremos otro equipo con Windows XP para los trabajos y lo primero que necesitamos es instalar la aplicación de MTU en el equipo y mas importante que si esta no detecta el iniciador iSCSI en nuestro equipo lo instalara y obtendremos un IQN para nuestro equipo y asi podremos comunicar nuestra computadora con la SAN EqualLogic.

Antes que nada necesitamos verificar el estado de la replicación y dar permisos de acceso al equipo que se encargara de subir el respaldo. Iniciamos el acceso por telnet a una de las direcciones IP asignadas (no la IP de grupo) con un usuario con privilegios de administrador.

gabriel@tyrael:~$ telnet 172.17.0.102
Trying 172.17.0.102...
Connected to 172.17.0.102.
Escape character is '^]'.
 
PS Series Storage Arrays
Unauthorized Access Prohibited
 
login: gabriel
Password:
 
 
           Welcome to Group Manager
 
        Copyright 2001-2011 Dell, Inc.
 
 
 
Grupo3> 
831:22:EQL3:netmgtd:12-Apr-2012 11:15:55.620023:rcc_util.c:738:INFO:25.2.9:CLI: Login to account gabriel succeeded.

Verificamos que el proceso de replicación esta en progreso ya que desde el grupo primario se especifico que seria una replicación manual.

Grupo3> partner select Grupo2 inbound-replicaset show 
Name            ReservedSpace FreeSpace     Replicas Status                    
--------------- ------------- ------------- -------- ------------------------- 
EQL2VMESXi01.1  814.45GB      407.22GB      1        in-progress               
Correo.1        438.19GB      219.09GB      1        in-progress

Lo que haremos a continuación es darle permisos de acceso al volumen que se esta replicando al equipo que usaremos para iniciar la transferencia el acceso se lo daremos mediante el IQN de este mismo.

Grupo3> partner select Grupo2 inbound-replicaset select EQL2VMESXi01.1 access create initiator iqn.1991-05.com.microsoft:icverify-net.anaseguros.com.mx
Access control record created with ID 2.
Grupo3> 
837:209:EQL3:MgmtExec:12-Apr-2012 11:26:42.340210:targetAttr.cc:759:INFO:7.2.13:iSCSI login to target '172.17.0.104:3260, iqn.2001-05.com.equallogic:0-8a0906-b9924a509-3830018537a4f845-eql2vmesxi01.1-2012-04-10-11:25:22.52' from initiator '172.17.0.164:1257, iqn.1991-05.com.microsoft:icverify-net.anaseguros.com.mx' successful, using standard frame length.

Realizados los pasos anteriores podemos iniciar la aplicación donde nos preguntara la operación a realizar, la replica asociada y la ubicación del archivo que deseamos subir al equipo que se encuentra en un disco externo USB, la imagen muestra la conclusión de este proceso que se llevo aproximadamente ocho horas.

Terminado todo el proceso anterior volvemos a la consola de la SAN para finalizar la replicación como primer paso verificamos los accesos hacia al volumen con el que estamos trabajando.

Grupo3> partner select Grupo2 inbound-replicaset select EQL2VMESXi01.1 access show 
ID  Initiator                     Ipaddress       AuthMethod UserName   Apply-To
 
--- ----------------------------- --------------- ---------- ---------- --------
 
1                                 *.*.*.*         chap-local Grupo2     both    
 
2   iqn.1991-05.com.microsoft:icv *.*.*.*         none                  snapshot
 
      erify-net.anaseguros.com.mx

Borramos el acceso del equipo hacia el volumen utilizando el ID del iniciador como medida de seguridad y volvemos a verificar los accesos para verificar la adecuada eliminación del ID.

Grupo3> partner select Grupo2 inbound-replicaset select EQL2VMESXi01.1 access delete 2
Access control record deletion succeeded.
Grupo3> partner select Grupo2 inbound-replicaset select EQL2VMESXi01.1 access show    
ID  Initiator                     Ipaddress       AuthMethod UserName   Apply-To
 
--- ----------------------------- --------------- ---------- ---------- --------
 
1                                 *.*.*.*         chap-local Grupo2     both

Después de borrar el acceso tenemos estos mensajes diciéndonos que la conexión fue cerrada y que el equipo que utilizamos no encuentra su objetivo ya que le quitamos el acceso.

Grupo3> 
864:210:EQL3:MgmtExec:12-Apr-2012 19:31:25.930211:targetAttr.cc:1055:INFO:7.2.15:iSCSI session to target '172.17.0.104:3260, iqn.2001-05.com.equallogic:0-8a0906-b9924a509-3830018537a4f845-eql2vmesxi01.1-2012-04-10-11:25:22.52' from initiator '172.17.0.164:1257, iqn.1991-05.com.microsoft:icverify-net.anaseguros.com.mx' was closed.
        Volume or snapshot went offline.
 
866:212:EQL3:MgmtExec:12-Apr-2012 19:31:25.950213:targetAttr.cc:517:ERROR:7.4.3:iSCSI login to target '172.17.0.100:3260, iqn.2001-05.com.equallogic:0-8a0906-b9924a509-3830018537a4f845-eql2vmesxi01.1-2012-04-10-11:25:22.52' from initiator '172.17.0.164:1405, iqn.1991-05.com.microsoft:icverify-net.anaseguros.com.mx' failed for the following reason:
        Requested target not found.

Una vez borrado el acceso nos disponemos decirle al equipo que la transferencia manual ha sido completada para que los dos grupos se sincronicen y den por buena la replica.

Grupo3> partner select Grupo2 inbound-replicaset select EQL2VMESXi01.1 manual-xfer done

Verificamos el estado de las replicas y satisfactoriamente tenemos lista la primera de las dos que realizaremos.

Grupo3> partner select Grupo2 inbound-replicaset show
Name            ReservedSpace FreeSpace     Replicas Status                    
--------------- ------------- ------------- -------- ------------------------- 
EQL2VMESXi01.1  814.45GB      407.22GB      1        ready                     
Correo.1        438.19GB      219.09GB      1        in-progress               
 
Grupo3>

Después de esto una segunda replica solo reflejara los cambios de manera incremental y estos se podrían manejar de acuerdo a los tiempos que te permita tu enlace, de lo contrario puedes hacer este tipo de replicas las veces que necesites siempre y cuando la información a guardar no la necesites tan actualizada.

Más información.

110-0122-EN-R3_MTU_UserGuide

Probando Red Hat Enterprise Virtualization 3

Instalando RHEV Manager.

Toda la información referente esta aquí: Red Hat Enterprise Virtualization 3.0 Installation Guide

Partimos de una instalación básica de Red Hat 6 y nos referimos a que no instalaremos entorno gráfico ni cosas inútiles para el sistema.

Una vez instalado lo registramos (rhn_register) y actualizamos mediante YUM siguiendo las pautas del manual de instalación, antes de ejecutar el comando principal de instalación asegurate de adicionar los siguientes canales de Red Hat Network al sistema.

[root@rhevm3b ~]# rhn-channel --add --channel=rhel-x86_64-server-6-rhevm-3-beta                                                                                                                                                                                                      
[root@rhevm3b ~]# rhn-channel --add --channel=rhel-x86_64-server-supplementary-6
[root@rhevm3b ~]# rhn-channel --add --channel=rhel-x86_64-server-6-rhevm-3-jboss-5-beta
[root@rhevm3b ~]# rhn-channel --list
rhel-x86_64-server-6
rhel-x86_64-server-6-rhevm-3-beta
rhel-x86_64-server-6-rhevm-3-jboss-5-beta
rhel-x86_64-server-supplementary-6
[root@rhevm3b ~]# yum remove classpathx-jaf
[root@rhevm3b ~]# yum upgrade

A instalar la aplicación.

[root@rhevm3b ~]# yum install rhevm
Dependencies Resolved
 
====================================================================================================================================================================================
 Package                                         Arch                Version                                           Repository                                              Size
====================================================================================================================================================================================
Installing:
 rhevm                                           x86_64              3.0.0_0001-51.el6                                 rhel-x86_64-server-6-rhevm-3-beta                       66 k
Installing for dependencies:
 alsa-lib                                        x86_64              1.0.22-3.el6                                      rhel-x86_64-server-6                                   370 k
 antlr                                           noarch              2.7.7-7.ep5.el6                                   rhel-x86_64-server-6-rhevm-3-jboss-5-beta              516 k
 apache-cxf                                      noarch              2.2.12-4.patch_02.1.ep5.el6                       rhel-x86_64-server-6-rhevm-3-jboss-5-beta              8.0 M
 atk                                             x86_64              1.28.0-2.el6                                      rhel-x86_64-server-6                                   191 k

Y paciencia por que descargaremos varios paquetes.

 xml-security                                    noarch              1.4.3-6.ep5.el6                                   rhel-x86_64-server-6-rhevm-3-jboss-5-beta              427 k
 xz                                              x86_64              4.999.9-0.3.beta.20091007git.el6                  rhel-x86_64-server-6                                   137 k
 yum-plugin-versionlock                          noarch              1.1.30-10.el6                                     rhel-x86_64-server-6                                    26 k
 zip                                             x86_64              3.0-1.el6                                         rhel-x86_64-server-6                                   260 k
 
Transaction Summary
====================================================================================================================================================================================
Install     338 Package(s)
 
Total download size: 664 M
Installed size: 0  
Is this ok [y/N]:

Hay que asegurarnos de tener instalado nslookup y el cliente de ssh, ya que si hacemos la instalación básica a pesar de instalar rhevm y la gran cantidad de dependencias que tiene, estos paquetes no se instalan y la ausencia de nslookup provoca errores en la configuración de RHEVM y posteriores operaciones donde interviene la consulta a un servidor DNS, el cliente de SSH es importante al agregar los hosts a la interfaz gráfica en concreto marca un error en la instalación y no puede finalizar la operación. En lo personal me gusta hacer instalaciones muy básicas e ir agregando los paquetes que resulten necesarios así uno se puede dar cuenta con mas detalle de los puntos que a veces una instalación omite por asumir que tienes una instalación completa.

yum install bind-utils
yum install openssh-clients

Empezamos con la configuración.

[root@rhevm3b ~]# rhevm-setup 
Welcome to RHEV Manager setup utility
HTTP Port  [8080] : 
HTTPS Port  [8443] : 
Host fully qualified domain name, note that this name should be fully resolvable  [rhevm3b.ananet.com.mx] : 
rhevm3b.ananet.com.mx did not resolve into an IP address
User input failed validation, do you still wish to use it? (yes|no): no
Host fully qualified domain name, note that this name should be fully resolvable  [rhevm3b.ananet.com.mx] : 
Password for Administrator (admin@internal) :
Confirm password :
Database password (required for secure authentication with the locally created database) :
Warning: Weak Password.
Confirm password :
Organization Name for the Certificate: Demerzel Inc 
The default storage type you will be using  ['NFS'| 'FC'| 'ISCSI']  [NFS] : 
Should the installer configure NFS share on this server to be used as an ISO Domain? ['yes'| 'no']  [yes] : no
Firewall ports need to be opened.
You can let the installer configure iptables automatically overriding the current configuration. The old configuration will be backed up.
Alternately you can configure the firewall later using an example iptables file found under /usr/share/rhevm/conf/iptables.example
Configure iptables ? ['yes'| 'no']: yes
 
RHEV Manager will be installed using the following configuration:
=================================================================
http-port:                     8080
https-port:                    8443
host-fqdn:                     rhevm3b.ananet.com.mx
auth-pass:                     ********
db-pass:                       ********
org-name:                      Demerzel Inc
default-dc-type:               NFS
override-iptables:             yes
Proceed with the configuration listed above? (yes|no): yes
 
Installing:
Creating JBoss Profile...                                [ DONE ]
Creating CA...                                           [ DONE ]
Setting Database Security...                             [ DONE ]
Creating Database...                                     [ DONE ]
Updating the Default Data Center Storage Type...         [ DONE ]
Editing JBoss Configuration...                           [ DONE ]
Editing RHEV Manager Configuration...                    [ DONE ]
Configuring Firewall (iptables)...                       [ DONE ]
Starting JBoss Service...                                [ DONE ]
 
 **** Installation completed successfully ******
 
     (Please allow RHEV Manager a few moments to start up.....)
 
 
Additional information:
 * There is less than 4 GB available free memory on the Host.
It is  recommended to have at least 4 GB available memory to run the RHEV Manager.
 * SSL Certificate fingerprint: 46:BD:6D:90:C9:A6:62:6B:15:38:87:41:E6:64:27:85:FD:3B:91:B3
 * SSH Public key fingerprint: 7b:81:63:f0:88:83:db:f7:c2:51:cd:fd:0d:2c:75:d4
 * The firewall has been updated, the old iptables configuration file was saved to /usr/share/rhevm/conf/iptables.backup.113527-12212011_1497
 * The installation log file is available at: /var/log/rhevm/rhevm-setup_2011_12_21_05_04_50.log
 * Please use the user "admin" and password specified in order to login into RHEV Manager
 * To configure additional users, first configure authentication domains using the 'rhevm-manage-domains' utility
 * To access RHEV Manager please go to the following URL: http://rhevm3b.ananet.com.mx:8080

En la configuración si no contamos con nslookup nos saldra este mensaje de advertencia que se aprecia en las lineas anteriores.

Host fully qualified domain name, note that this name should be fully resolvable  [rhevm3b.ananet.com.mx] : 
rhevm3b.ananet.com.mx did not resolve into an IP address
User input failed validation, do you still wish to use it? (yes|no): no

Si verificamos un poco el log de instalación veremos como no puede hacer una correcta verificación de la IP mediante el nombre del host que le proporcionamos.

2011-12-21 05:05:00::DEBUG::common_utils::165::root:: cmd = /usr/bin/nslookup rhevm3b.ananet.com.mx
2011-12-21 05:05:00::DEBUG::common_utils::170::root:: output =
2011-12-21 05:05:00::DEBUG::common_utils::171::root:: stderr = /bin/sh: /usr/bin/nslookup: No such file or directory
 
2011-12-21 05:05:00::DEBUG::common_utils::172::root:: retcode = 127
2011-12-21 05:05:00::ERROR::rhevm_validators::136::root:: Failed to resolve rhevm3b.ananet.com.mx
2011-12-21 05:05:00::DEBUG::rhevm-setup::519::root:: asking user: User input failed validation, do you still wish to use it? (yes|no):
2011-12-21 11:32:43::DEBUG::rhevm-setup::523::root:: user answered: no

Instalamos el paquete bind-utils para obtener nslookup y volvemos a configurar la aplicación que ahora se ejecuta sin error.

[root@rhevm3b ~]# yum install bind-utils
2011-12-21 11:32:44::INFO::rhevm_validators::122::root:: Validating rhevm3b.ananet.com.mx as a FQDN
2011-12-21 11:32:44::INFO::rhevm_validators::96::root:: validating rhevm3b.ananet.com.mx as a valid domain string

Después de esta aclaración realizamos lo que comenta la ultima linea de configuración: * To access RHEV Manager please go to the following URL: http://rhevm3b.ananet.com.mx:8080

Probando la nueva interfaz de RHEV Manager.

Tenemos que usar el navegador Internet Explorer en su versión 8 la versión 9 en lo personal no me ha funcionado siempre marcar errores al cargar la aplicación.

La cuestión de los certificados.

La interfaz de administración.

Instalando los hosts.

La pantalla de bienvenida.

Hay un cambio importante en el instalador de los host, el instalador tiene un poco de color (solo un poco) y eso da la sensación de que sera una instalación fácil y amigable.

En la primera parte de la instalación solo necesitamos proveer el almacenamiento donde se instalara la imagen y una contraseña de administración que nos pedirá posteriormente para activar la configuración del host.

Como primer paso debemos configurar nuestra red especificando los parámetros a nuestra tarjeta de red principal (eth0), las demás interfaces las manejaremos desde el manager.

Imagen del estado de la red del host, vemos la primera interfaz conectada, el hostname especificado y el DNS.

Con el manager instalado, le pasamos los parametros al host para agregarse a este.

En nuestro manager veremos que nos aparece el host esperando que se apruebe su instalación y se pueda agregar a nuestro cluster.

Nos pide verificar los datos del host como el nombre y su dirección IP así como el datacenter y el cluster al que va a pertenecer.

Al agregar el primer host se presenta este error y nunca se termina de instalar, el mensaje es descriptivo nos falta en el servidor de RHEVM el cliente de ssh.

Host demerzel.ananet.com.mx installation failed. SshClient not started. Please call start() method before connecting to a server.
[root@rhevm3b ~]# yum install openssh-clients

Después de esto hay que borrar el host que se quedo a medio camino y volver a agregarlo de forma manual, posteriores host se agregaran de forma automática.

Pasamos a la parte de configuración de la red y almacenamiento.

Esta parte donde se encuentran los parámetros de red esta mas trabajada y con mas opciones con respecto a la creación de un bond de tarjetas para la red iSCSI, contamos con dos hosts a cada uno de ellos le vamos a crear un bond con las interfaces cuatro y cinco.

Como el datacenter lo creamos para iSCSI vamos a usar un servidor e instalar un target en el para simular la presencia de una SAN, como se ha descrito en esta pagina tenemos acceso a SAN EqualLogic pero por el momento no estan disponibles, asi que utilizaremos un servidor HP Proliant que utilizaremos como target basandonos en esta guia: using-iscsi-on-debian-lenny-initiator-and-target.

Con un volumen de 30 GB basta, para la parte de autenticación utilizamos CHAP.

Una vez acreditados estamos listos para aceptar el lun y activarlo en nuestro datacenter, alguno de los host asumirá el rol de SPM.

Agregando el storage ISO.

Desde el datacenter lo activamos para iniciar la carga de las imágenes ISO que necesitemos.

Antes de cualquier instalación con Windows no se nos debe olvidar descargar el driver virtio-win-1_4_0-1.vfd y almacenarlo igual en el storage ISO, vamos a instalar un Windows 7 Professional de 64 bits como primera maquina virtual.

root@tyrael:/home/gabriel/Downloads# cp virtio-win-1_4_0-1.vfd /home/gabriel/RHEV/3dbdd243-acd9-4e37-9691-7f98cfd98929/images/11111111-1111-1111-1111-111111111111/
root@tyrael:/home/gabriel/Downloads# chown 36:36 /home/gabriel/RHEV/3dbdd243-acd9-4e37-9691-7f98cfd98929/images/11111111-1111-1111-1111-111111111111/virtio-win-1_4_0-1.vfd
root@tyrael:/home/gabriel# mv es_windows_7_professional_x64_dvd_x15-65843.iso RHEV/3dbdd243-acd9-4e37-9691-7f98cfd98929/images/11111111-1111-1111-1111-111111111111/
root@tyrael:/home/gabriel# chown 36:36 RHEV/3dbdd243-acd9-4e37-9691-7f98cfd98929/images/11111111-1111-1111-1111-111111111111/es_windows_7_professional_x64_dvd_x15-65843.iso
root@tyrael:/home/gabriel# ls -l RHEV/3dbdd243-acd9-4e37-9691-7f98cfd98929/images/11111111-1111-1111-1111-111111111111/
total 3106344
-rwxr--r-- 1 36 36 3176308736 Aug 17  2009 es_windows_7_professional_x64_dvd_x15-65843.iso
-rw-r--r-- 1 36 36    1474560 Feb  3 13:30 virtio-win-1_4_0-1.vfd
root@tyrael:/home/gabriel#

Iniciamos la creación de nuestra maquina virtual asignando nombre, tipo de sistema operativo, memoria RAM, núcleos de procesador, disco duro, tarjeta de red, cluster y datacenter.

En los equipos con Windows es importante seleccionar la opción Run Once con el fin de especificar la unidad A que contiene los drivers virtio para poder reconocer el disco duro asignado.

Podemos tomar el controlador para la red desde la unidad A como mencionamos anteriormente, y nuestra maquina virtual ya tiene acceso a Internet.

Aqui otro punto donde el DNS es importante para nuestra aplicación, ya que tenemos dos hosts vamos a verificar la migración de la maquina virtual de un host a otro.

Al iniciar la migración de la maquina virtual esta no se logra y obtenemos los siguientes mensajes acerca del proceso:

Starting migration of VM Win7 from Host giskard.ananet.com.mx to Host demerzel.ananet.com.mx (User: admin@internal.).
Migration failed due to Error: Migration destination has an invalid hostname (VM: Win7, Source Host: giskard.ananet.com.mx). Trying to migrate to another Host.
Migration failed due to Error: Migration destination has an invalid hostname (VM: Win7, Source Host: giskard.ananet.com.mx).

Verificando en los registros del administrador podemos observar lo siguiente:

2012-02-03 18:04:10,709 ERROR [org.ovirt.engine.core.vdsbroker.VdsUpdateRunTimeInfo] (QuartzScheduler_Worker-54) Rerun vm 83cdad51-2ff3-49bc-bab2-51720159298a. Called from vds giskard.ananet.com.mx
2012-02-03 18:04:10,714 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.MigrateStatusVDSCommand] (pool-15-thread-1877) START, MigrateStatusVDSCommand(vdsId = 9cfbe6de-4b9b-11e1-a5da-ff6f684fbc39, vmId=83cdad51-2ff3-49bc-bab2-51720159298a), log id: 88c9ab6
2012-02-03 18:04:10,719 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.BrokerCommandBase] (pool-15-thread-1877) Command org.ovirt.engine.core.vdsbroker.vdsbroker.MigrateStatusVDSCommand return value 
 Class Name: org.ovirt.engine.core.vdsbroker.vdsbroker.StatusOnlyReturnForXmlRpc
mStatus                       Class Name: org.ovirt.engine.core.vdsbroker.vdsbroker.StatusForXmlRpc
mCode                         39
mMessage                      Migration destination has an invalid hostname
 
 
2012-02-03 18:04:10,719 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.BrokerCommandBase] (pool-15-thread-1877) Vds: giskard.ananet.com.mx
2012-02-03 18:04:10,719 ERROR [org.ovirt.engine.core.vdsbroker.VDSCommandBase] (pool-15-thread-1877) Command MigrateStatusVDS execution failed. Exception: VDSErrorException: VDSGenericException: VDSErrorException: Failed in vdscommand to MigrateStatusVDS, error = Migration destination has an invalid hostname
2012-02-03 18:04:10,719 INFO  [org.ovirt.engine.core.vdsbroker.vdsbroker.MigrateStatusVDSCommand] (pool-15-thread-1877) FINISH, MigrateStatusVDSCommand, log id: 88c9ab6
2012-02-03 18:04:10,729 WARN  [org.ovirt.engine.core.bll.MigrateVmCommand] (pool-15-thread-1877) CanDoAction of action MigrateVm failed. Reasons:ACTION_TYPE_FAILED_VDS_VM_CLUSTER,VAR__ACTION__MIGRATE,VAR__TYPE__VM

Tenemos que asegurarnos que en el servidor DNS que utilicemos tengamos creados correctamente los registros de los equipos que utilizaremos tanto los hosts como del manager, de esta manera lograremos que en una migración si existen errores sean atribuidos a otras cosas y no a algo tan simple como un registro DNS.

Starting migration of VM Win7 from Host giskard.ananet.com.mx to Host demerzel.ananet.com.mx (User: admin@internal.).
Migration complete (VM: Win7, Source Host: giskard.ananet.com.mx).

El entorno de instalación de los servidores, el administrador se ejecuta como maquina virtual mediante VMware Player, el servidor NFS se ejecuta en mi laptop y el servidor que se ve abajo funciona como almacén iSCSI. Los dos conmutadores representan la separación entre la red de área local iSCSI y la de datos.

Necesitas al menos tres componentes (Manager, Host, Storage) para levantar este sistema de virtualización ya que a diferencia de VMware o Citrix el administrador de RedHat se debe instalar aparte.

En cada host no he podido terminar lo referente a el “Power Management”, algo en la configuración estoy omitiendo cuando lo averigüe lo pondremos por aquí.

EqualLogic, replicación a grandes distancias.

Este documento no pretende ser una guia paso a paso, es solamente una experiencia acerca de como se esta realizando lo siguiente y el aprendizaje que se esta llevando a cabo.

Continuando en la linea del post anterior de: Tiempos de replicación en una misma vlan con Equallogic, seguimos con otras pruebas.

Ahora viene la situación de replicar mediante una WAN, vamos a poner el entorno y el porque al menos para la primera replica no es el mejor escenario.

Equipo disponible en locación primaria.

Dell EqualLogic PS6000 en RAID 50.
Dos switch PowerConnect 6224
Router Cisco 2801

Equipo disponible en locación secundaria.

Dell EqualLogic PS6000 en RAID 50.
Dos switch PowerConnect 5424
Router Cisco 1841

Enlace disponible.

MPLS de 512 Kbps proporcionado por UNINET de TELMEX.

Diagrama de conexión.

Anteriormente habiamos puesto unos tiempos de replicación en un entorno LAN sobre determinados volúmenes, ahora mas que intentar replicar estos mismos mediante un enlace tan pequeño la finalidad es que exista una comunicación ininterrumpida entre los storage y replicar cambios de un tamaño apropiado para el enlace y que este entre los tiempos normales de operación.

El proveedor de la conexión en este caso es TELMEX a través de su red UNINET. Mediante el centro de atención se solicitan los cambios necesarios para la comunicación entre los routers que incluye la activación de la segunda interfaz que tiene cada equipo asignándoles un segmento de red independiente de nuestra LAN principal de computadoras y servidores, haciendo la conexión lo mas transparente posible y de punto a punto.

Una vez configurados los grupos adecuadamente y verificado que existe una conexión entre los equipos se comprueba que no se interrumpa la conexión. Para la configuración de los grupos y el procedimiento de configuración de un replication partner podemos consultar aquí: PS Series Storage Arrays, Group Administration V5.0, en el capitulo 12 Volume replication.

El volumen con el que realizaremos las pruebas se denomina EQL2VMESXi01 con un tamaño de 293.12 GB, como pueden apreciar en el nombre es un volumen que guarda un par de maquinas virtuales que corren bajo VMware.

Y aquí necesitamos realizar un calculo sencillo, ¿cuanto tiempo necesitamos para transportar 293.12 GB utilizando un enlace de 512 Kbps?

512 Kbit/s = 0.000064 GB/s
293.12 GB / 0.000064 GB/s = 4,580,000 s = 53.0092592593 días.

En un escenario ideal tardaríamos 53 días en pasar la primera replica lo cual evidentemente no es practico desde ningún punto de vista.

El enlace de momento esta únicamente destinado a estas pruebas, por lo cual podemos hacer uso de el en su totalidad una vez que la comunicación entre los dispositivos no se interrumpe.

A continuación vemos una gráfica proporcionada por una herramienta de monitoreo usada por el proveedor del enlace, podemos verificar entre otras cosas la velocidad teórica del enlace, la descripción acerca de fechas y una pequeña gráfica donde vemos que la utilización es mínima.

Incremento al empezar la replicación, de 0 a 99 % en menos de un clic.

Gráfica del enlace pasando información durante dos días casi al cien por ciento.

Ya que nos damos cuenta de que va a tardar varios días en pasar la replica en el escenario actual no es problema dejar copiando los datos aunque sabemos que no funcionara en nuestro tiempo establecido pero nos da tiempo de pensar la forma de pasar esa primera replica, aunque esto no es razón suficiente para suspender la transferencia, si de por si cobran la renta del enlace lo uses o no lo dejamos transfiriendo información para que no este ocioso el medio y de paso verificamos su disponibilidad.

En esta imagen apreciamos lo que menciono anteriormente, en 14 días solo se han transferido 62.02 GB.

MTU, Manual Transfer Utility.

Para estos casos esta MTU, básicamente es copiar los datos del grupo primario y transferirlos a un medio extraible transportarse al grupo secundario y hacer el proceso inverso.

Existe el siguiente documento: Manual Transfer Utility, Installation and User Guide, Version 1.1.2. Todo lo que necesitamos de manera preliminar lo obtenemos de este documento, la siguiente imagen que se encuentra en la guía de instalación sintetiza el concepto de MTU.

MTU

Necesitamos un equipo conectado a la red iSCSI (yo utilize mi laptop) con la aplicación reptool instalada para iniciarla mediante la interfaz gráfica accediendo al portal de administración del storage. En el volumen sobre el que vamos a trabajar elegimos replicar ahora y escogemos que utilizaremos la replicación manual y empezara la aplicación que validara que tengamos el software instalado.

En la imagen anterior vemos que la transferencia ha terminado y observamos el archivo que se creo en nuestro disco duro externo listo para ser transportado a donde se encuentra el otro grupo.

Ahora nos enfocamos en el copiado de la información en el grupo secundario mediante la opción de linea de comandos, aquí sirve introducir una aclaración en base a la experiencia que se tuvo reptool ocupa gran capacidad del proceso de un equipo por lo cual si tienes un equipo con un Pentium 4 corriendo WindowsXP lo mas seguro es que la utilización de tu CPU llegue al cien por ciento, por eso decidimos hacerlo mediante linea de comandos para evitar bloqueos en la interfaz web.

En la imagen que se muestra a continuación vemos el menú de opciones del modo de linea de comandos de reptool:

Opción 0: Salir de reptool.
Opción 1: Copiar datos del volumen a replicar a un archivo transferencia.
Opción 2: Cargar un archivo de transferencia para efectuar la replica.
Opción 3: Recolectar información de diagnostico.

Escogemos la opción numero dos donde se nos presentara la replica sobre la que estamos trabajando, previamente habremos de dar permisos a la dirección IP asociada al equipo desde donde descargaremos la información para que nos permita acceder al grupo (en modo gráfico esto lo hace la aplicación automáticamente), por ultimo nos pide poner la ruta completa donde esta el archivo de transferencia la cual en este caso se encuentra en un disco duro externo, vemos un resumen de la transferencia así como la instrucción para salir del programa.

En esta imagen el avance de la información copiada así como la velocidad de transmisión, el cual es el paso intermedio de la imagen anterior.

Una vez realizado todo lo anterior se tiene que aceptar la transferencia del archivo para que los grupos sincronicen la replica y la acepten como tal.

Depende de la actividad que tenga el volumen mientras la replica se este realizando o el tiempo que tardemos en crear la primera replica de forma manual podemos tener un tamaño variable cuando esta termine y el volumen, en mi caso en un par de días que tardo el traslado de un lugar a otro al crear una segunda replica que en este caso ya es incremental hubo una diferencia aproximada de 800 MB debido a que realizaron tareas de escritura, sin embargo esta información ya es fácil de enviar por el enlace en una noche.

512 Kbit/s = 0.064 GB/s
800 MB / 0.064 MB/s = 12,500 s = 3.4722 horas.

El calculo anterior es teórico, la realidad es que se tardo cinco horas y unos pocos minutos mas, en la imagen siguiente se puede apreciar el estado de las dos replicas completadas, la realizada manualmente y la otra usando el enlace.

Por el momento es todo aquel día terminamos y nos fuimos de turistas, seguiremos informando.

Mas información:

110-0122-EN-R3_MTU_UserGuide
110-6027-EN-R1_Group_Admin_V5.0
110-6025-SP-R1_RNotes_V5.0
TR1052-Replication
So you bought an EqualLogic SAN, now what… part one

Instalando VMware ESXi 4.1.

Vamos a instalar en un servidor Power Edge Dell R910, el sistema de virtualización de VMware ESXi 4.1, las características de este equipo lo hacen idóneo para este tipo de sistemas ya que son servidores con mucha capacidad tanto de almacenamiento, procesamiento y desempeño.

Parte frontal del equipo donde se aprecian los tres discos duros que tiene, estos mismos están en un RAID 5 manejados por una controladora HPERC 700.

Power Edge R910

Con la parte superior descubierta donde se identifican los zócalos de los CPU y módulos de memoria, este equipo en particular cuenta con 128 GB de memoria RAM y un par de procesadores Intel Xeon X7560.

Cuatro fuentes de poder.

Internal DUAL SD module, mas información acerca de este modulo aquí: SD module.

Cuatro NIC integradas.

Dos NIC mediante una tarjeta PCI.

Como podemos ver es un gran equipo, capaz e interesante para realizar experimentos con VMware.

Creando maquinas virtuales con Red Hat.

Vamos a crear una máquina virtual con Red Hat, instalaremos como prueba una versión de AsteriskNow, subiremos la imagen ISO a nuestro servidor NFS para que sea visible desde nuestros Hypervisors, posteriormente desde nuestro manager realizaremos el procedimiento de asignación de recursos como son cuanta memoria RAM le asignaremos, cantidad de CPU, interfaces de red, espacio en disco y en que Hypervisor iniciara de manera predeterminada.

Hay dos formas de subir la imagen ISO a nuestro almacén NFS, una es mediante la herramienta ISO Uploader y la otra es colocar directamente la imagen en el servidor y posteriormente otorgarle los permisos necesarios para su ejecución.

Una vez que tenemos la imagen, ingresamos a la consola del manager para crear la máquina virtual.

Escogemos el protocolo Spice para manipular la máquina virtual, posteriormente se le activara como en todos los Linux el acceso por SSH para tener una conexión de manera remota.

Después de introducir los datos principales nos solicitara configurar interfaces de red y discos duros virtuales.

Especificamos el nombre de la interfaz, la red a la que se asignara y el tipo de controlador a usar en el dispositivo.

Especificamos el tamaño del disco duro, el storage en donde residirá este disco, el tipo de disco (sistema o datos), que tipo de disco duro sera así como el formato por ultimo especificamos si el sistema operativo iniciara desde este disco.

Realizado esto nos pregunta si requerimos agregar algún componente adicional.

El orden de arranque se coloca aquí, normalmente el primer dispositivo tiene que ser el disco duro, seguido de una unidad de CD con disco (imagen ISO) para poder iniciar la instalación de la imagen previamente colocada en nuestro almacén NFS.

Damos inicio a la carga de nuestra máquina virtual.

Cargando los componentes.

La instalación es igual a que si estuviéramos realizando la instalación en un equipo físico, el sistema operativo reconocera el disco duro asignado así como la interfaz de red.

Realizando las particiones del disco duro, en este caso dejamos las opciones por defecto.

Ajuste del huso horario.

Instalación del sistema con todos sus paquetes.

Finalización de la instalación y el obligatorio reinicio del sistema, en esta parte debemos extraer el CD de la máquina virtual mediante el menú contextual.

Sistema en linea.

Pagina de administración de AsteriskNow visible en la red local.

SAN EqualLogic

Hace pocos meses llego una SAN EqualLogic PS6000XV con 16 discos de 300 GB cada uno, el cual tiene como función principal interactuar con sistemas de virtualización como Red Hat Enterprise Virtualization y Citrix XenServer.

Estos equipos son increíbles dejando un lado el echo de que son muy complejos la interfaz para administrarlos es muy sencilla una vez que entiendes los conceptos de volúmenes, arreglos y la tecnología de iSCSI de manera general.

Aquí se muestra la SAN montada en el rack debajo de un servidor PowerEdge R610.

En su parte posterior se observan las controladoras del equipo con un total de ocho tarjetas de red, aunque realmente solo una es la controladora activa y la otra espera en caso de cualquier percance con la primera, cada controladora tiene conectados un par de sus cables de red (cat6) a un switch diferente considerando el factor de disponibilidad, también se aprecian las fuentes de poder conectadas cada una de ellas en circuitos independientes en caso de falla de corriente eléctrica en alguno de ellos.

La parte de la conectividad se compone de una par de switch PowerConnect 5424 que están dedicados al trafico iSCSI, como mencionamos anteriormente en la imagen anterior la mitad de las conexiones de la SAN se encuentran en un switch y la otra mitad en el otro, hacemos lo mismo para los servidores que accederán a los volúmenes creados posteriormente en la SAN mediante un bond de tarjetas de red, una interfaz se conecta a un switch y la otra de igual manera de esta manera aunque falle uno de los switch tendremos acceso a los recursos de la SAN.

Los cables azules conectan ambos switch (imaginemos el cascadeo tradicional entre estos dispositivos) en cada equipo se reservan cuatro puertos para realizar esta conexión. A cada puerto elegido se le modifican ciertos parámetros que los hacen diferentes a los otros principalmente la opción de Jumbo Frame y de que su función es solamente comunicarse con los puertos del otro switch.

Una visión general de la SAN en conjunto de los servidores que tienen la función de hypervisor con Xen y KVM.

La pantalla de administración de la SAN muestra una gráfica con la capacidad del grupo que se compone de: espacio libre, utilizado y el reservado para snapshots, así como una relación de los volúmenes existentes.

Trataremos de seguir escribiendo algo acerca de este equipo y otras experiencias con la virtualización.

Protocolo SPICE para escritorios virtuales en Linux.

Aprovechando que seguimos en pruebas con RHEV, pasaremos a checar un punto especifico de esta solución que son los escritorios virtuales, segun nos quieren vender la idea de que con solo una PC ligerita en cuanto a recursos y un navegador web podemos tener acceso a ‘n’ escritorios remotos usando el protocolo Spice que a simple vista tiene cosas bastante interesentas en cuanto a desempeño, facilidad de uso al interactuar con el escritorio virtual y poco costo con respecto al uso de ancho de banda.

Si bien esta aplicación no tiene ningún problema para instalarse en IE mediante un ActiveX, la cosa cambia con respecto a Firefox en Linux.

Aquí existen dos caminos si contamos con una suscripción de RedHat obviamente tenemos acceso a actualizar nuestro sistema y todo el contenido que sigue a continuación en teoria (no cuento con una suscripción) se reduciría al siguiente comando: yum install spice-xpi

En CentOS existe el paquete sin embargo los paquetes de los cuales depende no, al menos no los encuentras en los repositorios predeterminados, pero con un tiempo de busqueda enrpm.pbone.net es facil hallarlos a todos.

El paquete en cuestión se llama spice-xpi, el cual depende de qspice-client y este a su vez depende de unos paquetes mas, como podemos ver en las dependencias faltantes que se muestran a continuación al tratar de instalar estos paquetes.

1
2
3
4
5
6
[root@localhost gabriel]# rpm -ivh spice-xpi-2.2-1.el5_5.i386.rpm
warning: spice-xpi-2.2-1.el5_5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
error: Failed dependencies:
        liblog4cpp.so.4 is needed by spice-xpi-2.2-1.el5_5.i386
        log4cpp is needed by spice-xpi-2.2-1.el5_5.i386
        qspice-client is needed by spice-xpi-2.2-1.el5_5.i386
7
8
9
10
11
12
13
14
15
16
[root@localhost gabriel]# rpm -ivh qspice-client-0.3.0-2.el5_5.i386.rpm
warning: qspice-client-0.3.0-2.el5_5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
error: Failed dependencies:
        libboost_program_options.so.2 is needed by qspice-client-0.3.0-2.el5_5.i386
        libboost_thread.so.2 is needed by qspice-client-0.3.0-2.el5_5.i386
        libcelt051.so.0 is needed by qspice-client-0.3.0-2.el5_5.i386
        liblog4cpp.so.4 is needed by qspice-client-0.3.0-2.el5_5.i386
        libqavcodec.so.51 is needed by qspice-client-0.3.0-2.el5_5.i386
        libqavutil.so.49 is needed by qspice-client-0.3.0-2.el5_5.i386
        libqcairo.so.2 is needed by qspice-client-0.3.0-2.el5_5.i386

Por lo tanto los paquetes necesarios son los siguientes:

1
2
3
4
5
6
7
boost-1.33.1-10.el5.i386.rpm
celt051-0.5.1.3-0.el5.i386.rpm
log4cpp-1.0-9.el5.i386.rpm
qcairo-1.8.7.1-3.el5.i386.rpm
qpixman-0.13.3-4.el5.i386.rpm
qspice-client-0.3.0-2.el5_5.i386.rpm
spice-xpi-2.2-1.el5_5.i386.rpm

Después de instalarlos volvemos a ejecutar nuestro paquete para agregar el plugin a Firefox.

1
2
3
4
[root@localhost gabriel]# rpm -ivh spice-xpi-2.2-1.el5_5.i386.rpm
warning: spice-xpi-2.2-1.el5_5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:spice-xpi              ########################################### [100%]

Verificamos que el plugin se haya instalado correctamente en Firefox.

Debemos desactivar SELinux o ponerlo en modo permisivo de lo contrario no dejara ejecutar Spice, obteniendo en mensaje como este:

1
2
3
Jul 19 16:47:40 localhost setroubleshoot: SELinux is preventing spicec
from loading /usr/lib/libqavcodec.so.51.71.0 which requires text relocation.
For complete SELinux messages. run sealert -l 1b920bdf-119e-46fb-b812-894ca58fc943

Volvemos a ejecutar nuestra aplicación para acceder con nuestro respectivo usuario.

De esta manera ya podremos visualizar y trabajar con nuestro escritorio virtual que en este caso es un Windows XP.

Esto funciona para distribuciones Linux basadas en RPMS (Red Hat 5.5, Fedora 12, CentOS 5.4), es asignatura pendiente instalar este plugin de Firefox para Debian o Arch, que son las distribuciones que actualmente uso de manera predeterminada.

Mas información:

http://www.redhat.com/about/news/prarchive/2009/spice-os.html
http://www.spice-space.org/
http://www.redhat.com/virtualization/rhev/desktop/