免責事項:これは英文の記事 Enabling or disabling simultaneous write protection provided by VMFS using the multi-writer flag の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
VMFS は、複数の仮想マシンが同じ仮想ディスク(.vmdk ファイル)を開いて書き込むことが(デフォルトで)無効にされているクラスタファイルシステムです。
これにより、複数の仮想マシンが同じ .vmdk ファイルに誤ってアクセスすることが回避されます。
マルチライターオプションを使用すると、VMFS でサポートされるディスクを複数の仮想マシンで共有できます。
このオプションを使用することで VMware Fault Tolerance がサポートされ、プライマリ仮想マシンとスタンバイ仮想マシンが .vmdk ファイルに同時にアクセスできるようになります。
複数の異なる仮想マシンから書き込み操作が実行されてもデータ損失が発生しないことがアプリケーションによって保証される、特定のクラスタ対応アプリケーションの保護をこのオプションを使用して無効にすることができます。
このドキュメントでは、仮想ディスクにマルチライターフラグを設定する方法について説明します。
警告:この保護を無効にする場合は注意してください。共有ディスクへの書き込みに関して、仮想マシン内のアプリケーションが一貫性を維持しない場合、この変更によってデータが破損することがあります。結果として、下のリストに示すように、一部の仮想マシン操作および vSphere の機能はサポートされません。
使用事例:
- VMware FT は、VMware vLockstep テクノロジを使用して、プライマリ仮想マシンとの仮想ロックステップ方式で実行されるアクティブなセカンダリ仮想マシンを確立して維持します。セカンダリ仮想マシンは異なるホスト上に存在しますが、プライマリ仮想マシンとまったく同じ仮想(ゲスト)命令シーケンスを実行します。vSphere Client で FT をオンにすると、マルチライターフラグが自動的に有効になります。
- サードパーティ製のクラスタ対応アプリケーション。この場合、複数の異なる仮想マシンから書き込み操作が実行されてもデータ損失が発生しないことがアプリケーションによって保証されます(たとえば、Oracle RAC 仮想マシンでこれが使用されます)。この場合、この記事の手順を使用して、マルチライターフラグを手動で有効にします。仮想 RDM を使用する場合は、同じ手順に従います。
- vSphere 7.0 Update 1より、 NVMe over Fibre Channel と NVMe over RDMA (RoCE v2) データストアは、分散書き込みの機能を提供するCluster-Aware ファイルシステムを利用するゲストシステム間のマルチライターオプションの有効化をサポートするようになりました。NVMe ストレージにマルチライター機能を用する共有ディスクを設定する前に、NVMe ストレージのガイドラインを参照ください。更なる情報に関しましては、VMware NVMe ストレージについて を確認ください。
- vSphere 7.0 Update 3 より、FC や iSCSI プロトコルを使用した vVOL データストアにてマルチライターオプションがサポートされます。これにより、クラスタ機能を認識したファイルシステムを活用するゲスト内のシステムが書き込み容量を分散することが可能となります。詳細は Oracle workloads on VMware Virtual Volumes (vVOLS) using Pure Storage FlashArray X50 and Broadcom LPe36000 Fibre Channel Adapter – better performance [ SCSI-vVols v/s SCSI-FCP] を確認ください。
- vSphere 8.0 Update 2 より、NVMe FC や NVMe TCP の vVOL データストアもマルチライターオプションがサポートされます。
- マルチライターフラグが有効な状態で Oracle RAC 仮想マシンが正しく機能するには、仮想マシンを実行している ESXi 5.5 ホストにパッチ 以降を適用する必要があります。
- VMware vSAN を使用した構成については、Using Oracle RAC on a vSAN Datastore を参照してください。
サポート対象/対象外のアクションまたは機能:
アクションまたは機能 |
サポート対象 |
サポート対象外 |
注 |
仮想マシンのパワーオン、パワーオフ、再起動 |
√ |
|
|
仮想マシンのサスペンド |
|
× |
|
仮想ディスクのホット アド |
√ |
|
既存のアダプタに対してのみ |
デバイスのホット リムーブ |
√ |
|
|
仮想ディスクのホット拡張 |
√ |
|
vVOL データストア内の共有ディスクについては vSphere 8.0 Update 2 以降 |
デバイスの接続と切断 |
√ |
|
|
依存型ディスクの仮想マシンのスナップショット |
|
× |
仮想バックアップソリューションは、vStorage API を介してスナップショットを利用しますが(VMware Data Recovery、vSphere Data Protection など)、これらもサポート対象外です。 |
独立型通常ディスクの仮想マシンのスナップショット |
√ |
|
vSphere 5.1 Update2 以降でサポートされます。 スナップショットタスクは完了しますが、独立型ディスクについてはスナップショットは作成されません。 独立型ディスクを持つパワーオン状態の仮想マシンでは、メモリスナップショットはサポートされていません。
|
クローン作成 |
|
× |
|
Storage vMotion |
|
× |
ストレージの移行を開始するには仮想マシンの一時停止が必要となるため、共有ディスクも非共有ディスクも Storage vMotion を使用して移行することはできません。 |
変更ブロックのトラッキング (CBT) |
|
× |
|
vSphere Flash Read Cache (vFRC) |
|
× |
古い書き込みにより、データの損失や破損が生じる可能性があります。 |
vMotion |
√ |
|
ORAC のみに対してサポートされ、8 つの ESX/ESXi ホストに限定されています。 |
制限:
- マルチライターモードを使用する場合、仮想ディスクは eager zeroed のシックである必要があります。仮想ディスクを zeroed のシックまたはシンプロビジョニングにすることはできません。詳細については、Powering on the virtual machine fails with the error: Thin/TBZ disks cannot be opened in multiwriter mode を参照してください。
- vVOL データストア内のディスクにてマルチライターモードを使用する場合、仮想マシンはシンまたはシックプロビジョニングの両方を指定可能です。
- 仮想ディスクをホットアドすると、マルチライターフラグが削除されます。
- マルチライター有効状態の同じ仮想ディスクを共有する仮想マシンが同じ ESXi ホスト上に複数存在する場合、対象仮想マシンはパワーオンできません。これは重複したディスク予約を防ぐための意図された挙動です。
- vSphere 8.0 Update 2 以降より、仮想 NVMe コントローラもマルチライターモードの仮想ディスクをサポートするようになりました。
- vSphere 6.7 Update 1 以降は、マルチライターの仮想ディスクの共有が、8 台以上の ESXi/ESX ホストへと機能拡張されました。VMFS5 / VMFS6 ともに適用されます。 本機能を有効化するためには、下記の通り/VMFS3/GBLAllowMW のアドバンス設定を有効にする必要があります。
1. ESXiホストへログインし、下記コマンドを実行します:
# esxcli system settings advanced set -i 1 -o /VMFS3/GBLAllowMW
注:これにより、マルチライターロックが有効になります。GBLAllowMW コンフィグ設定はESXiホスト上においてデフォルトで無効化されています。
注: vSphere 6.7 Update 1 では、1つの共有ディスクでサポートできるESXiホストの最大数は64です。
2. 設定状態を確認するため、下記コマンドを実行します:
# esxcli system settings advanced list -o /VMFS3/GBLAllowMW
Path: /VMFS3/GBLAllowMW
Type: integer
Int Value: 1 =========== > Value set to 1 from default 0
Default Int Value: 0
Min Value: 0
Max Value: 1
String Value:
Default String Value:
Valid Characters:
Description: Allow multi-writer GBLs.
注:設定を無効化するには、# esxcli system settings advanced set -i 0 -o /VMFS3/GBLAllowMW を実行します 。
3. 共有される環境内の全ESXiホストで上記設定を有効化します。