VMware上で動作するMicrosoft SQL Serverワークロードにおいて、VMDKとRDMのどちらを選択するかは、IT管理者がインフラストラクチャーを構築する際に下すべき極めて重要な決定事項です。 どちらも仮想化環境におけるSQL Server用のストレージを提供していますが、どちらが適しているかは、使用シナリオにおいてパフォーマンスと柔軟性のどちらを優先するかによって異なります。
本ガイドでは、VMwareの仮想化環境でSQL Serverを運用する際に適切な選択ができるよう、両者の実務上の違いについて解説します。
VMDKとは?
仮想マシンディスク(VMDK)は、 VMware vSphere の仮想化環境で使用される、可搬性が高く、高性能でスケーラビリティに優れた仮想ディスク形式です。 これは仮想化されたハードディスクであり、サイズ変更、バックアップ、スナップショットの作成、復元、さらに仮想マシンへの接続・切断を簡単に行うことができるため、VMDKは柔軟で管理がしやすくなっています。
RDMとは?
ローデバイスマッピング(RDM)は、VMware vSphereがストレージを SAN のLUN(論理ユニット番号)に直接マッピングできる機能です。 これにより、物理ストレージ機能に直接アクセスできるようになります。 また、より高いパフォーマンスを提供できる場合もありますが(後述のとおり、VMDKと比較した場合の優位性は以前より小さくなっています)、仮想化環境で動作するソフトウェア(例えばクラスタリングソフトウェアなど)にハードウェアストレージへの直接アクセスを与えることができます。ただし、柔軟性、スケーラビリティ、管理面でトレードオフが発生します。
vVolはVMware vSphereのもう1つのストレージ技術ですが、非推奨となっているため、新規導入では使用すべきではありません。 既存のvVolユーザーは、他のサポートされているストレージ技術への移行が必要かどうかを検討する必要があります。
VMDKとRDMの違いとは?
まとめると、VMDKはVMware vSphere仮想化プラットフォーム内からアクセスする仮想ディスクファイルであり、一方RDMは仮想マシンを物理ストレージデバイスに直接マッピングするものです。 どちらもゲストOSからは通常のボリュームとして認識されますが、両者にはSQL Serverのワークロードに影響を与える違いがあり、それぞれのテクノロジーはパフォーマンスと管理の両面で異なる意味を持ちます。
SQL Serverに使用するVMwareストレージ技術を選ぶ際に考慮すべきこと
Microsoft SQL Serverのワークロードに適した選択はユースケースによって異なりますが、一般的に、ユーザーは以下の理由からVMDKを使用します。
VMDKとRDMのパフォーマンスへの影響
RDMは歴史的にVMDKよりも高性能とされてきましたが、この差は多くのユーザーにとって判断材料としての重要性が薄れてきています。 VMDKは現在パフォーマンス面で大幅に最適化されており、実質的な差はごくわずか(場合によっては1%程度)になっています。
RDMによるパフォーマンス向上は、現在ではワークロード固有のものになりつつあり、ゲストがストレージハードウェアの機能に直接アクセスする必要があるユースケースは非常に限られています。
仮想化ストレージとハードウェアストレージの管理・運用面でのトレードオフ
VMDKは以下の特徴により、RDMよりも明らかに管理が容易です。
- 柔軟でオンザフライのバックアップと復元:VMDKはスナップショット、レプリカ、クローニングに対応
- 管理の簡素化:仮想化により、ストレージを必要に応じてプロビジョニング、サイズ変更、最適化、デプロビジョニングできる
- 可搬性とスケーラビリティ:ストレージのホットスワップが可能で、環境間でのディスクや仮想マシンの移行も容易
- VMware仮想化ツールとの統合:特定の基盤デバイスに依存することなく、完全に仮想化された環境の利点を最大限に活用できる
一方、スナップショット機能などの管理機能が欠けているRDMは、バックアップと復元が難しく、保守が複雑になりやすく、可搬性やスケーラビリティにも劣ります。さらに、そもそも仮想かをSQL Serverのホスティングにおいて魅力的にしている機能への互換性やサポートも限定的です。
SQL Serverのワークロードにおける考慮点
SQL Server導入のインフラを計画する際は、安定したディスクパフォーマンスと、信頼性の高いバックアップ・復旧を優先すべきです。 また、高可用性構成の必要性や、追加の仮想化機能のメリットについても検討する必要があります。 適切にスペックを設定すれば、VMDKはこれらの要件を満たすことができます。
RDMがVMDKの代替として有用な場合
ほとんどの場合、Microsoft SQL Serverのワークロードに対してはVMDKが明確な選択となります。 しかし、特定のエッジケースとなるハードウェアやクラスター構成では、RDMが必要となる場合もあります。 ストレージハードウェアへの直接アクセスを必要とするレガシーシステムやソフトウェア(例えばクラスタリングソフトウェアなど)も、RDMを必要とする場合があります。
RDMの利用を検討する際は慎重に判断してください。VMwareでさえ、ワークロード固有のユースケースやレガシー要件への対応が必要な場合を除き、一般的にVMDKを推奨しています。
VMwareホストと仮想マシンのパフォーマンス監視、管理、バックアップ
VMDKの主な利点の1つは、スナップショットを作成できることです。これにより、既知の正常な状態にロールバックしたり、フルバックアップから復元したりすることができます。 VMDKまたはRDMのいずれかに依存するシステムでは、問題を迅速に診断できること(特に分散システムにおいて)、そして障害やサイバーセキュリティ事案が発生した際にシステム全体を復元できることが重要です。
NinjaOneは、オンプレミス、クラウド、仮想化環境を含むIT基盤全体を統合的に監視できるよう、エンドポイント管理、サイバーセキュリティツール、ネットワーク管理を統合した包括的なITツールチェーンの一部として、VMwareの監視・管理機能を提供しています。
クイックスタートガイド
NinjaOneの仮想マシン機能:
– VM監視: NinjaOneは、Hyper-Vおよび仮想環境(VMware)の両方を監視できます ― NinjaOne
– SQL Serverバックアップ: NinjaOne Device Backupは、Microsoft SQL Serverを実行しているマシンのバックアップに対応しています(VSSサポートによりデータベースの整合性を確保)。
– VMホストの管理: NinjaOneでは、VMホストの管理や、仮想マシンに対する操作を実行できます。
NinjaOneが対応していない項目:
VMDKとRDMの選択は、VMwareインフラのアーキテクチャーに関する判断であり、NinjaOneの対象範囲外です。 これは通常、以下の担当者が対応します:
– VMware管理者
– インフラチーム
– ストレージアーキテクト
