マルチライター フラグを使用して、VMFS が提供する同時書き込み保護を有効または無効にする
search cancel

マルチライター フラグを使用して、VMFS が提供する同時書き込み保護を有効または無効にする

book

Article ID: 322019

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

免責事項:これは英文の記事 の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
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 ストレージのガイドラインを参照ください。更なる情報に関しましては、  を確認ください。
  • マルチライター フラグが有効な状態で Oracle RAC 仮想マシンが正しく機能するには、仮想マシンを実行している ESXi 5.5 ホストにパッチ 以降を適用する必要があります。
  • VMware vSAN を使用した構成については、を参照してください。
  • ESXi上のVeritas InfoScaleyのサポート情報は、  より参照ください。
サポート対象/対象外のアクションまたは機能
アクションまたは機能 サポート対象 サポート対象外
仮想マシンのパワーオン、パワーオフ、再起動    
仮想マシンのサスペンド   ×  
仮想ディスクのホット アド   既存のアダプタに対してのみ
デバイスのホット リムーブ    
仮想ディスクのホット拡張   ×  
デバイスの接続と切断    
スナップショット   × 仮想バックアップ ソリューションは、vStorage API を介してスナップショットを利用します(VMware Data RecoveryvSphere Data Protection など)。これらもサポート対象外です。
独立型通常ディスクの仮想マシンのスナップショット   vSphere 5.1 Update2 以降でサポートされます
クローン作成   ×  
Storage vMotion   × ストレージの移行を開始するには仮想マシンの一時停止が必要となるため、共有ディスクも非共有ディスクも Storage vMotion を使用して移行することはできません。
変更ブロックのトラッキング (CBT)   ×  
vSphere Flash Read Cache (vFRC)   × 古い書き込みにより、データの損失や破損が生じる可能性があります。
vMotion   ORAC のみに対してサポートされ、8 つの ESX/ESXi ホストに限定されています。


制限
  • マルチライター モードを使用する場合、仮想ディスクは eager zeroed のシックである必要があります。仮想ディスクを zeroed のシックまたはシン プロビジョニングにすることはできません。詳細については、 を参照してください。
  • 仮想ディスクをホット アドすると、マルチライター フラグが削除されます。詳細については、 を参照してください。
  • マルチライター モードを使用する際は、仮想ディスクを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ホストで上記設定を有効化します。


Environment

VMware vSphere ESXi 8.0
VMware vSphere ESXi 7.0

Resolution

仮想ディスクの共有を有効にする

マルチライター フラグを設定することで共有仮想ディスクを構成するには:
  1. 許容される任意の方法を使用して、共有する仮想ディスクを作成します。たとえば、vSphere Client を使用します。
    1. VMFS データ ストアに仮想マシン用の新しいディスクを作成します。

    2. [ディスクの作成] ウィンドウで、バージョン 5.0 よりも前の ESX/ESXi の場合、[フォールト トレランスなどのクラスタリング機能をサポート] をクリックして、新しい仮想ディスクを必要なフォーマット、eager zeroed のシックで作成します。



      ESXi 5.x のバージョンでは、[ディスクの作成] ウィンドウの [ディスク プロビジョニング] には、[シック プロビジョニング (Lazy Zeroed)]、[シック プロビジョニング (Eager Zeroed)]、[シン プロビジョニング] のオプションが用意されています。必ず、シック プロビジョニング (Eager Zeroed) を選択してください。また、ドキュメントで、これをフラット事前初期化として参照している場合もあることに注意してください。

    3. [SCSI (1:0)] などの仮想デバイス ノード設定を選択します。これは後で必要となるため、書き留めておきます。


       
  2. マルチライター フラグを追加して共有を構成します。

    :SCSI コントローラの SCSI バス共有オプションを変更しないでください。デフォルトの選択 (None) を保持します。

    特定のディスクを共有するためにマルチライタ フラグを有効にするには、次のいずれかのオプションを適用します。
    1.  
      1. 仮想マシンをパワーオフします。
      2. 仮想マシンを定義するvmx ファイルに、次のようなエントリを追加します。
        scsiX:Y.sharing = "multi-writer"

        ここで、X はコントローラ ID で、Y はそのコントローラのディスク ID です。仮想マシンの設定画面に、次の値が表示されます。



        共有する各仮想ディスクにこの設定を追加します。たとえば、4 台のディスクを共有する場合、構成ファイルのエントリは次のようになります。
        scsi1:0.sharing = "multi-writer"
        scsi1:1.sharing = "multi-writer"
        scsi1:2.sharing = "multi-writer"
        scsi1:3.sharing = "multi-writer"
      3. .vmx ファイルを保存し、仮想マシンをパワーオンします。

        :vSphere 6.0 以降の GUI には、.vmx ファイルを編集せずにマルチライタ フラグを設定する機能があります。
         
    2. vSphere Client で仮想マシンをパワーオフし、[設定の編集] > [オプション] > [詳細] > [全般] > [構成パラメータ] に移動します。共有ディスクごとに行を追加し、値を multi-writer に設定します。

  3. 別の仮想マシンにこのディスクを追加します。
     
    1. vSphere Client インベントリで、仮想マシンを右クリックし、[設定の編集] をクリックします。
    2. [ハードウェア] タブ、[追加] の順にクリックします。
    3. [ハード ディスク][次へ] をクリックします。
    4. [既存の仮想ディスクを使用] を選択します。

      :ディスクはすでに作成されているため、ディスクを作成する必要はありません。
       
  4. 手順 2 に示したどちらかの方法を使用して、この仮想マシンでの共有を有効にします。

Host Client 経由でマルチライター フラグを構成するには:

 

  1. 必要な仮想マシンを右クリックし、[設定の編集] を選択します。

  2. [仮想マシン オプション]タブをクリックします。

  3. [詳細設定] を選択し、[構成パラメータ] の [構成の編集] をクリックします。

  4. 以下のように、共有する各仮想ディスクにこの設定を追加します。
scsi1:0.sharing = ""multi-writer""
scsi1:1.sharing = ""multi-writer""
scsi1:2.sharing = ""multi-writer""
scsi1:3.sharing = ""multi-writer""


この記事に記載されている手順の詳細については、以下を参照してください。