XenServer: XenMotion

  XenMotion en XenServer permite la migración de máquinas virtuales en vivo entre distintos hosts. Esto es uno de los requerimientos básicos de cualquier entorno de virtualización empresarial.

MA icono manual(ACCEDE AQUÍ AL INDICE DEL MANUAL DE CITRIX XENSERVER)

CONTENIDO DE LA LECCION

  • Caso práctico
  • ¿Qué es XenMotion? 
  • ¿Qué es Storage XenMotion?
  • Ejecución de XenMotion desde XenCenter
  • Ejecución de XenMotion con el comando xe
  • Ejecución de Storage XenMotion desde XenCenter

 

Caso práctico

   L023 Formación dispone de tres hosts XenServer (l023xse01, l023xse02 y l023xse03) para ejecutar las máquinas virtuales de los cursos que se imparten en sus aulas. El dimensionamiento de la infraestructura sólo requería dos hosts de sus características. La razón de que se hayan instalado tres no es otra que prevenir que un fallo hardware o la necesidad de realizar alguna tarea de mantenimiento en alguno de los hosts impida el normal desarrollo de los cursos.

   En esta lección se practicará y testeará XenMotion y Storage XenMotion para familiarizarnos con su uso.

 

Miniacademia L023 Formación XenServer XenMotion

 

¿Qué es XenMotion?

   XenMotion permite mover máquinas virtuales entre hosts de un resource pool sin pérdida de servicio apreciable. En este caso, sus VDI asociados están en un shared storage (almacenamiento compartido) del resource pool.

   De esta manera, se pueden realizar labores de mantenimiento en hosts de un resource pool, cuando sea necesario que ninguna máquina virtual esté en ejecución en el host sobre el que se van a realizar dichas tareas. XenMotion, además, sirve de motor para otras funcionalidades que necesitan de esta migración de máquinas virtuales entre hosts, como por ejemplo High Availability (como veremos en otra lección).

XenServer XenMotion

 

¿Qué es Storage XenMotion?

   Storage XenMotion permite mover máquinas virtuales entre hosts, aunque no tengan un almacenamiento compartido. Es decir, se pueden mover las máquinas virtuales entre resource pools distintos o incluso a hosts que no pertenecen a un resource pool.

   Si al ejecutar Storage XenMotion hay pools con High Availability configurada, esta debe deshabilitarse antes de proceder a la migración de máquinas virtuales.

Ejecución de XenMotion desde XenCenter

   Para migrar una máquina virtual con XenMotion, debemos seleccionarla en el panel izquierdo de XenCenter y en su menú contextual seleccionar “Migrate to Server” –> y elegir el servidor del resource pool al que la queremos mover. También se puede utilizar la opción de asistente “Migrate VM wizard…”, que ofrece más opciones, pero que veremos más abajo en “Ejecución de Storage XenMotion desde XenCenter”.

 

   También es posible arrastrar y soltar la máquina virtual hacia otro servidor en XenCenter, como puede verse en el siguiente vídeo:

Ejecución de XenMotion con el comando xe

   Para ejecutar XenMotion por línea de comandos se debe utilizar xe vm-migrate. Como parámetros se deben especificar el host de destino (host) y la máquina virtual a migrar (vm). También se puede especificar el parámetro “live”. Hay dos opciones:

  • live=true: la migración se realizará con XenMotion, con la máquina virtual “en vivo”.
  • live=false: la máquina virtual se suspenderá, migrará, y reactivará una vez terminada la migración. Esta es la opción por defecto.

   Los pasos necesarios para migrar una máquina virtual con XenMotion y monitorizar la migración serían:

1.- Conectar como root (o un usuario con los privilegios necesarios) al master del pool (en este caso l023xse01).

2.- Para migrar la máquina virtual VIRT002 al host l023xse02 haciendo uso del comando xe se ejecutaría:

xe vm-migrate host=l023xse02 vm=VIRT002 live=true

3.- Al ejecutar la migración desde línea de comandos, su progreso no aparece en XenCenter. En su lugar, si fuese necesario monitorizar el proceso, se puede utilizar el comando xe task-list, desde otra sesión sobre el mismo host:

[root@l023xse01 ~]# xe task-list

Resultado:
uuid ( RO)                : c3d3f845-a8a9-af26-e845-cb2cf7ab9862
name-label ( RO): VM.pool_migrate
name-description ( RO):
status ( RO): pending
progress ( RO): 0.000

 

   En la salida se puede seguir el porcentaje del progreso en el valor “progress”, cuyo dominio está entre 0 (sin iniciar) y 1 (finalizado).

Ejecución de Storage XenMotion desde XenCenter

  Para ejecutar Storage XenMotion desde XenCenter, se debe seleccionar la máquina virtual que se deba migrar y en su menú contextual seleccionar “Migrate VM wizard…”. Esto abre el asistente “Migrate VM”.

 

   Para probar Storage XenMotion vamos a migrar una máquina virtual (que actualmente está en el host l023xse03) del resource pool de producción al servidor de test (l023xse04). Los pasos necesarios a través del asistente “Migrate VM” son:

1.- Ventana “Select the destination pool or standalone server”: en el desplegable “Destination” se selecciona el pool o host al que se quiere migrar la máquina. Deberá estar conectado en XenCenter.

   Clic en “Next”.

2.- Ventana “Configure storage for the migrated VMs”: permite seleccionar el storage repository del host de destino en el que se ubicará cada VDI de la máquina virtual migrada.

   Clic en “Next”.

3.- Ventana “Configure networking for de migrated VMs”: permite especificar a qué objeto network del host de destino se quiere conectar cada interfaz de red virtual de la máquina virtual migrada.

   Clic en “Next”.

4.- Ventana “Configure storage live migration settings”: se debe elegir la red que se utilizará en el pool o host de destino para la migración de los VDIs de la máquina virtual migrada. Se recomienda no utilizar un objeto network dedicado a la gestión de los servidores o al tráfico de red de máquinas virtuales.

   Clic en “Next”.

5.- Ventana “Review settings and begin live migration”: se presenta un resumen de las opciones configuradas en el asistente para realizar la migración. Se debe revisar que todo sea correcto.

   Clic en “Finish”.

   Una vez terminado el proceso de migración, la máquina virtual se habrá movido al pool o host de destino.

MA icono siguiente Siguiente: Lección 11 – XenServer: vApps – appliances