JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle VM Server for SPARC 3.0 管理ガイド     Oracle VM Server for SPARC (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I 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: ルートドメインのリブート

I/O ドメインを作成するための SR-IOV 仮想機能の使用

SR-IOV 仮想機能を割り当てることによって I/O ドメインを作成する方法

SR-IOV の詳細なトピック

SR-IOV デバイス固有のプロパティー

仮想機能のための高度なネットワーク構成

7.  仮想ディスクの使用

8.  仮想ネットワークの使用

9.  ドメインの移行

10.  リソースの管理

11.  ドメイン構成の管理

12.  その他の管理タスクの実行

パート II オプションの 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 管理情報ベース (MIB) ソフトウェアの使用

17.  Logical Domains Manager の検出

18.  Logical Domains Manager での XML インタフェースの使用

用語集

索引

PCIe バスの割り当て

Oracle VM Server for SPARC ソフトウェアを使用して、PCIe バス全体 (別名「ルートコンプレックス」) をドメインに割り当てることができます。PCIe バス全体は、PCIe バス自体と、すべての PCI スイッチとデバイスで構成されます。サーバーに存在する PCIe バスは、pci@400 (pci_0) などの名前により識別されます。PCIe バス全体で構成された I/O ドメインは、「ルートドメイン」とも呼ばれます。

次の図は、2 つの PCIe バス (pci_0pci_1) が存在するシステムを示しています。個々のバスが、別々のドメインに割り当てられています。このため、システムには 2 つの I/O ドメインが構成されます。

図 6-1 PCIe バスの I/O ドメインへの割り当て

image:この図は、PCIe バスを I/O ドメインに割り当てる方法を示しています。

PCIe バスで作成できる I/O ドメインの最大数は、サーバー上で使用できる PCIe バスの数に依存します。たとえば、Oracle Sun SPARC Enterprise T5440 サーバーを使用している場合、使用できる I/O ドメインは最大 4 つです。


注 - 一部の UltraSPARC サーバーには、PCIe バスは 1 つしか存在しません。このような場合、PCIe エンドポイントデバイス (または直接 I/O を割り当てが可能なデバイス) をドメインに割り当てることで、I/O ドメインを作成できます。「PCIe エンドポイントデバイスの割り当て」を参照してください。システムにネットワークインタフェースユニット (NIU) が存在する場合、NIU をドメインに割り当てて I/O ドメインを作成することもできます。


PCIe バスを I/O ドメインに割り当てると、そのバス上のすべてのデバイスはその I/O ドメインに所有されます。そのバス上の PCIe エンドポイントデバイスを他のドメインに割り当てることはできません。primary ドメインに割り当てられている PCIe バス上の PCIe エンドポイントデバイスのみが、他のドメインに割り当て可能です。

Logical Domains 環境でサーバーが最初に構成されるとき、または factory-default 構成を使用しているとき、primary ドメインはすべての物理デバイスリソースにアクセスできます。つまり、システムに構成されている I/O ドメインは primary ドメインのみであり、このドメインがすべての PCIe バスを所有します。

PCIe バスの割り当てによって I/O ドメインを作成する方法

このプロシージャー例は、複数のバスが primary ドメインに所有されている初期構成から、新しい I/O ドメインを作成する方法を示しています。デフォルトでは、システム上に存在するすべてのバスを primary ドメインが所有しています。この例は、SPARC T4-2 サーバーを対象としています。この手順は、ほかのサーバーにも使用できます。別のサーバーではこれらの手順と若干異なる場合がありますが、この例では基本的な方針について理解できます。

最初に、primary ドメインのブートディスクを持つバスを保持する必要があります。それから、その他のバスを primary ドメインから削除してほかのドメインに割り当てます。


注意

注意 - サポートされているサーバーの内部ディスクはすべて、単一の PCIe バスに接続されている場合があります。ドメインが内部ディスクからブートする場合は、ドメインからそのバスを削除しないでください。また、ドメインで使用されているネットワークポートなどのデバイスが接続されたバスを削除していないことを確認してください。誤ったバスを削除すると、ドメインは必要なデバイスにアクセスできず、使用できなくなることがあります。ドメインで使用されているデバイスが接続されたバスを削除する場合は、ほかのバスのデバイスを使用するよう、そのドメインを再構成してください。たとえば、別のオンボードネットワークポートや、別の PCIe スロットの PCIe カードを使用するよう、ドメインを再構成する必要がある場合があります。


この例では、primary ドメインは 1 つの ZFS プール (rpool (c0t1d0s0)) と 1 つのネットワークインタフェース (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 コマンドを使用して、「plumb」されているプライマリネットワークインタフェースを確認します。

    • 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_1 に対応するバス pci@500 に接続しています。そのため、ほかの 2 つのバス pci_2 (pci@600) と pci_3 (pci@700) は primary ドメインでは使用されていないため、ほかのドメインに安全に割り当てることができます。

    primary ドメインで使用されているネットワークインタフェースが、別のドメインに割り当てようとしているバス上にある場合は、別のネットワークインタフェースを使用するように primary ドメインを再構成する必要があります。

  6. ブートディスクまたはネットワークインタフェースを含まないバスを primary ドメインから削除します。

    この例では、バス pci_1primary ドメインから削除されます。遅延再構成を開始する必要もあります。

    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 ドメインに割り当てられていることも確認されます。