Vous pouvez configurer un port pour autoriser le relais SR-IOV, puis créer des instances d'OpenStack qui utilisent des adaptateur réseau physiques.

Si vous souhaitez créer plusieurs ports avec différentes cartes réseau physiques SR-IOV pour assurer la redondance du réseau pour une machine virtuelle, effectuez les étapes facultatives de la procédure suivante.

Conditions préalables

  • Activez le relais SR-IOV dans vSphere. Reportez-vous à Activer SR-IOV sur un adaptateur physique d'hôte dans Mise en réseau vSphere.
  • Créez un cluster de calcul dédié pour les périphériques SR-IOV. Les règles DRS ne s'appliquent pas à ces périphériques.
  • Pour rendre persistante l'adresse MAC d'un périphérique physique, ajoutez son cluster comme nœud de calcul avant d'activer le relais sur le périphérique. Si le relais a déjà été activé, vous pouvez le désactiver, redémarrer le cluster et réactiver le relais direct.
  • Activez les fonctionnalités de VMware Integrated OpenStack Carrier Edition. Reportez-vous à la section Activer les fonctionnalités de Carrier Edition.

Procédure

  1. Connectez-vous à Integrated OpenStack Manager en tant qu'utilisateur root.
    ssh root@mgmt-server-ip
  2. Modifiez la configuration du traitement Nova.
    viocli update nova-compute
  3. Ajoutez les informations suivantes dans la section nova_compute.
    pci:
      passthrough_whitelist:
        type: multistring
        values:
        - '{"product_id": "*", "vendor_id": "*", "physical_network": "*"}'
    
  4. Si vous utilisez un déploiement de DVS ou de NSX-T Data Center, ajoutez le paramètre dvs_moid dans la section vmware.
    dvs_moid: sriov-vds-moid
    Définissez la valeur de dvs_moid sur l'identifiant d'objet géré (MOID) du Distributed Switch associé au cluster de calcul pour les périphériques SR-IOV.
  5. Ouvrez la boîte à outils et définissez le mot de passe du compte admin.
    toolbox
    export OS_PASSWORD=admin-password
  6. (Facultatif) Si vous souhaitez configurer la redondance des ports, créez un type de machine virtuelle avec la propriété isolate.
    La propriété isolate garantit que les ports SR-IOV sont basés sur des cartes réseau physiques différentes dans l'hôte du serveur ESXi, comme requis pour la redondance des ports.
    openstack flavor set <FLAVOR_ID> --property group_policy=isolate
    FLAVOR_ID est l'UUID du type Nova à utiliser pour les machines virtuelles disposant de ports SR-IOV isolés.
  7. Créez un réseau de fournisseur pour les périphériques SR-IOV.
    • Pour les déploiements de NSX Data Center for vSphere, créez un réseau VLAN ou de groupe de ports.
    • Pour les déploiements de NSX-T Data Center, créez un réseau VLAN ou opaque.
    • Pour les déploiements de DVS, créez un réseau VLAN.
    neutron net-create network-name --tenant-id project-uuid --provider:network_type {vlan | portgroup | nsx-net} --provider:physical_network physical-id [--provider:segmentation_id vlan-id]
    Option Description
    network-name

    Entrez le nom du réseau.

    --tenant-id

    Spécifiez l'UUID du projet pour lequel vous voulez créer le port. Pour déterminer l'UUID d'un projet, exécutez la commande openstack project list.

    --provider:network_type

    Entrez vlan pour un réseau VLAN, groupe de ports pour un réseau de groupe de ports ou nsx-net pour un réseau opaque.

    --provider:physical_network
    • Pour un réseau VLAN dans NSX Data Center for vSphere, spécifiez le MOID du Distributed Switch.
    • Pour un réseau VLAN dans NSX-T Data Center, spécifiez l'UUID de la zone de transport VLAN.
    • Pour un réseau VLAN dans un déploiement de DVS, spécifiez le nom du commutateur virtuel distribué.
    • Pour un réseau de groupe de ports, spécifiez le nom du groupe de ports. Le nom du réseau doit correspondre au nom du groupe de ports.
    • Pour un réseau opaque, spécifiez l'UUID du commutateur logique.
    --provider:segmentation_id

    Si vous souhaitez créer un réseau basé sur VLAN, entrez l'ID de VLAN.

  8. Créez un sous-réseau sur le réseau.
    neutron subnet-create network-id --tenant-id project-uuid --name subnet-name
    Option Description
    network-id

    Spécifiez l'UUID du réseau sur lequel créer le sous-réseau. Pour déterminer l'UUID d'un réseau, exécutez la commande openstack network list.

    --tenant-id

    Spécifiez l'UUID du projet pour lequel vous voulez créer le sous-réseau.

    --name

    Entrez le nom que vous souhaitez attribuer au sous-réseau.

  9. Créez un port activé pour le relais à l'aide du paramètre --vnic_type direct.
    neutron port-create network-id --tenant-id project-uuid --name port-name --vnic_type direct
    Option Description
    network-id

    Spécifiez l'UUID du réseau sur lequel créer le port. Pour déterminer l'UUID d'un réseau, exécutez la commande openstack network list.

    --tenant-id

    Spécifiez l'UUID du projet pour lequel vous voulez créer le port.

    --name

    Entrez le nom du port.

    Note : La sécurité de port n'est pas prise en charge pour les ports activés pour le relais et elle est automatiquement désactivée pour le port créé.
    Pour fournir à votre instance d'OpenStack l'accès aux adaptateurs réseau physiques, configurez votre instance avec ce port unique. Ou pour déployer une machine virtuelle avec plusieurs ports assurant une redondance, notez l'ID du port dans la sortie et répétez cette étape pour créer un deuxième port direct.
  10. (Facultatif) Déployez une machine virtuelle avec le type de machine virtuelle et deux ports directs.
    nova boot --flavor <FLAVOR_ID> --image <IMAGE_ID> --nic port-id=<port1-id> --nic port-id=<port2-id> <VM_NAME>
    Option Description
    FLAVOR_ID

    Spécifiez le type créé dans Étape 6.

    --nic

    Entrez l'ID de port créé avec chaque port direct.