本記事はマルチライターの機能を使用して仮想マシン間で仮想ディスクを共有
する手順について記載します。
なお、マルチライターを使うような場面として一般的にはゲスト OS 上で
Oracle RAC などのクラスタリングソフトウェアを利用する際などが多く
の場合は該当するかと思います。
Oracle RAC に限らず、各クラスタリングソフトウェアを使用する場合、
各ソフトウェアによって推奨される構成が異なるため、必ず利用する
ソフトウェア側のドキュメントを確認することや、ベンダーに推奨される
構成を確認した上で設定いただくことを推奨します。
参考情報までとなりますが、WSFC の場合はマルチライターの構成はサポート
されておらず、SCSI バス共有やクラスタ VMDK の機能を使用してディスク
共有を実現させる必要がありますので、以下マルチライターの構成は適切では
ありません。
マルチライターの設定
まずは vSphere Client より 1 台目の仮想マシンの [設定の編集] を開き、
SCSI コントローラーの追加の追加を行います。
設定は [タイプの変更 : VMware 準仮想化] , [SCSI バスの共有 : なし] にします。
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
Oracle RAC でマルチライターを構成する場合、[SCSI バスの共有 : 物理] では無く、
以下ドキュメントに記載の通り [SCSI バスの共有 : なし] にする必要があります。
・Oracle VMware Hybrid Cloud High Availability Guide
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/solutions/vmware-oracle-hybrid-cloud-high-availability-guide.pdf
--------------
In the case of VMware vSphere (non vSAN Storage) on VMFS, vVol (beginning with ESXi 6.5) and NFS datastores, using the multi-writer
attribute to share the VMDKs for Oracle RAC requires:
• SCSI bus sharing needs to be set to none
• VMDKs must be EZT; thick provision lazy zeroed or thin-provisioned formats are not allowed
--------------
[SCSI バスの共有 : 物理] にする必要がある場面は、物理互換 RDM を使用して SCSI バス
共有を設定するような場合となります。
--------------
In the case of physical RDM(s), sharing physical RDM(s) for Oracle RAC requires:
• SCSI bus sharing is set to physical
• Compatibility mode for the shared RDM is set to physical for physical compatibility mode
--------------
私が知っている Oracle RAC 以外のクラスタリングソフトウェアの場合でも、仮想ディスク
でマルチライターを設定する際には、基本的には [SCSI バスの共有 : なし] にしてください。
となっていました。
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
次は仮想ディスクを追加します。
以下設定を変更します。
[ディスク プロビジョニング : シックプロビジョニング (Eager Zeroed)]
[共有 : マルチライター]
[ディスクモード : 独立型:通常]
[仮想デバイス ノード : (先ほど追加した SCSI コントローラを選択)]
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
ディスクプロビジョニングは必ずシックプロビジョニング (Eager Zeroed) である必要があります。
vSphere Client や Host Client からシックプロビジョニング (Eager Zeroed) の仮想ディスク
のサイズを拡張してしまった場合、シックプロビジョニング (Lazy Zeroed) になってしまい、
仮想マシンが起動できなるため、注意が必要です。
マルチライターを設定した仮想ディスクを拡張する場合、以下 KB 1033570 の手順で実施
する必要があります。
・Powering on the virtual machine fails with the error: Thin/TBZ disks cannot be opened in multiwriter mode (1033570)
https://kb.vmware.com/s/article/1033570?lang=en_us
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
続いて 2台目の仮想マシンに共有するディスクを構成していきます。
まずは 1 台目の仮想マシンと同様に SCSI コントローラーを追加してください。
次に 1台目で作成した仮想ディスクを 2 台目の仮想マシンに構成するため、
[既存のハードディスク] を追加します。
上記手順で追加した既存のハードディスクに対しても 1 台目と同様に設定を行います。
以上でマルチライターの設定は完了ですので、仮想マシンを起動して双方から同じ
ディスクへアクセス可能か確認してみてください。
まとめ
上記手順でマルチライターの設定が可能となり、設定に関しては比較的簡単だと思います。
なお、冒頭に記載した通り、クラスタリングソフトウェアを使用する際には各ソフトウェア
によって推奨される構成があり、適切な構成で無かった場合には排他制御に問題が出る可能性
もあるので、設定する前に推奨される構成を確認いただくことを強く推奨します。
参考
・Oracle VMware Hybrid Cloud High Availability Guide
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/solutions/vmware-oracle-hybrid-cloud-high-availability-guide.pdf
・Enabling or disabling simultaneous write protection provided by VMFS using the multi-writer flag (1034165)
https://kb.vmware.com/s/article/1034165?lang=en_us