Guide d'administration d'Oracle® VM Server for SPARC 3.3

Quitter la vue de l'impression

Mis à jour : Octobre 2015
 
 

Création de fonctions virtuelles SR-IOV Fibre Channel

Cette section décrit la création et la destruction dynamiques de fonctions virtuelles. Si vous ne pouvez pas utiliser les méthodes dynamiques pour exécuter ces actions, lancez une reconfiguration retardée sur le domaine root avant de créer ou de détruire des fonctions virtuelles.

Procédure de création d'une fonction virtuelle SR-IOV Fibre Channel

Si vous ne pouvez pas utiliser cette méthode dynamique, utilisez plutôt la méthode statique. Voir la section SR-IOV statique.

  1. Identifiez le périphérique de fonction physique.
    primary# ldm list-io

    Notez que le nom de la fonction physique inclut les informations d'emplacement de la carte SR-IOV PCIe ou du périphérique intégré.

  2. Effectuez uniquement cette étape si la virtualisation d'E/S n'est pas déjà activée pour le bus qui a la fonction physique.

    Effectuez uniquement cette étape si la virtualisation d'E/S n'est pas déjà activée pour le bus qui a la fonction physique.

    Voir la section Procédure d'activation de la virtualisation d'E/S pour un bus PCIe.

  3. Vous pouvez créer une fonction virtuelle unique ou plusieurs fonctions virtuelles à partir d'une fonction physique, de manière dynamique ou statique.

    Après avoir créé une ou plusieurs fonctions virtuelles, vous pouvez les attribuer à un domaine invité.

    • Méthode dynamique :
      • Pour créer plusieurs fonctions virtuelles à partir d'une fonction physique en une seule fois, utilisez la commande suivante :
        primary# ldm create-vf -n number | max pf-name

        Utilisez la commande ldm create-vf -n max pour créer en une fois toutes les fonctions virtuelles de cette fonction physique. Cette commande alloue automatiquement les noms universels de port et de noeud pour chaque fonction virtuelle et définit la propriété bw-percent sur 0, la valeur par défaut. Cette valeur indique qu'une part équitable de la bande passante est allouée à toutes les fonctions virtuelles.


        Conseil  - Créez des fonctions virtuelles pour la fonction physique en une seule fois. Si vous souhaitez attribuer manuellement les noms universels, créez tout d'abord toutes les fonctions virtuelles puis utilisez la commande ldm set-io pour attribuer manuellement vos valeurs de nom universel à chaque fonction virtuelle. Cette technique permet de minimiser le nombre de transitions d'état lors de la création de fonctions virtuelles à partir d'une fonction physique.

        Vous pouvez spécifier des fonctions virtuelles soit par le biais de leur nom de chemin d'accès, soit par leur pseudonyme. Toutefois, la pratique recommandée est d'utiliser le pseudonyme.

      • Pour créer une fonction virtuelle à partir d'une fonction physique, utilisez la commande suivante :
        ldm create-vf [bw-percent=value] [port-wwn=value node-wwn=value] pf-name

        Vous pouvez également indiquer manuellement les valeurs de propriété Fibre Channel en fonction de la classe.


      Remarque - Parfois, une fonction virtuelle nouvellement créée n'est pas disponible pour une utilisation immédiate, car le SE recherche toujours les périphériques IOV. Utilisez la commande ldm list-io pour déterminer si la fonction physique parent et ses fonctions virtuelles enfant ont la valeur INV dans la colonne Statut. Si cette valeur s'affiche, attendez que la sortieldm list-io n'affiche plus la valeur INV dans la colonne Statut (environ 45 secondes) avant d'utiliser cette fonction physique ou l'une de ses fonctions enfant. Si ce statut persiste, cela signifie qu'il y a un problème avec le périphérique.

      Le statut de l'appareil pourra être INV immédiatement après une réinitialisation du domaine root (y compris celle du domaine primary) ou immédiatement après avoir utilisé la commande ldm create-vf ou ldm destroy-vf.


    • Méthode statique :
      1. Lancez une reconfiguration retardée.
        primary# ldm start-reconf root-domain-name
      2. Vous pouvez créer une fonction virtuelle unique ou plusieurs fonctions virtuelles à partir d'une fonction physique.

        Utilisez les mêmes commandes affichées précédemment pour créer les fonctions virtuelles de manière dynamique.

      3. Réinitialisez le domaine root.
        • Procédure de réinitialisation du domaine root non-primary :
          primary# ldm stop-domain -r root-domain
        • Procédure de réinitialisation du domaine root primary :
          primary# shutdown -i6 -g0 -y
Exemple 7-18  Affichage des informations relatives à la fonction Fibre Channel physique

Cet exemple affiche des informations sur la fonction physique /SYS/MB/PCIE7/IOVFC.PF0 :

  • Cette fonction physique vient d'une carte dans l'emplacement PCIe PCIE7.

  • La chaîne IOVFC indique que la fonction physique est un périphérique SR-IOV Fibre Channel.

primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
pci_0                                     BUS    pci_0    primary  IOV
pci_1                                     BUS    pci_1    rootdom1 IOV
niu_0                                     NIU    niu_0    primary
niu_1                                     NIU    niu_1    primary
/SYS/MB/PCIE0                             PCIE   pci_0    primary  OCC
/SYS/MB/PCIE2                             PCIE   pci_0    primary  OCC
/SYS/MB/PCIE4                             PCIE   pci_0    primary  OCC
/SYS/MB/PCIE6                             PCIE   pci_0    primary  EMP
/SYS/MB/PCIE8                             PCIE   pci_0    primary  EMP
/SYS/MB/SASHBA                            PCIE   pci_0    primary  OCC
/SYS/MB/NET0                              PCIE   pci_0    primary  OCC
/SYS/MB/PCIE1                             PCIE   pci_1    rootdom1 OCC
/SYS/MB/PCIE3                             PCIE   pci_1    rootdom1 OCC
/SYS/MB/PCIE5                             PCIE   pci_1    rootdom1 OCC
/SYS/MB/PCIE7                             PCIE   pci_1    rootdom1 OCC
/SYS/MB/PCIE9                             PCIE   pci_1    rootdom1 OCC
/SYS/MB/NET2                              PCIE   pci_1    rootdom1 OCC
/SYS/MB/NET0/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF1                   PF     pci_0    primary
/SYS/MB/PCIE5/IOVNET.PF0                  PF     pci_1    rootdom1
/SYS/MB/PCIE5/IOVNET.PF1                  PF     pci_1    rootdom1          
/SYS/MB/PCIE7/IOVFC.PF0                   PF     pci_1    rootdom1
/SYS/MB/PCIE7/IOVFC.PF1                   PF     pci_1    rootdom1
/SYS/MB/NET2/IOVNET.PF0                   PF     pci_1    rootdom1
/SYS/MB/NET2/IOVNET.PF1                   PF     pci_1    rootdom1

La commande suivante fournit plus d'informations sur la fonction physique spécifiée. La valeur maxvfs indique le nombre maximal de fonctions virtuelles pris en charge par le périphérique.

primary# ldm list-io -l /SYS/MB/PCIE7/IOVFC.PF0
NAME                                      TYPE   BUS      DOMAIN   STATUS   
----                                      ----   ---      ------   ------   
/SYS/MB/PCIE7/IOVNET.PF0                  PF     pci_0    rootdom1           
[pci@400/pci@1/pci@0/pci@6/SUNW,fcdev@0]
    maxvfs = 8
Exemple 7-19  Création dynamique d'une fonction Fibre Channel virtuelle sans paramétrage des propriétés facultatives

Cet exemple crée une fonction virtuelle de façon dynamique sans définir de propriété facultative. Dans ce cas, la commande ldm create-vf alloue automatiquement le pourcentage de bande passante par défaut, ainsi que les valeurs de nom universel de port et de noeud.

Assurez-vous que la virtualisation d'E/S est activée sur le bus PCIe pci_1. Voir la section Procédure d'activation de la virtualisation d'E/S pour un bus PCIe.

Vous pouvez utiliser la commande ldm create-vf pour créer toutes les fonctions virtuelles à partir de la fonction physique /SYS/MB/PCIE7/IOVFC.PF0.

primary# ldm create-vf -n max /SYS/MB/PCIE7/IOVFC.PF0
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF0
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF1
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF2
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF3
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF4
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF5
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF6
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF7
Exemple 7-20  Création dynamique d'une fonction Fibre Channel virtuelle avec paramétrage des propriétés

Cet exemple crée une fonction virtuelle de manière dynamique tout en définissant la valeur de propriété bw-percent sur 25 et indique les noms universels de port et de noeud.

primary# ldm create-vf port-wwn=10:00:00:14:4F:FC:00:01 \
node-wwn=20:00:00:14:4F:FC:00:01 bw-percent=25 /SYS/MB/PCIE7/IOVFC.PF0
Exemple 7-21  Création statique d'une fonction Fibre Channel virtuelle sans paramétrage des propriétés facultatives

Cet exemple crée une fonction virtuelle de façon statique sans définir de propriété facultative. Dans ce cas, la commande ldm create-vf alloue automatiquement le pourcentage de bande passante par défaut, ainsi que les valeurs de nom universel de port et de noeud.

Lancez tout d'abord une reconfiguration retardée sur le domaine rootdom1. Activez ensuite la virtualisation d'E/S sur le bus PCIe pci_1. Le bus pci_1 ayant déjà été assigné au domaine root rootdom1, vous devez utiliser la commande ldm set-io pour activer la virtualisation d'E/S.

primary# ldm start-reconf rootdom1
Initiating a delayed reconfiguration operation on the rootdom1 domain.
All configuration changes for other domains are disabled until the rootdom1
domain reboots, at which time the new configuration for the rootdom1 domain
will also take effect.

primary# ldm set-io iov=on pci_1

Vous pouvez ensuite utiliser la commande ldm create-vf pour créer toutes les fonctions virtuelles à partir de la fonction physique /SYS/MB/PCIE7/IOVFC.PF0.

primary# ldm create-vf -n max /SYS/MB/PCIE7/IOVFC.PF0

------------------------------------------------------------------------------
Notice: The rootdom1 domain is in the process of a delayed reconfiguration.
Any changes made to the rootdom1 domain will only take effect after it reboots.
------------------------------------------------------------------------------

Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF0
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF1
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF2
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF3
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF4
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF5
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF6
Created new vf: /SYS/MB/PCIE7/IOVFC.PF0.VF7

    Enfin, réinitialisez le domaine root rootdom1 pour appliquer les modifications d'une des manières suivantes :

  • rootdom1 est un domaine root non-primary

    primary# ldm stop-domain -r rootdom1
  • rootdom1 est le domaine primary

    primary# shutdown -i6 -g0 -y