Administrar repositorios de almacenamiento de información

Esta sección trata de crear tipos de repositorio de almacenamiento y ponerlos a disposición del servidor Citrix Hypervisor. También cubre varias operaciones necesarias en la administración continua de repositorios de almacenamiento (SRs), incluida la migración de VDI en vivo.

Crear repositorios de almacenamiento

En esta sección se explica cómo crear repositorios de almacenamiento (SRs) de diferentes tipos y ponerlos a disposición del servidor Citrix Hypervisor. Los ejemplos proporcionados cubren la creación de SRs utilizando la CLI xe. Para obtener más información sobre el uso del asistente Nuevo repositorio de almacenamiento para agregar SRs mediante XenCenter, consulte la ayuda de XenCenter.

Nota:

SRs locales de tipolvm y sólo seext3 pueden crear utilizando la CLI xe. Después de la creación, puede administrar todos los tipos de SR mediante XenCenter o la CLI xe.

Existen dos pasos básicos para crear un repositorio de almacenamiento de información para su uso en un host mediante la CLI:

  1. Sondee el tipo SR para determinar los valores de los parámetros necesarios.

  2. Cree el SR para inicializar el objeto SR y los objetos PBD asociados, conecte los PBD y active el SR.

Estos pasos difieren en detalle en función del tipo de SR que se está creando. En todos los ejemplos, elsr-create comando devuelve el UUID del SR creado si tiene éxito.

Los SRs pueden destruirse cuando ya no se utilizan para liberar el dispositivo físico. Los SRs también pueden olvidarse de separar el SR de un servidor Citrix Hypervisor y adjuntarlo a otro. Para obtener más información, consulte Eliminación de SRs en la sección siguiente.

Sondear un SR

Elsr-probe comando se puede utilizar de las siguientes maneras:

  • Para identificar parámetros desconocidos para su uso en la creación de un SR
  • Para devolver una lista de SRs existentes

En ambos casossr-probe funciona especificando un tipo SR y uno o másdevice-config parámetros para ese tipo SR. Si se proporciona un conjunto incompleto de parámetros, elsr-probe comando devuelve un mensaje de error que indica que faltan parámetros y las posibles opciones para los parámetros que faltan. Cuando se suministra un conjunto completo de parámetros, se devuelve una lista de SRs existentes. Todasr-probe la salida se devuelve como XML.

Por ejemplo, se puede probar un destino iSCSI conocido especificando su nombre o dirección IP. Se devuelve el conjunto de IQN disponibles en el destino:

    xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10

    Error code: SR_BACKEND_FAILURE_96
    Error parameters: , The request is missing or has an incorrect target IQN parameter, \
    <?xml version="1.0" ?>
    <iscsi-target-iqns>
        <TGT>
            <Index>
                0
            </Index>
            <IPAddress>
                192.168.1.10
            </IPAddress>
            <TargetIQN>
                iqn.192.168.1.10:filer1
            </TargetIQN>
        </TGT>
    </iscsi-target-iqns>

Volver a sondear el mismo destino y especificar tanto el nombre/dirección IP como el IQN deseado devuelve el conjunto deSCSIids (LUNs) disponibles en el objetivo/IQN.

    xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10  \
    device-config:targetIQN=iqn.192.168.1.10:filer1

    Error code: SR_BACKEND_FAILURE_107
    Error parameters: , The SCSIid parameter is missing or incorrect, \
    <?xml version="1.0" ?>
    <iscsi-target>
        <LUN>
            <vendor>
                IET
            </vendor>
            <LUNid>
                0
            </LUNid>
            <size>
                42949672960
            </size>
            <SCSIid>
                149455400000000000000000002000000b70200000f000000
            </SCSIid>
        </LUN>
    </iscsi-target>

El sondeo del mismo destino y el suministro de los tres parámetros devuelve una lista de SRs que existen en el LUN, en su caso.

    xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10  \
    device-config:targetIQN=192.168.1.10:filer1 \
    device-config:SCSIid=149455400000000000000000002000000b70200000f000000

    <?xml version="1.0" ?>
    <SRlist>
        <SR>
            <UUID>
                3f6e1ebd-8687-0315-f9d3-b02ab3adc4a6
            </UUID>
            <Devlist>
                /dev/disk/by-id/scsi-149455400000000000000000002000000b70200000f000000
            </Devlist>
        </SR>
    </SRlist>

Se pueden sondear los siguientes parámetros para cada tipo SR:

Tipo SR Losdevice-config parámetros, en orden de dependencia ¿Se puede sondear? ¿Necesario parasr-create?
lvmoiscsi target No
  chapuser No No
  chappassword No No
  targetIQN
  SCSIid
lvmohba SCSIid
NetApp target No
  username No
  password No
  chapuser No No
  chappassword No No
  aggregate No (véase la nota 1)
  FlexVols No No
  allocation No No
  asis No No
nfs server No
  serverpath
lvm device No
ext device No
EqualLogic target No
  username No
  password No
  chapuser No No
  chappassword No No
  storagepool No (véase la nota 2)

Notas:

  • El sondeo agregado solo es posible a lasr-create vez.
  • El sondeo del grupo de almacenamiento solo es posible a lasr-create vez.

Eliminar SRs

Un repositorio de almacenamiento (SR) se puede eliminar temporal o permanentemente.

Desconectar: rompe la asociación entre el dispositivo de almacenamiento y el pool o host (PBD Unplug). El SR (y sus VDI) se vuelve inaccesible. Se conservan el contenido de los VDI y la metainformación utilizada por las VM para acceder a los VDI. La separación se puede utilizar cuando se desconecta temporalmente una SR, por ejemplo, para el mantenimiento. Un SR separado se puede volver a conectar más tarde.

Olvidar: conserva el contenido del SR en el disco físico, pero la información que conecta una VM a sus VDI se elimina permanentemente. Por ejemplo, le permite volver a conectar el SR a otro servidor Citrix Hypervisor, sin quitar ninguno de los contenidos SR.

Destruir: Elimina el contenido del SR del disco físico.

Para Destroy or Forget, el PBD conectado al SR debe desconectarse del host.

  1. Desenchufe el PBD para separar el SR del servidor Citrix Hypervisor correspondiente:

    xe pbd-unplug uuid=pbd_uuid
    
  2. Utilice elsr-destroy comando para eliminar un SR. El comando destruye el SR, elimina el SR y el PBD correspondiente de la base de datos del servidor Citrix Hypervisor y elimina el contenido SR del disco físico:

    xe sr-destroy uuid=sr_uuid
    
  3. Utilice elsr-forget comando para olvidar un SR. El comando elimina el SR y el PBD correspondiente de la base de datos del servidor Citrix Hypervisor, pero deja intacto el contenido SR real en el medio físico:

    xe sr-forget uuid=sr_uuid
    

Nota:

Puede tomar algún tiempo para que el objeto de software correspondiente al SR sea recolectado como basura.

Introducir una SR

Para volver a introducir una SR olvidada previamente, cree un PBD. Conecte manualmente el PBD a los servidores Citrix Hypervisor adecuados para activar el SR.

En el ejemplo siguiente se introduce un SR de tipolvmoiscsi.

  1. Sondee el SR existente para determinar su UUID:

    xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10 \
        device-config:targetIQN=192.168.1.10:filer1 \
        device-config:SCSIid=149455400000000000000000002000000b70200000f000000
    
  2. Introduzca el SR UUID existente devuelto por elsr-probe comando. Se devuelve el UUID del nuevo SR:

    xe sr-introduce content-type=user name-label="Example Shared LVM over iSCSI SR" \
        shared=true uuid=valid_sr_uuid type=lvmoiscsi
    
  3. Cree un PBD para acompañar al SR. Se devuelve el UUID del nuevo PBD:

    xe pbd-create type=lvmoiscsi host-uuid=valid_uuid sr-uuid=valid_sr_uuid \
        device-config:target=192.168.0.1 \
        device-config:targetIQN=192.168.1.10:filer1 \
        device-config:SCSIid=149455400000000000000000002000000b70200000f000000
    
  4. Conecte el PBD para conectar el SR:

    xe pbd-plug uuid=pbd_uuid
    
  5. Verifique el estado del enchufe PBD. Si tiene éxito, lacurrently-attached propiedad es verdadera:

    xe pbd-list sr-uuid=sr_uuid
    

Nota:

Realice los pasos 3 a 5 para cada servidor del fondo de recursos. Estos pasos también se pueden realizar mediante la función Reparar repositorio de almacenamiento de XenCenter.

Expansión de LUN en vivo

Para cumplir con los requisitos de capacidad, es posible que deba agregar capacidad al arreglo de discos de almacenamiento para aumentar el tamaño del LUN aprovisionado en el servidor Citrix Hypervisor. La expansión de LUN en vivo le permite aumentar el tamaño del LUN sin ningún tiempo de inactividad de VM.

Después de agregar más capacidad a su arreglo de discos de almacenamiento, escriba,

xe sr-scan sr-uuid=sr_uuid

Este comando vuelve a escanear el SR y cualquier capacidad adicional se agrega y pone a disposición.

Esta operación también está disponible en XenCenter. Select la SR que desea cambiar el tamaño y, a continuación, haga clic en Volver a analizar. Para obtener más información, presione F1 para mostrar la ayuda de XenCenter.

Advertencias:

  • No es posible reducir o truncar los LUNs. La reducción del tamaño del LUN en el arreglo de discos de almacenamiento de información puede provocar la pérdida de datos.

Migración de VDI en vivo

La migración de VDI en vivo permite al administrador reubicar la imagen de disco virtual (VDI) de VM sin apagar la VM. Esta función permite operaciones administrativas como:

  • Mover una máquina virtual del almacenamiento local barato a un almacenamiento rápido, resistente y respaldado por arreglo de discos.
  • Mover una máquina virtual de un entorno de desarrollo a producción.
  • Desplazarse entre niveles de almacenamiento cuando una máquina virtual está limitada por la capacidad de almacenamiento.
  • Realizar actualizaciones de arreglos de discos de almacenamiento.

Limitaciones y advertencias

La migración de VDI en vivo está sujeta a las siguientes limitaciones y advertencias

  • Debe haber suficiente espacio en disco disponible en el repositorio de destino.

Para mover discos virtuales mediante XenCenter

  1. En el panel Recursos, seleccione el SR donde está almacenado el disco virtual y, a continuación, haga clic en la ficha Almacenamiento.

  2. En la lista Discos virtuales, seleccione el disco virtual que desea mover y, a continuación, haga clic en Mover.

  3. En el cuadro de diálogo Mover disco virtual, seleccione el SR de destino al que desea mover el VDI.

    Nota:

    Asegúrese de que el SR tenga suficiente espacio para otro disco virtual: el espacio disponible se muestra en la lista de SRs disponibles.

  4. Haga clic en Mover para mover el disco virtual.

Para obtener referencia a xe CLI, consulte [vdi-pool-migrate] (/es-es/citrix-hypervisor/command-line-interface.html #vdi -pool-migrate).

Migración de VDI en frío entre SRs (migración sin conexión)

Los VDI asociados a una VM se pueden copiar de un SR a otro para adaptarse a los requisitos de mantenimiento o a las configuraciones de almacenamiento de información en niveles. XenCenter le permite copiar una VM y todos sus VDI en el mismo SR o en otro SR. Se puede utilizar una combinación de XenCenter y Xe CLI para copiar VDI individuales.

Para obtener referencia a xe CLI, consulte [vm-migrate] (/es-es/citrix-hypervisor/command-line-interface.html #vm -migrate).

Copie todos los VDI de una VM en una SR diferente

La función XenCenter Copy VM crea copias de todos los VDI para una VM seleccionada en la misma SR o en otra SR. La máquina virtual y los VDI de origen no se ven afectados de forma predeterminada. Para mover la máquina virtual a la SR seleccionada en lugar de crear una copia, seleccione la opción Quitar máquina virtual original en el cuadro de diálogo Copiar máquina virtual.

  1. Apague la VM.
  2. Dentro de XenCenter, seleccione la VM y, a continuación, seleccione la opción VM > CopyVM.
  3. Select el SR de destino deseado.

Copiar VDI individuales en una SR diferente

Se puede utilizar una combinación de Xe CLI y XenCenter para copiar VDI individuales entre SRs.

  1. Apague la VM.

  2. Utilice la CLI xe para identificar los UUID de los VDI que se van a mover. Si la máquina virtual tiene una unidad de DVD,vdi-uuid se muestra comonot in database y se puede ignorar.

    xe vbd-list vm-uuid=valid_vm_uuid
    

    Nota:

    Elvbd-list comando muestra los UUID de VBD y VDI. Asegúrese de registrar los UUID de VDI en lugar de los UUID de VBD.

  3. En XenCenter, seleccione la ficha Almacenamiento de VM. Para cada VDI que desee mover, seleccione el VDI y haga clic en el botón Desenlazar . Este paso también se puede hacer usando elvbd-destroy comando.

    Nota:

    Si utiliza elvbd-destroy comando para separar los UUID de VDI, compruebe primero si el VBD tiene el parámetroother-config:owner establecido entrue . Establezca este parámetro enfalse. La emisión delvbd-destroy comando conother-config:owner=true también destruye el VDI asociado.

  4. Utilice elvdi-copy comando para copiar cada uno de los VDI de VM que se van a mover al SR deseado.

    xe vdi-copy uuid=valid_vdi_uuid sr-uuid=valid_sr_uuid
    
  5. En XenCenter, seleccione la ficha Almacenamiento de VM. Haga clic en el botón Adjuntar y seleccione los VDI de la nueva SR. Este paso también se puede hacer usando elvbd-create comando.

  6. Para eliminar los VDI originales, seleccione la ficha Almacenamiento de la SR original en XenCenter. Los VDI originales se muestran con un valor vacío para el campo VM. Utilice el botón Eliminar para eliminar el VDI.

Convertir SRs de canal de fibra local en SRs compartidos

Utilice la CLI xe y la función Repair Storage Repair Repository de XenCenter para convertir un FC SR local en un FC SR compartido:

  1. Actualice todos los hosts del grupo de recursos a Citrix Hypervisor 8.0.

  2. Asegúrese de que todos los hosts del grupo tengan el LUN del SR zonificado adecuadamente. ConsulteSondear un SRpara obtener detalles sobre el uso delsr-probecomando para comprobar que el LUN está presente en cada host.

  3. Convertir el SR a compartido:

    xe sr-param-set shared=true uuid=local_fc_sr
    
  4. El SR se mueve del nivel de host al nivel de grupo en XenCenter, lo que indica que ahora está compartido. El SR está marcado con un signo de exclamación rojo para mostrar que actualmente no está conectado a todos los hosts del grupo.

  5. Select el SR y, a continuación, seleccione la opciónRepositorio de almacenamiento de > reparación de almacenamiento.

  6. Haga clic en Reparar para crear y conectar un PBD para cada host del grupo.

Recuperar espacio para almacenamiento basado en bloques en el arreglo de discos de respaldo mediante descarte

Puede utilizar la recuperación de espacio para liberar bloques no utilizados en un LUN de aprovisionamiento limitado. Después de liberar el espacio, el arreglo de almacenamiento puede volver a utilizar este espacio recuperado.

Nota:

La recuperación de espacio solo está disponible en algunos tipos de arreglos de almacenamiento. Para determinar si el arreglo de discos admite esta función y si necesita una configuración específica, consulte laLista de compatibilidad de hardwaredocumentación específica del proveedor de almacenamiento de información.

Para recuperar el espacio con XenCenter:

  1. Select la vista Infraestructura y, a continuación, elija el servidor o grupo conectado al SR.

  2. Haga clic en la ficha Almacenamiento.

  3. Select el SR de la lista y haga clic en Recuperar espacio liberado.

  4. Haga clic en para confirmar la operación.

  5. Haga clic en Notificaciones y, a continuación, en Eventos para ver el estado de la operación.

Para obtener más información, presioneF1XenCenter para acceder a la Ayuda en línea.

Notas:

  • Esta operación sólo está disponible en XenCenter.
  • La operación sólo está disponible para SRs basados en LVM que se basan en LUNs aprovisionados con poco aprovisionamiento en el arreglo de discos. Las SSD locales también pueden beneficiarse de la recuperación de espacio.
  • La recuperación de espacio no es necesaria para SRs basados en archivos, como NFS y Ext3. El botón Recuperar espacio liberado no está disponible en XenCenter para estos tipos de SR.
  • La recuperación de espacio es una operación intensiva y puede provocar una degradación en el rendimiento del arreglo de discos de almacenamiento. Por lo tanto, sólo inicie esta operación cuando se requiera la recuperación de espacio en la matriz. Le recomendamos que programe este trabajo fuera de las horas de demanda máxima del arreglo de discos.

Recuperar espacio automáticamente al eliminar instantáneas

Al eliminar instantáneas con Citrix Hypervisor, el espacio asignado en SRs basados en LVM se recupera automáticamente y no es necesario reiniciar la VM. Esta operación se conoce como ‘Online Coalescing’.

La fusión en línea solo se aplica a SRs basados en LVM (LVM, LVMOiSCSI y LVMOhBA). No se aplica a los SRs EXT o NFS, cuyo comportamiento permanece sin cambios. En algunos casos, es posible que la recuperación automática de espacio no pueda continuar. Le recomendamos que utilice la herramienta Coalesce Off-Line en estos escenarios:

  • En condiciones en las que un rendimiento de E/S de VM es considerable
  • En condiciones en las que el espacio no se recupera después de un período

Notas:

  • La ejecución de la herramienta Off Line Coalesce incurre en cierto tiempo de inactividad para la VM, debido a las operaciones de suspensión/reanudación realizadas.
  • Antes de ejecutar la herramienta, elimine las instantáneas y clones que ya no desee. La herramienta recupera tanto espacio como sea posible teniendo en cuenta las snapshots/clones restantes. Si desea recuperar todo el espacio, elimine todas las instantáneas y clones.
  • Los discos de VM deben estar en almacenamiento compartido o local para un único host. Las máquinas virtuales con discos de ambos tipos de almacenamiento no se pueden fusionar.

Recuperar espacio mediante la herramienta de fusión fuera de línea

Nota:

La fusión en línea solo se aplica a SRs basados en LVM (LVM, LVMOiSCSI y LVMOhBA), no se aplica a SRs EXT o NFS, cuyo comportamiento permanece sin cambios.

Habilite los objetos ocultos con XenCenter. Haga clic en Ver > objetosocultos. En el panel Recurso, seleccione la máquina virtual para la que desea obtener el UUID. El UUID se muestra en la ficha General .

En el panel Recurso, seleccione el maestro del grupo de recursos (el primer host de la lista. La ficha General muestra el UUID. Si no está utilizando un grupo de recursos, seleccione el host de la máquina virtual.

  1. Abra una consola en el host y ejecute el siguiente comando:

    xe host-call-plugin host-uuid=host-UUID \
        plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=VM-UUID
    

    Por ejemplo, si el UUID de VM es9bad4022-2c2d-dee6-abf5-1b6195b1dad5 y el UUID de host esb8722062-de95-4d95-9baa-a5fe343898ea , ejecute el siguiente comando:

    xe host-call-plugin host-uuid=b8722062-de95-4d95-9baa-a5fe343898ea \
        plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=9bad4022-2c2d-dee6-abf5-1b6195b1dad5
    
  2. Este comando suspende la VM (a menos que ya esté apagada), inicia el proceso de recuperación de espacio y, a continuación, reanuda la VM.

Notas:

Le recomendamos que cierre o suspenda la máquina virtual manualmente antes de ejecutar la herramienta de coalesce fuera de línea. Puede apagar o suspender la VM mediante XenCenter o la CLI de Citrix Hypervisor. Si ejecuta la herramienta de fusión en una máquina virtual en ejecución, la herramienta suspende automáticamente la máquina virtual, realiza las operaciones de fusión de VDI necesarias y reanuda la máquina virtual.

Si las imágenes de disco virtual (VDI) que se van a fusionar se encuentran en almacenamiento compartido, debe ejecutar la herramienta de fusión fuera de línea en el maestro del grupo.

Si los VDI que se van a fusionar están en almacenamiento local, ejecute la herramienta de fusión fuera de línea en el servidor al que está conectado el almacenamiento local.

Ajustar el programador de E/S de disco

Para el rendimiento general, el programador de discos predeterminadonoop se aplica a todos los tipos de SR nuevos. Elnoop programador proporciona el rendimiento más justo para las máquinas virtuales competidoras que acceden al mismo dispositivo. Para aplicar QoS de disco, es necesario anular la configuración predeterminada y asignar el programador decfq discos al SR. El PBD correspondiente debe ser desenchufado y reenchufado para que el parámetro del programador surta efecto. El programador de discos se puede ajustar mediante el siguiente comando:

xe sr-param-set other-config:scheduler=noop|cfq|anticipatory|deadline \
    uuid=valid_sr_uuid

Nota:

Este comando no afecta al almacenamiento EqualLogic, NetApp o NFS.

Configuración de QoS del disco virtual

Los discos virtuales tienen una configuración opcional de calidad de servicio (QoS) de prioridad de E/S. Esta configuración se puede aplicar a discos virtuales existentes utilizando la CLI xe como se describe en esta sección.

Para SR compartida, donde varios hosts acceden al mismo LUN, la configuración de QoS se aplica a los VBD que acceden al LUN desde el mismo host. QoS no se aplica en los hosts del grupo.

Antes de configurar los parámetros de QoS para un VBD, asegúrese de que el programador de discos para el SR se ha configurado correctamente. Consulte Ajuste del programador de E/S de disco en la sección anterior para obtener detalles sobre cómo ajustar el programador. El parámetro del programador debe establecersecfq en el SR para el que se desea la QoS.

Nota:

Recuerde establecer el programadorcfq en el SR y asegurarse de que el PBD se ha reenchufado para que el cambio del programador surta efecto.

El primer parámetro esqos_algorithm_type. Este parámetro debe establecerse en el valorionice, que es el único tipo de algoritmo QoS compatible con discos virtuales en esta versión.

Los propios parámetros de QoS se establecen con pares clave/valor asignados alqos_algorithm_param parámetro. Para discos virtuales,qos_algorithm_param toma unasched clave, y dependiendo del valor, también requiere unaclass clave.

Los valores posibles deqos_algorithm_param:sched son:

-sched=rt osched=real-time establece el parámetro de programación QoS en prioridad en tiempo real, que requiere un parámetro de clase para establecer un valor

-sched=idle establece el parámetro de programación QoS en prioridad inactiva, que no requiere ningún parámetro de clase para establecer ningún valor

-sched=anything establece el parámetro de programación QoS en prioridad de mejor esfuerzo, que requiere un parámetro de clase para establecer un valor

Los valores posibles paraclass son:

  • Una de las siguientes palabras clave: más alto, alto, normal, bajo, más bajo

  • Un entero entre 0 y 7, donde 7 es la prioridad más alta y 0 es la más baja. Por ejemplo, las solicitudes de E/S con una prioridad de 5, reciben prioridad sobre las solicitudes de E/S con una prioridad de 2.

Para habilitar la configuración de QoS del disco, también debe establecerother-config:scheduler y volvercfq a conectar PBD para el almacenamiento en cuestión.

Por ejemplo, los siguientes comandos de CLI establecen el VBD del disco virtual para que use prioridad en tiempo real5:

    xe vbd-param-set uuid=vbd_uuid qos_algorithm_type=ionice
    xe vbd-param-set uuid=vbd_uuid qos_algorithm_params:sched=rt
    xe vbd-param-set uuid=vbd_uuid qos_algorithm_params:class=5
    xe sr-param-set uuid=sr_uuid other-config:scheduler=cfq
    xe pbd-plug uuid=pbd_uuid