Go to main content
Guía de administración para Oracle® VM Server for SPARC 3.4

Salir de la Vista de impresión

Actualización: Agosto de 2016
 
 

Uso de una función virtual SR-IOV para crear un dominio de E/S

En el procedimiento siguiente, se explica cómo crear un dominio de E/S que incluye funciones virtuales SR-IOV PCIe.

Cómo crear un dominio de E/S mediante la asignación de una función virtual SR-IOV a él

Planee por adelantado para reducir el número de reinicios del dominio, lo que permite minimizar el tiempo de inactividad.

Antes de empezar

Antes de comenzar, asegúrese de haber activado la virtualización de E/S para el bus PCIe que es el elemento principal de la función física a partir de la cual se crean funciones virtuales. Consulte Cómo activar la virtualización de E/S para un bus PCIe.

  1. Identifique una función física SR-IOV para compartir con un dominio de E/S que utilice la función SR-IOV.
    primary# ldm list-io
  2. Cree una o más funciones virtuales para la función física.
    primary# ldm create-vf pf-name

    Puede ejecutar este comando para cada función virtual que desea crear. También puede utilizar la opción –n para crear más de una función virtual a partir de la misma función física en un único comando. Consulte Ejemplo 10 y la página del comando man ldm(1M).


    Notas - Este comando falla si ya se han creado otras funciones virtuales a partir de la función física asociada y si algunas de esas funciones virtuales están enlazadas a otro dominio.
  3. Vea la lista de funciones virtuales disponibles en el dominio raíz.
    primary# ldm list-io
  4. Asigne la función virtual que creó en el Step 2 a su dominio de E/S de destino.
    primary# ldm add-io vf-name domain-name

    Notas - Si el sistema operativo que se ejecuta en el dominio de E/S no admite SR-IOV dinámica, debe utilizar el método estático. Consulte SR-IOV estática.
  5. Verifique que la función virtual esté disponible en el dominio de E/S.

    El siguiente comando de Oracle Solaris 11 muestra la disponibilidad de la función virtual:

    guest# dladm show-phys
Ejemplo 16  Creación dinámica de un dominio de E/S mediante la asignación de una función virtual SR-IOV a él

En el siguiente ejemplo dinámico, se muestra cómo crear una función virtual, /SYS/MB/NET0/IOVNET.PF0.VF0, para una función física, /SYS/MB/NET0/IOVNET.PF0, y cómo asignar la función virtual al dominio de E/S ldg1.

    En este ejemplo, se presupone que las siguientes circunstancias son verdaderas:

  • El sistema operativo que se ejecuta en el dominio primary admite operaciones de SR-IOV dinámica.

  • El bus pci_0 está asignado al dominio primary y se ha inicializado para las operaciones de virtualización de E/S.

  • La función física /SYS/MB/NET0/IOVNET.PF0 pertenece al bus pci_0.

  • La función física /SYS/MB/NET0/IOVNET.PF0 no tiene funciones virtuales existentes asignadas a los dominios.

  • El dominio ldg1 está activo y se ha iniciado, y el sistema operativo admite operaciones de SR-IOV dinámica.

Cree la función virtual a partir de la función física /SYS/MB/NET0/IOVNET.PF0.

primary# ldm create-vf /SYS/MB/NET0/IOVNET.PF0
Created new vf: /SYS/MB/NET0/IOVNET.PF0.VF0

Agregue la función virtual /SYS/MB/NET0/IOVNET.PF0.VF0 al dominio ldg1.

primary# ldm add-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1

El siguiente comando muestra que la función virtual se ha agregado al dominio ldg1.

primary# ldm list-io
NAME                          TYPE  BUS      DOMAIN    STATUS
----                          ----  ---      ------    ------
niu_0                         NIU   niu_0    primary
niu_1                         NIU   niu_1    primary
pci_0                         BUS   pci_0    primary   IOV
pci_1                         BUS   pci_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    primary   OCC
/SYS/MB/PCIE3                 PCIE  pci_1    primary   OCC
/SYS/MB/PCIE5                 PCIE  pci_1    primary   OCC
/SYS/MB/PCIE7                 PCIE  pci_1    primary   EMP
/SYS/MB/PCIE9                 PCIE  pci_1    primary   EMP
/SYS/MB/NET2                  PCIE  pci_1    primary   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    primary
/SYS/MB/PCIE5/IOVNET.PF1      PF    pci_1    primary
/SYS/MB/NET2/IOVNET.PF0       PF    pci_1    primary
/SYS/MB/NET2/IOVNET.PF1       PF    pci_1    primary
/SYS/MB/NET0/IOVNET.PF0.VF0   VF    pci_0    ldg1
Ejemplo 17  Creación estática de un dominio de E/S mediante la asignación de una función virtual SR-IOV a él

En el siguiente ejemplo estático, se muestra cómo crear una función virtual, /SYS/MB/NET0/IOVNET.PF0.VF0, para una función física, /SYS/MB/NET0/IOVNET.PF0, y cómo asignar la función virtual al dominio de E/S ldg1.

    En este ejemplo, se presupone que las siguientes circunstancias son verdaderas:

  • El sistema operativo que se ejecuta en el dominio primary no admite operaciones de SR-IOV dinámica.

  • El bus pci_0 está asignado al dominio primary y no se ha inicializado para las operaciones de virtualización de E/S.

  • La función física /SYS/MB/NET0/IOVNET.PF0 pertenece al bus pci_0.

  • La función física /SYS/MB/NET0/IOVNET.PF0 no tiene funciones virtuales existentes asignadas a los dominios.

  • El dominio ldg1 está activo y se ha iniciado, y el sistema operativo no admite operaciones de SR-IOV dinámica.

  • El dominio ldg1 tiene la propiedad auto-boot? definida como true, de modo que el dominio arranca automáticamente cuando se inicia el dominio.

Primero, inicie una reconfiguración retrasada en el dominio primary, active la virtualización de E/S y cree la función virtual a partir de la función física /SYS/MB/NET0/IOVNET.PF0.

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
primary# ldm create-vf /SYS/MB/NET0/IOVNET.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/NET0/IOVNET.PF0.VF0

Luego, cierre el dominio primary.

primary# shutdown -i6 -g0 -y

Detenga el dominio ldg1, agregue la función virtual e inicie el dominio.

primary# ldm stop ldg1
primary# ldm add-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1
primary# ldm start ldg1

El siguiente comando muestra que la función virtual se ha agregado al dominio ldg1.

primary# ldm list-io
NAME                          TYPE  BUS      DOMAIN    STATUS
----                          ----  ---      ------    ------
niu_0                         NIU   niu_0    primary
niu_1                         NIU   niu_1    primary
pci_0                         BUS   pci_0    primary   IOV
pci_1                         BUS   pci_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    primary   OCC
/SYS/MB/PCIE3                 PCIE  pci_1    primary   OCC
/SYS/MB/PCIE5                 PCIE  pci_1    primary   OCC
/SYS/MB/PCIE7                 PCIE  pci_1    primary   EMP
/SYS/MB/PCIE9                 PCIE  pci_1    primary   EMP
/SYS/MB/NET2                  PCIE  pci_1    primary   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    primary
/SYS/MB/PCIE5/IOVNET.PF1      PF    pci_1    primary
/SYS/MB/NET2/IOVNET.PF0       PF    pci_1    primary
/SYS/MB/NET2/IOVNET.PF1       PF    pci_1    primary
/SYS/MB/NET0/IOVNET.PF0.VF0   VF    pci_0    ldg1