Comments
Transcript
Microsoft SQL Server 2005を使用するEMC Symmetrix
5 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への 仮想プロビジョニングの実装 高度なテクノロジー US ホワイトペーパー翻訳版 要約 このホワイト・ペーパーでは、仮想プロビジョニングを使用した、EMC® Symmetrix® DMX-3 および DMX-4 アレイ上でのMicrosoft SQL Server 2005 データベース展開の技術的な側面および利点について 詳細に説明します。 2008 年 4 月 Copyright © 2008 EMC Corporation.不許複製 EMC Corporation は、この資料に記載される情報が、発効日時点で正確であるとみなします。情 報は予告なく変更されることがあります。 この資料に記載されている情報は、「現状有姿」の条件で提供されます。EMC Corporation は、 この資料に記載される情報に関する、どのような内容についても表明保証条項を設けず、特に、 商品性や特定の目的に対する適応性に対する黙示の保証はいたしません。 この資料に記載される、いかなる EMC ソフトウェアの使用、複製、頒布も、当該ソフトウェ ア・ライセンスが必要です。 最新の EMC 製品名については、EMC.com で EMC Corporation の商標を参照してください。 他のすべての名称ならびに製品についての商標は、それぞれの所有者の商標または登録商標です。 パーツ番号 H4287-J Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 2 目次 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMXへの 仮想プロビジ ョニングの実装..................................................................................................... 0 高度なテクノロジー.............................................................................................. 0 エグゼクティブ・サマリー................................................................................... 4 はじめに ............................................................................................................... 4 対象読者....................................................................................................................................... 4 用語 .............................................................................................................................................. 5 概要....................................................................................................................... 6 要件....................................................................................................................... 8 Windows NTFSに関する考慮事項 ....................................................................... 8 Windowsパーティションの配置 .................................................................................................. 8 Windows NTFSボリュームのフォーマット................................................................................. 9 シン・デバイスへのMicrosoft SQL Serverファイルの展開 .............................. 11 トランザクション・ログ・ファイル ......................................................................................... 11 SQL Server 2005 ファイルの瞬時初期化 .................................................................................. 12 SQL Server TEMPDBデータベース .......................................................................................... 14 Microsoft SQL Server自動拡張と仮想プロビジョニング .......................................................... 15 レプリケーションのアプローチ.......................................................................... 15 パフォーマンスの考慮事項................................................................................. 15 シン・プールの管理............................................................................................ 16 シン・プール・モニタリング .................................................................................................... 16 オーバーサブスクリプションが発生したプールの消耗 ............................................................ 17 結論..................................................................................................................... 19 関連資料 ............................................................................................................. 19 付録:仮想プロビジョニングの例 ...................................................................... 20 シン・プールの作成................................................................................................................... 20 シン・プールへのデータ・デバイスの追加 .............................................................................. 20 プールへのシン・デバイスのバインド...................................................................................... 21 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 3 エグゼクティブ・サマリー EMC® Symmetrix® DMX-3 およびDMX-4 ストレージ・アレイには、さまざまな操作性の向上に加 えて、ストレージ使用率の向上と最適化、拡張機能、相互運用性とセキュリティの強化などの機 能が備わっています。これらの機能の 1 つに、Enginuity™ リリース 5773 で利用できる、ストレ ージ使用率を向上させるSymmetrix仮想プロビジョニングと呼ばれる機能があります。 仮想プロビジョニング(業界では一般に「シン・プロビジョニング」と呼ばれています)を使用 すると、特定のアプリケーションおよびワークロードに対する使いやすさを向上したり、パフォ ーマンスや容量使用率を高めたりすることが可能になります。DMX-3 および DMX-4 ストレー ジ・アレイに仮想プロビジョニングを実装すると、ストレージ・インフラストラクチャの使用率、 および関連する運用要件や効率が直接改善されます。 このホワイト・ペーパーでは、シン・プロビジョニングを使用するデバイス上で Microsoft SQL Server 2005 データベースを展開する際に考慮すべき点について説明しています。ここで説明する 原則を理解すれば、最も効果的な手法で、仮想プロビジョニングを使用する Microsoft SQL Server 2005 データベースの展開が可能になります。 はじめに ストレージ管理者が直面する最大の課題の 1 つは、新しいアプリケーション用ストレージのプロ ビジョニングです。管理者は通常、アプリケーションの将来的な増加を予測して領域を割り当て ます。これを行うのは、既存の領域が消費されるたびにストレージの割り当てを少しずつ増やし たり、ブロックに分かれたストレージを追加したりするなどの運用操作の繰り返しを減らすため です。このアプローチを取ることにより、アプリケーションの必要量よりも大きな物理ストレー ジが長期間割り当てられ、初期コストは必要以上に高くなります。このような物理ストレージの 過剰なプロビジョニングは、電力、空調、フロア面積などの要件を厳しくすることにもつながり ます。細心の注意を払って計画を立てても、追加ストレージのプロビジョニングが将来必要にな ることがあります。このことはアプリケーションの停止が必要となる可能性を示唆しています。 ストレージの過剰なプロビジョニングは、データベース管理者が、データベース内に十分な空き 領域を確保するために、ファイルまたはファイル・グループにストレージを過剰に割り当てたと きにも起こります。オペレーティング・システムからは領域全体が割り当てられているように見 えても、内部的には割り当てられた領域のわずかな部分しか使用されていないことがあります。 EMC の仮想プロビジョニング機能は、これらの問題をどちらも解決できます。仮想プロビジョ ニングでは、物理的に利用できる量より多くのストレージをホスト・オペレーティング・システ ムに提供できます。さらに重要な点は、仮想プロビジョニングでは、ストレージに実際に書き込 みが行われるときにのみ物理ストレージが割り当てられることです。つまり、将来的な増加を柔 軟に予測し、アプリケーションへのストレージ・プロビジョニングに必要な初期コストを削減で きます。さらに、領域の過剰な割り当てやストレージ割り当て後の管理作業に伴う無駄を省くこ とができます。 GA 機能および制限についての追加情報は、「Enginuity 5773 Release Notes」で説明します。 対象読者 このホワイト・ペーパーは、ストレージの設計者と管理者、および仮想プロビジョニングに 5773 Enginuity を使用する Symmetrix DMX-3 および DMX-4 上での Microsoft SQL Server 2005 の展 開を担当するデータベース管理者を対象としています。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 4 用語 表1:基本的な Symmetrix アレイ用語 用語 説明 デバイス Symmetrix ストレージ・ユニット内で定義されるストレージの論理 ユニット デバイス容量 デバイスの実際のストレージ容量 デバイス・エクステント エクステント・マッピングが発生する可能性のあるデバイスの最小 連続リージョンのサイズ ホスト・アクセス・デバイス ホストで使用するためにエクスポートするデバイス 内部デバイス ストレージ・ユニットの内部機能で使用されるデバイス メタデバイス 単一デバイスとしてホストから認識される、ホスト・アクセス・デ バイスの集合体 ストレージ・プール 特定の目的で使用する内部デバイス・コレクション 表2:仮想プロビジョニングに関する用語 用語 説明 シン・デバイス 直接関連づけられているストレージを持たないホスト・アクセス・ デバイス データ・デバイス シン・デバイスで使用されるストレージ容量を供給する内部デバイ ス シン・デバイス・エクステント シン・デバイスに一度にマップする必要がある最小ストレージ単位 データ・デバイス・エクステント 特定のシン・デバイス用にシン・プールから専用のストレージを確 保するときに、一度に割り当てる最小ストレージ単位 エクステント・マッピング シン・デバイスとデータ・デバイス・エクステントとの関連づけ (シン・デバイスとデータ・デバイスのエクステント・サイズが同 じである必要はない) シン・プール シン・デバイスにストレージ容量を供給するデータ・デバイスのコ レクション シン・プール容量 メンバー・データ・デバイスの容量の合計 バインド 1 台以上のシン・デバイスをシン・プールに関連づけるプロセス バインド解除 特定のシン・プールに関連づけられているデバイスの関連づけを解 除するプロセス(バインド解除を行うと、そのデータ・デバイスか らの以前のエクステント割り当てが消去され、再利用できるように なる) 有効データ・デバイス シン・プールに属するデータ・デバイスの内、そのシン・プールに バインドされるシン・デバイスにエクステントを割り当てることが できるもの 無効データ・デバイス シン・プールに属するデータ・デバイスの内、その容量をシン・デ バイスに割り当てることができないもの(ユーザー制御下にある状 態を示す) シン・プール有効容量 シン・プールに属する有効データ・デバイスの合計容量 シン・プール割り当て容量 シン・プールにバインドされているすべてのシン・デバイスの排他 的使用のために割り当てられている、そのシン・プールの有効容量 のサブセット Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 5 シン・デバイス書き込み容量 ホストによりシン・デバイスに書き込まれた容量(ほとんどの実装 において、これはシン・デバイス割り当て容量のサブセットであ る) シン・デバイス・サブスクリプショ ン容量 シン・デバイスがシン・プールから引き出し可能な合計容量(これ はシン・デバイス容量以下であり、現在の実装では容量は等しい) オーバーサブスクリプション・シ ン・プール シン・プール有効容量がそのプールを使用しているシン・デバイス の計上サイズの合計よりも小さいシン・プール シン・デバイス割り当て制限 シン・デバイスがシン・プールから引き出すことができる容量の制 限(シン・デバイス・サブスクリプション容量以下) シン・デバイス・サブスクリプショ ン率 シン・デバイス・サブスクリプション容量とシン・プール有効容量 の比率(パーセント値表示) シン・デバイス割り当て率 シン・デバイス割り当て容量とシン・デバイスサブスクリプション 容量の比率(パーセント値表示) シン・デバイス使用率 デバイス書き込み容量とシン・デバイス割り当て容量の比率(パー セント値表示) シン・プール・サブスクリプション 率 バインドされているすべてのシン・デバイスのシン・デバイス・サ ブスクリプション容量の合計と、関連づけられているシン・プール 有効容量との比率(パーセント値表示) シン・プール割り当て率 シン・デバイス割り当て容量とシン・プール有効容量の比率(パー セント値表示) 事前プロビジョニング ストレージ・プロビジョニングによる運用上の影響を低減するため に使用される場合のあるアプローチ(初期に必要なものより大きな デバイスを使用してプロビジョニングを行い、将来的なストレー ジ・プロビジョニングの時期を遅らせるか、または不要にするアプ ローチ) 概要 Symmetrix シン・デバイスは、Symmetrix デバイス従来の用途に多く使用できる論理デバイスで す。従来の Symmetrix デバイスとは異なり、シン・デバイスを作成したりホストに提示するとき に、物理ストレージのすべてに割り当てる必要がありません。シン・デバイスへのディスク領域 の供給元となる物理デバイスは、シン・プールと呼ばれる、そのシン・デバイスがあらかじめバ インドされている共有ストレージ・プールから確保されます。任意のシン・プールには、複数の シン・デバイスをバインドすることができます。シン・プール自体は、シン・デバイス割り当て を支える実際の物理ストレージを提供する、データ・デバイスと呼ばれるデバイスから構成され ています。 バインド済みで物理ストレージがまだ割り当てられていないシン・デバイスの一部に書き込みが 行われると、Symmetrix により、シン・デバイスのその部分だけで使用される物理ストレージが シン・プールから割り当てられます。Symmetrix のオペレーティング環境である Enginuity では、 シン・デバイス・エクステントと呼ばれるシン・プールからストレージのブロックを提供してこ の要求を満たします。このアプローチにより、実際に消費されるストレージ量は減少します。 シン・デバイス専用に一度に確保できる物理ストレージの最小量は、データ・デバイス・エクス テントと呼ばれます。ホストの書き込み操作の結果、シン・ストレージの割り当てが行われると、 データ・デバイス・エクステント全体が物理的にシン・デバイスに割り当てられます。データ・ デバイス・エクステントは、関連づけられているシン・プール内のいずれか 1 つのデータ・デバ イスから割り当てられます。データ・デバイス全体にわたる割り当てのバランスをとるため、割 り当てはすべての利用可能なデータ・デバイスに均等に分散されます。その結果、データ・デバ イス間での I/O ワークロードが分散されます。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 6 シン・デバイスに一度にマップする必要がある最小ストレージ量は、シン・デバイス・エクステ ントと呼ばれます。Symmetrix では、シン・デバイス・エクステントのサイズは、データ・デバ イス・エクステントのサイズと同じです。 シン・デバイス上で読み取りが実行されると、エクステントが割り当てられているシン・プール 内の該当データ・デバイスからデータが読み取られます。何らかの理由で、シン・デバイスの未 割り当ての部分に対して読み取りが実行された場合は、その読み取りプロセスにはゼロが返され ます。 既存または将来のシン・デバイスに、より大きな物理データ・ストレージが必要になった場合 (シン・プールの最大割り当て容量に近づいている場合など)、システムを停止することなく既 存のシン・プールにデータ・デバイスを動的に追加することができます。新しいシン・デバイス を作成して、既存のシン・プールにバインドすることも可能です。1 台のシン・デバイスは、一 度に 1 個のシン・プールにのみ割り当てることができます。 シン・プールにデータ・デバイスを追加するときに、有効または無効の状態を設定できます。デ ータ・デバイスをシン・エクステント割り当てに使用するには、状態は有効である必要がありま す。シン・プールから削除するには、状態は無効である必要があります。シン・デバイス割り当 てがアクティブなデータ・デバイスを無効にすると、デバイスの内容が排出され、同じシン・プ ール内の別のデータ・デバイスにそのシン・エクステントが移動します。 次の図は、シン・デバイスとそれらが関連づけられているシン・プールとの関係を示しています。 シン・プール A には 9 台のデバイス、シン・プール B には 3 台のデバイスが関連づけられていま す。 図1:シン・デバイス、およびデータ・デバイスを含むシン・プール 複数のデータ・デバイスにわたってデータ・エクステントを割り当てると、シン・プール内でス トライピングが形成されます。シン・プール内のデータ・デバイスが増えるにつれ、ストライピ ングの幅が広がり、アプリケーション I/O に使用できるデバイス数が増加します。RAID 1 および RAID 6 で保護されたデータ・デバイスのデータ・エクステントのサイズは 768 KB です。 Enginuity オペレーティング環境の今後のバージョンでは、データ・エクステントのサイズが変更 される可能性があります。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 7 シン・デバイスの最大サイズは 64 GB です。より大きなサイズが必要な場合は、複数のシン・デ バイスから構成されるメタボリュームを作成できます。シン・プールではシン・エクステントを 使用して既にストライピングが行われているため、メタボリュームはストライピングではなく、 連結して作成することをお勧めします。連結メタボリュームでは、高速拡張機能もサポートされ ており、既存の連結メタボリュームに、新規メタボリューム・メンバーを簡単に追加できます。 この機能は、プロビジョニングされたシン・デバイスがホスト・レベルですべて割り当てられ、 領域を追加するためにシン・デバイスを追加する必要がある場合に適用できます。 仮想プロビジョニングでは、メタボリュームのストライピングがサポートされており、一部のワ ークロードでは、複数レベルでのストライピングが有効である場合もあります。 要件 仮想プロビジョニングには、Enginuity コード・レベル 5773.XX 以降が必要です。シン・プール とシン・デバイスを作成して管理するには、Solutions Enabler 6.5.xx が必要です。仮想プロビジョ ニング・コンポーネントの管理には、SMC(Symmetrix Management Console)のバージョン 6.1 を使用します。シン・プールはユーザーのみが作成できます。bin ファイル(DMX 構成)の作成 プロセス中には作成できません。 Windows NTFS に関する考慮事項 Microsoft SQL Server 2005 のデータ・ファイルとトランザクション・ログは、通常 Windows Server の NTFS ボリュームに存在します。そのため、EMC Symmetrix 仮想プロビジョニング・デ バイスで構成される LUN 用に、Windows Server の NTFS ボリュームを作成および管理する際の 推奨事項と動作について理解しておく必要があります。 Windows Server 2003 以降のバージョンには、「シン・フレンドリ」に動作する NTFS 実装が含ま れています。NTFS ボリュームの作成およびその後のフォーマット操作では、シン・デバイスを 代表する少数のエクステントだけが割り当てられます。 Microsoft SQL Server 2005 のデータ・ファイルおよびトランザクション・ログ・ファイルが格納さ れるボリュームの作成、パーティション配置、NTFS アロケーション・ユニット・サイズの選択 には、従来の推奨事項を適用してください。 Windows パーティションの配置 Symmetrix シン・デバイスから作成されるディスク・デバイスは、従来のデバイスと同じ方法で 管理する必要があります。これには、ディスク・パーティションの正しい配置方法など、すべて の推奨事項が含まれます。Microsoft SQL Server データベースのデータおよびトランザクション・ ログ・ファイルのホストに使用するすべての LUN は、最適なパフォーマンスを提供できるよう 正しく配置する必要があります。 図 2は、Windows Server 2003 SP2 でのDISKPARTユーティリティの使用を示しています。「create partition primary align=64」ステートメントにより、ベーシック・ディスク全体を表す配置済みボ リュームが作成されます。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 8 図2:Windows パーティションの配置操作 GPT(Global Partition Table)ディスク・デバイスは、同様の方法で作成できます。ディスク・パ ーティションの配置操作の詳細については、EMC Powerlink®のホワイト・ペーパー「Using diskpar and diskpart to Align Partitions on Windows Basic and Dynamic Disks」を参照してください。 Windows Server 2008 では、正しく配置されたパーティションが自動的に作成されるため、ユーザーに よる変更は必要ありません。 このDISKPARTセッションの最終ステートメントにより、ボリュームがC:\myThinDB\Data1にマ ウントされます。これは、マウント・ポイントとも呼ばれるWindowsの接合ポイントを表します。 マウント・ポイントは通常、ドライブ文字数の制限による制約を回避するために、ボリュームを マウントする際に使用します。Microsoft SQL Serverデータベース・ファイルまたはトランザクシ ョン・ログの場所に、ドライブ文字を使用する場合とマウント・ポイントを使用する場合では、 パフォーマンスに差がないため、適切なボリュームのマウント方法はユーザーが選択できます。 Windows NTFS ボリュームのフォーマット WindowsサーバにLUNとして提示されているシン・デバイス上にボリュームを作成したら、その ボリュームをWindows NTFS形式でフォーマットする必要があります。 図 3に、FORMAT.EXEコ マンドのコマンド・ラインでの実行例を示します。Microsoft SQL ServerおよびEMCでは、64 KB のNTFS AU(アロケーション・ユニット)サイズを推奨しています。この例では、/A:64Kオプシ ョンで表わされています。Data1 マウント・ポイントで使用されるボリュームには、52 GBの使 用可能なストレージが割り当てられていることが分かります。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 9 図3:Windows NTFS ボリュームのフォーマット クイック・フォーマット・オプション/Qを使用して、Windows NTFSフォーマットによる実際の 割り当てを行わず、作業時間を短縮することもできます。ただし、このコマンド・ライン・オプ ションの使用は必須ではありません。このクイック・フォーマット・オプションを使用せずにフ ォーマット・コマンドを実行しても、実際の割り当ては変わりません。「クイックではない」フ ォーマット操作では、メディア・エラーを探すために、ディスク・デバイスのスキャンが追加さ れるだけです。この読み取り処理では、シン・プール割り当ては追加発生しません。図 4は、3 台のシン・デバイスをフォーマットした後のシン・プール割り当ての例です。画面では、シン・ デバイス(つまりWindows サーバからアクセスされるLUN)は、Thin Devicesセクションにリス トされています。これら 3 台のSymmetrixデバイス(0432、0435、0438)は、それぞれ C:\myThinDB\Data1、C:\myThinDB\Data2、C:\myThinDB\Logにマウントされているボリュームを 表しています。 フォーマット段階では、Data1(0432)およびLog(0438)に対してNTFSクイック・フォーマッ ト・オプションが使用されました。Data2(0435)で表わされるボリュームには、クイック・フ ォーマット・オプションは使用されませんでした。Data1 およびData2 は同じサイズのシン・デバ イスであり、Logデバイスはそれらよりも物理的に小さなデバイスです。Data1 とData2 の割り当 てを比較すると、両シン・デバイスのPool Allocated TracksおよびPool Written Tracksが同数である ことが分かります。このように、クイック・オプションを指定しない場合でも、シン・デバイス が完全には割り当てられないことが分かります。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 10 図4:NTFS フォーマット操作後のシン・プール表示 図 4で、プールに割り当てたデータ・デバイスから、シン・エクステント割り当てがほぼ均等に 分散されていることにも注目してください。これは、Enabled DevicesセクションをAlloc Tracks列 に表示されています。シン・デバイスに対する実際の書き込み操作に基づいて、5 台のデータ・ デバイスのそれぞれに、ほぼ均等にトラックが割り当てられています。 シン・デバイスへの Microsoft SQL Server ファイルの展開 仮想プロビジョニングを使用して Microsoft SQL Server 2005 を展開する場合、データベース管理 者が知っておく必要がある考慮事項がいくつかあります。SQL Server 環境の各種データとトラン ザクション・ログ・ファイル、およびその他のコンポーネントが、仮想プロビジョニング環境で どのように機能するかは、コンポーネント自体およびその使用パターンによって決まります。こ のセクションでは、Microsoft SQL Server 2005 の各種コンポーネントと仮想プロビジョニング・ デバイスとの相互作用について説明します。 トランザクション・ログ・ファイル Microsoft SQL Server 2005 データベースを作成すると、アクティブなログ・ファイルがフォーマ ットされます。ログ・ファイルのすべてのページはこの時点で書き込みが行われるため、ログ・ ファイルは初期設定の際に完全にプロビジョニングされ、その後はシン・エクステント割り当て が発生しません。 フォーマット操作により、アクティブなログ・ファイルはシン・プール内のすべてのデバイスに わたってストライピングされること、その際には「Overview」セクションで説明したストライピ ング・エクステント・サイズが使用されることを理解してください。したがって、トランザクシ ョン・ログに対する書き込みの際に、1台の物理ディスクにオーバーヘッドがかかることはあり Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 11 ません。特定の実装で、トランザクション・ログをデータ・ファイルと切り離す必要がある場合、 これを実現するには、アクティブなログ・ファイル専用に 2 つ目のシン・プールを作成します。 SQL Server 2005 ファイルの瞬時初期化 Microsoft SQL Server 2005 では、データベース作成段階の動作を変更する新しい機能が導入され ました。SQL Server 2005 より前の SQL Server バージョンでは、すべてのデータベース・ファイ ルおよびトランザクション・ログ・ファイルの各ページに書き込みが行われ、すべてのデータ・ ファイルとトランザクション・ログ・ファイルのコンポーネントが完全に初期化されます。SQL Server 2005 では、SQL Server 環境で「ファイルの瞬時初期化」が使用可能な場合、データベース 作成段階ですべてのデータ・ファイルを初期化する必要はなくなりました。 EMC Symmetrix仮想プロビジョニングでは、Microsoft SQL Server 2005(およびそれ以降)をファ イルの瞬時初期化機能を有効にして展開することをお勧めします。ファイルの瞬時初期化が含ま れていないSQL Serverの旧バージョンでは、シン・デバイス上に置かれている物理ファイルに対 して、エクステントが完全に割り当てられます。これは、SQL Serverがすべてのデータ・ページ に書き込みを行うことに起因します。Microsoft SQL Serverファイルの瞬時初期化の詳細について は、インストール・メディアに収録されている「Microsoft SQL Server 2005 Books Online」マニュ アル・セットを参照してください。 ファイルの瞬時初期化を使用している場合も、トランザクション・ログ・ファイルは完全に割り当てら れます。 図 5は、シン・デバイス上のマウント・ポイントを使用した、データベース作成操作を示したも のです。シン・デバイスを使用する場合、このT-SQLサンプルでCREATE DATABASEステート メントによってmyThinDBデータベースを作成する際、特別なオプションは必要ありません。 図5:SQL Server データベースの作成 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 12 このT-SQLステートメントでは、4 つの物理ファイルが作成されることに注意してください。最 初のファイルはプライマリ・ファイル・グループであり、このインスタンスでは 8 MBのみの領 域で構成されます。2 つのデータ・ファイル(各 15 GB)も作成されるように定義されています。 データ・ファイルmyThinDB_Data1.ndfおよびmyThinDB_Data2.ndfは、定義済みの 2 つのマウン ト・ポイントに置かれます。最後に、トランザクション・ログのサイズが 10 GBに定義され、ト ランザクション・ログ用に準備したマウント・ポイントに置かれます。 図 6は、CREATE DATABASEステートメント実行後の、シン・プール・デバイスおよび関連す る割り当てを表示している画面です。Thin DevicesセクションのSymmetrixデバイス 0432 および 0435 は、myThinDB_Data1.ndfおよびmyThinDB_Data2.ndfのデータ・ファイルの場所を表してい ます。Symmetrixデバイス 0438 は、トランザクション・ログ・ファイルmyThinDB_Log.ldfの場所 です。 図6:データベース作成後のシン・プール表示 トランザクション・ログ・デバイス 0438 のPool Allocated TracksとPool Written Tracksのカウンタ の数値が、データ・ファイルの場所と比較してかなり高いことが分かります。これは、Microsoft SQL Serverにより、定義されたトランザクション・ログ(10 GB)のすべてのページに書き込み が行われるためです。つまり、各 15 GBで定義されたデータ・ファイルは完全には割り当てられ ていないことがはっきり分かります。これが、Symmetrix仮想プロビジョニングにSQL Serverファ イルの瞬時初期化を推奨する理由です。この機能を使用することにより、本テクノロジーの利点 を最大限に活用できます。 作成されたデータベースをMicrosoft SQL Server 2005 Management Studioを使用して表示したもの が図 7です。SQL Serverがシン・デバイスの使用に影響されていないこと、およびCREATE DATABASEステートメントで定義したとおりにデバイスが完全に割り当てられていることに注 目してください。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 13 図7:作成したデータベースの SQL Server Management Studio での表示 myThinDB_Data1.ndfの場所(およびプライマリ・ファイル)のマウント・ポイ ントを表示すれば、Windows NTFSファイル・システムで、そのデータ・ファイ ルが完全に割り当てられていると認識されていることが分かります。ファイル領 域割り当ては、Microsoft SQL Serverで作成されたファイル・サイズに基づいて、 サイズが 15 GBであると表示されています。 図8:データ・ファイルに使用したマウント・ポイントの Windows NTFS 表示 SQL Server TEMPDB データベース 仮想プロビジョニングしたストレージ上に展開された Microsoft SQL Server 2005 TEMPDB ストレ ージの使用サイクルについて、知っておくと便利な点を説明いたします。TEMPDB は単なる SQL Server データベースであるため、そのデータ・ファイルおよびログ・ファイルのルールが適 用されます。トランザクション・ログ・ファイルは作成時にすべて割り当てられ、データ・ファ イルは必要な場合に割り当てられます。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 14 TEMPDB の一時領域が初めて要求されたとき、関連づけられているシン・プールからシン・エ クステントが割り当てられます。ただし、データベースから一時領域がリリースされても、シ ン・エクステントの割り当ては残ります。Microsoft SQL Server インスタンスを再開してもこの状 態は変わりません。シン・プールからのエクステント割り当ては、シン・デバイスが存続する限 り持続するからです。SQL Server インスタンスを再開すると TEMPDB が再初期化されますが、 これはシン・エクステント割り当てには影響しません。シン・エクステント割り当ての合計は、 TEMPDB の最大使用率に基づいて決まりますが、TEMPDB 自体の最大サイズを超えることはあ りません(ただし、データ・ファイルとトランザクション・ログの最大値パラメータが設定され ていることが前提です)。 Microsoft SQL Server 自動拡張と仮想プロビジョニング Microsoft SQL Server 2005 では、データ・ファイルおよびトランザクション・ログの自動拡張が サポートされます。この機能は、データベースの作成時に定義することも、データベース作成後 に ALTER DATABASE T-SQL ステートメントを使用して変更することもできます。 通常、SQL Server 2005 の自動拡張機能と、仮想プロビジョニングの実装との関連はありません。 自動拡張機能の動作は、従来の完全割り当て環境でも、シン・プロビジョニング環境でもまった く同じです。 Microsoft SQL Server および EMC では、管理者によるプロアクティブなファイル拡張管理が強く 推奨される大規模環境などでは、この自動拡張機能への依存を避けるよう推奨しています。自動 拡張機能を使用すると、データ・ファイルが置かれているボリュームに利用可能な領域があれば、 データベースの領域不足を回避できますが、ファイル・グループのすべてのデータ・ファイルを 同時に拡張することはできません。Microsoft SQL Server では、ファイル・グループ内にわたって テーブルやインデックス用の領域を割り当てるときに、比例的に割り当てる機能があります。い ずれかのデータ・ファイルで自動拡張操作が実行されると、そのファイルの空き領域も同じ割合 で増えたと見なされるため、テーブル・エクステントがより多く割り当てられることになります。 これにより、ワークロードの不均衡が生じます。 ファイル・グループ内に複数のデータ・ファイルが実装されている複雑なデータベース環境にお いては、割り当てとワークロード・パターンを均一に分散するために、ファイル・グループ内の すべてのデータ・ファイルを同時に手動で拡張することを強く推奨します。これにより、比例的 に割り当てる機能を使用しても、すべてのデータ・ファイルにわたってデータを均等に分散でき ます。 レプリケーションのアプローチ TimeFinder®、SRDF®、Open Replicatorなどの標準的な操作により、Symmetrixシン・デバイスで 「シンからシン」のレプリケーションを実行できます。これには、TimeFinder/Snap、 TimeFinder/Clone、SRDF/Synchronous、SRDF/Asynchronousが含まれます。さらに、シン・デバイ スを使用して、ホット/コールド・プッシュによるOpen Replicatorコピー操作を制御することもで きます。 パフォーマンスの考慮事項 仮想プロビジョニングのアーキテクチャでは、割り当てられているストレージ・プール内のボリ ュームすべてにわたってシン・エクステントが割り当てられ、自然にストライピング環境が作成 されます。割り当てに使用するストレージ・プールが大きくなるほど、Microsoft SQL Server 2005 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 15 データベースの I/O に活用できるデバイス数が増加します。プール内のストレージ・デバイスの 保護に基づいて、ストライピングのサイズは変化します。 データ・デバイスの大きなプールを使用し、これらのデバイスを他のアプリケーションと共有す る可能性が生じると、その結果、パフォーマンスが変動しやすくなることが考えられます。つま り、物理ディスク・リソースについて他のアプリケーションとの競合が生じ、パフォーマンス・ レベルにばらつきが生じる可能性があるということです。この変動が望ましくないアプリケーシ ョンがある場合は、そのアプリケーション専用のシン・プールを作成することもできます。 Symmetrix では、512 個までのシン・プールをサポートします。 シン・プールから新しいデータ・エクステントを要求すると、シン・エクステントの場所の割り 当てとフォーマットの実行中は、書き込み処理に追加レーテンシーが発生します。このレーテン シーはおよそ 1 ミリ秒であり、新しいシン・エクステント割り当てが必要になったときにのみ発 生します。書き込みストリームがシーケンシャルな場合、最初の新規割り当てで新しいエクステ ント割り当てが発生し、さらにストライピングが完全に書き込まれて、書き込み処理が新しいエ クステントへ移行する際に、次のエクステント割り当てが発生します。不定期な追加レーテンシ ーをアプリケーションが許容できない場合は、シン・デバイスをシン・プールにバインドすると きに、そのシン・デバイスに事前にストレージを割り当てておくことをお勧めします。 シン・プールの管理 複数のシン・デバイスをサポートするために、シン・プールからストレージをプロビジョニング する場合、ホストには通常、基盤となるデータ・デバイスでサポートされるより多くの「仮想」 ストレージがプロビジョニングされます。これは、仮想プロビジョニングを使用する主な理由の 1 つです。ただし、シン・プールを使用しているアプリケーションが急速に拡張され、シン・プ ールに実在するストレージ容量を超えた容量を要求する可能性もあります。この状態はオーバー サブスクリプションと呼ばれます。これは望ましい状況ではありません。次のセクションでは、 オーバーサブスクリプションの回避ステップについて説明します。 シン・プール・モニタリング 仮想プロビジョニングには、シン・プールの容量消費をモニタするための手法がいくつかありま す。Solutions Enabler 6.5 のsymcfg monitorコマンドを使用して、プールの使用率をモニタできま す。また、symcfg show poolオプションを使用すれば、現在の割り当ても表示できます。SYMAPI イベント・デーモンを通じて、イベントしきい値をモニタすることもできます。このしきい値は Symmetrix Management Consoleで設定できます。EMC ControlCenter®やMicrosoft System Center Operations Managerなどのデータ・センター管理製品からSNMPトラップを送信してモニタを行う 方法でも、しきい値をモニタできます。 シン・プール・ストレージのしきい値に到達するか、しきい値を超えると、ストレージ・アレイ からイベントが発生します。Symmetrix DMX™アレイに適切に接続されているシステムに SYMAPIイベント・デーモンが実装されている構成では、このイベント・デーモンが、指定され ている場所へイベントを伝達します。この場所には、Windowsイベント・ログ、SNMPターゲッ ト、定義済みログ・ファイルの内、1 つまたは複数を指定できます。Windowsのアプリケーショ ン・イベント・ログにイベントを記録する構成では、しきい値に到達するか、しきい値を超える と、図 9に示す形式のイベントが記録されます。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 16 図9:SYMAPI イベント・デーモンの Windows イベント・ログ・エントリー システム管理者およびストレージ管理者は、シン・プール用の容量を使い切らないように、その 容量を監視するプロセスを導入する必要があります。これにより、アプリケーションに影響を与 えることなく、プールを動的に拡張して、より多くのデータ・デバイスを含めることができます。 これらのデバイスはグループ化して、シン・プールを使い切る前に十分余裕を持って追加する必 要があります。デバイスを個別に追加すると、プール内の他のデータ・デバイスに空き容量がな くなったときに、新しく追加したデータ・デバイスに急激に書き込み処理が集中し、ディスク上 にホット・スポットが生じることがあります。シン・プールへの新しいデータ・デバイスの追加 は、データ・デバイスの初期割り当てと同じ方法で行います。詳細については、セクション「付 録: 仮想プロビジョニングの例」を参照してください。 オーバーサブスクリプションが発生したプールの消耗 シン・プールでオーバーサブスクリプションが発生して、新しいエクステント割り当てに利用で きる領域がない場合、新しいデータ・エクステントの割り当てが必要となるページへの書き込み がSQL Server 2005 で試行され、そのI/O操作が何度も繰り返される結果となります。アプリケー ション・イベント・ログには、図 10の形式の情報メッセージが記録されます。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 17 図10:SQL Server 2005 I/O 要求の情報メッセージ SQL Server 2005 では、SQL Server のメモリを使い切るか、未処理の書き込みが処理可能になるま で、変更されたページをメモリのバッファに保持します。シン・プール・ストレージの消耗の結 果としてこれらのエラーがログに記録された場合、ストレージ管理者は迅速に対処する必要があ ります。この I/O 遅延メッセージとともに、Windows のシステム・ログにイベント ID 11 のディ スク・エラーが記録されることもあります。これらのエラー・メッセージが発生するのは、プー ルが不足して新しい割り当てが不可能な場合に、Symmetrix ターゲットが拒否しているシン・デ バイスに対して、書き込み要求が行われた結果です。 このシン・プールにデータ・デバイスを追加して有効にすると、Microsoft SQL Server 2005 によ り、未処理のすべてのデータ・ページがデータ・ファイルに書き込まれ、データベースの通常の 動作モードに復帰します。シン・プールで追加のストレージ領域が利用可能になった時点で、未 処理の書き込み要求を再送信できるようになります。その後、SQL Server からのすべての情報メ ッセージと、ディスク・イベント ID 11 メッセージが発生しなくなります。 データベースは、Microsoft SQL Server 2005 で使用されているWAL(Write Ahead Logging)機能 により、不整合にならないように常時保護されています。このホワイト・ペーパーの 「Transaction log files」セクションで述べたように、トランザクション・ログは、バインド先の シン・プールから完全な割り当てを受けています。そのため、トランザクション・ログ自体は過 剰割り当ての問題の影響を受けません。トランザクションの記録は常にトランザクション・ログ に書き込まれ、サーバが異常終了した場合であっても、トランザクションの整合性は維持されま す。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 18 結論 EMC Symmetrix 仮想プロビジョニングでは、シンプルで拡張がなくかつ経済的な方法により、 Microsoft SQL Server 2005 データベースにストレージが提供されます。特に、Microsoft Windows Server 2003 を Microsoft SQL Server 2005 と組み合わせると、仮想プロビジョニングのメリットを 最大限に活用するための特定の機能を利用できます。Microsoft Windows の「シン・フレンド リ」な NTFS フォーマット機能、および Microsoft SQL Server 2005 のファイルの瞬時初期化機能 を使用すれば、仮想プロビジョニングの利点を最大限に引き出すことができます。 仮想プロビジョニングと Microsoft SQL Server 2005 を組み合わせて使用する際の最適な構成の概 要は次のとおりです。 • Microsoft Windows Server 2003 および NTFS フォーマットによるストレージ割り当て • Microsoft SQL Server 2005 構成およびファイルの瞬時初期化 • ストレージの過剰割り当てがよく発生するシステム • 急激な拡張が継続的に予測されるが、ダウンタイムの制限があるシステム 以下の状況では、仮想プロビジョニングが最適ではない場合があります。 • • • シン・デバイスの共通プールからの共有割り当てが望ましくないシステム データの削除と再作成が頻繁に行われるシステムで、削除された領域の再使用が基盤のデー タ管理構造で許可されていないもの 未初期化ブロックへの書き込みで発生する、約 1 ミリ秒のレスポンス・タイムの増加が許容 されないシステム 関連資料 以下の資料は EMC.com および Powerlink から入手可能です。 ホワイト・ペーパー • 「New Features in EMC Enginuity 5773 for Symmetrix Open Systems Environments」 • 「Using diskpar and diskpart to Align Partitions on Windows Basic and Dynamic Disks」 • 「EMC Symmetrix Virtual Provisioning」 テクニカル・ノート • 「EMC Symmetrix Virtual Provisioning Implementation and Best Practices」 仕様書 • 「Symmetrix Virtual Provisioning Feature Specification」 カスタマー・マニュアル • 「EMC Solutions Enabler Symmetrix Array Management CLI Product Guide」 • 「EMC Solutions Enabler Symmetrix Array Controls CLI Product Guide」 • 「EMC Solutions Enabler Symmetrix CLI Command Reference」 以下の製品ドキュメントは、Microsoft の Web サイトで確認できます。 • 「Microsoft SQL Server 2005 Books Online」 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 19 付録:仮想プロビジョニングの例 以下の例は、このホワイト・ペーパーで説明されている環境例を作成する際に使用するコマンド の詳細を示したものです。これらは例として提示されているもので、EMC のベスト・プラクテ ィスを示しているわけではありません。 シン・プールの作成 ストレージを提供するデータ・デバイスを追加したり、シン・デバイスをプールにバインドする には、最初にシン・プールを作成する必要があります。図 11では、symconfigureコマンドを使用 して「sql_db1」という名前のプールを作成しています。 図11:シン・プールの作成 シン・プールへのデータ・デバイスの追加 シン・プールには、バインドされているシン・デバイスにストレージを割り当てるための、有効 なデータ・デバイスが含まれている必要があります。データ・デバイスに対する割り当てを可能 にするために、デバイスを特定のプールに追加してデータ・デバイスを有効にするには、図 12 に示すようなsymconfigureコマンドを実行します。この例では、複数のデバイス範囲に対してプ ロセスが行われています。同様のプロセスで、個別のデータ・デバイスを追加することもできま す。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 20 図12:シン・プールへのデータ・デバイスの追加 プール内で現在割り当てられているデータ・デバイスを表示してステータス(割り当てが有効か どうか)を確認するには、図 13に示されている形式のコマンドを使用します。 図13:シン・プール内のデバイス構成の表示 プールへのシン・デバイスのバインド データ・デバイスが割り当てられ、特定のプール内での使用が有効化されると、そのシン・プー ルに対してシン・デバイスをバインドすることができます。これにより、プールからのエクステ ント割り当てがいくつか作成され、そのシン・デバイスはホストからアクセスできるようになり ます。さらに、ホストがそのデバイスにアクセスするためには、必要なマッピング、マスキング、 ゾーニングの操作を行う必要がありますが、これらの操作は、このホワイト・ペーパーの対象範 囲には含まれていません。 図 14は、あらかじめ作成してデータ・デバイスを設定しているシン・プールに、シン・デバイ スをバインドする操作の例です。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 21 図14:シン・プールへのシン・デバイスのバインド シン・デバイスを特定のシン・プールにバインドすると、シン・プールにバインドされているシ ン・デバイスだけでなく、グループ内のデータ・デバイスも確認できます。図 15を参照してく ださい。ここではシン・プールが過剰に割り当てられていることが分かります。表示の時点では、 シン・デバイスには 140%のデータ・デバイスが割り当てられていることが、この例のPool Subs (%)列の最終行に表示されています。この列には、現時点でのシン・プール割り当てサイズに 対する各シン・デバイスのサブスクリプション・レベルが表示されます。 図15:シン・プールのデータ・デバイスとシン・デバイスの表示 この図からは、シン・デバイスをプールにバインドするプロセスで、最小限の割り当てが必要と なることも分かります。この割り当て量は、Pool Allocated Tracks列に表示されます。 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 22 Microsoft SQL Server 2005 を使用する EMC Symmetrix DMX への仮想プロビジョニングの実装 高度なテクノロジー 23