Skip to main content
NetApp virtualization solutions
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Crea una máquina virtual con Red Hat OpenShift Virtualization usando almacenamiento ONTAP mediante métodos alternativos

Colaboradores banum-netapp

Además del método para crear una máquina virtual mediante la interfaz de usuario de OpenShift Virtualization, existen otros métodos para crear máquinas virtuales en OpenShift Virtualization. Esta sección ofrece una descripción general de algunos de esos métodos.

Crear una máquina virtual a partir de un archivo YAML con Red Hat OpenShift Virtualization

También puedes crear una máquina virtual aplicando un archivo YAML con el comando oc apply. Este método es útil para los usuarios que prefieren usar la CLI o quieren automatizar la creación de máquinas virtuales usando scripts. Para crear una máquina virtual con este método, puedes crear un archivo YAML que defina la máquina virtual y sus recursos asociados, como los PVC para los discos de la máquina virtual. Luego, puedes aplicar el archivo YAML usando el comando oc apply -f <yaml-file> para crear la máquina virtual en el clúster OpenShift.

Mostrar ejemplo
apiVersion: kubevirt.io/v1
kind: VirtualMachine
metadata:
  name: test-vms-vm
  namespace: test-5vms
  labels:
    app: test-vms-vm
    vm.kubevirt.io/template: centos-stream9-server-small
spec:
  dataVolumeTemplates:
    - apiVersion: cdi.kubevirt.io/v1beta1
      kind: DataVolume
      metadata:
        name: test-vms-vm-rootdisk
      spec:
        sourceRef:
          kind: DataSource
          name: centos-stream9
          namespace: openshift-virtualization-os-images
        storage:
          resources:
            requests:
              storage: 30Gi
  runStrategy: Always
  template:
    metadata:
      labels:
        kubevirt.io/domain: test-vms-vm
    spec:
      domain:
        cpu:
          cores: 1
          sockets: 1
          threads: 1
        devices:
          disks:
            - bootOrder: 1
              disk:
                bus: virtio
              name: rootdisk
            - disk:
                bus: virtio
              name: cloudinitdisk
          interfaces:
            - masquerade: {}
              model: virtio
              name: default
        resources:
          requests:
            memory: 2Gi
      networks:
        - name: default
          pod: {}
      terminationGracePeriodSeconds: 180
      volumes:
        - dataVolume:
            name: test-vms-vm-rootdisk
          name: rootdisk
        - cloudInitNoCloud:
            userData: |-
              #cloud-config
              user: admin
              password: <replace with your password>
              chpasswd: { expire: False }
          name: cloudinitdisk

Cree una máquina virtual a partir de una copia instantánea con Red Hat OpenShift Virtualization

Puedes crear una máquina virtual a partir de una instantánea con OpenShift Virtualization. Este procedimiento incluye crear una VolumeSnapshotClass, tomar una instantánea de la reclamación de volumen persistente (PVC) de la máquina virtual, restaurar la instantánea en una nueva PVC y desplegar una nueva máquina virtual que use la PVC restaurada como disco raíz.

Con Trident y Red Hat OpenShift, los usuarios pueden tomar una instantánea de un volumen persistente en las clases de almacenamiento aprovisionadas por él. Con esta función, los usuarios pueden tomar una copia de un punto en el tiempo de un volumen y usarla para crear un nuevo volumen o restaurar el mismo volumen a un estado anterior. Esto habilita o respalda una variedad de casos de uso, desde reversión hasta clones y restauración de datos.

Para las operaciones de instantáneas en OpenShift, se deben definir los recursos VolumeSnapshotClass, VolumeSnapshot y VolumeSnapshotContent.

  • Un VolumeSnapshotContent es la instantánea real tomada de un volumen en el clúster. Es un recurso de todo el clúster análogo a PersistentVolume para el almacenamiento.

  • Una VolumeSnapshot es una solicitud para crear la instantánea de un volumen. Es análogo a un PersistentVolumeClaim.

  • VolumeSnapshotClass permite al administrador especificar diferentes atributos para un VolumeSnapshot. Le permite tener diferentes atributos para diferentes instantáneas tomadas del mismo volumen.

VM de arquitectura Snapshot

Mostrar ejemplo

Requisito previo

Debes tener una máquina virtual existente con un PVC adjunto que esté aprovisionado en una Trident Storage Class, y la máquina virtual debe estar en estado de ejecución antes de que puedas tomar una instantánea del PVC. Debes tener un VolumeSnapshotClass creado que luego se pueda usar para crear un VolumeSnapshot. Esto se habría creado como parte de los requisitos previos para instalar OpenShift Virtualization. Puedes consultar el "Paso 3 para crear una configuración de VolumeSnapshotClass" para más detalles.

Para crear una instantánea de una máquina virtual, sigue estos pasos:

  1. Identifique el PVC que está conectado a la máquina virtual de origen y luego cree una instantánea de ese PVC. Navegar a Storage > VolumeSnapshots y haga clic en Crear instantáneas de volumen.

  2. Seleccione el PVC para el cual desea crear la instantánea, ingrese el nombre de la instantánea o acepte el valor predeterminado y seleccione la VolumeSnapshotClass adecuada. Luego haga clic en Crear.

  3. Esto crea la instantánea del PVC en ese momento.

Crear instantánea

Crear una nueva máquina virtual a partir de la instantánea

  1. Primero, restaure la instantánea en un nuevo PVC. Vaya a Almacenamiento > Instantáneas de volumen, haga clic en los puntos suspensivos junto a la instantánea que desea restaurar y haga clic en Restaurar como nueva PVC.

  2. Ingrese los detalles del nuevo PVC y haga clic en Restaurar. Esto crea un nuevo PVC.

Restaurar instantánea a un nuevo PVC

  1. A continuación, cree una nueva VM a partir de esta PVC. Vaya a Virtualización > Máquinas virtuales y haga clic en Crear > Con YAML.

  2. En la sección especificación > plantilla > especificación > volúmenes, especifique el nuevo PVC creado a partir de una instantánea en lugar de desde el disco contenedor. Proporcione todos los demás detalles para la nueva máquina virtual según sus requisitos.

- name: rootdisk
  persistentVolumeClaim:
    claimName: rhel8-short-frog-rootdisk-28dvb-snapshot-restore
  1. Haga clic en Crear para crear la nueva máquina virtual.

  2. Una vez creada correctamente la VM, acceda y verifique que la nueva VM tenga el mismo estado que la VM cuyo PVC se utilizó para crear la instantánea en el momento en que se creó esta.

Clona una máquina virtual en OpenShift Virtualization usando Trident

Este procedimiento incluye el uso de la clonación de volúmenes de Trident CSI, lo que te permite crear una nueva máquina virtual apagando la máquina virtual de origen o dejándola en funcionamiento.

Mostrar ejemplo

Clonación de máquinas virtuales

La clonación de una máquina virtual existente en OpenShift se logra con el soporte de la función de clonación Volume CSI de Trident. La clonación de volumen CSI permite la creación de un nuevo PVC utilizando un PVC existente como fuente de datos mediante la duplicación de su PV. Una vez creado el nuevo PVC, funciona como una entidad separada y sin ningún vínculo o dependencia del PVC de origen.

Arquitectura de clonación de máquinas virtuales

Existen ciertas restricciones a tener en cuenta con la clonación de volúmenes CSI:

  1. El PVC de origen y el PVC de destino deben estar en el mismo proyecto.

  2. Se admite la clonación dentro de la misma clase de almacenamiento.

  3. La clonación solo se puede realizar cuando los volúmenes de origen y destino usan la misma configuración VolumeMode; por ejemplo, un volumen de bloque solo se puede clonar en otro volumen de bloque.

Las máquinas virtuales en un clúster OpenShift se pueden clonar de dos maneras:

  1. Apagando la máquina virtual de origen

  2. Manteniendo activa la máquina virtual de origen

Al apagar la máquina virtual de origen

Clonar una máquina virtual existente apagándola es una función nativa de OpenShift que se implementa con el soporte de Trident. Complete los siguientes pasos para clonar una máquina virtual.

  1. Vaya a Cargas de trabajo > Virtualización > Máquinas virtuales y haga clic en los puntos suspensivos junto a la máquina virtual que desea clonar.

  2. Haga clic en Clonar máquina virtual y proporcione los detalles de la nueva máquina virtual.

    clonar máquina virtual

  3. Haga clic en Clonar máquina virtual; esto apaga la máquina virtual de origen e inicia la creación de la máquina virtual clonada.

  4. Una vez completado este paso, podrá acceder y verificar el contenido de la máquina virtual clonada.

Al mantener activa la máquina virtual de origen

También se puede clonar una VM existente clonando el PVC existente de la VM de origen y luego creando una nueva VM usando el PVC clonado. Este método no requiere que apague la máquina virtual de origen. Complete los siguientes pasos para clonar una máquina virtual sin apagarla.

  1. Vaya a Almacenamiento > PersistentVolumeClaims y haga clic en los puntos suspensivos junto a la PVC que está conectada a la máquina virtual de origen.

  2. Haga clic en Clonar PVC y proporcione los detalles del nuevo PVC.

    clon de PVC

  3. Luego haga clic en Clonar. Esto crea una PVC para la nueva VM.

  4. Vaya a Cargas de trabajo > Virtualización > Máquinas virtuales y haga clic en Crear > Con YAML.

  5. En la sección especificación > plantilla > especificación > volúmenes, adjunte el PVC clonado en lugar del disco contenedor. Proporcione todos los demás detalles para la nueva máquina virtual según sus requisitos.

- name: rootdisk
  persistentVolumeClaim:
    claimName: rhel8-short-frog-rootdisk-28dvb-clone
  1. Haga clic en Crear para crear la nueva máquina virtual.

  2. Una vez creada correctamente la máquina virtual, acceda y verifique que la nueva máquina virtual sea un clon de la máquina virtual de origen.