JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter la vue de l'impression
Guide d'administration d'Oracle® VM Server for SPARC 3.1
Oracle Technology Network
Bibliothèque
PDF
Vue de l'impression
Commentaires
search filter icon
search icon

Informations sur le document

Utilisation de cette documentation

Partie I Logiciel Oracle VM Server for SPARC 3.1

Chapitre 1 Présentation du logiciel Oracle VM Server for SPARC

A propos des versions d'Oracle VM Server for SPARC et d'SE Oracle Solaris

Hyperviseur et Logical Domains

Logical Domains Manager

Rôles des domaines

Interface de ligne de commande

Entrée/sortie virtuelle

Réseau virtuel

Stockage virtuel

Console virtuelle

Configuration des ressources

Configurations persistantes

Outil de conversion physique-à-virtuel Oracle VM Server for SPARC

Assistant de configuration Oracle VM Server for SPARC

Base MIB (Management Information Base) Oracle VM Server for SPARC

Chapitre 2 Installation et activation du logiciel

Composants logiciels Oracle VM Server for SPARC requis

Installation du logiciel Oracle VM Server for SPARC sur un nouveau système

Mise à jour du SE Oracle Solaris

Mise à niveau du microprogramme système

Téléchargement de Logical Domains Manager

Procédure de téléchargement du logiciel de Logical Domains Manager (Oracle Solaris 10)

Installation de Logical Domains Manager

Installation automatique du logiciel Logical Domains Manager (Oracle Solaris 10)

Installation manuelle du logiciel de Logical Domains Manager

Procédure d'installation manuelle du logiciel Oracle VM Server for SPARC 3.1 (Oracle Solaris 10)

Activation du démon de Logical Domains Manager

Procédure d'activation du démon de Logical Domains Manager

Mise à niveau d'un système utilisant déjà Oracle VM Server for SPARC

Mise à niveau du SE Oracle Solaris

Sauvegarde et restauration des répertoires de configuration enregistrés automatiquement

Procédure d'enregistrement et de restauration des répertoires de sauvegarde automatique

Sauvegarde et restauration du fichier de la base de données de contraintes de Logical Domains

Conservation du fichier de la base de données de contraintes de Logical Domains lors de l'utilisation de la fonction Live Upgrade d'Oracle Solaris 10.

Mise à niveau de Logical Domains Manager et du microprogramme du système

Procédure d'arrêt de tous les domaines s'exécutant sur la plate-forme, à l'exception du domaine de contrôle

Mise à niveau vers le logiciel Oracle VM Server for SPARC 3.1

Procédure de mise à niveau vers le logiciel Oracle VM Server for SPARC 3.1 (Oracle Solaris 10)

Procédure de mise à niveau vers le logiciel Oracle VM Server for SPARC 3.1 (Oracle Solaris 11)

Configuration usine par défaut et désactivation de domaines

Procédure de suppression de tous les domaines invités

Procédure de suppression des configurations de domaine

Procédure de restauration de la configuration usine par défaut

Procédure de désactivation de Logical Domains Manager

Procédure de suppression de Logical Domains Manager

Procédure de restauration de la configuration usine par défaut à partir du processeur de service

Chapitre 3 Sécurité d'Oracle VM Server for SPARC

Délégation de la gestion de Logical Domains à l'aide de droits

Utilisation des profils de droits et des rôles

Gestion des profils de droits utilisateurs

Procédure d'affectation d'un profil de droits à un utilisateur

Assignation de rôles aux utilisateurs

Procédure de création d'un rôle et d'affectation du rôle à un utilisateur

Contenus du profil de droits Logical Domains Manager

Contrôle de l'accès à une console de domaine à l'aide de droits utilisateur

Procédure de contrôle de l'accès à toutes les consoles de domaines par le biais de rôles

Procédure de contrôle de l'accès à toutes les consoles de domaines par le biais de profils de droits

Procédure de contrôle de l'accès à une console unique par le biais de rôles

Procédure de contrôle de l'accès à une console unique par le biais de profils de droits

Activation et utilisation de l'audit

Procédure d'activation de l'audit

Procédure de désactivation de l'audit

Procédure d'examen des enregistrements d'audit

Procédure de rotation des journaux d'audit

Utilisation de la journalisation des consoles de domaines

Procédure d'activation et de désactivation de la journalisation des consoles

Configuration requise du domaine de service pour la journalisation des consoles de domaines

Chapitre 4 Configuration des services et du domaine de contrôle

Messages de sortie

Création des services par défaut

Procédure de création des services par défaut

Configuration initiale du domaine de contrôle

Procédure de configuration du domaine de contrôle

Réinitialisation pour utiliser les domaines

Procédure de réinitialisation

Activation de la mise en réseau entre le domaine de contrôle/service et les autres domaines

Procédure de configuration du commutateur virtuel en tant qu'interface primary

Activation du démon du serveur de terminal du réseau virtuel

Procédure d'activation du démon du serveur de terminal du réseau virtuel

Chapitre 5 Configuration des domaines invités

Création et démarrage d'un domaine invité

Procédure de création et de démarrage d'un domaine invité

Installation du SE Oracle Solaris sur un domaine invité

Procédure d'installation du SE Oracle Solaris à l'aide d'un DVD sur un domaine invité

Procédure d'installation du SE Oracle Solaris sur un domaine invité à l'aide d'un fichier ISO Oracle Solaris

Procédure d'utilisation de la fonction JumpStart d'Oracle Solaris sur un domaine invité Oracle Solaris 10

Chapitre 6 Configuration des domaines d'E/S

Présentation d'un domaine d'E/S

Lignes directrices pour la création d'un domaine d'E/S

Création d'un domaine root par assignation de bus PCIe

Procédure de création d'un domaine d'E/S par assignation d'un bus PCIe

Création d'un domaine d'E/S par assignation de périphériques d'extrémité PCIe

Configuration matérielle et logicielle requise pour les E/S directes

Restrictions actuelles de la fonctionnalité d'E/S directes

Planification de la configuration des périphériques d'extrémité PCIe

Réinitialisation du domaine root

Procédure de modification matérielle PCIe

Procédure de création d'un domaine d'E/S par assignation d'un périphérique d'extrémité PCIe

Création d'un domaine d'E/S par assignation de fonctions virtuelles SR-IOV PCIe

Présentation de SR-IOV

Configuration matérielle et logicielle requise pour SR-IOV

Restrictions actuelles de la fonction SR-IOV

SR-IOV statique

Configuration logicielle requise pour la méthode SR-IOV statique

SR-IOV dynamique

Configuration logicielle requise pour la fonction SR-IOV dynamique

Configuration requise pour la fonction SR-IOV dynamique

Activation de la virtualisation des E/S

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

Planification de l'utilisation de fonctions virtuelles SR-IOV PCIe

Utilisation des fonctions virtuelles SR-IOV Ethernet

Configuration matérielle requise pour SR-IOV Ethernet

Restrictions applicables à SR-IOV Ethernet

Planification de l'utilisation des fonctions virtuelles SR-IOV Ethernet

Propriétés spécifiques aux périphériques et au réseau pour Ethernet

Création de fonctions Ethernet virtuelles

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

Destruction de fonctions Ethernet virtuelles

Procédure de destruction d'une fonction virtuelle SR-IOV Ethernet

Modification des fonctions virtuelles SR-IOV Ethernet

Procédure de modification d'une fonction virtuelle SR-IOV Ethernet

Ajout et suppression de fonctions virtuelles SR-IOV Ethernet sur des domaines d'E/S

Procédure d'ajout d'une fonction virtuelle SR-IOV Ethernet à un domaine d'E/S

Procédure de suppression d'une fonction virtuelle SR-IOV Ethernet d'un domaine d'E/S

Rubriques SR-IOV avancées : SR-IOV Ethernet

Configuration réseau avancée pour les fonctions virtuelles

Initialisation d'un domaine d'E/S à l'aide d'une fonction virtuelle SR-IOV

Propriétés SR-IOV spécifiques aux périphériques

Création de cartes d'interface réseau virtuelles (VNIC) sur des fonctions virtuelles SR-IOV

Utilisation d'une fonction virtuelle SR-IOV pour créer un domaine d'E/S

Procédure de création d'un domaine d'E/S par affectation d'une fonction virtuelle SR-IOV

Utilisation des fonctions virtuelles SR-IOV InfiniBand

Configuration matérielle requise pour SR-IOV InfiniBand

Création et destruction de fonctions virtuelles InfiniBand

Procédure de création d'une fonction virtuelle InfiniBand

Procédure de destruction d'une fonction virtuelle InfiniBand

Ajout et suppression de fonctions virtuelles InfiniBand sur des domaines d'E/S

Procédure d'ajout d'une fonction virtuelle InfiniBand à un domaine d'E/S

Procédure de suppression d'une fonction virtuelle InfiniBand d'un domaine d'E/S

Ajout et suppression de fonctions virtuelles InfiniBand de domaines root

Procédure d'ajout d'une fonction virtuelle InfiniBand à un domaine root

Procédure de suppression d'une fonction virtuelle InfiniBand d'un domaine root

Rubriques SR-IOV avancées : SR-IOV InfiniBand

Liste des fonctions virtuelles SR-IOV InfiniBand

Identification des fonctions SR-IOV InfiniBand

Utilisation des fonctions virtuelles SR-IOV Fibre Channel

Configuration matérielle requise pour SR-IOV Fibre Channel

Configuration matérielle requise et restrictions pour SR-IOV Fibre Channel

Propriétés du périphérique Fibre Channel en fonction de la classe

Allocation d'un nom universel pour les fonctions virtuelles Fibre Channel

Création de fonctions virtuelles SR-IOV Fibre Channel

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

Destruction de fonctions virtuelles SR-IOV Fibre Channel

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

Modification de fonctions virtuelles SR-IOV Fibre Channel

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

Ajout et suppression de fonctions virtuelles SR-IOV Fibre Channel sur des domaines d'E/S

Procédure d'ajout d'une fonction virtuelle SR-IOV Fibre Channel à un domaine d'E/S

Procédure de suppression d'une fonction virtuelle SR-IOV Fibre Channel d'un domaine d'E/S

Rubriques SR-IOV avancées : SR-IOV Fibre Channel

Accès à une fonction virtuelle Fibre Channel dans un domaine invité

SR-IOV : réinitialisation du domaine root

Utilisation de domaines root différents du domaine primary

Configuration requise pour les domaines root non primary

Restrictions du domaine root non primary

Activation de la virtualisation d'E/S pour un bus PCIe

Gestion des périphériques d'E/S directes sur des domaines root non primary

Gestion de fonctions virtuelles SR-IOV sur des domaines root non primary

Chapitre 7 Utilisation des disques virtuels

Présentation des disques virtuels

Identificateur de disque virtuel et nom de périphérique

Gestion des disques virtuels

Procédure d'ajout d'un disque virtuel

Procédure d'exportation multiple du backend d'un disque virtuel

Procédure de modification des options du disque virtuel

Procédure de modification de l'option de délai d'attente

Procédure de suppression d'un disque virtuel

Apparence d'un disque virtuel

Disque complet

Disque à tranche unique

Options de moteur de traitement du disque virtuel

Option de lecture seule (ro)

Option exclusive (excl)

Option de tranche (slice)

Backend du disque virtuel

Disque physique ou LUN de disque

Procédure d'exportation d'un disque physique en tant que disque virtuel

Tranche de disque physique

Procédure d'exportation d'une tranche de disque physique en tant que disque virtuel

Procédure d'exportation de la tranche 2

Exportation de fichier et de volume

Fichier ou volume exporté en tant que disque complet

Procédure d'exportation d'un fichier en tant que disque complet

Procédure d'exportation d'un volume ZFS en tant que disque complet

Fichier ou volume exporté en tant que disque à tranche unique

Procédure d'exportation d'un volume ZFS en tant que disque à tranche unique

Exportation de volumes et rétrocompatibilité

Récapitulatif des méthodes d'exportation des différents types de moteurs de traitement

Consignes d'exportation des fichiers et des tranches de fichiers en tant que disques virtuels

Utilisation du pilote de fichier loopback (lofi)

Exportation directe ou indirecte d'une tranche de disque

Configuration de la fonctionnalité de chemins d'accès multiples d'un disque virtuel

Fonctionnalité multipathing de disque virtuel et délai d'attente de disque virtuel

Procédure de configuration de la fonctionnalité multipathing de disque virtuel

CD, DVD et images ISO

Procédure d'exportation d'un CD ou d'un DVD à partir du domaine de service vers le domaine invité

Procédure d'exportation d'une image ISO à partir d'un domaine de contrôle pour installer un domaine hôte

Délai d'attente du disque virtuel

Disque virtuel et SCSI

Disque virtuel et commande format

Utilisation de ZFS avec les disques virtuels

Configuration d'un pool ZFS dans un domaine de service

Stockage des images de disque avec ZFS

Exemples de stockage d'images de disque avec ZFS

Création d'un instantané d'une image de disque

Utilisation du clone pour mettre à disposition un nouveau domaine

Clonage d'une image de disque d'initialisation

Procédure de création d'un instantané d'une image de disque d'un système non configuré

Utilisation des gestionnaires de volumes dans un environnement Oracle VM Server for SPARC

Utilisation de disques virtuels avec des gestionnaires de volumes

Utilisation des disques virtuels avec Solaris Volume Manager

Utilisation des disques virtuels lorsque VxVM est installé

Utilisation de gestionnaires de volumes avec les disques virtuels

Utilisation de ZFS avec les disques virtuels

Utilisation de Solaris Volume Manager avec les disques virtuels

Utilisation de VxVM avec les disques virtuels

Chapitre 8 Utilisation des réseaux virtuels

Introduction au réseau virtuel

Présentation de la gestion de réseau dans Oracle Solaris 10

Présentation de la gestion de réseau dans Oracle Solaris 11

Optimisation des performances de réseau virtuel

Configurations matérielle et logicielle requises

Configuration de vos domaines pour optimiser les performances de votre réseau virtuel

Commutateur virtuel

Périphérique réseau virtuel

Canaux LDC inter-Vnet

Contrôle de la quantité de bande passante de réseau physique consommée par un périphérique réseau virtuel

Restrictions de la bande passante réseau

Paramétrage de la limite de bande passante réseau

Identificateur de périphérique virtuel et nom d'interface réseau

Procédure d'identification du nom de l'interface réseau du SE Oracle Solaris

Assignation automatique et manuelle des adresses MAC

Plage d'adresses MAC assignées aux domaines

Algorithme d'assignation automatique

Détection des adresses MAC en doublon

Adresses MAC libérées

Utilisation des adaptateurs réseau avec les domaines

Procédure de détermination de la compatibilité GLDv3 d'un adaptateur réseau (Oracle Solaris 10)

Configuration d'un commutateur virtuel et du domaine de service pour NAT et le routage

Configuration de NAT sur un système Oracle Solaris 10

Procédure de configuration d'un commutateur virtuel pour fournir une connectivité externe aux domaines (Oracle Solaris 10)

Configuration de NAT sur un système Oracle Solaris 11

Procédure de configuration d'un commutateur virtuel pour fournir une connectivité externe aux domaines (Oracle Solaris 11)

Configuration d'IPMP dans un environnement Oracle VM Server for SPARC

Configuration des périphériques de réseau virtuel dans un groupe IPMP dans un domaine

Configuration et utilisation d'IPMP dans le domaine de service

Utilisation de l'IPMP basé sur liaison dans la mise en réseau virtuelle de Oracle VM Server for SPARC

Procédure de configuration des mises à jour de l'état de liaison physique

Configuration et utilisation d'IPMP dans les versions antérieures à Logical Domains 1.3

Configuration d'IPMP dans le domaine invité

Configuration d'IPMP dans le domaine de service

Procédure de configuration de la route d'un hôte pour l'IPMP basé sur sonde

Utilisation du balisage VLAN

ID de VLAN du port

ID de VLAN

Procédure d'assignation de VLAN à un commutateur virtuel et à un périphérique réseau virtuel

Procédure d'installation d'un domaine invité lorsque le serveur d'installation fait partie d'un VLAN

Utilisation des VLAN privés

Informations de configuration des PVLAN

Création et suppression de PVLAN

Création d'un PVLAN

Suppression d'un PVLAN

Visualisation des informations du PVLAN

Utilisation des E/S hybrides NIU

Procédure de configuration d'un commutateur virtuel avec un périphérique réseau NIU

Procédure d'activation et de désactivation du mode hybride

Utilisation du groupement de liaisons avec un commutateur virtuel

Configuration de trames géantes

Procédure de configuration du réseau virtuel et des périphériques de commutateur virtuels pour l'utilisation de trames géantes

Compatibilité avec des versions antérieures (ne connaissant pas les trames géantes) des pilotes vnet et vsw (Oracle Solaris 10)

Différences liées aux fonctions de gestion réseau Oracle Solaris 11

Chapitre 9 Migration des domaines

Introduction à la migration de domaines

Présentation d'une opération de migration

Compatibilité logicielle

Sécurité pour les opérations de migration

Migration d'un domaine

Réalisation d'une simulation

Réalisation de migrations non interactives

Migration d'un domaine actif

Configuration requise des CPU pour la migration de domaines

Configuration requise pour la mémoire

Configuration requise des périphériques d'E/S physiques pour la migration

Configuration requise des périphériques d'E/S virtuels physiques pour la migration

Configuration requise des périphériques d'extrémité PCIe pour la migration

Configuration requise pour la migration des fonctions virtuelles SR-IOV PCIe

Configuration requise pour les E/S hybrides NIU

Configuration requise des unités cryptographiques pour la migration

Reconfiguration retardée dans un domaine actif

Migration alors que la stratégie de gestion de l'alimentation élastique est en cours d'application sur un domaine actif

Opérations sur d'autres domaines

Migration d'un domaine à partir de la PROM OpenBoot ou un domaine en cours d'exécution dans le débogueur de noyau

Migration de domaines liés ou inactifs

Configuration requise des périphériques d'E/S virtuels physiques pour la migration

Configuration requise des périphériques d'extrémité PCIe pour la migration

Configuration requise pour la migration des fonctions virtuelles SR-IOV PCIe

Surveillance d'une migration en cours

Annulation d'une migration en cours

Récupération sur un échec de migration

Exemples de migrations

Chapitre 10 Gestion des ressources

Reconfiguration des ressources

Reconfiguration dynamique

Reconfiguration retardée

Allocation des ressources

Allocation de CPU

Procédure d'application de la contrainte whole-core

Procédure d'application de la contrainte max-cores

Interactions entre la contrainte whole-core et les autres fonctions des domaines

Reconfiguration dynamique de la CPU

Gestion dynamique des ressources

Configuration du système avec des partitions forcées

Vérification de la configuration d'un domaine

Configuration d'un domaine avec des coeurs complets de CPU

Procédure de création d'un nouveau domaine avec des coeurs complets de CPU

Procédure de configuration d'un domaine existant avec des coeurs complets de CPU

Procédure de configuration du domaine primary avec des coeurs complets de CPU

Interaction des systèmes de partitionnement forcé avec d'autres fonctions de Oracle VM Server for SPARC

Reconfiguration dynamique de la CPU

Gestion dynamique des ressources de la CPU

Gestion de l'alimentation

Réinitialisation ou nouvelle association de domaine

Affectation de ressources physiques à des domaines

Procédure de suppression de la contrainte physical-bindings

Procédure de suppression de toutes les ressources non associées physiquement

Gestion des ressources physiques sur le domaine de contrôle

Restrictions applicables à la gestion des ressources physiques sur les domaines

Utilisation de la reconfiguration dynamique de la mémoire

Ajout de mémoire

Suppression de mémoire

Demandes partielles de reconfiguration dynamique de mémoire

Reconfiguration de la mémoire du domaine de contrôle

Réduction de la mémoire du domaine de contrôle

Reconfiguration dynamique et retardée

Alignement de la mémoire

Alignement de la mémoire pour les domaines actifs

Alignement de la mémoire pour les domaines liés

Alignement de la mémoire pour les domaines inactifs

Ajout de mémoire non alignée

Exemples de reconfiguration dynamique de mémoire

Utilisation de la gestion de l'alimentation

Utilisation de la gestion dynamique des ressources

Liste des ressources du domaine

Sortie lisible par la machine

Définitions des balises

Définition des statistiques d'utilisation

Affichage des différentes listes

Liste des contraintes

Chapitre 11 Gestion des configurations de domaine

Gestion des configurations de domaine

Méthodes de récupération de configuration disponibles

Restauration des configurations à l'aide de l'enregistrement automatique

Stratégie de récupération automatique

Procédure de modification de la stratégie de récupération automatique

Enregistrement des configurations de domaine

Restauration des configurations de domaine

Procédure de restauration d'une configuration de domaine à partir d'un fichier XML (ldm add-domain)

Procédure de restauration d'une configuration de domaine à partir d'un fichier XML (ldm init-system)

Chapitre 12 Gestion des erreurs matérielles

Présentation de la gestion des erreurs matérielles

Utilisation de l'architecture FMA pour mettre sur liste noire les ressources défectueuses ou annuler leur configuration

Récupération de domaines après la détection de ressources défectueuses ou manquantes

Configuration dégradée

Activation du mode de récupération

Marquage de domaines comme dégradés

Marquage de ressources d'E/S comme évacuées

Chapitre 13 Réalisation d'autres tâches d'administration

Entrée de noms dans la CLI

Connexion à une console invitée sur le réseau

Utilisation de groupes de consoles

Procédure d'association de plusieurs consoles en un groupe

Délai d'arrêt d'un domaine fortement chargé pouvant être dépassé

Utilisation du SE Oracle Solaris avec Oracle VM Server for SPARC

Microprogramme OpenBoot indisponible une fois que le SE Oracle Solaris a démarré

Arrêt et redémarrage d'un serveur

Résultat des interruptions du SE Oracle Solaris

Résultats de l'arrêt ou de la réinitialisation du domaine de contrôle

Utilisation d'Oracle VM Server for SPARC avec le processeur de service

Configuration des dépendances de domaine

Exemples de dépendances de domaine

Cycles de dépendance

Détermination de l'endroit où les erreurs sont survenues lors du mappage du CPU et des adresses de mémoire

Mappage de CPU

Mappage de la mémoire

Exemple de mappage de CPU et de mémoire

Utilisation des identificateurs uniques universellement

Commande et API d'information sur le domaine virtuel

Utilisation des canaux de domaines logiques

Partie II Logiciel Oracle VM Server for SPARC facultatif

Glossaire

Index

Utilisation des fonctions virtuelles SR-IOV InfiniBand

Seule la fonction SR-IOV statique est prise en charge pour les périphériques SR-IOV InfiniBand.

Pour réduire les indisponibilités, exécutez l'ensemble des commandes SR-IOV en tant que groupe pendant que le domaine root est en reconfiguration retardée ou qu'un domaine invité est arrêté. Les commandes SR-IOV restreintes de cette manière sont les suivantes : ldm create-vf, ldm destroy-vf, ldm add-io et ldm remove-io.

En règle générale, les fonctions virtuelles sont assignées à plusieurs domaines invités. Une réinitialisation du domaine root affecte tous les domaines invités auxquels les fonctions virtuelles du domaine root ont été assignées.

Etant donné qu'une fonction virtuelle InfiniBand inutilisée mobilise peu de temps système, vous pouvez éviter les périodes d'indisponibilité en créant les fonctions virtuelles nécessaires au préalable, même si elles ne sont pas immédiatement utilisées.

Configuration matérielle requise pour SR-IOV InfiniBand

Pour plus d'informations sur la configuration matérielle requise pour SR-IOV InfiniBand PCIe, reportez-vous à la section Configuration matérielle et logicielle SR-IOV PCIe du manuel Notes de version d’Oracle VM Server for SPARC 3.1.1.1, 3.1.1 et 3.1 .

Pour la prise en charge de SR-IOV InfiniBand, le domaine root doit exécuter au moins le système d'exploitation Oracle Solaris 11.1.10.5.0. Les domaines d'E/S peuvent exécuter le SE Oracle Solaris 10 1/13 avec le patch OS 148888-04 OS ou au minimum le SE Oracle Solaris 11.1.10.5.0.

Création et destruction de fonctions virtuelles InfiniBand

Procédure de création d'une fonction virtuelle InfiniBand

Cette procédure indique comment créer une fonction virtuelle SR-IOV InfiniBand.

  1. Lancez une reconfiguration retardée sur le domaine root.
    primary# ldm start-reconf root-domain-name
  2. Activez la virtualisation d'E/S en définissant iov=on.

    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.

    primary# ldm set-io iov=on bus
  3. Créez une ou plusieurs fonctions virtuelles associées aux fonctions physiques issues de ce domaine root.
    primary# ldm create-vf pf-name

    Vous pouvez exécuter cette commande pour chaque fonction virtuelle que vous souhaitez créer. Vous pouvez également utiliser l'option –n pour créer plusieurs fonctions virtuelles à partir de la même fonction physique d'une seule commande. Reportez-vous aux pages de manuel Example 6–7 et ldm(1M).

  4. Réinitialisez le domaine root.

    Exécutez l'une des commandes suivantes :

    • Réinitialisation du domaine root s'il est différent de primary.
      primary# ldm stop-domain -r root-domain
    • Réinitialisation du domaine root primary.
      primary# shutdown -i6 -g0 -y
Exemple 6-15  Création d'une fonction virtuelle InfiniBand
primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
pci_0                                     BUS    pci_0    primary
niu_0                                     NIU    niu_0    primary
/SYS/MB/RISER0/PCIE0                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER1/PCIE1                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER2/PCIE2                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER0/PCIE3                      PCIE   pci_0    primary  OCC
/SYS/MB/RISER1/PCIE4                      PCIE   pci_0    primary  OCC
/SYS/MB/RISER2/PCIE5                      PCIE   pci_0    primary  EMP
/SYS/MB/SASHBA0                           PCIE   pci_0    primary  OCC
/SYS/MB/SASHBA1                           PCIE   pci_0    primary  OCC
/SYS/MB/NET0                              PCIE   pci_0    primary  OCC
/SYS/MB/NET2                              PCIE   pci_0    primary  OCC
/SYS/MB/RISER0/PCIE3/IOVIB.PF0            PF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF1                   PF     pci_0    primary
/SYS/MB/NET2/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET2/IOVNET.PF1                   PF     pci_0    primary

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

primary# ldm list-io -l /SYS/MB/RISER1/PCIE4/IOVIB.PF0
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0]
    maxvfs = 64

L'exemple suivant indique comment créer une fonction virtuelle statique. Lancez tout d'abord une reconfiguration retardée sur le domaine primary et activez la virtualisation d'E/S sur le bus PCIe pci_0 . Etant donné que le bus pci_0 a déjà été assigné au domaine root primary, vous devez utiliser la commande ldm set-io pour activer la virtualisation d'E/S.

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

primary# ldm set-io iov=on pci_0
-----------------------------------------------------------------------
Notice: The primary domain is in the process of a delayed reconfiguration.
Any changes made to the primary domain will only take effect after it reboots.
-----------------------------------------------------------------------

Vous pouvez ensuite utiliser la commande ldm create-vf pour créer une fonction virtuelle à partir de la fonction physique /SYS/MB/RISER1/PCIE4/IOVIB.PF0.

primary# ldm create-vf /SYS/MB/RISER1/PCIE4/IOVIB.PF0
-----------------------------------------------------------------------
Notice: The primary domain is in the process of a delayed reconfiguration.
Any changes made to the primary domain will only take effect after it reboots.
----------------------------------------------------------------------
Created new vf: /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0

Notez que vous pouvez créer plusieurs fonctions virtuelles au cours d'une même reconfiguration retardée. La commande suivante crée une deuxième fonction virtuelle :

primary# ldm create-vf /SYS/MB/RISER1/PCIE4/IOVIB.PF0
-----------------------------------------------------------------------
Notice: The primary domain is in the process of a delayed reconfiguration.
Any changes made to the primary domain will only take effect after it reboots.
-----------------------------------------------------------------------
Created new vf: /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1

Pour finir, réinitialisez le domaine root primary pour appliquer les modifications.

primary# shutdown -i6 -g0 -y
Shutdown started.

Changing to init state 6 - please wait
...

Procédure de destruction d'une fonction virtuelle InfiniBand

Cette procédure indique comment détruire une fonction virtuelle SR-IOV InfiniBand.

Vous pouvez détruire une fonction virtuelle si elle n'est pas affectée à un domaine. Vous pouvez uniquement détruire une fonction virtuelle dans l'ordre inverse de la création  en d'autres termes, seule la dernière fonction virtuelle créée peut être détruite. La configuration résultante est validée par le pilote de la fonction physique.

  1. Lancez une reconfiguration retardée sur le domaine root.
    primary# ldm start-reconf root-domain-name
  2. Détruisez une ou plusieurs des fonctions virtuelles associées aux fonctions physiques issues de ce domaine root.
    primary# ldm destroy-vf vf-name

    Vous pouvez exécuter cette commande pour chaque fonction virtuelle que vous souhaitez détruire. Vous pouvez également utiliser l'option –n pour détruire plusieurs fonctions virtuelles à partir de la même fonction physique d'une seule commande. Reportez-vous aux pages de manuel Example 6–9 et ldm(1M).

  3. Réinitialisez le domaine root.

    Exécutez l'une des commandes suivantes :

    • Réinitialisation du domaine root s'il est différent de primary.
      primary# ldm stop-domain -r root-domain
    • Réinitialisation du domaine root primary.
      primary# shutdown -i6 -g0 -y
Exemple 6-16  Destruction d'une fonction virtuelle InfiniBand

L'exemple suivant illustre la destruction de la fonction virtuelle InfiniBand statique /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1.

La commande ldm list-io affiche des informations sur les bus, les fonctions physiques et les fonctions virtuelles.

primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN STATUS
----                                      ----   ---      ------ ------
pci_0                                     BUS    pci_0    primary  IOV
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0

La commande ldm list-io -l permet d'obtenir des informations supplémentaires sur la fonction physique et les fonctions virtuelles associées.

primary# ldm list-io -l /SYS/MB/RISER1/PCIE4/IOVIB.PF0
NAME                                      TYPE   BUS      DOMAIN STATUS
----                                      ----   ---      ------ ------
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0]
    maxvfs = 64
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,1]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,2]

Vous pouvez uniquement détruire une fonction virtuelle si elle n'est pas assignée à un domaine. La colonne DOMAIN de la sortie ldm list-io -l affiche le nom de tous les domaines auxquels une fonction virtuelle est affectée. De plus, les fonctions virtuelles doivent être détruites dans l'ordre inverse de leur création. Par conséquent, dans cet exemple, vous devez détruire la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1 avant de pouvoir détruire la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0.

Après avoir identifié la fonction virtuelle appropriée, vous pouvez la détruire. Commencez par lancer une reconfiguration retardée.

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

primary# ldm destroy-vf /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1
-----------------------------------------------------------------------
Notice: The primary domain is in the process of a delayed reconfiguration.
Any changes made to the primary domain will only take effect after it reboots.
-----------------------------------------------------------------------

Vous pouvez exécuter plusieurs commandes ldm destroy-vf dans le cadre d'une reconfiguration retardée. Par conséquent, vous pourriez également détruire la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0.

Pour finir, réinitialisez le domaine root primary pour appliquer les modifications.

primary# shutdown -i6 -g0 -y
Shutdown started.

Changing to init state 6 - please wait
...

Ajout et suppression de fonctions virtuelles InfiniBand sur des domaines d'E/S

Procédure d'ajout d'une fonction virtuelle InfiniBand à un domaine d'E/S

Cette procédure indique comment ajouter une fonction virtuelle SR-IOV InfiniBand à un domaine d'E/S.

  1. Arrêtez le domaine d'E/S.
    primary# ldm stop-domain domain-name
  2. Ajoutez une ou plusieurs fonctions virtuelles au domaine d'E/S.

    vf-name est le pseudonyme ou le nom du chemin d'accès de la fonction virtuelle. La pratique recommandée est d'utiliser le pseudonyme. domain-name représente le nom du domaine auquel vous ajoutez la fonction virtuelle. Le domaine d'E/S spécifié doit avoir l'état inactif ou lié.

    primary# ldm add-io vf-name domain-name
  3. Démarrez le domaine d'E/S.
    primary# ldm start-domain domain-name
Exemple 6-17  Ajout d'une fonction virtuelle InfiniBand

L'exemple suivant indique comment ajouter la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 au domaine d'E/S iodom1.

Commencez par identifier la fonction virtuelle à assigner.

primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN STATUS
----                                      ----   ---      ------ ------
pci_0                                     BUS    pci_0    primary  IOV
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0

Pour ajouter une fonction virtuelle à un domaine d'E/S, celle-ci ne doit pas être assignée. La colonne DOMAIN indique le nom du domaine auquel la fonction virtuelle est assignée. Dans ce cas, /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 n'est assigné à aucun domaine.

Pour ajouter une fonction virtuelle à un domaine, le domaine doit être inactif ou lié.

primary# ldm list-domain
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    32    64G      0.2%  0.2%  56m
iodom1           active     -n----  5000    8     8G        33%   33%  25m

La sortie ldm list-domain montre que le domaine d'E/S iodom1 est actif et qu'il doit donc être arrêté.

primary# ldm stop iodom1
LDom iodom1 stopped
primary# ldm list-domain
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    32    64G      0.0%  0.0%  57m
iodom1           bound      ------  5000    8     8G

Vous pouvez à présent ajouter la fonction virtuelle au domaine d'E/S.

primary# ldm add-io /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 iodom1
primary# ldm list-io
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1

Notez que vous pouvez ajouter plusieurs fonctions virtuelles pendant l'arrêt d'un domaine d'E/S. Par exemple, vous pouvez ajouter d'autres fonctions virtuelles non assignées telles que /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3 à iodom1. Une fois que vous avez ajouté les fonctions virtuelles, vous pouvez redémarrer le domaine d'E/S.

primary# ldm start iodom1
LDom iodom1 started
primary# ldm list-domain
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    32    64G      1.0%  1.0%  1h 18m
iodom1           active     -n----  5000    8     8G        36%   36%  1m

Procédure de suppression d'une fonction virtuelle InfiniBand d'un domaine d'E/S

Cette procédure indique comment supprimer une fonction virtuelle SR-IOV InfiniBand d'un domaine d'E/S.

  1. Arrêtez le domaine d'E/S.
    primary# ldm stop-domain domain-name
  2. Retirez une ou plusieurs fonctions virtuelles du domaine d'E/S.

    vf-name est le pseudonyme ou le nom du chemin d'accès de la fonction virtuelle. La pratique recommandée est d'utiliser le pseudonyme du périphérique. domain-name représente le nom du domaine dans lequel vous souhaitez supprimer la fonction virtuelle. Le domaine d'E/S spécifié doit avoir l'état inactif ou lié.


    Remarque - Avant de supprimer la fonction virtuelle du domaine d'E/S, assurez-vous qu'elle n'est pas indispensable à l'initialisation du domaine.
    primary# ldm rm-io vf-name domain-name
  3. Démarrez le domaine d'E/S.
    primary# ldm start-domain domain-name
Exemple 6-18  Suppression d'une fonction virtuelle InfiniBand

L'exemple suivant illustre la suppression de la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 du domaine d'E/S iodom1.

Commencez par identifier les fonctions virtuelles à supprimer.

primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN STATUS
----                                      ----   ---      ------ ------
pci_0                                     BUS    pci_0    primary  IOV
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1

La colonne DOMAIN indique le nom du domaine auquel la fonction virtuelle est assignée. La fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 est assignée à iodom1.

Vous pouvez uniquement supprimer une fonction virtuelle d'un domaine d'E/S si celui-ci présente l'état inactif ou lié. Utilisez la commande ldm list-domain pour déterminer l'état du domaine.

primary# ldm list-domain
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    32    64G      0.3%  0.3%  29m
iodom1           active     -n----  5000    8     8G        17%   17%  11m

Dans ce cas, le domaine iodom1 est actif et doit donc être arrêté.

primary# ldm stop iodom1
LDOM iodom1 stopped
primary# ldm list-domain
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    32    64G      0.0%  0.0%  31m
iodom1           bound      ------  5000    8     8G

Vous pouvez à présent supprimer la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 de iodom1.

primary# ldm rm-io /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2 iodom1
primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN STATUS
----                                      ----   ---      ------ ------
...
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0
...

Notez que la colonne DOMAIN de la fonction virtuelle est maintenant vide.

Vous pouvez supprimer plusieurs fonctions virtuelles lorsqu'un domaine d'E/S est arrêté. Dans cet exemple, vous pourriez également supprimer la fonction virtuelle /SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3. Une fois que vous avez supprimé les fonctions virtuelles, vous pouvez redémarrer le domaine d'E/S.

primary# ldm start iodom1
LDom iodom1 started
primary# ldm list-domain
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    32    64G      0.3%  0.3%  39m
iodom1           active     -n----  5000    8     8G       9.4%  9.4%  5s

Ajout et suppression de fonctions virtuelles InfiniBand de domaines root

Procédure d'ajout d'une fonction virtuelle InfiniBand à un domaine root

Cette procédure indique comment ajouter une fonction virtuelle SR-IOV InfiniBand à un domaine root.

  1. Lancez une reconfiguration retardée.
    primary# ldm start-reconf root-domain
  2. Ajoutez une ou plusieurs fonctions virtuelles au domaine root.

    vf-name est le pseudonyme ou le nom du chemin d'accès de la fonction virtuelle. La pratique recommandée est d'utiliser le pseudonyme. root-domain-name spécifie le nom du domaine root duquel vous supprimez la fonction virtuelle.

    primary# ldm add-io vf-name root-domain-name
  3. Réinitialisez le domaine root.

    Exécutez l'une des commandes suivantes :

    • Réinitialisation du domaine root s'il est différent de primary.
      primary# ldm stop-domain -r root-domain-name
    • Réinitialisation du domaine root primary.
      primary# shutdown -i6 -g0 -y

Procédure de suppression d'une fonction virtuelle InfiniBand d'un domaine root

Cette procédure indique comment supprimer une fonction virtuelle SR-IOV InfiniBand d'un domaine root.

  1. Lancez une reconfiguration retardée.
    primary# ldm start-reconf root-domain
  2. Supprimez une ou plusieurs fonctions virtuelles du domaine root.

    vf-name est le pseudonyme ou le nom du chemin d'accès de la fonction virtuelle. La pratique recommandée est d'utiliser le pseudonyme. root-domain-name spécifie le nom du domaine root duquel vous supprimez la fonction virtuelle.

    primary# ldm remove-io vf-name root-domain-name
  3. Réinitialisez le domaine root.

    Exécutez l'une des commandes suivantes :

    • Réinitialisation du domaine root s'il est différent de primary.
      primary# ldm stop-domain -r root-domain-name
    • Réinitialisation du domaine root primary.
      primary# shutdown -i6 -g0 -y

Rubriques SR-IOV avancées : SR-IOV InfiniBand

Cette section indique comment identifier les fonctions physiques et virtuelles InfiniBand et mettre en corrélation les vues Oracle Solaris et Logical Domains Manager des fonctions physiques et virtuelles InfiniBand.

Liste des fonctions virtuelles SR-IOV InfiniBand

L'exemple suivant illustre différentes manières d'afficher les informations relatives à la fonction physique /SYS/MB/RISER1/PCIE4/IOVIB.PF0. La présence de la chaîne IOVIB dans le nom de fonction physique indique qu'il s'agit d'un périphérique SR-IOV InfiniBand.

primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
pci_0                                     BUS    pci_0    primary  IOV
niu_0                                     NIU    niu_0    primary
/SYS/MB/RISER0/PCIE0                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER1/PCIE1                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER2/PCIE2                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER0/PCIE3                      PCIE   pci_0    primary  OCC
/SYS/MB/RISER1/PCIE4                      PCIE   pci_0    primary  OCC
/SYS/MB/RISER2/PCIE5                      PCIE   pci_0    primary  EMP
/SYS/MB/SASHBA0                           PCIE   pci_0    primary  OCC
/SYS/MB/SASHBA1                           PCIE   pci_0    primary  OCC
/SYS/MB/NET0                              PCIE   pci_0    primary  OCC
/SYS/MB/NET2                              PCIE   pci_0    primary  OCC
/SYS/MB/RISER0/PCIE3/IOVIB.PF0            PF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF1                   PF     pci_0    primary
/SYS/MB/NET2/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET2/IOVNET.PF1                   PF     pci_0    primary
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF0        VF     pci_0    primary
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF1        VF     pci_0    primary
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF2        VF     pci_0    iodom1
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF3        VF     pci_0    iodom1
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1

La commande ldm list-io -l fournit des informations plus détaillées sur le périphérique de fonction physique spécifié, /SYS/MB/RISER1/PCIE4/IOVIB.PF0. La valeur maxvfs indique que le nombre maximal de fonctions virtuelles pris en charge par le périphérique physique est 64. Pour chaque fonction virtuelle associée à la fonction physique, la sortie affiche ce qui suit :

Cette sortie, ldm list-io -l, montre que VF0 et VF1 sont assignés au domaine primary et que VF2 et VF3 sont assignés au domaine d'E/S iodom1.

primary# ldm list-io -l /SYS/MB/RISER1/PCIE4/IOVIB.PF0
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0]
    maxvfs = 64
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,1]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,2]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,3]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,4]
Identification des fonctions SR-IOV InfiniBand

Cette section indique comment identifier les périphériques SR-IOV InfiniBand sur un système Oracle Solaris 11 et un système Oracle Solaris 10.

Servez-vous de la commande ldm list-io -l pour afficher le nom du chemin d'accès de périphérique Oracle Solaris associé à chaque fonction physique et virtuelle.

primary# ldm list-io -l /SYS/MB/RISER1/PCIE4/IOVIB.PF0
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0]
    maxvfs = 64
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,1]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,2]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,3]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,4]

Oracle Solaris 11 :

Exécutez la commande dladm show-phys -L d'Oracle Solaris 11 pour faire correspondre chaque instance IPoIB (IP over InfiniBand) à sa carte physique. Par exemple, la commande suivante met en évidence les instances IPoIB qui utilisent la carte se trouvant dans l'emplacement PCIE4, qui est la même carte que celle de l'exemple ldm list-io -l ci-dessus.

primary# dladm show-phys -L | grep PCIE4
net5              ibp0         PCIE4/PORT1
net6              ibp1         PCIE4/PORT2
net19             ibp8         PCIE4/PORT1
net9              ibp9         PCIE4/PORT2
net18             ibp4         PCIE4/PORT1
net11             ibp5         PCIE4/PORT2

Chaque adaptateur de canal hôte (HCA, Host Channel Adapter) InfiniBand possède un ID unique, appelé GUID. Chaque port possède également un GUID (en général, un HCA est doté de deux ports). Un GUID de HCA InfiniBand identifie l'adaptateur de façon unique. Les GUID des ports identifient chaque port de HCA de façon unique et jouent un rôle semblable à celui de l'adresse MAC d'un périphérique réseau. Ces GUID à 16 chiffres sont utilisés par les outils de gestion et de diagnostic InfiniBand.

Exécutez la commande dladm show-ib d'Oracle Solaris 11 pour obtenir les informations de GUID des périphériques SR-IOV InfiniBand. Les fonctions physiques et virtuelles d'un même périphérique ont des valeurs de GUID de HCA proches. Le 11e chiffre hexadécimal du GUID de HCA indique la relation entre une fonction physique et ses fonctions virtuelles. Notez que les zéros de tête sont supprimés dans les colonnes HCAGUID et PORTGUID.

Par exemple, la fonction physique PF0 est accompagnée de deux fonctions virtuelles, VF0 et VF1, qui sont affectées au domaine primary. Le 11e chiffre hexadécimal de chaque fonction virtuelle est incrémenté de un par rapport à celui de la fonction physique correspondante. Ainsi, si le GUID de PF0 est 8, les GUID de VF0 et de VF1 sont respectivement 9 et A.

La sortie de la commande dladm show-ib ci-après indique que les liens net5 et net6 appartiennent à la fonction physique PF0. Les liens net19 et net9 appartiennent à VF0 du même périphérique tandis que net18 et net11 appartiennent à VF1.

primary# dladm show-ib
LINK         HCAGUID         PORTGUID        PORT STATE  PKEYS
net6         21280001A17F56  21280001A17F58  2    up     FFFF
net5         21280001A17F56  21280001A17F57  1    up     FFFF
net19        21290001A17F56  14050000000001  1    up     FFFF
net9         21290001A17F56  14050000000008  2    up     FFFF
net18        212A0001A17F56  14050000000002  1    up     FFFF
net11        212A0001A17F56  14050000000009  2    up     FFFF

Le périphérique de la sortie dladm show-phys d'Oracle Solaris 11 suivante indique la relation entre les liens et les périphériques de port InfiniBand sous-jacents (ibpX).

primary# dladm show-phys
LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
...
net6              Infiniband           up         32000  unknown   ibp1
net5              Infiniband           up         32000  unknown   ibp0
net19             Infiniband           up         32000  unknown   ibp8
net9              Infiniband           up         32000  unknown   ibp9
net18             Infiniband           up         32000  unknown   ibp4
net11             Infiniband           up         32000  unknown   ibp5

Exécutez la commande ls -l pour afficher les chemins d'accès de périphérique des ports InfiniBand (IB port). Un périphérique IB port est subordonné à un chemin d'accès de périphérique visible dans la sortie de la commande ldm list-io -l. Une fonction physique possède une adresse d'unité en une partie, par exemple pciex15b3,673c@0, tandis que les fonctions virtuelles ont des adresses d'unité en deux parties, par exemple pciex15b3,1002@0,2. La valeur de la seconde partie de l'adresse d'unité est égale au numéro de la fonction virtuelle additionné de un. (Dans ce cas, le deuxième composant est 2, ce qui signifie que ce périphérique correspond à la fonction virtuelle 1.) La sortie suivante indique que /dev/ibp0 est une fonction physique et /dev/ibp5 une fonction virtuelle.

primary# ls -l /dev/ibp0
lrwxrwxrwx   1 root     root          83 Apr 18 12:02 /dev/ibp0 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0/hermon@0/ibport@1,0,ipib:ibp0
primary# ls -l /dev/ibp5
lrwxrwxrwx   1 root     root          85 Apr 22 23:29 /dev/ibp5 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,1002@0,2/hermon@3/ibport@2,0,ipib:ibp5

Vous pouvez utiliser la commande ibv_devices pour afficher le nom du périphérique OpenFabrics ainsi que le GUID du noeud (HCA). Lorsque des fonctions virtuelles sont présentes, la colonne Type indique si la fonction est physique ou virtuelle.

primary# ibv_devices
device                 node GUID            type
------              ----------------        ----
mlx4_4              0002c90300a38910         PF
mlx4_5              0021280001a17f56         PF
mlx4_0              0002cb0300a38910         VF
mlx4_1              0002ca0300a38910         VF
mlx4_2              00212a0001a17f56         VF                        
mlx4_3              0021290001a17f56         VF

Oracle Solaris 10 :

Dans un domaine d'E/S invité Oracle Solaris 10, exécutez la commande dladm show-dev pour afficher les instances IPoIB, qui portent un nom de la forme : ibdxx.

# dladm show-dev
vnet0          link: up        speed: 0     Mbps       duplex: unknown
ibd0           link: up        speed: 32000 Mbps       duplex: unknown
ibd1           link: up        speed: 32000 Mbps       duplex: unknown
ibd2           link: up        speed: 32000 Mbps       duplex: unknown
ibd3           link: up        speed: 32000 Mbps       duplex: unknown

La commande ls -l appliquée aux noms de chemins d'accès de HCA se trouvant dans le répertoire /devices/ permet d'extraire un HCA et les GUID de HCA correspondants.

# ls -l /devices/ib\:[0-9]*
crw-r--r--   1 root     sys       67,  0 Jun 12 16:27 /devices/ib:212B0001A17F56
crw-r--r--   1 root     sys       67,  0 Jun 12 16:27 /devices/ib:212C0001A17F56

Les GUID figurant dans la sortie de la commande ibv_devices (notez le 11e chiffre hexadécimal, les lettres "B" et "C" dans ce cas) indiquent qu'il s'agit de fonctions virtuelles affectées au domaine Oracle Solaris 10. Vous pouvez obtenir davantage d'informations sur les instances IPoIB en exécutant la commande ls -l sur les noms de chemins d'accès IPoIB /dev.

# ls -l /dev/ibd*
lrwxrwxrwx   1 root     other         29 May 23 16:26 /dev/ibd ->
../devices/pseudo/clone@0:ibd
lrwxrwxrwx   1 root     root          89 May 31 10:52 /dev/ibd0 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,1002@0,3/hermon@0/ibport@1,ffff,ipib:ibd0
lrwxrwxrwx   1 root     root          89 May 31 10:52 /dev/ibd1 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,1002@0,3/hermon@0/ibport@2,ffff,ipib:ibd1
lrwxrwxrwx   1 root     root          89 Jun 12 18:36 /dev/ibd2 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,1002@0,4/hermon@1/ibport@1,ffff,ipib:ibd2
lrwxrwxrwx   1 root     root          89 Jun 12 18:36 /dev/ibd3 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,1002@0,4/hermon@1/ibport@2,ffff,ipib:ibd3

Chaque chemin d'accès commence par le chemin d'accès de périphérique indiqué dans la sortie ldm list-io -l. Les fonctions virtuelles telles que pciex15b3,1002@0,4 ont une adresse d'unité en deux parties où la valeur de la deuxième partie est égale à celle de la fonction virtuelle (VF3 dans ce cas) additionnée de un.

Le périphérique ibport possède une adresse d'unité en trois parties suivie de deux points puis du nom d'instance du périphérique IPoIB. La première partie de l'adresse d'unité correspond au numéro de port. La deuxième partie contient la valeur hexadécimale de la clé de partition (P-key). Notez que les valeurs P-key InfiniBand sont similaires aux VLAN pour Ethernet. La troisième partie est la chaîne ipib.

La sortie de la commande ls -l /dev/ibd3 montre que l'instance IPoIB ibd3 utilise le port 2 et la valeur de P-key ffff.