Red Hat Training

A Red Hat training course is available for RHEL 8

11.2.2. Creación y asignación de almacenamiento para máquinas virtuales mediante la CLI

A continuación se presenta un procedimiento de alto nivel para crear y asignar almacenamiento para máquinas virtuales (VM):

  1. Create storage pools

    Cree uno o más pools de almacenamiento a partir de los medios de almacenamiento disponibles. Para obtener una lista de los tipos de grupos de almacenamiento admitidos, consulte Tipos de grupos de almacenamiento.

    • Para crear grupos de almacenamiento persistentes, utilice los comandos virsh pool-define-as y virsh pool-define.

      El comando virsh pool-define-as coloca las opciones en la línea de comandos. El comando virsh pool-define utiliza un archivo XML para las opciones del pool.

    • Para crear grupos de almacenamiento temporal, utilice los comandos virsh pool-create y virsh pool-create-as.

      El comando virsh pool-create-as coloca las opciones en la línea de comandos. El comando virsh pool-create utiliza un archivo XML para las opciones del pool.

  1. Create storage volumes

    Cree uno o más volúmenes de almacenamiento a partir de los pools de almacenamiento disponibles.

  2. Assign storage devices to a VM

    Asignar uno o más dispositivos de almacenamiento abstraídos de los volúmenes de almacenamiento a una VM.

Las siguientes secciones proporcionan información sobre la creación y asignación de almacenamiento mediante la CLI:

11.2.2.1. Creación y asignación de almacenamiento basado en directorios para máquinas virtuales mediante la CLI

A continuación se proporciona información sobre la creación de grupos de almacenamiento basados en directorios y volúmenes de almacenamiento, y la asignación de volúmenes a máquinas virtuales.

11.2.2.1.1. Creación de grupos de almacenamiento basados en directorios mediante la CLI

A continuación se ofrecen instrucciones para crear grupos de almacenamiento basados en directorios.

Requisitos previos

  • Asegúrese de que su hipervisor admite grupos de almacenamiento de directorio:

    # virsh pool-capabilities | grep "'dir' supported='yes'"

    Si el comando muestra alguna salida, los grupos de directorios son compatibles.

Procedimiento

  1. Create a storage pool

    Utilice el comando virsh pool-define-as para definir y crear un pool de almacenamiento de tipo directorio. Por ejemplo, para crear un pool de almacenamiento llamado guest_images_dir que utilice el directorio /guest_images:

    # virsh pool-define-as guest_images_dir dir --target "/guest_images"
    Pool guest_images_dir defined

    Si ya tiene una configuración XML del pool de almacenamiento que desea crear, también puede definir el pool basándose en el XML. Para más detalles, consulte Sección 11.2.2.1.2, “Parámetros del pool de almacenamiento basado en directorios”.

  2. Create the storage pool target path

    Utilice el comando virsh pool-build para crear una ruta de destino de pool de almacenamiento para un pool de almacenamiento de sistema de archivos preformateado, inicializar el dispositivo de origen de almacenamiento y definir el formato de los datos.

    # virsh pool-build guest_images_dir
      Pool guest_images_dir built
    
    # ls -la /guest_images
      total 8
      drwx------.  2 root root 4096 May 31 19:38 .
      dr-xr-xr-x. 25 root root 4096 May 31 19:38 ..
  3. Verify that the pool was created

    Utilice el comando virsh pool-list para verificar que el pool fue creado.

    # virsh pool-list --all
    
      Name                 State      Autostart
      -----------------------------------------
      default              active     yes
      guest_images_dir     inactive   no
  4. Start the storage pool

    Utilice el comando virsh pool-start para montar el pool de almacenamiento.

    # virsh pool-start guest_images_dir
      Pool guest_images_dir started
    Nota

    El comando virsh pool-start sólo es necesario para los pools de almacenamiento persistente. Los pools de almacenamiento transitorio se inician automáticamente cuando se crean.

  5. [Optional] Turn on autostart

    Por defecto, un pool de almacenamiento definido con el comando virsh no está configurado para iniciarse automáticamente cada vez que libvirtd se inicia. Utilice el comando virsh pool-autostart para configurar el pool de almacenamiento para que se inicie automáticamente.

    # virsh pool-autostart guest_images_dir
      Pool guest_images_dir marked as autostarted

Verificación

  1. Utilice el comando virsh pool-list para verificar el Autostart estado.

    # virsh pool-list --all
    
      Name                 State      Autostart
      -----------------------------------------
      default              active     yes
      guest_images_dir     inactive   yes
  2. Compruebe que el grupo de almacenamiento se ha creado correctamente, que los tamaños indicados son los esperados y que el estado es el siguiente running.

    # virsh pool-info guest_images_dir
      Name:           guest_images_dir
      UUID:           c7466869-e82a-a66c-2187-dc9d6f0877d0
      State:          running
      Persistent:     yes
      Autostart:      yes
      Capacity:       458.39 GB
      Allocation:     197.91 MB
      Available:      458.20 GB
11.2.2.1.2. Parámetros del pool de almacenamiento basado en directorios

Esta sección proporciona información sobre los parámetros XML necesarios para un pool de almacenamiento basado en directorios y un ejemplo.

Puede definir un pool de almacenamiento basado en la configuración XML de un archivo específico. Por ejemplo:

# virsh pool-define ~/guest_images.xml
  Pool defined from guest_images_dir

Parámetros

La siguiente tabla proporciona una lista de los parámetros necesarios para el archivo XML de un pool de almacenamiento basado en directorios.

Tabla 11.1. Parámetros del pool de almacenamiento basado en directorios

DescripciónXML

El tipo de pool de almacenamiento

<pool type='dir'>

El nombre del pool de almacenamiento

<name>name</name>

La ruta que especifica el objetivo. Esta será la ruta utilizada para el pool de almacenamiento.

<target>
   <path>target_path</path>
</target>

Ejemplo

El siguiente es un ejemplo de un archivo XML para un pool de almacenamiento basado en el directorio /guest_images:

<pool type='dir'>
  <name>dirpool</name>
  <target>
    <path>/guest_images</path>
  </target>
</pool>

Recursos adicionales

Para obtener más información sobre la creación de grupos de almacenamiento basados en directorios, consulte Sección 11.2.2.1.1, “Creación de grupos de almacenamiento basados en directorios mediante la CLI”.