VDS について

[Windows 8とWindows Server 2012以降、仮想ディスク サービス COM インターフェイスは Windows Storage Management API に置き換えられます。

Virtual Disk Service は、エンド ユーザー、スクリプト、アプリケーションの要求に応じてクエリと構成操作を実行する Microsoft Windows サービスです。 このサービスは、Windows Server オペレーティング システムの既存のストレージ機能を次の方法で拡張します。

  • Windows の既存のボリュームおよびディスク管理機能に API を提供します。
  • ボリューム管理とハードウェア冗長アレイオブインディペンデント ディスク (RAID) 管理を 1 つの API で統合します。

VDS では、次のストレージ管理アクティビティは実行されません。

  • 温度の監視やディスク アレイのパフォーマンス統計の監視など、ハードウェア サブシステムの管理。
  • Host-Based アダプター (HBA) のゾーニングやセキュリティなど、記憶域ネットワーク (SAN) ファブリック管理。

以下のセクションでは、VDS のアーキテクチャ、VDS プロバイダーの役割、および API について説明します。

サービス アーキテクチャ

VDS では、アプリケーション層とサービス間の 1 つのインターフェイスと、データ層内のサービス プログラムとプロバイダー プログラム間の 2 つのインターフェイスという 3 つのインターフェイスが定義されています。 次の図は、アプリケーションとサービス間の境界とサービス間の境界を示しています。

N 層アーキテクチャを使用すると、VDS はファイル システム関数と連携し、プロバイダー アクティビティを同期し、アプリケーション間でアービトレーションを行えます。 アプリケーションとプロバイダーの間に存在する VDS は、基になるプロバイダーの一部にこのような統一性がない可能性がある場合でも、アプリケーションに統一された機能を提供します。

このサービスでは、ボリュームの書式設定、ドライブ文字またはマウントされたフォルダーの追加と削除、未割り当てディスクの管理などの一般的な機能が実装されています。パーティション情報のないディスク。 VDS は、登録済みアプリケーションにもイベント通知を返します。 詳細については、「 VDS 通知」を参照してください。

プロバイダーの役割

VDS は、ソフトウェア プロバイダー用とハードウェア プロバイダー用の 2 つのプロバイダー インターフェイスを定義します。 各プロバイダーは、VDS によって定義された API の異なる部分を実装します。

  • ソフトウェア プロバイダーは、ストレージ I/O スタック内のカーネル モード ドライバーによってサポートされるホスト ベースのプログラムです。 プロバイダー カーネル ランタイムは、ブート時にマウント マネージャー、または検出時に プラグ アンド プレイ (PnP) マネージャーと対話して各ディスクを要求します。 ソフトウェア プロバイダーは、ボリューム、ディスク、ディスク パーティションで動作します。

    VDS には、2 種類のプロバイダーが含まれています。 基本的なソフトウェア プロバイダーは、ベーシック ディスクを管理し、フォールト トレラント バインディングを提供しません。 ダイナミック ソフトウェア プロバイダーはダイナミック ディスクを管理し、該当する場合は障害管理を提供します。 ソフトウェア プロバイダーの動作は、ホスト上のベーシック ディスクとダイナミック ディスクの動作と一致します。 たとえば、特定のホストのオペレーティング システムがフォールト トレラント ダイナミック ディスクをサポートしている場合、VDS はホストでもこの動作をサポートします。

  • ハードウェア プロバイダーは、ストレージ サブシステムの管理に使用されるメソッド (パフォーマンス、データの可用性、またはデータ回復を強化するように構成された論理ディスクを作成できるようにするハードウェア ディスク アレイまたはアダプター カード) を実装します。 多くの主要な RAID キャビネットメーカーは、VDS で使用するように設計されたハードウェア プロバイダーを製造しています。 サービス コンシューマーは、製造元からハードウェア プロバイダーと関連ハードウェアを取得する必要があります。

    ハードウェア プロバイダーの機能は、基になるハードウェアの機能によって異なります。 そのため、各製造元が API を実装する度合いは異なる場合があります。 たとえば、製造元は、構成の最適化、パフォーマンスの監視と動的な調整、障害管理の自動化、またはその他の有益な機能の提供を行う追加の方法を含めることができます。

    ハードウェア プロバイダーには、ソフトウェア プロバイダーで使用できないいくつかの構成オプションが用意されています。 最も注目すべき点は、ストレージの属性ベースのビューを各アプリケーションに提示する自動マジック構成モデルです。 "ほとんど読み取り" や "高速クラッシュ回復が必要" などのバインド ヒントは、物理ストレージを仮想ストレージにバインドする複雑さを置き換えます。 各ハードウェア プロバイダーは、アプリケーションによって送信されたヒントに基づいて、エクステント マッピング、領域の割り当て、およびバインドの種類の選択を実行します。 構成オプションを含む完全なハードウェア プロバイダーの説明については、サブシステムの製造元によって提供されるドキュメントを参照してください。

アプリケーション プログラミング インターフェイス

アプリケーションは VDS メソッドを呼び出して、ホスト ベースのディスク、RAID ストレージ、またはその両方のクエリと構成を行うことができます。 API の概要については、 VDS オブジェクト モデルに関するページを参照してください。

VDS の一般的なアプリケーションは、構成管理と監視の問題を解決し、専用のストレージ管理システムから、構成や障害管理をより適切に制御するバックオフィス アプリケーションまで多岐にわたります。 次のアプリケーションでは、現在 VDS が使用されています。

  • ディスク管理スナップインは、ホスト コンピューターによって制御されるディスクを構成および管理します。 システム管理者とエンド ユーザーは、このユーザー インターフェイス (UI) ツールを使用して、ローカル (またはリモート) ディスクとボリュームのクエリと構成を行うことができます。
  • Diskpart.exeは、ディスク、ボリューム、パーティションを構成および管理するコマンド ライン ユーティリティです。
  • Diskraid.exeは、ハードウェア RAID サブシステムを構成および管理するコマンド ライン ユーティリティです。 このユーティリティは、VDS ハードウェア プロバイダーが付属するすべてのストレージ ハードウェアとやり取りできます。

仮想ディスク サービス

VDS 通知

VDS オブジェクト モデル