パート I Oracle VM Server for SPARC 3.1 ソフトウェア
第 1 章 Oracle VM Server for SPARC ソフトウェアの概要
Oracle VM Server for SPARC と Oracle Solaris OS のバージョンについて
Oracle VM Server for SPARC 物理から仮想への変換ツール
Oracle VM Server for SPARC Configuration Assistant
Oracle VM Server for SPARC 管理情報ベース
必須の Oracle VM Server for SPARC ソフトウェアコンポーネント
新しいシステムへの Oracle VM Server for SPARC ソフトウェアのインストール
Logical Domains Manager のダウンロード
Logical Domains Manager ソフトウェアをダウンロードする方法 (Oracle Solaris 10)
Logical Domains Manager のインストール
Logical Domains Manager ソフトウェアの自動的なインストール (Oracle Solaris 10)
Logical Domains Manager ソフトウェアの手動によるインストール
Oracle VM Server for SPARC 3.1 ソフトウェアを手動でインストールする方法 (Oracle Solaris 10)
Logical Domains Manager デーモンの有効化
Logical Domains Manager デーモンを有効にする方法
Oracle VM Server for SPARC をすでに使用しているシステムのアップグレード
Logical Domains の制約データベースファイルの保存および復元
Oracle Solaris 10 Live Upgrade 機能を使用する場合の Logical Domains の制約データベースファイルの保持
Logical Domains Manager およびシステムファームウェアのアップグレード
プラットフォーム上で動作している制御ドメイン以外のすべてのドメインを停止する方法
Oracle VM Server for SPARC 3.1 ソフトウェアへのアップグレード
Oracle VM Server for SPARC 3.1 ソフトウェアにアップグレードする方法 (Oracle Solaris 10)
Oracle VM Server for SPARC 3.1 ソフトウェアにアップグレードする方法 (Oracle Solaris 11)
Logical Domains Manager を無効にする方法
Logical Domains Manager を削除する方法
第 3 章 Oracle VM Server for SPARC のセキュリティー
Logical Domains Manager 権利プロファイルの内容
役割を使用してすべてのドメインコンソールへのアクセスを制御する方法
権利プロファイルを使用してすべてのドメインコンソールへのアクセスを制御する方法
役割を使用して 1 つのコンソールへのアクセスを制御する方法
権利プロファイルを使用して 1 つのコンソールへのアクセスを制御する方法
制御ドメインまたはサービスドメインとその他のドメイン間のネットワークの有効化
ゲストドメインへの Oracle Solaris OS のインストール
DVD からゲストドメインに Oracle Solaris OS をインストールする方法
Oracle Solaris ISO ファイルからゲストドメインに Oracle Solaris OS をインストールする方法
Oracle Solaris 10 ゲストドメインで Oracle Solaris JumpStart 機能を使用する方法
PCIe バスの割り当てによってルートドメインを作成する方法
PCIe バスの割り当てによって I/O ドメインを作成する方法
PCIe エンドポイントデバイスの割り当てによる I/O ドメインの作成
PCIe エンドポイントデバイスを割り当てることによって I/O ドメインを作成する方法
PCIe SR-IOV 仮想機能の割り当てによる I/O ドメインの作成
Ethernet デバイス固有のプロパティーとネットワーク固有のプロパティー
I/O ドメイン上の Ethernet SR-IOV 仮想機能の追加と削除
Ethernet SR-IOV 仮想機能を I/O ドメインに追加する方法
Ethernet 仮想 SR-IOV 機能を I/O ドメインから削除する方法
高度な SR-IOV のトピック: Ethernet SR-IOV
SR-IOV 仮想機能の使用による I/O ドメインのブート
I/O ドメイン上の InfiniBand 仮想機能の追加および削除
InfiniBand 仮想機能を I/O ドメインに追加する方法
InfiniBand 仮想機能を I/O ドメインから削除する方法
ルートドメインへの InfiniBand 仮想機能の追加および削除
InfiniBand 仮想機能をルートドメインに追加する方法
InfiniBand 仮想機能をルートドメインから削除する方法
高度な SR-IOV のトピック: InfiniBand SR-IOV
ファイバチャネル仮想機能の World-Wide Name の割り当て
I/O ドメイン上のファイバチャネル SR-IOV 仮想機能の追加と削除
ファイバチャネル SR-IOV 仮想機能を I/O ドメインに追加する方法
ファイバチャネル SR-IOV 仮想機能を I/O ドメインから削除する方法
高度な SR-IOV のトピック: ファイバチャネル SR-IOV
primary 以外のルートドメインでの直接 I/O デバイスの管理
primary 以外のルートドメインでの SR-IOV 仮想機能の管理
物理ディスクスライスを仮想ディスクとしてエクスポートする方法
フルディスクとしてエクスポートされるファイルまたはボリューム
1 つのスライスディスクとしてエクスポートされるファイルまたはボリューム
ZFS ボリュームを 1 つのスライスディスクとしてエクスポートする方法
ファイルおよびディスクスライスを仮想ディスクとしてエクスポートする場合のガイドライン
CD または DVD をサービスドメインからゲストドメインにエクスポートする方法
制御ドメインから ISO イメージをエクスポートしてゲストドメインをインストールする方法
未構成システムのディスクイメージのスナップショットを作成する方法
Oracle VM Server for SPARC 環境でのボリュームマネージャーの使用
Solaris ボリュームマネージャーによる仮想ディスクの使用
仮想ディスクでの Solaris ボリュームマネージャーの使用
仮想ネットワークのパフォーマンスを最大にするためのドメインの構成
仮想ネットワークデバイスで消費される物理ネットワーク帯域幅の量の制御
Oracle Solaris OS ネットワークインタフェース名を検索する方法
ネットワークアダプタが GLDv3 準拠かどうかを判別する方法 (Oracle Solaris 10)
NAT およびルーティング用の仮想スイッチおよびサービスドメインの構成
Oracle Solaris 10 システムでの NAT の構成
ドメインが外部に接続できるように仮想スイッチを設定する方法 (Oracle Solaris 10)
Oracle Solaris 11 システムでの NAT の構成
ドメインが外部に接続できるように仮想スイッチを設定する方法 (Oracle Solaris 11)
Oracle VM Server for SPARC 環境での IPMP の構成
ドメインの IPMP グループへの仮想ネットワークデバイスの構成
Oracle VM Server for SPARC 仮想ネットワークでのリンクベースの IPMP の使用
Logical Domains 1.3 以前のリリースの IPMP の構成および使用
VLAN を仮想スイッチおよび仮想ネットワークデバイスに割り当てる方法
インストールサーバーが VLAN に存在する場合にゲストドメインをインストールする方法
ジャンボフレームを使用するように仮想ネットワークおよび仮想スイッチデバイスを構成する方法
ジャンボフレームに対応していない旧バージョンの vnet および vsw ドライバとの互換性 (Oracle Solaris 10)
Oracle Solaris 11 のネットワーク固有の機能の相違点
アクティブなドメインで電源管理のエラスティックポリシーが有効にされている場合のマイグレーション
OpenBoot PROM からまたはカーネルデバッガで実行中のドメインの移行
その他の Oracle VM Server for SPARC 機能とハードパーティション化されたシステムとの相互作用
XML ファイルからのドメイン構成の復元方法 (ldm add-domain)
XML ファイルからのドメイン構成の復元方法 (ldm init-system)
FMA を使用した障害のあるリソースのブラックリスト登録または構成解除
障害のあるリソースまたは見つからないリソースを検出したあとのドメイン復旧
Oracle VM Server for SPARC による Oracle Solaris OS の運用
Oracle Solaris OS の起動後には OpenBoot ファームウェアを使用できない
サービスプロセッサでの Oracle VM Server for SPARC の使用
CPU およびメモリーアドレスのマッピングによるエラー発生箇所の確認
静的 SR-IOV 方法と動的 SR-IOV 方法の両方を使用すると、Ethernet SR-IOV デバイスを管理できます。
必要な PCIe Ethernet SR-IOV ハードウェアについては、Oracle VM Server for SPARC 3.1.1.1、3.1.1 および 3.1 リリースノート のPCIe SR-IOV のハードウェアおよびソフトウェア要件を参照してください。
pvid または vid プロパティーのいずれかを設定することで、仮想機能の VLAN 構成を有効にすることができます。これらの仮想機能プロパティーの両方を同時に設定することはできません。
仮想機能を動的に作成する際に、物理機能でマルチパスを使用していないこと、またはそれらが plumb されていないことを確認してください。
マルチパスを使用できないか、物理機能を plumb する必要がある場合は、静的方法式を使用して、仮想機能を作成します。静的 SR-IOV を参照してください。
ldm create-vf コマンドを使用して、仮想機能のデバイス固有およびネットワーク固有のプロパティーを設定します。unicast-slots プロパティーはデバイスに固有です。mac-addr、alt-mac-addrs、mtu、pvid、および vid プロパティーはネットワークに固有です。
mac-addr、alt-mac-addrs、および mtu ネットワーク固有プロパティーは、遅延再構成中で、仮想機能が primary ドメインに割り当てられている場合にのみ変更できます。
仮想機能が次のように割り当てられている場合、これらのプロパティーを変更しようとすると失敗します。
仮想機能がアクティブな I/O ドメインに割り当てられている場合: 変更は所有しているドメインがアクティブでないかバインドされている状態のときに行われる必要があるため、プロパティー変更要求は拒否されます。
仮想機能が primary 以外のドメインに割り当てられていて、遅延再構成がすでに有効になっている場合: プロパティー変更要求は失敗して、エラーメッセージが表示されます。
pvid および vid のネットワーク固有プロパティーは変更可能で、制限はありません。
このセクションでは、仮想機能を動的に作成および破棄する方法を説明します。これらのアクションを実行するために動的方法を使用できない場合は、仮想機能を作成または破棄する前に、ルートドメインで遅延再構成を開始します。
この動的方法を使用できない場合は、代わりに静的方法を使用してください。静的 SR-IOV を参照してください。
primary# ldm list-io
仮想機能の名前には、PCIe SR-IOV カードまたはオンボードのデバイスの場所情報が含まれています。
この手順は、物理機能を持つバスに対して、I/O 仮想化がすでに有効にされていない場合にのみ実行します。
PCIe バスに対する I/O 仮想化を有効にする方法を参照してください。
1 つ以上の仮想機能を作成したあとに、それをゲストドメインに割り当てることができます。
primary# ldm create-vf -n number | max pf-name
該当する物理機能に対応するすべての仮想機能を一度に作成するには、ldm create-vf -n max コマンドを使用します。
注意 - システムで Intel 10-Gbit Ethernet カードが使用されている場合は、各物理機能から作成する仮想機能を 31 個以下にすることでパフォーマンスを最大にします。 |
パス名または仮名を使用して、仮想機能を指定することができます。ただし、推奨される方法は、仮名を使用することです。
primary# ldm create-vf [mac-addr=num] [alt-mac-addrs=[auto|num1,[auto|num2,...]]] [pvid=pvid] [vid=vid1,vid2,...] [mtu=size] [name=value...] pf-name
物理機能に対応する仮想機能を 1 つ作成するには、このコマンドを使用します。ファイバチャネルクラス固有のプロパティー値を手動で指定することもできます。
primary# ldm start-reconf root-domain-name
仮想機能を動的に作成するには、上記で示したものと同じコマンドを使用します。
primary# ldm stop-domain -r root-domain
primary# shutdown -i6 -g0 -y
この例は、/SYS/MB/NET0/IOVNET.PF0 物理機能に関する情報を示しています。
この物理機能は、オンボードの NET0 ネットワークデバイスからのものです。
文字列 IOVNET は、物理機能がネットワーク SR-IOV デバイスであることを示します。
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
次のコマンドは、指定された物理機能についての詳細を表示します。値 maxvfs は、デバイスがサポートする仮想機能の最大数を示しています。
primary# ldm list-io -l /SYS/MB/NET0/IOVNET.PF0 NAME TYPE BUS DOMAIN STATUS ---- ---- --- ------ ------ /SYS/MB/NET0/IOVNET.PF0 PF pci_0 primary [pci@400/pci@1/pci@0/pci@4/network@0] maxvfs = 7使用例 6-3 オプションのプロパティーを設定しない Ethernet 仮想機能の動的な作成
次の例は、オプションのプロパティーを設定せずに仮想機能を動的に作成します。この場合、ネットワーククラス仮想機能の MAC アドレスは自動的に割り当てられます。
pci_0 PCIe バスで、I/O 仮想化が有効にされていることを確認します。PCIe バスに対する I/O 仮想化を有効にする方法を参照してください。
これで、ldm create-vf コマンドを使用して、/SYS/MB/NET0/IOVNET.PF0 物理機能から仮想機能を作成できます。
primary# ldm create-vf /SYS/MB/NET0/IOVNET.PF0 Created new vf: /SYS/MB/NET0/IOVNET.PF0.VF0使用例 6-4 Ethernet 仮想機能の動的な作成とプロパティーの設定
この例では、mac-addr プロパティーを 00:14:2f:f9:14:c0 に、vid プロパティーを VLAN ID 2 および 3 に設定して、仮想機能を動的に作成します。
primary# ldm create-vf mac-addr=00:14:2f:f9:14:c0 vid=2,3 /SYS/MB/NET0/IOVNET.PF0使用例 6-5 2 つの代替 MAC アドレスがある Ethernet 仮想機能の動的な作成
この例では、2 つの代替 MAC アドレスがある仮想機能を動的に作成します。1 つの MAC アドレスは自動的に割り当てられ、もう 1 つは 00:14:2f:f9:14:c2 として明示的に指定します。
primary# ldm create-vf alt-mac-addrs=auto,00:14:2f:f9:14:c2 /SYS/MB/NET0/IOVNET.PF0使用例 6-6 オプションのプロパティーを設定しない仮想機能の静的な作成
次の例では、オプションのプロパティーを設定せずに仮想機能を静的に作成します。この場合、ネットワーククラス仮想機能の MAC アドレスは自動的に割り当てられます。
まず、primary ドメインで遅延再構成を開始してから、pci_0 PCIe バスで I/O 仮想化を有効にします。pci_0 バスはすでに primary ルートドメインに割り当てられているため、ldm set-io コマンドを使用して、I/O 仮想化を有効にします。
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
これで、ldm create-vf コマンドを使用して、/SYS/MB/NET0/IOVNET.PF0 物理機能から仮想機能を作成できます。
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
最後に、primary ルートドメインをリブートして、変更を有効にします。
primary# shutdown -i6 -g0 -y使用例 6-7 複数の SR-IOV Ethernet 仮想機能の作成
次のコマンドは、/SYS/MB/NET2/IOVNET.PF1 物理機能から 4 つの仮想機能を作成する方法を示しています。
primary# ldm create-vf -n 31 /SYS/MB/NET2/IOVNET.PF1 Created new vf: /SYS/MB/NET2/IOVNET.PF1.VF0 Created new vf: /SYS/MB/NET2/IOVNET.PF1.VF1 Created new vf: /SYS/MB/NET2/IOVNET.PF1.VF2 ... Created new vf: /SYS/MB/NET2/IOVNET.PF1.VF30
ldm create-vf -n コマンドは、必要に応じて、デフォルトのプロパティー値で設定された複数の仮想機能を作成します。ldm set-io コマンドを使用すると、あとでデフォルト以外のプロパティー値を指定できます。
仮想機能が現在ドメインに割り当てられていない場合は、その仮想機能を破棄できます。仮想機能は作成した逆の順序でしか破棄できないため、破棄できるのは最後に作成した仮想機能だけです。結果として作成される構成は、物理機能ドライバによって検証されます。
この動的方法を使用できない場合は、代わりに静的方法を使用してください。静的 SR-IOV を参照してください。
primary# ldm list-io
primary# ldm destroy-vf -n number | max pf-name
該当する物理機能に対応するすべての仮想機能を一度に破棄するには、ldm destroy-vf -n max コマンドを使用します。
–n オプションへの引数として number を指定した場合は、仮想機能の最後の number が破棄されます。この操作を実行しても 1 つの物理機能デバイスドライバの状態しか遷移しないため、この方法を使用してください。
パス名または仮名を使用して、仮想機能を指定することができます。ただし、推奨される方法は、仮名を使用することです。
primary# ldm destroy-vf vf-name
primary# ldm start-reconf root-domain-name
primary# ldm destroy-vf -n number | max pf-name
パス名または仮名を使用して、仮想機能を指定することができます。ただし、推奨される方法は、仮名を使用することです。
primary# ldm destroy-vf vf-name
primary# ldm stop-domain -r root-domain
primary# shutdown -i6 -g0 -y
この例は、/SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能を動的に破棄する方法を示しています。
primary# ldm destroy-vf /SYS/MB/NET0/IOVNET.PF0.VF0
次の例は、/SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能を静的に破棄する方法を示しています。
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/NET0/IOVNET.PF0.VF0 primary# shutdown -i6 -g0 -y使用例 6-9 複数の Ethernet SR-IOV 仮想機能の破棄
この例は、/SYS/MB/NET2/IOVNET.PF1 物理機能からすべての仮想機能を破棄した結果を示しています。ldm list-io の出力には、物理機能が 7 つの仮想機能を持っていることが示されています。ldm destroy-vf コマンドは、すべての仮想機能を破棄します。最終的な ldm list-io の出力には、仮想機能は 1 つも残っていないことが示されています。
primary# ldm list-io ... /SYS/MB/NET2/IOVNET.PF1 PF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF0 VF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF1 VF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF2 VF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF3 VF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF4 VF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF5 VF pci_1 /SYS/MB/NET2/IOVNET.PF1.VF6 VF pci_1 primary# ldm destroy-vf -n max /SYS/MB/NET2/IOVNET.PF1 primary# ldm list-io ... /SYS/MB/NET2/IOVNET.PF1 PF pci_1 ldg1
ldm set-io vf-name コマンドは、プロパティー値を変更するか、新規プロパティーを設定することで、仮想機能の現在の構成を変更します。このコマンドは、ネットワーク固有のプロパティーとデバイス固有のプロパティーの両方を変更できます。デバイス固有のプロパティーについては、高度な SR-IOV のトピック: Ethernet SR-IOVを参照してください。
この動的方法を使用できない場合は、静的方法を使用します。静的 SR-IOV を参照してください。
ldm set-io コマンドで、次のプロパティーを変更できます。
mac-addr、alt-mac-addrs、および mtu
これらの仮想機能のプロパティーを変更するには、仮想機能を所有するドメインを停止し、ldm set-io コマンドを使用して、プロパティー値を変更し、ドメインを起動します。
pvid および vid
仮想機能がドメインに割り当てられているときは、これらのプロパティーを動的に変更することができます。そうすると、アクティブな仮想機能のネットワークトラフィックが変更されることがあります。pvid プロパティーを設定すると、透過的 VLAN が有効になります。VLAN ID を指定するように vid プロパティーを設定すると、それらの指定された VLAN に対して VLAN トラフィックが許可されます。
デバイス固有のプロパティー
ldm list-io -d pf-name コマンドを使用して、有効なデバイス固有のプロパティーのリストを表示します。物理機能と仮想機能の両方に対して、これらのプロパティーを変更することができます。デバイス固有のプロパティーを変更するには、静的方法を使用する必要があります。静的 SR-IOV を参照してください。デバイス固有のプロパティーの詳細については、高度な SR-IOV のトピック: Ethernet SR-IOVを参照してください。
primary# ldm list-io
仮想機能の名前には、PCIe SR-IOV カードまたはオンボードのデバイスの場所情報が含まれています。
primary# ldm set-io name=value [name=value...] vf-name
次の例では、ldm set-io コマンドを使用して、仮想機能にプロパティーを設定する方法について説明します。
次の例では、指定された仮想機能 /SYS/MB/NET0/IOVNET.PF0.VF0 を、VLAN ID 2、3、および 4 の一部になるように変更します。
primary# ldm set-io vid=2,3,4 /SYS/MB/NET0/IOVNET.PF0.VF0
このコマンドは、仮想機能の VLAN の関連付けを動的に変更することに注意してください。これらの VLAN を変更するには、適切な Oracle Solaris OS ネットワークコマンドを使用して、I/O ドメインの VLAN インタフェースを構成する必要があります。
次の例では、/SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能に対して pvid プロパティー値を 2 に設定し、仮想機能を透過的に VLAN 2 の一部にします。つまり、仮想機能は、タグ付けされたどの VLAN トラフィックも表示しません。
primary# ldm set-io pvid=2 /SYS/MB/NET0/IOVNET.PF0.VF0
次の例では、自動的に割り当てられた 3 つの代替 MAC アドレスを、仮想機能に割り当てます。これらの代替アドレスにより、仮想機能の最上部に Oracle Solaris 11 仮想ネットワークインタフェースカード (VNIC) を作成することができます。VNIC を使用するには、ドメインで Oracle Solaris 11 OS を実行する必要があることに注意してください。
primary# ldm set-io alt-mac-addrs=auto,auto,auto /SYS/MB/NET0/IOVNET.PF0.VF0
次の例では、指定された仮想機能に対して、デバイス固有の unicast-slots プロパティーを 12 に設定します。物理機能に対して有効なデバイス固有のプロパティーを調べるには、ldm list-io -d pf-name コマンドを使用します。
primary# ldm set-io unicast-slots=12 /SYS/MB/NET0/IOVNET.PF0.VF0 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.
仮想機能を動的に削除できない場合は、静的方法を使用してください。静的 SR-IOV を参照してください。
primary# ldm list-io
primary# ldm add-io vf-name domain-name
vf-name は、仮想機能の仮名またはパス名です。推奨される方法は、仮名を使用することです。domain-name は仮想機能を追加するドメインの名前を指定します。
ドメイン内の仮想機能のデバイスパス名は、list-io -l 出力に示されているパスです。
primary# ldm start-reconf root-domain-name primary# ldm add-io vf-name domain-name
vf-name は、仮想機能の仮名またはパス名です。推奨される方法は、仮名を使用することです。domain-name は仮想機能を追加するドメインの名前を指定します。指定されたゲストは、アクティブでないか停止している必要があります。
ドメイン内の仮想機能のデバイスパス名は、list-io -l 出力に示されているパスです。
primary# ldm stop-domain -r root-domain
primary# shutdown -i6 -g0 -y
この例は、/SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能を ldg1 ドメインに動的に追加する方法を示しています。
primary# ldm add-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1
仮想機能を動的に追加できない場合は、静的方法を使用します。
primary# ldm stop-domain ldg1 primary# ldm add-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1 primary# ldm start-domain ldg1
仮想機能を動的に削除できない場合は、静的方法を使用してください。静的 SR-IOV を参照してください。
注意 - 仮想機能をドメインから削除する前に、そのドメインのブートが必須ではないことを確認してください。 |
primary# ldm list-io
primary# ldm rm-io vf-name domain-name
vf-name は、仮想機能の仮名またはパス名です。推奨される方法は、デバイスの仮名を使用することです。domain-name は仮想機能を削除するドメインの名前を指定します。
primary# ldm stop-domain domain-name
primary# ldm rm-io vf-name domain-name
vf-name は、仮想機能の仮名またはパス名です。推奨される方法は、デバイスの仮名を使用することです。domain-name は仮想機能を削除するドメインの名前を指定します。指定されたゲストは、アクティブでないか停止している必要があります。
primary# ldm start-domain domain-name
この例は、/SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能を ldg1 ドメインから動的に削除する方法を示しています。
primary# ldm remove-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1
コマンドが正常に実行されると、仮想機能が ldg1 ドメインから削除されます。ldg1 が再起動されると、指定された仮想機能はそのドメインに表示されなくなります。
仮想機能を動的に削除できない場合は、静的方法を使用します。
primary# ldm stop-domain ldg1 primary# ldm remove-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1 primary# ldm start-domain ldg1
このセクションでは、SR-IOV 仮想機能の使用に関するいくつかの高度なトピックについて説明します。
SR-IOV 仮想機能を使用する場合は、次の問題に注意してください。
SR-IOV 仮想機能は、Logical Domains Manager によって割り当てられた Mac アドレスのみを使用できます。ほかの Oracle Solaris OS ネットワークコマンドで I/O ドメイン上の MAC アドレスを変更すると、コマンドは失敗するか、適切に機能しない可能性があります。
現在のところ、I/O ドメインでの SR-IOV ネットワーク仮想機能のリンクアグリゲーションはサポートされていません。リンクアグリゲーションを作成しようとすると、予想どおりに機能しない可能性があります。
I/O サービスを作成して、I/O ドメインに割り当てることができます。これらの仮想 I/O サービスは、仮想機能の作成元と同じ物理機能に作成することができます。たとえば、仮想スイッチ用のネットワークバックエンドデバイスとしてオンボードの 1 ギガビットのネットワークデバイス (net0 または igb0) を使用でき、同じ物理機能デバイスから仮想機能を作成することもできます。
SR-IOV 仮想機能には、仮想機能を論理ドメインのブートデバイスとして使用する機能など、ほかのタイプの PCIe デバイスと同様の機能があります。たとえば、ネットワーク仮想機能を使用して、Oracle Solaris OS を I/O ドメインにインストールするためにネットワークを介してブートすることができます。
SR-IOV 物理機能のデバイスドライバは、デバイス固有のプロパティーをエクスポートできます。これらのプロパティーを使用して、物理機能とその仮想機能の両方のリソース割り当てを調整することができます。プロパティーについては、igb(7D) および ixgbe(7D) マニュアルページなどの、物理機能ドライバについてのマニュアルページを参照してください。
ldm list-io -d コマンドは、指定された物理機能デバイスドライバによってエクスポートされるデバイス固有のプロパティーを表示します。各プロパティーの情報には、その名前、簡単な説明、デフォルト値、最大値、および次の 1 つまたは複数のフラグが含まれます。
物理機能に適用されます
仮想機能に適用されます
読み取り専用または通知パラメータ専用
primary# ldm list-io -d pf-name
ldm create-vf または ldm set-io コマンドを使用して、物理機能または仮想機能に対して読み書きプロパティーを設定します。デバイス固有のプロパティーを設定する場合は、静的方法を使用する必要があります。静的 SR-IOV を参照してください。
次の例は、オンボードの Intel 1 ギガビット SR-IOV デバイスによってエクスポートされる、デバイス固有のプロパティーを示しています。
primary# ldm list-io -d /SYS/MB/NET0/IOVNET.PF0 Device-specific Parameters -------------------------- max-config-vfs Flags = PR Default = 7 Descr = Max number of configurable VFs max-vf-mtu Flags = VR Default = 9216 Descr = Max MTU supported for a VF max-vlans Flags = VR Default = 32 Descr = Max number of VLAN filters supported pvid-exclusive Flags = VR Default = 1 Descr = Exclusive configuration of pvid required unicast-slots Flags = PV Default = 0 Min = 0 Max = 24 Descr = Number of unicast mac-address slots
次の例では、unicast-slots プロパティーを 8 に設定します。
primary# ldm create-vf unicast-slots=8 /SYS/MB/NET0/IOVNET.PF0
SR-IOV 仮想機能では Oracle Solaris 11 VNIC の作成がサポートされています。ただし、サポートされる VNIC の数は、仮想機能に割り当てられた代替 MAC アドレス (alt-mac-addrs プロパティー) の数に制限されます。仮想機能で VNIC を使用するときは、必ず十分な数の代替 MAC アドレスを割り当ててください。ldm create-vf または ldm set-io コマンドを使用して、代替 MAC アドレスを指定して alt-mac-addrs プロパティーを設定します。
次の例は、SR-IOV 仮想機能での 4 つの VNIC の作成を示しています。最初のコマンドは、代替 MAC アドレスを仮想機能デバイスに割り当てます。このコマンドは、自動割り当て方式で、4 つの代替 MAC アドレスを /SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能デバイスに割り当てます。
primary# ldm set-io alt-mac-addrs=auto,auto,auto,auto /SYS/MB/NET0/IOVNET.PF0.VF0
次のコマンドは ldg1 I/O ドメインを起動します。この例で、auto-boot? プロパティーが true に設定されているため、I/O ドメインで Oracle Solaris 11 OS もブートされます。
primary# ldm start ldg1
次のコマンドは、ゲストドメインで Oracle Solaris 11 dladm コマンドを使用して、代替 MAC アドレスを持つ仮想機能を表示します。この出力には、net30 仮想機能が 4 つの代替 MAC アドレスを持つことを示しています。
guest# dladm show-phys -m LINK SLOT ADDRESS INUSE CLIENT net0 primary 0:14:4f:fa:b4:d1 yes net0 net25 primary 0:14:4f:fa:c9:eb no -- net30 primary 0:14:4f:fb:de:4c no -- 1 0:14:4f:f9:e8:73 no -- 2 0:14:4f:f8:21:58 no -- 3 0:14:4f:fa:9d:92 no -- 4 0:14:4f:f9:8f:1d no --
次のコマンドは、4 つの VNIC を作成します。代替 MAC アドレスを使用して指定した VNIC よりも多くの VNIC を作成しようとすると、失敗することに注意してください。
guest# dladm create-vnic -l net30 vnic0 guest# dladm create-vnic -l net30 vnic1 guest# dladm create-vnic -l net30 vnic2 guest# dladm create-vnic -l net30 vnic3 guest# dladm show-link LINK CLASS MTU STATE OVER net0 phys 1500 up -- net25 phys 1500 up -- net30 phys 1500 up -- vnic0 vnic 1500 up net30 vnic1 vnic 1500 up net30 vnic2 vnic 1500 up net30 vnic3 vnic 1500 up net30
次の手順で、PCIe SR-IOV 仮想機能を含む I/O ドメインを作成する方法を説明します。
ルートドメインのリブート回数を最小限に抑えて、停止時間を最小限に抑えるように事前に計画してください。
始める前に
始める前に、仮想機能を作成する物理機能の親である PCIe バスの I/O 仮想化を有効化していることを確認します。PCIe バスに対する I/O 仮想化を有効にする方法を参照してください。
primary# ldm list-io
primary# ldm create-vf pf-name
このコマンドは、作成する仮想機能ごとに実行できます。–n オプションを使用すると、1 回のコマンドで同じ物理機能から複数の仮想機能を作成することもできます。Example 6–7 および ldm(1M) のマニュアルページを参照してください。
primary# ldm list-io
primary# ldm add-io vf-name domain-name
次の Oracle Solaris 11 コマンドは、仮想機能の利用度を表示します。
guest# dladm show-phys
次の動的な例は、物理機能 /SYS/MB/NET0/IOVNET.PF0 に対する仮想機能 /SYS/MB/NET0/IOVNET.PF0.VF0 を作成して、仮想機能を ldg1 I/O ドメインに割り当てる方法を示しています。
この例では、次の状況が当てはまることを前提としています。
primary ドメインの OS が動的 SR-IOV 操作をサポートしている
pci_0 バスが primary ドメインに割り当てられ、I/O 仮想化操作のために初期化されている
/SYS/MB/NET0/IOVNET.PF0 物理機能が pci_0 バスに属している
/SYS/MB/NET0/IOVNET.PF0 物理機能に、ドメインに割り当てられた既存の仮想機能がない
ldg1 ドメインがアクティブでブートされており、その OS が動的 SR-IOV 操作をサポートしている
/SYS/MB/NET0/IOVNET.PF0 物理機能から仮想機能を作成します。
primary# ldm create-vf /SYS/MB/NET0/IOVNET.PF0 Created new vf: /SYS/MB/NET0/IOVNET.PF0.VF0
/SYS/MB/NET0/IOVNET.PF0.VF0 仮想機能を ldg1 ドメインに追加します。
primary# ldm add-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1
次のコマンドは、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使用例 6-14 SR-IOV 仮想機能を割り当てることによる I/O ドメインの静的な作成
次の静的な例は、物理機能 /SYS/MB/NET0/IOVNET.PF0 に対する仮想機能 /SYS/MB/NET0/IOVNET.PF0.VF0 を作成して、仮想機能を ldg1 I/O ドメインに割り当てる方法を示しています。
この例では、次の状況が当てはまることを前提としています。
primary ドメインの OS が動的 SR-IOV 操作をサポートしていない
pci_0 バスが primary ドメインに割り当てられ、I/O 仮想化操作のために初期化されていない
/SYS/MB/NET0/IOVNET.PF0 物理機能が pci_0 バスに属している
/SYS/MB/NET0/IOVNET.PF0 物理機能に、ドメインに割り当てられた既存の仮想機能がない
ldg1 ドメインがアクティブでブートされており、その OS が動的 SR-IOV 操作をサポートしていない
ldg1 ドメインの auto-boot? プロパティーが true に設定されているため、ドメインが起動時に自動的にブートする
まず、primary ドメインで遅延再構成を開始し、I/O 仮想化を有効にして、/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
次に、primary ドメインを停止します。
primary# shutdown -i6 -g0 -y
ldg1 ドメインを停止し、仮想機能を追加して、ドメインを起動します。
primary# ldm stop ldg1 primary# ldm add-io /SYS/MB/NET0/IOVNET.PF0.VF0 ldg1 primary# ldm start ldg1
次のコマンドは、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