12.8. SCSI デバイスでの NPIV 仮想アダプター (vHBA) の使用
NPIV (N_Port ID Virtualization) は、1 つの物理ファイバーチャンネルのホストバスアダプター (HBA) の共有を可能にするソフトウェアテクノロジーです。
これにより、複数のゲストが複数の物理ホストから同じストレージを認識できるため、ストレージの移行パスが容易になります。そのため、正しいストレージパスが指定されていれば、移行を使用してストレージを作成またはコピーする必要はありません。
仮想化では、仮想ホストバスアダプター (vHBA) が仮想マシンの LUN を制御します。各 vHBA は、独自の WWNN(ワールドワイドノード名) と WWPN(ワールドワイドポート名) によって識別されます。ストレージのパスは、WWNN および WWPN の値で決定します。
このセクションでは、仮想マシン上で vHBA を設定するための手順を説明します。Red Hat Enterprise Linux 6 は、ホストの再起動後の永続的な vHBA 設定をサポートしていないことに注意してください。ホストの再起動後に vHBA 関連の設定を確認します。
12.8.1. vHBA の作成
手順12.6 vHBA の作成
ホストシステムで HBA の場所を特定します。
ホストシステム上の HBA を見つけるには、ホストシステム上の SCSI デバイスを調べ、vport
機能を持つscsi_host
を見つけます。以下のコマンドを実行し、scsi_host
リストを取得します。# virsh nodedev-list --cap scsi_host scsi_host0 scsi_host1 scsi_host2 scsi_host3 scsi_host4
各scsi_host
について、次のコマンドを実行して、デバイス XML の行<capability type='vport_ops'>
を調べます。これは、vport
ケーパビリティを持つscsi_host
を示しています。# virsh nodedev-dumpxml scsi_hostN
HBA の詳細を確認します。
virsh nodedev-dumpxml HBA_device コマンドを実行して、HBA の詳細を表示します。virsh nodedev-dumpxml コマンドからの XML 出力には、フィールドが一覧表示されます<name>
、<wwnn>
、と<wwpn>
、vHBA の作成に使用されます。<max_vports>
の値は、サポートされる vHBA の最大数を示しています。# virsh nodedev-dumpxml scsi_host3 <device> <name>scsi_host3</name> <path>/sys/devices/pci0000:00/0000:00:04.0/0000:10:00.0/host3</path> <parent>pci_0000_10_00_0</parent> <capability type='scsi_host'> <host>3</host> <capability type='fc_host'> <wwnn>20000000c9848140</wwnn> <wwpn>10000000c9848140</wwpn> <fabric_wwn>2002000573de9a81</fabric_wwn> </capability> <capability type='vport_ops'> <max_vports>127</max_vports> <vports>0</vports> </capability> </capability> </device>
この例では、<max_vports>
には、HBA 設定で使用できる仮想ポートが 127 個あることを示しています。<vports>
値は、現在使用されている仮想ポートの数を示します。この値は、vHBA の作成後に更新されます。vHBA ホストデバイスの作成
vHBA ホスト用に次のような XML ファイル (この例では vhba_host3.xml という名前) を作成します。# cat vhba_host3.xml <device> <parent>scsi_host3</parent> <capability type='scsi_host'> <capability type='fc_host'> </capability> </capability> </device>
<parent>
フィールドは、この vHBA デバイスに関連付ける HBA デバイスを指定します。<device>
タグの詳細は、ホスト用の新しい vHBA デバイスを作成するために、次の手順で使用されます。nodedev
XML フォーマットの詳細は、http://libvirt.org/formatnode.htmlを参照してください。vHBA ホストデバイスに新しい vHBA を作成します。
vhba_host3 に vHBA を作成するには、virshnodedev-create コマンドを使用します。# virsh nodedev-create vhba_host3.xml Node device scsi_host5 created from vhba_host3.xml
vHBA の確認
virsh nodedev-dumpxml コマンドを使用して、新しい vHBA の詳細 (scsi_host5
) を確認します。# virsh nodedev-dumpxml scsi_host5 <device> <name>scsi_host5</name> <path>/sys/devices/pci0000:00/0000:00:04.0/0000:10:00.0/host3/vport-3:0-0/host5</path> <parent>scsi_host3</parent> <capability type='scsi_host'> <host>5</host> <capability type='fc_host'> <wwnn>5001a4a93526d0a1</wwnn> <wwpn>5001a4ace3ee047d</wwpn> <fabric_wwn>2002000573de9a81</fabric_wwn> </capability> </capability> </device>