Puede importar máquinas virtuales desde vSphere en la implementación de VMware Integrated OpenStack y administrarlas como instancias de OpenStack.

Este procedimiento se aplica a implementaciones con redes de NSX-T Data Center. Para implementaciones de VDS o NSX Data Center for vSphere, consulte VMware Integrated OpenStack con NSX Data Center for vSphere.

Se aplican las siguientes condiciones a máquinas virtuales importadas:

  • Si una máquina virtual tiene varios discos, los discos no raíz se importarían como volúmenes de Cinder.
  • La acción de importar una máquina virtual solo puede configurar un vínculo entre la instancia de Nova y el tipo. No cambiará el tamaño de la instancia según la configuración de tipo durante la importación.

Puede importar máquinas virtuales mediante Data Center Command-Line Interface (DCLI) en el cuadro de herramientas de Integrated OpenStack Manager.

Procedimiento

  1. Agregue los clústeres que contengan las máquinas virtuales deseadas como clústeres informáticos de proceso en la implementación de VMware Integrated OpenStack.
    Para obtener instrucciones, consulte Agregar clústeres de proceso a la implementación.
  2. Registre la dirección MAC de cada adaptador de red
    1. En vSphere Client, abra la vista Hosts y clústeres.
    2. Para importar máquinas virtuales, haga clic con el botón secundario en cada máquina virtual y seleccione Editar configuración....
    3. Expanda la configuración del adaptador de red y registre su dirección MAC.
  3. Cree una red opaca temporal para la máquina virtual.
    • Para NSX-T 3.0, debe crear un segmento. Consulte Agregar un segmento y registre el nombre del segmento que agregó.
    • Para NSX-T 3.2, debe crear un segmento. Consulte Agregar un segmento y registre el ID del segmento que agregó.
      Nota: Puede identificar el identificador de segmento en el NSX-T 3.2, vista Manager > Conmutadores lógicos.
  4. Edite la configuración de proceso para Nova con viocli update nova-compute, agregue el parámetro import_net_id y establezca su valor como el nombre o el ID del segmento creado en el paso 5.
    viocli update nova-compute
    conf:
      nova_compute:
        vmware:
          import_net_id: name or id
    
    Note:
    For NSX-T 3.0, set its value to the name
    For NSX-T 3.2 or later, set its value to the id
  5. Cree varios puertos Neutron que utilizan la dirección MAC de las vNIC de la máquina virtual.
    Puede crear una nueva red de Neutron o utilizar la existente.
    neutron net-create NAME --tenant-id project-id 
    neutron port-create network --name port --tenant-id project-id --mac-address vm-mac [--fixed-ip ip_address=vm-ip]
    Nota: El identificador de tenant de la red y el puerto debe ser el mismo que el identificador de tenant de la máquina virtual de importación.
    Nota: Para crear varios puertos, debe repetir el comando port create de Neutron. Puede crearlas en la misma red de Neutron y también en redes de Neutron diferentes. Este escenario depende del requisito de conexión de las vNIC de las máquinas virtuales.
    Opción Descripción

    network

    Introduzca el nombre de la red de Neutron a la que se conectará la máquina virtual.

    --name

    Introduzca un nombre para el puerto.

    --tenant-id

    Para crear el puerto, especifique el UUID del proyecto.

    --mac-address

    Introduzca la dirección MAC del adaptador de red de la máquina virtual que registró en el paso 2d.

    --fixed-ip (optional)

    Introduzca la dirección IP de la máquina virtual.

  6. Abra el cuadro de herramientas y conéctese al endpoint de vAPI de VMware Integrated OpenStack.

    El endpoint está presente en el endpoint de OpenStack privado de la implementación.

    dcli +server https://internal-vip:9449/api +i
    Nota: Cuando se ejecuta un comando, DCLI le solicita que introduzca las credenciales de administrador para la instancia de vCenter Server. Para evitar introducir el nombre de usuario y la contraseña cada vez, puede guardar estas credenciales.
  7. Importe la máquina virtual en VMware Integrated OpenStack.
    Opción Descripción

    --vm

    Introduzca el identificador de objeto administrado (Managed Object Identifier, MOID) de la máquina virtual.

    Puede ver los identificadores MOID de todas las máquinas virtuales sin administrar. Para ello, ejecute el comando com vmware vio vm unmanaged list.

    --nics

    Introduzca la matriz de pares clave-valor para la vNIC de las máquinas virtuales en formato JSON.

    --nic-net-id

    Introduzca el UUID de la red de Neutron a la que conectó la máquina virtual.

    --nic-port-id

    Introduzca el UUID del puerto que creó para la máquina virtual.

    --tenant

    Especifique el proyecto de OpenStack en el que desea importar la máquina virtual.

    Si no incluye este parámetro, se utiliza el proyecto import_service de forma predeterminada.

    --root-disk

    Para una máquina virtual con varios discos, especifique la ruta de acceso del almacén de datos del disco raíz con el siguiente formato: --root-disk '[datastore1] dir/disk_1.vmdk'

    --vcenter

    Introduzca el vcenter obj name en el entorno de VIO para varias instancias de vCenter.

    --cinder-az

    Zona de disponibilidad de Cinder para importar disco

    --default-volume-type

    Identificador de tipo de volumen predeterminado para volúmenes importados

    --flavor

    Identificador de tipo almacenado en metadatos de instancia de NOVA

    --volume-type

    Información de asignación de ruta de acceso de disco y tipo de volumen

    • Implementación de una sola instancia de vCenter
    1. Para importar una máquina virtual a VIO usando una sola vNIC y un solo disco, utilice el siguiente comando:
      com vmware vio vm unmanaged importvm --vm vm-moid --nic-net-id network-uuid --nic-port-id port-uuid [--tenant project-name] [--root-disk root-disk-path]
    2. Para importar una máquina virtual a VIO usando varias vNIC y un solo disco, utilice el siguiente comando:
      com vmware vio vm unmanaged importvm --vm vm-moid --nics '[{"port_id": "port1_uuid"}, {"port_id": "port2_uuid"}]' " 
      Por ejemplo:
      com vmware vio vm unmanaged importvm --vm vm-88 --tenant admin --nics '[{"port_id": "41fa621e-89d6-493f-876c-ed052905042d"}, {"port_id": "e97c74e9-e930-4837-a6d2-33bd065d8e32"}]'
      Nota: Durante el proceso de importación, el puerto puede enlazarse automáticamente a la vNIC con la dirección MAC correspondiente.
    3. Para importar una máquina virtual en VIO con varios discos configurados, utilice el siguiente comando:
      com vmware vio vm unmanaged importvm --vm vm-moid --root-disk 'root-disk-path' --nics '[{"port_id":"port1_uuid"}]'  --default-volume-type 'volumetye_uuid'
      Nota: El tipo de volumen se puede crear mediante openstack volume type create <name>; cada disco puede especificar un tipo de volumen diferente o el mismo.
      Por ejemplo:
      com vmware vio vm unmanaged importvm --vm vm-33574 --root-disk '[vsanDatastore (1)] ab61b663-a6ac-249f-6c81-bc97e1d51910/imp-002_2.vmdk' --nics '[{"port_id":"dae27a0d-b9b7-4801-ae1c-12333fe21241"}]'  --default-volume-type 'e35d1605-4808-48e2-a940-f5f66eb55b8c' --flavor 9a0248cd-3b51-4626-8f9a-0090fa4a146e --tenant admin --image bc16f0f8-518d-4fc8-a7fe-1314f55dd3cc
    • Implementación en varias instancias de vCenter
    1. Para importar una máquina virtual a VIO si hay varias instancias de vCenter, utilice el siguiente comando:
      com vmware vio vm unmanaged importvm --vm vm-moid --nics '[{"port_id": "port1_uuid"}, {"port_id": "port2_uuid"}]' --vcenter vcenter_obj

      Por ejemplo:

      com vmware vio vm unmanaged importvm --vm vm-88 --tenant admin --nics '[{"port_id": "41fa621e-89d6-493f-876c-ed052905042d"}, {"port_id": "e97c74e9-e930-4837-a6d2-33bd065d8e32"}]' --vcenter vcenter2
      Nota:
      • La lista de vcenter_obj en el entorno de VIO se puede adquirir ejecutando el comando kubectl -n openstack get vioshim vioadmin1 -o json | jq .status.processedSpec.conf.vioshim.DEFAULT.enabled_backends
      • Si no agrega la opción de --vcenter, el vcenter predeterminado es el vcenter de administración.
    2. Para importar una máquina virtual a VIO con varios discos configurados, debe configurar el clúster de Cinder en diferentes vCenter con nombres de zona de disponibilidad diferentes y especificar la opción --cinder-az.
      com vmware vio vm unmanaged importvm --vm vm-60 --tenant admin --nics '[{"port_id": "cc1bba10-1e9b-4818-baa9-6b416738bfb1"}]' --vcent
      er vcenter2 --flavor da10460e-7174-457b-86dd-f8b2b10a578a --root-disk '[vdnetSharedStorage] test-import7/test-import7_2.vmdk' --volume-type
       '[{"disk_path": "[vdnetSharedStorage] test-import7/test-import7.vmdk", "type_id": "3eaeee82-aae5-4803-a3a9-de6cd84e30db"}]' --cinder-aznova1
      
  8. Para la parte del tipo, registre el identificador de la clase de tipo existente.
  9. Importe la máquina virtual en VIO para esa clase de tipo.
    com vmware vio vm unmanaged importvm --vm vm-moid --nic -net-id network-uuid --nic -port-id port-uuid --flavor flavor-uuid --tenant project-name
    Por ejemplo:
    com vmware vio vm unmanaged importvm --vm vm-109 --nic -net-id e10b0037-6705-46d8-a8c5-20fbfdc1598d --nic -port-id be9bb062-d7b3-47f7-8566-f7b1f1c6ce2d --flavor 256ac8d6-6fb1-4434-a007-bb6db6837e5a --tenant admin

Resultados

Después de importar, la máquina virtual especificada se encuentra en la implementación de OpenStack, de modo que puede administrarla como una instancia de OpenStack.