Oracle® VM Server for SPARC 3.2 管理ガイド

印刷ビューの終了

更新: 2015 年 5 月
 
 

PCIe エンドポイントを構成した状態のルートドメインのリブート

ルートドメインは PCIe バスの所有者で、バスの初期化と管理の役割を担います。ルートドメインはアクティブで、DIO または SR-IOV 機能をサポートするバージョンの Oracle Solaris OS を実行している必要があります。ルートドメインのシャットダウン、停止、またはリブートを行うと、PCIe バスへのアクセスが中断されます。PCIe バスが使用できないとき、そのバス上の PCIe デバイスが影響を受け、使用不可能になることがあります。

PCIe エンドポイントデバイスを持つ I/O ドメインの実行中にルートドメインがリブートされた場合、I/O ドメインの動作は予測不能です。たとえば、リブート中またはリブート後に、PCIe エンドポイントデバイスを持つ I/O ドメインでパニックが発生することがあります。ルートドメインをリブートするときは、各ドメインを手動で停止/開始する必要があります。


注 - I/O ドメインは、関連するルートドメインが実行中でない場合は起動できません。

    これらの問題を回避するには、次のいずれかの手順を実行します。

  • ルートドメインをシャットダウンする前に、システムの PCIe エンドポイントデバイスが割り当てられているドメインすべてを手動でシャットダウンします。

    この手順により、ルートドメインのシャットダウン、停止、またはリブートを行う前に、それらのドメインを確実にクリーンにシャットダウンします。

    PCIe エンドポイントデバイスが割り当てられているすべてのドメインを調べるには、ldm list-io コマンドを実行します。このコマンドにより、システムのドメインに割り当てられている PCIe エンドポイントデバイスを一覧表示できます。このコマンドによる出力の詳細な説明については、ldm(1M) マニュアルページを参照してください。

    見つかったそれぞれのドメインについて、ldm stop コマンドを実行してドメインを停止します。

  • ルートドメインと、PCIe エンドポイントデバイスが割り当てられているドメインの間の、ドメインの依存関係を構成します。

    この依存関係により、何かの理由でルートドメインがリブートしたときに、PCIe エンドポイントデバイスを持つドメインが確実に自動的にリブートされます。

    それらのドメインはこの依存関係によって強制的にリセットされるため、クリーンなシャットダウンはできません。ただし、依存関係は、手動でシャットダウンされたドメインには影響を及ぼしません。

    primary# ldm set-domain failure-policy=reset primary
    primary# ldm set-domain master=primary domain-name
使用例 7-1  primary 以外のルートドメインおよび I/O ドメインによる構成の障害ポリシーの依存関係の構成

次の例では、primary 以外のルートドメインおよび I/O ドメインを使用する構成で、障害ポリシーの依存関係を構成できる方法について説明します。

この例で、ldg1primary 以外のルートドメイン、ldg2ldg1 ドメインが所有するルートコンプレックスから割り当てられた PCIe SR-IOV 仮想機能または PCIe エンドポイントデバイスを持つ I/O ドメインです。

primary# ldm set-domain failure-policy=stop ldg1
primary# ldm set-domain master=ldg1 ldg2

この依存関係により、ldg1 ルートドメインをリブートするときには I/O ドメインが停止します。

  • primary 以外のルートドメインがリブートする場合、この依存関係により I/O ドメインが停止します。primary 以外のルートドメインがブートするときに、I/O ドメインが起動します。

    primary# ldm start ldg2
  • primary ルートドメインをリブートする場合は、このポリシー設定により primary 以外のルートドメインおよび従属する I/O ドメインの両方が停止します。primary ドメインがブートするときは、primary 以外のルートドメインを先に起動する必要があります。ドメインがブートするときに、I/O ドメインを起動します。

    primary# ldm start ldg1

    ldg1 ドメインがアクティブになるのを待ってから、I/O ドメインを起動します。

    primary# ldm start ldg2