VMware vSphere 6.7 および 7.0 における仮想ボリューム(vVol)の概要

ストレージは、仮想環境を含むあらゆるコンピュータ、サーバー、データセンターにおいて不可欠な要素です。適切なストレージ構成は、最適なパフォーマンスと信頼性を確保します。データセンターが拡大し、大量のデータを扱うようになると、自動化と拡張性が不可欠となります。VMwareは、共有ストレージへのデータ保存という従来の概念を一新する"vVols"機能を提供しています。本ブログ記事では、VMware vVols(VMware Virtual Volumes)について、そのユースケースや動作原理を含めて解説します。

NAKIVO for VMware vSphere バックアップ

NAKIVO for VMware vSphere バックアップ

VMware vSphere 仮想マシン(VM)の包括的なデータ保護と即時復旧機能。オンプレミス、オフサイト、クラウド上の安全なバックアップ先。ランサムウェア対策機能。

背景

VMware vSphereは、ITインフラストラクチャを仮想化し、完全にソフトウェア定義された仮想データセンターを構築するために使用されます。この環境では、管理者はハードウェアから切り離して、VMware vSphere内のすべてのコンポーネントを設定することができます。

VMwareがESXの初期バージョンをリリースした際、 VMware Workstation、これらのハイパーバイザーはソフトウェアエミュレーションを用いて仮想マシンを実行していました。仮想化の普及が進むにつれ、VMwareはパートナーや他のベンダーに対し、仮想化が現代において不可欠であることを説得しました。その結果、仮想化機能がIntel VT-xやAMD-Vといった命令セットとして、IntelおよびAMDのプロセッサに実装されるようになりました。ハイパーバイザーソフトウェアのみによる仮想化と比較して、CPUレベルでサポートされるハードウェア仮想化は、仮想マシンのパフォーマンスを向上させました。一方で ESXiクラスター CPUの観点から抽象化できるだけでなく、ESXiクラスターでは、VMを実行している基盤となるESXiホストからも抽象化することができます。

仮想マシンの人気はますます高まりました。次のステップはネットワーク仮想化でした。なぜなら、多数のVMが存在する複雑な仮想環境において、従来のハードウェア製ネットワークデバイスを使用するのは不便だったからです。現在では、VMware仮想スイッチ(標準的な vSwitch そして 分散型vSwitch (VMKernelレベルで動作する)機能を使用して、VMの仮想ネットワークアダプタをさまざまなネットワークやデバイスに接続します。VMwareはまた、 NSX、VMware vSphereと統合可能な専用のソフトウェア定義ネットワーク(SDN)プラットフォームです。その後、ベンダー各社は、ネットワークアダプタ内のハードウェアレベルで仮想スイッチを実装できると判断し、SR-IOV技術が誕生しました。特にインフラストラクチャ・アズ・ア・サービス(IaaS)プロバイダーにとって、ネットワークを分離するためのVLAN機能だけでは不十分になったため、ベンダー各社はハードウェアサポートを必要とするVXLAN技術を開発しました。 ネットワーク仮想化の利点は、ネットワークデバイス間の物理的なケーブル接続が少なくなり、ネットワークが集中管理されることです。

次の段階はストレージの仮想化です。VMwareはVMware vSAN これにより、ソフトウェア定義型ストレージと物理ディスクドライブの抽象化を活用して、ハイパーコンバージド仮想インフラストラクチャを構築できるようになります。VMwareはそれにとどまらず、ソフトウェア定義型ストレージをさらに進化させるべくvVolsを開発しました。VMware vVols機能は、VMware vSphere 6.0で導入されました。

vVolを利用する理由

数年前、従来のストレージアレイが開発された際、ストレージベンダーやソフトウェアベンダーは、ハードディスクドライブのディスクパーティションをマッピングするのと同様に、LUN(論理ユニット番号)を使用してLUNをマッピングすることを決定しました。当初の考え方は、オペレーティングシステムが通常、LUNを単一のディスクとして、あるいはクラスタ用の共有ディスクとして使用する、というものでした。 VMwareが独自の製品"VMware vSphere"を開発した際、同社はLUNを採用し、ネットワーク経由で共有ストレージをESXiホストに接続するとともに、VMwareが開発したクラスタファイルシステムであるVMFSを使用してLUNをフォーマットしました。VMFSは、ユーザーから信頼されている堅牢なファイルシステムです。従来、システム管理者(ストレージ管理者)は、必要なストレージアレイ上にLUNを作成し、このLUNを ESXi ホスト上で、接続されたLUNを使用してVMFSファイルシステムを作成し、データストアを作成します。

さまざまなストレージの種類

仮想インフラストラクチャが拡大し、ストレージアレイ上で異なる種類のディスク、RAID、重複排除構成が存在する場合、ストレージのプロビジョニングをより頻繁に行う必要が生じる可能性があります。仮想マシンごとに、ポリシーに応じて異なるサービスレベルが求められます。 ストレージアレイデバイス上のディスクアレイが、冗長性(RAID 1/RAID 0)、ディスクのインターフェース/技術(フラッシュ/SSD、SAS HDD、SATA HDD)、重複排除(有効/無効)といった特性を持っていると仮定します。この場合、ストレージ構成には12通りの組み合わせが考えられます。

Different types of storage configuration that can be used for VMware vVols

従来のアプローチでは、あらゆる要件に対応できるよう、ストレージの種類ごとにLUNやデータストアを作成する必要があります。 しかし、VMのストレージをプロビジョニングする際、あるストレージタイプが他のタイプよりも頻繁に使用される場合があります。数百台、あるいは数千台ものVMが存在する大規模な仮想インフラストラクチャにおいて、どのVMがどのストレージタイプを使用すべきかを記憶しておくことは困難です。さらに、最も高速で信頼性の高いストレージが満杯になると、通常は誰もが最高のストレージにVMを配置したがるため、問題が生じる可能性があります。人的ミスも潜在的な問題となります。ストレージ vMotion その場合は、ストレージDRSを使用して、VMファイルを空き容量のあるストレージクラスのデータストアへ移行する必要があります。この場合、VMware vVolsを利用すると作業がスムーズになります。

VMware vVols とストレージポリシー

VMware vVols は、SAN(ストレージ・エリア・ネットワーク)やNAS(ネットワーク接続ストレージ)など、ストレージ固有の操作の一部をストレージハードウェア側に委譲する革新的な技術です。この場合、ストレージアレイシステムのベンダーは、自社のストレージデバイスに対してvStorage API for Array Integration(VAAI)のサポートを実装する必要があります。VAAIを使用することで、ESXiサーバーからストレージアレイのハードウェアへストレージ関連のタスクを大幅にオフロードし、パフォーマンスを向上させることができます。

システム管理者は、要件に応じて仮想マシン(VM)を作成する際、各VMに適用する一連のポリシーを定義する必要があります。例えば、次のように異なる 方針 そして、それらに"トップクラス""ミドルクラス""ロークラス"といった名前を付けます:

最高級 – フラッシュ/SSD、RAID1、重複排除機能有効

中級クラス – SAS HDD、RAID1、重複排除機能有効

下品 – SATA HDD、RAID 0、重複排除は無効。

適切なストレージハードウェア構成があれば、考えられるすべての組み合わせ(この例では12通り)に対応するポリシーをさらに作成することも可能です。

Policies define storage configuration to create VMware virtual volumes (vVols)

新しいVMを作成する際、管理者はVMストレージ用のポリシーを選択する必要があります。ポリシーは、vVolを使用するVMオブジェクトに対してVMごとに適用されます。その後、仮想ディスク、スワップファイル、構成ファイル、仮想メモリファイル、その他の特定のVMファイルなど、各VMオブジェクトに対して適切なストレージアレイ上にLUNが作成されます。これにより、ストレージ機能や構成はストレージ利用者から抽象化されます。

ポリシーベースの管理により、大規模な仮想環境における vSphere 管理者の作業時間が短縮されます。これは、空き容量のある利用可能なストレージアレイの中から、VM に適したストレージターゲットを手動で検索する必要がなくなるためです。VMware vVol ストレージポリシーは、VM 仮想ディスクのレベルで管理されます。

LUNとレプリケーション

VMFSデータストアは、単一のLUN上に作成されます。通常、大規模な仮想インフラストラクチャでは、プロビジョニングされたLUN上に数百ものVMFSデータストアが作成されます。 ストレージハードウェアは、それらのLUN上に保存されている仮想マシンのファイルを認識しません。ストレージアレイシステムのハードウェアレベルでストレージベースの同期レプリケーションを使用する場合、ストレージハードウェアは、そのLUN上に保存されているすべてのVMを含むLUN全体のデータレプリケーションを実行するため、この場合、1つのVMのみをレプリケートすることはできません。

VMのバックアップとレプリケーションの利点については、 ホストレベル.

VMごとに1つのLUNを作成するのは、VMFSボリュームの管理を複雑にするため、好ましくない方法です。VMware Virtual Volumes(vVols)は、こうした問題を解決し、仮想マシンのストレージ管理をよりきめ細かく行えるようにするとともに、 LUN > VMFS volume > Datastore 仮想マシン(VM)にストレージを割り当てる仕組み。

接続と負荷

もし~を使用する場合は N ESXiホストおよび M ストレージアレイ上のLUNについては、 NxM VMのストレージプロビジョニングに従来の手法を使用する場合、VMとデータストア間の通信にはネットワーク接続が使用されます。シンディスクが多数ある場合(シンプロビジョニングされたディスク) データストア上で、例えば、 仮想デスクトップインフラストラクチャ (VDI) を使用すると、ストレージハードウェアへの負荷が増大します。シン仮想ディスクを拡張し、このディスクに新しいブロックを追加すると、同じデータストア上に配置されている他の VM の仮想ディスクのパフォーマンスに影響を及ぼします。これは、vVols を使用することで解決できるもう 1 つの課題です。

The Protocol Endpoint reduces the number of connections when using VMware vVols

詳細については、以下のプロトコルエンドポイントに関するセクションで説明します。

vVols を使用するメリット

VMware vVols を使用するメリットの一部を以下に挙げます:

  • 大規模な仮想環境におけるストレージ管理の簡素化
  • VMレベルでの柔軟かつきめ細かなストレージ管理
  • リソースの最適活用、リアルタイムでの動的な調整
  • 過剰なプロビジョニングの回避
  • ポリシーに基づく自動化された集中型ストレージプロビジョニング
  • ストレージ側で事前に設定されたLUNは必要ありません
  • ESXiホストからストレージハードウェアへのスナップショット作成、クローン作成、データ暗号化、Storage DRSなどの処理をオフロードする
  • 仮想マシン(VM)のストレージ要件により適切に対応できる
  • デバイス中心の管理からVM中心の管理へと変更されました

動作原理

VMware vVols のコンセプトは、複数の仮想マシンのファイルが保存されるデータストア全体である LUN とは異なり、仮想マシンと仮想ディスクがストレージ管理の基本単位となるという点にあります。 VMware vVols を使用したデータの整理は、多数の VM が存在する大規模データセンターのストレージアレイにおいて便利です。

VMware vVols は、データストアの作成に使用される従来の LUN と同様に、ストレージアレイレベルでの操作をサポートする、仮想マシン向けの低レベルストレージです。従来の VMFS ファイルシステムを使用する代わりに、ストレージアレイが、そのストレージアレイを使用して VM へのアクセスを提供し、データを整理する方法を定義します。

vVolsのもう1つの特徴は、VMDK仮想ディスクファイルが格納されるLUN上のVMFSデータストアとは異なり、VMディスク用のファイルシステムが存在しないことです。ゲストOS内で、あたかもOSで使用するための新しい空のハードディスクを接続するかのように、ファイルシステムが作成されます。

VMFSファイルシステムは、VMXファイルが格納されるVM構成vVols上に作成されます。ATS (Atomic Test & この場合、集合演算がサポートされています。ATSは、ストレージアレイデバイス上のファイルシステムロックを管理するためのコマンドセットです。

新しいVMを作成したり、VMのスナップショットを作成したり、VMをクローンしたり、VMをレプリケートしたりすると、ストレージアレイ上に新しいVM仮想ボリューム(vVol)が自動的に作成されます。

新しいVMを作成すると、複数のvVolが作成されます:

  • VMのVMX構成ファイルを保存するために使用される1つの構成vVol
  • 仮想ディスクごとに1つのvVolが作成されます
  • 必要に応じて、スワップファイル(パーティション)用に1つのvVolが作成されます
  • ディスクスナップショットおよびメモリスナップショットごとに1つのvVolが作成されます

VMware vVolsは、仮想ディスクや前述のその他のVMファイルのカプセル化と見なすことができます。

ESXiは最大256個のLUNへの接続をサポートしています。VMware vVolsがこの制限を超えるためには、ストレージアレイ内で"IOデマルチプレクサ(IO Demux)"と呼ばれる特別な論理デバイスを使用する必要があります。 このデバイスは、ストレージアレイ上の仮想ディスクにアクセスする必要があるすべてのVMにアクセスを提供する、論理的な入出力チャネルです。VMware vVolsを使用すると、iSCSIやFC(ファイバーチャネル)などのブロックベースの共有プロトコルや、NFSなどのファイルベースのプロトコルから抽象化されます。サポートされているすべてのプロトコルに対して、統一されたストレージアーキテクチャが提供されます。

vVolsのその他の機能について見ていきましょう。

  • 仮想マシン上のファイルを削除すると、空き領域が自動的に確保されます。 UNMAP コマンド(シンプロビジョニング・ブロック・スペースの回収)。
  • SAN上にはキャパシティプールが作成され、プール内で利用可能なストレージ容量のレベルや、プール内での低レベルな操作を制限するポリシーが定義されます。
  • QoS(Quality of Service)プロファイルは、仮想マシンのストレージ性能要件を満たすために作成されます。vVolレベルまたはキャパシティプールレベルで適用する性能パラメータとデータポリシーを設定します。

vVolsはVAAIの後継です。vVolsの操作が実行できない場合、システムはVAAIプリミティブを使用するように切り替わります。VAAI(vStorage API for Array Integration)は、ESXiホストからストレージアレイシステムへ一部のストレージ操作をオフロードすることを目的としています。

vVols VMware – the working principle

ストレージプロバイダー(VASAプロバイダー) これは、VMware vVolsをストレージコンテナとして含むストレージハードウェアとvSphereコンポーネントとの連携を保証するために、ストレージアレイのハードウェアメーカーが提供するソフトウェア層です。ストレージプロバイダーは、ストレージアレイ(ハードウェア)コンポーネントとして、あるいは仮想アプライアンス(vSphere内のESXiホスト上で実行されるVM)として実装できます。ESXiホストとvCenterは、ストレージプロバイダーに接続します。

VASA(vSphere API for Storage Awareness) は、VMware vSphereにおいてストレージの可視性を確保するために使用されるソフトウェアコンポーネントです。VASAは、ストレージアレイをvCenterと統合し、vCenterからの管理を可能にするAPI(アプリケーション・プログラミング・インターフェース)です。

保管用コンテナ これは、VMware vVols をタイプ別にグループ化して管理を行うための論理エンティティです。ストレージコンテナは、ストレージアレイのハードウェア上に作成されます。コンテナのサイズ変更が可能です。1つのストレージコンテナに対して、複数のプロトコルエンドポイントから同時にアクセスすることができます。

プロトコルエンドポイント これは、ESXiホスト上で実行されているVMとVMware仮想ボリュームとの間でやり取りを行うために使用される論理I/Oデバイス(プロキシ)です(上記のNxM接続と負荷を示す図を参照)。すべてのVMは、仮想ボリュームにアクセスするためにこのプロトコルエンドポイントに接続されます。vVolを使用する場合、VMFSデータストア上の従来のVMDKディスクを使用する際のMxN接続とは異なり、M接続が確立されます。 ESXiホストは、ストレージ側のvVolに直接アクセスすることはできません。

プロトコルエンドポイントのキュー深度は128であり、これはLUN(32)よりも大きくなっています。プロトコルエンドポイントは無制限に作成できますが、1つのPEで数千のVMware vVolを処理できるため、作成する必要はありません。仮想マシンのvVolは、VMware vCenterでプロトコルエンドポイントにリンクできます。 iSCSI、NFS v3、FC、およびFCoEは、SANおよびNASデバイスにおける業界標準としてサポートされているプロトコルです。エンドポイントはSCSIまたはNFSコマンドを受信します。プロトコルエンドポイントは、Linuxにおけるマウントポイントに相当するものと考えられます。

要件と制限事項

VMware vVols の使用を開始する前に、システム要件と制限事項をご確認ください。

  • VMware Virtual Volumesは、vSphere 6.0以降のすべてのエディションで利用可能です(VMware vSphere 7.0の場合は、Enterprise PlusおよびStandardエディションが必要です)。VMware ESXi 6.0およびvCenter 6.0以降が必要です。VMware vVolsはvCenterを必要とするため、スタンドアロンのESXiホストでは使用できません。Raw Device Mapping(RDM)はサポートされていません。
  • サーバーハードウェアは、vSphere 6.0 以降に対応している必要があります。VMware 互換性ガイドをご確認ください。
  • ストレージアレイシステムは、VASA(VMware APIs for Storage Awareness)を介してVMware vVolsをサポートしている必要があります。ストレージアレイによっては、ベンダー固有のvVols実装を採用している場合があり、その場合はストレージアレイシステムのファームウェアのアップグレードが必要になることがあります。
  • ESXiホストおよびすべてのストレージコンポーネントで時刻を同期させる必要があります。時刻の同期には、NTP(Network Time Protocol)の使用を推奨します。

ワークフロー(概要)

VMware vVols を設定するための主な手順を概説します。システム管理者は、VMware vSphere 仮想ボリュームを使用するために、以下で説明するワークフローに従う必要があります。

すべてのデバイス(ESXi ホスト、vCenter Server、ストレージアレイシステム)で時刻を同期します。

VMware vSphere Client を使用して、vCenter にストレージプロバイダー(VASA プロバイダー)を登録します。vSphere Web Client プラグインまたはストレージシステムのユーザーインターフェイスを使用して、ストレージプロバイダーを登録できます。ストレージプロバイダーが登録されると、vCenter とストレージプロバイダーの間に安全な SSL 接続が確立されます。

VMware vVol 用の仮想データストアを作成します。vVol データストアは、ストレージプロバイダーに接続されたストレージコンテナ上に作成されます。データストアの作成後は、vVol データストアを拡張またはアップグレードすることはできません。これは、vVol データストアがストレージアレイシステムによって完全に制御されるためです。vVol データストアの作成後、その vVol データストアを追加の ESXi ホストにマウントします。

ストレージ機能とVMストレージポリシーを関連付けます(VMストレージポリシーを設定する前に、ストレージシステム上でストレージ機能を設定しておく必要があります)。vCenterでストレージポリシーを作成し、VMのストレージ要件を満たし、ストレージパフォーマンスや冗長性など、適切なサービスレベルを提供します。

ストレージプロバイダー(例:vVolsをサポートするNetApp、Dell EMC、またはHP 3PAR)を選択し、ポリシーに必要な機能を選択する必要があります。

仮想マシンを作成し、次のストレージ構成ステップでVMストレージポリシーを選択します。適切なストレージアレイが自動的に選択され、VMデータを格納するためのvVolsが作成されます。

Storage vMotionを使用して、VMFS、NFS、およびvSANデータストアからvVolsデータストアへ仮想マシンディスクを移行できます。 vSphere CLI で VMware vVols を管理できます。

従来の vMFS データストアの代わりに vVols を使用するように切り替える前に、お使いのバックアップソフトウェアが VMware vVols をサポートしており、vVols に保存された仮想マシンをバックアップできることを確認してください。VMware Virtual Volumes (vVols) は、vSphere APIs for Data Protection (VADP) を使用するバックアップソフトウェアをサポートしています。 NAKIVO Backup & Replication VMware vVols をサポートし、以下の機能を実現します VMwareのデータバックアップVASAプロバイダーを仮想アプライアンス(つまり、ESXiホスト上のVMware VM)として展開する場合は、VASAプロバイダーのバックアップを忘れないでください。VASAプロバイダーがないと、vVolsの構造が失われる可能性があります。ほとんどの場合、ディザスタリカバリ機能や高可用性機能を使用して、ストレージベンダーのvApp上でVASAプロバイダーを実行することができます。

無料版のダウンロード NAKIVO Backup & Replication Pro Editionのすべての機能(VMwareのバックアップおよび復元を含む)をフルに活用するには。Free Editionの NAKIVO Backup & Replication 10台のライセンスが含まれており、1年間は完全無料ですので、このまたとないチャンスをお見逃しなく。

試してみてください NAKIVO Backup & Replication

試してみてください NAKIVO Backup & Replication

無料トライアルをご利用いただき、本ソリューションのデータ保護機能をすべてお試しください。15日間無料です。機能や容量の制限は一切ありません。クレジットカードも不要です。

結論

VMware Virtual Volumes(vVols)は、仮想マシン向けのストレージリソースのプロビジョニングに新たなアプローチを提供する機能です。このアプローチにより、よりきめ細かな制御と高度な自動化が可能となり、数千台の仮想マシンが存在する大規模および超大規模な仮想環境において有用です。vVolsのコンセプトは、基本的な管理単位をデータストアやLUNではなく、仮想マシン(VM)とすることにあるのです。

ストレージアレイの特性を定義するポリシーを作成し、VMに適切なタイプのストレージをプロビジョニングするために必要なポリシーを選択することで、管理者は意図しないエラーを回避し、ハードウェアリソースをより合理的に活用できます。VMware API(VASA、VAAI)を使用することで、スナップショット、レプリケーション、クローン、暗号化などのストレージ操作はESXiサーバーからストレージアレイシステムにオフロードされますが、VMのストレージ管理はvCenterで行われます。

プロトコルエンドポイントは、接続数を削減し、VMファイルを保存するためのストレージをプロビジョニングする際に、ブロックベースとファイルベースの共有ストレージのどちらを選択するかという必要性を排除する、統一されたインターフェースを提供します。VMware vVolsは、ソフトウェア定義データセンターの構築に一歩近づけるものです。

People also read