JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle VM Server for SPARC 3.0 管理指南     Oracle VM Server for SPARC (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分Oracle VM Server for SPARC 3.0 软件

1.  Oracle VM Server for SPARC 软件概述

2.  安装和启用软件

3.  Oracle VM Server for SPARC 安全

4.  设置服务和控制域

5.  设置来宾域

6.  设置 I/O 域

I/O 域概述

创建 I/O 域的一般准则

分配 PCIe 总线

如何通过分配 PCIe 总线创建 I/O 域

分配 PCIe 端点设备

直接 I/O 硬件和软件要求

当前直接 I/O 功能限制

规划 PCIe 端点设备配置

重新引导根域

更改 PCIe 硬件

如何通过分配 PCIe 端点设备创建 I/O 域

使用 PCIe SR-IOV 虚拟功能

SR-IOV 概述

SR-IOV 硬件和软件要求

当前的 SR-IOV 功能限制

PCIe SR-IOV 虚拟功能的使用计划

创建、修改和销毁虚拟功能

如何创建虚拟功能

如何修改虚拟功能

如何销毁虚拟功能

在 I/O 域中添加和删除虚拟功能

如何将虚拟功能添加到 I/O 域

如何从 I/O 域删除虚拟功能

SR-IOV:重新引导根域

使用 SR-IOV 虚拟功能创建 I/O 域

如何通过向其分配 SR-IOV 虚拟功能来创建 I/O 域

高级 SR-IOV 主题

SR-IOV 特定于设备的属性

虚拟功能的高级网络配置

7.  使用虚拟磁盘

8.  使用虚拟网络

9.  迁移域

10.  管理资源

11.  管理域配置

12.  执行其他管理任务

第 2 部分可选的 Oracle VM Server for SPARC 软件

13.  Oracle VM Server for SPARC 物理机到虚拟机转换工具

14.  Oracle VM Server for SPARC Configuration Assistant (Oracle Solaris 10)

15.  使用电源管理

16.  使用 Oracle VM Server for SPARC 管理信息库软件

17.  Logical Domains Manager 发现

18.  将 XML 接口与 Logical Domains Manager 结合使用

词汇表

索引

分配 PCIe 总线

可以使用 Oracle VM Server for SPARC 软件将完整的 PCIe 总线(也称为根联合体)分配到域。完整 PCIe 总线由 PCIe 总线本身及其所有 PCI 交换机和设备组成。服务器上的 PCIe 总线使用名称标识,例如 pci@400 (pci_0)。配置有完整 PCIe 总线的 I/O 域也称为根域

下图显示了具有两个 PCIe 总线 (pci_0 and pci_1) 的系统。每个总线分配到不同的域。这样,系统就配置有两个 I/O 域。

图 6-1 将 PCIe 总线分配到 I/O 域

image:该图显示了如何将 PCIe 总线分配到 I/O 域。

使用 PCIe 总线可以创建的最大 I/O 域数取决于服务器上可用的 PCIe 总线数。例如,如果使用 Oracle Sun SPARC Enterprise T5440 服务器,您最多可以有四个 I/O 域。


注 - 一些 UltraSPARC 服务器只有一个 PCIe 总线。这种情况下,您可以通过将 PCIe 端点(或可分配的直接 I/O)设备分配到域来创建 I/O 域。请参见分配 PCIe 端点设备。如果系统具有网络接口单元 (Network Interface Unit, NIU),也可以通过将 NIU 分配到域来创建 I/O 域。


将 PCIe 总线分配到 I/O 域时,该总线上的所有设备都归该 I/O 域所有。不允许将该总线上的任何 PCIe 端点设备分配到其他域。只可以将 PCIe 上已分配到 primary 域的 PCIe 端点设备分配到其他域。

在 Logical Domains 环境中最初配置服务器或使用 factory-default 配置时,primary 域可访问所有物理设备资源。这意味着 primary 域是系统上配置的唯一 I/O 域,所有 PCIe 总线都归其所有。

如何通过分配 PCIe 总线创建 I/O 域

此示例过程演示如何从初始配置创建 I/O 域,其中,几个总线归 primary 域所有。默认情况下,系统上的所有总线都归 primary 域所有。此示例适用于 SPARC T4-2 服务器。在其他服务器上也可以使用此过程。虽然面向其他服务器的说明可能与这些说明稍有不同,但是您可以通过此处的示例了解基本原则。

首先,必须保留具有 primary 域的引导磁盘的总线。然后,将另一个总线从 primary 域删除并将其分配到另一个域。


注意

注意 - 在支持的服务器上,所有的内部磁盘都可以连接到一个 PCIe 总线。如果域从内部磁盘进行引导,请不要将该总线从域中删除。此外,请确保没有删除具有由域使用的设备(例如网络接口)的总线。如果错误地删除了总线,则域可能将无法访问所需的设备并变为不可用。要删除具有由域使用的设备的总线,请重新配置该域,以使用其他总线的设备。例如,可能需要重新配置该域,以使用其他板载网络端口或其他 PCIe 插槽中的 PCIe 卡。


在此示例中,primary 域仅使用 ZFS 池 (rpool (c0t1d0s0)) 和网络接口 (igb0)。如果 primary 域使用多个设备,请对每个设备重复步骤 2 到步骤 4,以确保没有设备位于将要删除的总线上。

  1. 检验 primary 域是否拥有多个 PCIe 总线。
    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           
    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
  2. 确定必须保留的引导磁盘的设备路径。
    • 对于 UFS 文件系统,请运行 df / 命令,以确定引导磁盘的设备路径。
      primary# df /
      /                  (/dev/dsk/c0t5000CCA03C138904d0s0):22755742 blocks  2225374 files
    • 对于 ZFS 文件系统,首先运行 df / 命令以确定池名称。然后,运行 zpool status 命令以确定引导磁盘的设备路径。
      primary# zpool status rpool
        pool: rpool
       state: ONLINE
        scan: none requested
      config:
      
              NAME                       STATE     READ WRITE CKSUM
              rpool                      ONLINE       0     0     0
                c0t5000CCA03C138904d0s0  ONLINE       0     0     0
  3. 确定连接引导磁盘的 PCIe 总线。
    1. 查找磁盘连接到的启动器端口。
      primary# mpathadm show lu /dev/rdsk/c0t5000CCA03C138904d0s0
      Logical Unit:  /dev/rdsk/c0t5000CCA03C138904d0s2
              mpath-support:  libmpscsi_vhci.so
              Vendor:  HITACHI 
              Product:  H106030SDSUN300G
              Revision:  A2B0
              Name Type:  unknown type
              Name:  5000cca03c138904
              Asymmetric:  no
              Current Load Balance:  round-robin
              Logical Unit Group ID:  NA
              Auto Failback:  on
              Auto Probing:  NA
      
              Paths:  
                      Initiator Port Name:  w50800200014100c8
                      Target Port Name:  w5000cca03c138905
                      Override Path:  NA
                      Path State:  OK
                      Disabled:  no
      
              Target Ports:
                      Name:  w5000cca03c138905
                      Relative ID:  0
    2. 确定启动器端口所在的 PCIe 总线。
      primary# mpathadm show initiator-port w50800200014100c8
      Initiator Port:  w50800200014100c8
              Transport Type:  unknown
              OS Device File:  /devices/pci@400/pci@2/pci@0/pci@e/scsi@0/iport@1
  4. 确定由系统使用的网络接口。

    使用 ifconfig 命令确定“已激活的”主网络接口。

    • Oracle Solaris 10.
      primary# ifconfig -a
      lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
              inet 127.0.0.1 netmask ff000000 
      igb0: flags=1004843<UP,BROADCAST,RUNNING,MULTICAST,DHCP,IPv4> mtu 1500 index 3
              inet 10.129.241.135 netmask ffffff00 broadcast 10.129.241.255
              ether 0:10:e0:e:f1:78
    • Oracle Solaris 11.
      primary# ifconfig -a
      lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
              inet 127.0.0.1 netmask ff000000 
      net0: flags=1004843<UP,BROADCAST,RUNNING,MULTICAST,DHCP,IPv4> mtu 1500 index 3
              inet 10.129.241.135 netmask ffffff00 broadcast 10.129.241.255
              ether 0:10:e0:e:f1:78 
      
      primary# dladm show-phys net0
      LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
      net0              Ethernet             up         1000   full      igb0
  5. 确定网络接口连接到的物理设备。

    以下命令使用 igb0 网络接口:

    primary# ls -l /dev/igb0
    lrwxrwxrwx   1 root     root          46 Oct  1 10:39 /dev/igb0  ->
    ../devices/pci@500/pci@0/pci@c/network@0:igb0 

    在此示例中,域 primary 使用的网络接口的物理设备位于总线 pci@500 下,该总线对应于前面列出的 pci_1。这样,由于其他两个总线 pci_2 (pci@600) 和 pci_3 (pci@700) 未被 primary 域使用,因此可以将它们安全地分配到其他域。

    如果 primary 域使用的网络接口位于您要分配到另一个域的总线上,则需要重新配置 primary 域以使用其他网络接口。

  6. 将不包含引导磁盘或网络接口的总线从 primary 域删除。

    在此示例中,将从 primary 域中删除总线 pci_1。还必须启动延迟重新配置。

    primary# ldm start-reconf primary
    primary# ldm remove-io pci_1 primary
  7. 将此配置保存到服务处理器。

    在此示例中,配置为 io-domain

    primary# ldm add-config io-domain

    此配置 io-domain 还设置为重新引导后要使用的下一个配置。

  8. 重新引导根域,以使更改生效。
    primary# shutdown -i6 -g0 -y
  9. 停止要向其中添加 PCIe 总线的域。

    以下示例停止了 ldg1 域:

    primary# ldm stop ldg1
  10. 将可用总线添加到需要直接访问的域。

    可用总线为 pci_1,域为 ldg1

    primary# ldm add-io pci_1 ldg1
  11. 重新启动该域,以使更改生效。

    以下命令可重新启动 ldg1 域:

    primary# ldm start ldg1
  12. 确认仍然为 primary 域分配了相应的总线,并为 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  
    pci_1                                     BUS    pci_1    ldg1    
    /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    ldg1     OCC      
    /SYS/MB/PCIE3                             PCIE   pci_1    ldg1     OCC      
    /SYS/MB/PCIE5                             PCIE   pci_1    ldg1     OCC      
    /SYS/MB/PCIE7                             PCIE   pci_1    ldg1     EMP      
    /SYS/MB/PCIE9                             PCIE   pci_1    ldg1     EMP      
    /SYS/MB/NET2                              PCIE   pci_1    ldg1     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    ldg1              
    /SYS/MB/PCIE5/IOVNET.PF1                  PF     pci_1    ldg1              
    /SYS/MB/NET2/IOVNET.PF0                   PF     pci_1    ldg1              
    /SYS/MB/NET2/IOVNET.PF1                   PF     pci_1    ldg1

    此输出确认已将 PCIe 总线 pci_0 及其设备分配到 primary 域。它还确认已将 PCIe 总线 pci_1 及其设备分配到 ldg1 域。