仮想 SCSI HBA を使用するための動作モデルは、Logical Domains Manager では仮想 SCSI HBA と仮想 SAN インスタンスしか認識できないため、ほかのタイプの Oracle VM Server for SPARC 仮想デバイスの場合とは質的に異なります。ゲストドメイン内に表示される仮想 LUN や、サービスドメイン内に表示される物理 LUN は、実行時に検出されるまで不明です。仮想 LUN や物理 LUN は、関連付けられた LDC 接続がリセットされたときには暗黙的に、また ldm rescan-vhba コマンドを使用した場合は明示的に検出されます。
ldm コマンドを使用して仮想ディスクを明示的に指定しても、ゲストドメイン内の仮想 LUN は、その識別情報をサービスドメイン内の関連付けられた物理 LUN の識別情報から取得します。ldm(1M) マニュアルページを参照してください。
たとえば、物理 LUN と仮想 LUN は、次のデバイスパス内の太字で示されているテキストを共有します。
サービスドメイン内の物理 LUN:
/pci@0/pci@0/pci@8/pci@0/pci@2/SUNW,qlc@0/fp@0,0/ssd@w216000c0ff8089d5,0
ゲストドメイン内の仮想 LUN:
/virtual-devices@100/channel-devices@200/scsi@1/iport@0/disk@w216000c0ff8089d5,0
仮想 LUN のデバイスパス内の scsi@1 コンポーネントは、この仮想 LUN がメンバーになっている仮想 SCSI HBA インスタンスを示すことに注意してください。
仮想 SCSI HBA の一連の仮想 LUN は実行時にサービスドメインから取得されるため、仮想 LUN を明示的にゲストドメインに追加したり削除したりすることはできません。代わりに、ゲストドメインの仮想 LUN のメンバーシップを変更できるように、基本となる物理 LUN を追加または削除する必要があります。ドメインのリブートやドメインの移行などのイベントによって、ゲストドメインの仮想 LUN のメンバーシップが変更される可能性があります。この変更は、仮想 SCSI HBA の LDC 接続がリセットされると常に、仮想 LUN が自動的に再検出されるために発生します。仮想 LUN の基本となる物理 LUN が将来の検出で見つからない場合、その仮想 LUN は使用不可としてマークされ、その仮想 LUN にアクセスすると次のようなエラーが返されます。
WARNING: .../scsi@1/iport@0/disk@w216000c0ff8089d5,0 (sd6): ... Command failed to complete...Device is gone
仮想 SCSI HBA インスタンスは vhba ドライバによって管理されますが、仮想 LUN は、基本となる物理 LUN のデバイスタイプに基づいて SCSI ターゲットドライバによって管理されます。次の出力は、vhba ドライバが仮想 SCSI HBA インスタンスを管理していること、および sd SCSI ディスクドライバが仮想 LUN を管理していることを確認します。
# prtconf -a -D /dev/dsk/c2t216000C0FF8089D5d0 SUNW,SPARC-Enterprise-T5220 (driver name: rootnex) virtual-devices, instance #0 (driver name: vnex) channel-devices, instance #0 (driver name: cnex) scsi, instance #0 (driver name: vhba) iport, instance #3 (driver name: vhba) disk, instance #30 (driver name: sd)