ストレージ・プール

一般に、プール またはストレージ・プールは、指定されたボリューム・セットのデータがすべて一緒に含まれる、割り振り済みの容量です。システムは、標準プール (親プールと子プール) およびデータ削減プールをサポートします。

図 1 は、関連する子プールを持つ基本的な親プールを示しています。この図では、親グループの物理容量が 2 つの子プール間に分割されています。これにより、親プールを介した MDisk からの容量、または子プールからの容量のいずれかを使用して、ボリュームを作成できます。
図 1. ストレージ・プール
This figure is described in the surrounding text

親プール

親プールは、MDisk からそれぞれの容量を受け取ります。プール内のすべての MDisk は、同じサイズのエクステントに分割されます。ボリュームは、プール内で使用可能なエクステントから作成されます。いつでも MDisk をプールに追加して、新規ボリューム・コピーに使用できるエクステントの数を増やしたり、既存のボリューム・コピーを拡張することができます。システムは、ボリュームの最良のパフォーマンスを実現するために、自動的に MDisk 間のボリューム・エクステントのバランスを取ります。

MDisk で使用可能なスペースをトラッキングするために、システムはそれぞれの MDisk を等しいサイズのチャンクに分割します。 これらのチャンクはエクステント と呼ばれ、 内部的に索引が付けられます。 エクステント・サイズは 16、32、64、128、256、512、1024、2048、4096、または 8192 MB にすることができます。エクステント・サイズの選択は、システムが管理するストレージの総量に影響します。

新規の親プールを作成するときは、エクステント・サイズを指定します。エクステント・サイズを後で変更することはできません。このサイズは、親プールの存続期間全体を通じて一定でなければなりません。

データ・マイグレーション機能は、エクステント・サイズが異なる親プールのボリュームのマイグレーションには使用できません。ただし、ボリューム・ミラーリングを使用して、エクステント・サイズが異なる親プールにデータを移動することができます。

ボリューム・ミラーリングを使用して、宛先プールからディスクのコピーを追加する。コピーが同期化した後、ソース・プール内のデータのコピーを削除することによってエクステントを解放することができます。

1 つのシステムは、2^22 個のエクステントを管理できます。例えば、エクステント・サイズが 16 MB である場合、システムは 16 MB x 16 MB = 64 TB のストレージを管理できます。

エクステント・サイズを選択する際、将来のニーズについて検討してください。 例えば、現在 40 TB のストレージがある場合、すべての親プールに対してエクステント・サイズを 16 MB に指定すると、将来のシステムの容量は 64 TB のストレージに制限されます。すべての親プールに対して 64 MB のエクステント・サイズを選択すると、システムの容量は 256 TB に増加します。

エクステント・サイズを大きく指定すると、ストレージが無駄になります。 ボリュームが作成される際、ボリュームのストレージ容量は整数個のエクステントに切り上げられます。多数の小さなボリュームでシステムを構成し、大きなエクステント・サイズを使用すると、それぞれのボリュームの最後でストレージが無駄になることがあります。

親プールを作成または管理する際には、以下の一般ガイドラインを考慮してください。

  • 親プールの同じ Tier に割り振られている MDisk がすべて、同じ RAID タイプのものであることを確認します。同じ Tier 内で MDisk を割り振ると、1 つの物理ディスクに単一の障害が起こっても、プール全体がオフラインになることはありません。例えば、1 つのプールに 3 つの RAID-5 アレイがあって、非 RAID ディスクをこのプールに追加したとすると、非 RAID ディスクに障害が起こった場合、このプール全体にわたってストライピングされたすべてのデータへのアクセスが失われます。同様に、パフォーマンス上の理由から、RAID のタイプを混合してはなりません。 すべてのボリュームのパフォーマンスは、その Tier で最低のパフォーマンスのレベルまで下がります。
  • 1 つの MDisk を、1 つの親プールにのみ関連付けることができます。
  • プールに対する警告容量を指定できます。 プールで使用されるスペース量が警告容量を超えると、警告イベントが生成されます。 警告しきい値は、プールから自動的にスペースを使用するよう構成されているシン・プロビジョニング・ボリュームで特に便利です。
  • 親プール間で移動する場合を除き、ボリュームは 1 つのプールにのみ関連付けられます。
  • 親プールから割り振られたボリュームは、その親プール内に置かれるすべてのストレージにわたってストライプされます。このようにすると、あるストレージ・システム (storage system)から別のストレージ・システム (storage system)にデータを中断なしにマイグレーションすることも可能になり、後でストレージ・システムを廃止するときに、廃止するためのプロセスが簡素化されます。
  • 非管理対象モードの MDisk のみを追加できます。MDisk が親プールに追加されると、それらのモードは非管理対象から管理対象に変わります。
  • 以下の条件の下で、親プールから MDisk を削除することができます。
    • ボリュームが、MDisk 上にあるどのエクステントも使用していない。
    • 使用中のいくつかのエクステントを、この MDisk からプール内のどこか別の場所に移動できるだけの、フリー・エクステントが十分にある。
    • システムは、データが失われないように、子プール内のボリュームによって使用されるすべてのエクステントが、親プール内の他の MDisk にマイグレーションされるようにします。
    以下の場合に、親プールからアレイ MDisk を削除できます。
    • ボリュームが、MDisk 上にあるどのエクステントも使用していない。
    • 使用中のいくつかのエクステントを、この MDisk から親プール内のどこか別の場所に移動できるだけの、フリー・エクステントが十分にある。
    その親プールに関連付けられている子プールがあれば、親プールから MDisk を除去する前に、それらのプール用に十分な容量が親プール内にあることを確認します。
  • 親プールが削除されると、そのプール内にあったエクステントや、ボリュームが使用するエクステントの間に存在していたマッピングをリカバリーすることはできません。親プール内に、関連付けられている子プールがある場合、最初に子プールを削除して、そのエクステントを親プールに戻す必要があります。子プールを削除した後に、親プールを削除することができます。親プール内にあった MDisk は非管理対象モードに戻され、他の親プールに追加できるようになります。親プールを削除するとデータが失われる可能性があるため、ボリュームがそれと関連付けされている場合は、強制的に削除を行う必要があります。
  • ボリュームがミラーリングされ、ボリュームの同期コピーがすべて 1 つのプール内にある場合、ストレージ・プールが削除されると、ミラーリングされたボリュームは破棄されます。ボリュームがミラーリングされ、別のプールに同期コピーがある場合、プールの削除後、ボリュームは残ります。

子プール

子プールは、MDisk から直接作成されるのではなく、親プールに割り振られている既存の容量から作成されます。親プールと同様に、子プールに割り振られた容量を特に使用するボリュームを作成することができます。 子プールは、同様のプロパティーを持つ親プールとほぼ同じであり、ボリューム・コピー操作に使用することができます。

子プールは、完全に割り振られた物理容量を使用して作成されます。 子プールの容量は、親プールが使用できる空き容量より小さくなければなりません。子プールに割り振られた容量は、その親プールのフリー・スペースとして報告されなくなります。

子プールを作成または処理する際には、以下の一般ガイドラインを考慮してください。
  • 子プールは、コマンド・ライン・インターフェースを使用して、または VMware vSphere 仮想ボリュームを作成する場合は IBM Spectrum Control を使用して、作成および変更が可能です。子プールとそのプロパティーは、管理 GUI を使用して表示できます。
  • 親プールと同様に、警告しきい値を指定して、子プールの容量が上限に近づいてきたときにアラートを発行することができます。このしきい値を使用して、子プールの容量がその割り振り済み容量に近づいたときに、アクセスが失われないようにしてください。
  • 暗号化が有効になっているシステムでは、子プールを作成し、暗号化されていないプール内の既存ボリュームを、暗号化された子プールにマイグレーションすることができます。暗号化が有効になった後で子プールを作成すると、親プールが暗号化されていない場合でもその子プールに対して暗号鍵が作成されます。それにより、ボリューム・ミラーリングを使用して、暗号化されていない親プールから暗号化された子プールへボリュームをマイグレーションすることができます。
  • 親プールに関連付けられている子プールがある場合は、親プールから MDisk を除去する前に、子プール内のボリューム用に十分な容量が子プールにあることを確認してください。データが失われないようにするために、システムはボリュームによって使用されるすべてのエクステントを、親プール内の他の MDisk に自動的にマイグレーションします。
  • 子プールの容量は、その実容量未満まで縮小することはできません。システムは、複数のエクステントを使用する親プールから予約済みエクステントを使用します。また、システムは、子プールが縮小されたときに警告レベルをリセットし、容量の縮小時にそのレベルに達すると警告を出します。
  • システムは、同じ親プール内の子プール間でのボリューム・コピーのマイグレーション、または子プールとその親プールとの間でのボリューム・コピーのマイグレーションをサポートします。異なる親プールを持つソースとターゲットの子プール間でのマイグレーションはサポートされません。 ただし、ボリュームのコピーをソースの子プールからその親プールにマイグレーションすることは可能です。これにより、ボリューム・コピーをその親プールからターゲット子プールの親プールにマイグレーションできます。最後に、ターゲット親プールからターゲット子プールにボリューム・コピーをマイグレーションできます。
  • データ削減プールから子プールを作成することはできません。

データ削減プール

システム上でデータ削減テクノロジーを使用するには、データ削減プールを作成し、シン・プロビジョニング・ボリュームまたは圧縮ボリュームを作成し、SCSI マップ解除コマンドをサポートするホストにこれらのボリュームをマップする必要があります。

データ削減により、ストレージ効率とパフォーマンスを向上させ、ストレージ・コスト (特にフラッシュ・ストレージ) を削減することができます。 データ削減により、ホスト・システムで以前に使用されていたが不要になったストレージ・リソースをレクラメーション処理することで、外部ストレージ・システムおよび内蔵ドライブに保管されるデータ量が減ります。システムでデータ削減テクノロジーによって実現できる潜在的な容量節約量を見積もるには、Data Reduction Estimation Tool (DRET) を使用します。このツールは、新規システムにマイグレーションされる既存のユーザー・ワークロードを分析します。このツールは、接続されているすべてのストレージ・アレイ上のターゲット・ワークロードをスキャンし、これらの結果を統合して、システム全体の潜在的なデータ削減節約量の見積もりを生成します。

https://www-945.ibm.com/support/fixcentral/ にアクセスして、 Storwize® V7000 の下でツールとその README を検索します。

注: Data Reduction Estimation Tool は、ボリュームの潜在的な圧縮節約量の分析も行います。ただし、管理 GUI またはコマンド・ライン・インターフェースも使用して、組み込まれている Comprestimator ユーティリティーを実行し、データ削減プール内のボリュームの潜在的な圧縮節約量に関するデータを収集することをお勧めします。

システムは、シン・プロビジョニング・ボリュームや圧縮ボリュームを含むことができるデータ削減プールをサポートします。また、データ削減プールは、データ重複排除をサポートすることで、シン・プロビジョニング・ボリュームおよび圧縮ボリュームでのさらなる容量節約もサポートします。 シン・プロビジョニング・ボリュームまたは圧縮ボリュームに対して重複排除が指定された場合、重複するデータ・バージョンは除去され、ストレージに書き込まれません。これによってさらに容量を節約できます。 データ削減プールには、スペースがホストから解放されるタイミングを追跡する特定のボリュームや、ストレージ・プール内で収集して再使用することが可能な未使用の容量も含まれます。スペースがホストから解放されると、マップ解除 のプロセスが呼び出されます。マップ解除は、割り振り済みの容量がターゲット・ボリューム上で不要になったことを示すためにホストが使用する一連の SCSI コマンドです。 解放されたスペースは、ストレージ上で容量を再割り振りしなくても、収集してシステム上で再使用することができます。また、プールは、データ削減プール内の未使用の容量をレクラメーション処理し、その容量を再配分してエクステントを解放することもできます。レクラメーション処理が可能な容量 は、データが上書きされたとき、ボリュームを削除したとき、あるいはホストが SCSI マップ解除コマンドを使用してデータが不要であるとマークしたときに作成される未使用の容量です。 ホストがボリュームに保管されているデータを必要としなくなった場合、ホスト・システムは、SCSI マップ解除コマンドを使用して、そのストレージをボリュームから解放します。これらのボリュームがデータ削減プール内にある場合、そのスペアはレクラメーション処理が可能な容量になり、モニターおよび収集され、最終的に再配分によってプールに戻され、システムで使用できるようになります。データ削減プールの場合、管理 GUI で、レクラメーション処理可能な容量は使用可能な容量に加算されています。標準プールでは、使用可能な容量にレクラメーション処理可能な容量は含まれません。 コマンド・ライン・インターフェースで lsmdiskgrp コマンドを実行すると、データ削減プールおよび標準プールに適用される各種の値が表示されます。 データ削減プールの場合、reclaimable_capacity の値は、プール内でデータが削減された後に使用可能な未使用の容量を示します。 管理 GUI を使用する場合とは異なり、lsmdiskgrp で表示される free_capacity 値に reclaimable_capacity は含まれません。レクラメーション処理が可能な容量は、メタデータとして収集され、データ削減プールにも保管されるため、外部ストレージ・システム上のストレージを使用します。システムは定期的にこの容量をプールに戻します。しかし、使用可能な論理容量の 85% をレクラメーション処理が可能なデータで使い尽くす可能性があります。これにより、外部ストレージ・システムでスペース不足警告が誤って生成される可能性があります。データ削減プールを作成する際は、割り振り済みの合計容量の 15% をこれらの操作用に予約する必要があります。 レクラメーション処理が可能な容量は、他のボリュームに使用することができます。これにより、既存のストレージ・リソースがさらに効率的に使用されます。管理 GUI で、「プール」 > 「プール」を選択して、データ削減プールの物理容量をモニターします。コマンド・ライン・インターフェースで、lsmdiskgrp コマンドを使用して、データ削減プールの物理容量を表示します。

ホスト SCSI マップ解除コマンドのサポートは、デフォルトでは無効になっています。SCSI マップ解除コマンドを使用するためのサポートをホストに対して有効にするには、次のコマンドを入力します。
chsystem -hostunmap on

ストレージ・システムがデータ削減テクノロジー (圧縮など) をサポートしているかどうかを確認してください。データ削減テクノロジーをサポートするストレージ・システムを使用している場合、ストレージ・システムでのデータ削減も構成することができます。 ストレージ・システムは、その解放されたストレージをレクラメーション処理し、他のボリューム上でデータを再編成することで、より効率的に容量を使用することができます。ストレージに完全に割り振られたボリュームの場合、システムは、これらのストレージ・システム上のストレージを完全に制御します。ボリュームが削除されると、システム上の容量が解放されて再割り振りすることができ、ストレージ・システムはこの解放されたスペースに気付きません。ただし、ストレージ・システムが圧縮、シン・プロビジョニング、または重複排除を使用する場合、ストレージ・システムは物理容量の使用を制御します。この構成では、容量が解放されると、システムは、容量が不要になったことをストレージ・システムに通知します。すると、ストレージ・システムは、その容量を再使用するか、またはレクラメーション処理が可能な容量として解放します。また、システムは、特定の内部ドライブ (15 TB の Tier 1 フラッシュ・ドライブなど) からのレクラメーション処理が可能な容量もサポートします。これにより、これらのタイプのドライブのパフォーマンスを向上させることができます。

データ削減プールを作成する場合は、プールのサイズが、プール内でのマップ解除操作およびレクラメーション処理操作の追跡に必要な容量に対応できることを確認してください。一般的なガイドラインは、データ削減プールのボリューム容量が、データ削減プールの合計容量の 85% を超えないようにすることです。 表 1 には、プール内にボリュームを作成できるようにするために必要なデータ削減プールの最小容量を示しています。
表 1. データ削減プールの最小容量要件
エクステント・サイズ (ギガバイト) 容量要件 (テラバイト)1
1 GB 以下 1.1 TB
2 GB 2.1 TB
4 GB 4.2 TB
8 GB 8.5 TB
1完全割り振りボリュームは、最小容量の値に含まれません。データ削減プールの容量を計画する場合は、最初に完全割り振りボリュームに必要な容量を判別してください。その後、データ削減プールの最小容量の値が含まれていることを確認してください。

プールの状態

表 2 は、プールの操作状態の説明です。子プールは、親プールの状態を示します。エラーを示す状態は、親プール上で解決する必要があります。
表 2. プールの状態
状態 説明
オンライン プールはオンラインになっており、使用可能です。プール内のすべての MDisk が使用可能です。
劣化パス この状態は、システム内の 1 つ以上のノードがプール内の一部の MDisk にアクセスできないことを示します。劣化パス状態は、ストレージ・システム (storage system)またはファイバー・チャネル・ファブリックの誤った構成の結果である可能性が最も高い。ただし、ストレージ・システム (storage system)、ファイバー・チャネル・ファブリック、またはノードのハードウェア障害がこの状態の原因となっている場合もあります。この状態からリカバリーするには、以下のステップを実行します。
  1. ストレージ・システムのファブリック構成規則が正しいことを確認する。
  2. ストレージ・システムを正しく構成したことを確認する。
  3. イベント・ログにエラーがあれば修正する。
劣化ポート この状態は、プール内の MDisk に対して 1 つ以上の 1220 エラーが記録されたことを示します。 1220 エラーは、リモート・ファイバー・チャネル・ポートが MDisk から除外されたことを示します。このエラーによってストレージ・システム (storage system)のパフォーマンスが悪くなり、通常、ストレージ・システム (storage system)にハードウェア障害があることを示します。この問題を修正するには、ストレージ・システム (storage system)にハードウェア障害があればこれを解決し、イベント・ログの 1220 エラーを修正します。ログ内のこれらのエラーを解決するには、管理 GUI で、「モニター」 > 「イベント」をクリックします。 このアクションによって、現在イベント・ログにある未修正エラーのリストが表示されます。 これらの未修正エラーについては、エラー名を選択し、指針付き保守手順を開始して、エラーを解決します。 エラーは降順でリストされ、最も優先順位が高いエラーが最初にリストされます。 最初に、最も優先順位が高いエラーを解決してください。
オフライン プールはオフラインになっており、使用できません。システムにあるどのノードも MDisk にアクセスできません。 原因として最も可能性の高いのは、1 つ以上の MDisk がオフラインになっているか、 除外されていることです。
重要: プールにある 1 つの MDisk がオフラインになり、システム内のどのオンライン・ノードからも見えなくなると、この MDisk がメンバーになっているプールはオフラインになります。その結果、このプールによって提示されているすべてのボリューム・コピーがオフラインになります。プールを作成するときは、最適の構成になるように注意してください。

Easy Tier

システムは IBM® Easy Tier® をサポートします。これは、同一プール内にドライブ・タイプの任意の組み合わせが存在している場合に対応する機能です。パフォーマンスの低い MDisk 上のアクセス頻度の高いデータは、システムにより、フラッシュ・ドライブを使用する MDisk に処理を中断することなく自動的に移動されることで、高速な Storage Tier に配置されるようになります。 Easy Tier を最上位 Tier として IBM FlashCore モジュール・デバイスと一緒に使用する場合は、この Tier 内での過剰割り振りを設定することを検討してください。Easy Tier によるストレージのマイグレーションは低速でのみ行われ、Tier 内での圧縮率の変化に同調しない可能性があります。そのため、ユーザーは、FlashCore モジュール・アレイの最大過剰割り振り率を指定できます。 デフォルト設定では、新規プールでの過剰割り振りは許可されていません。管理 GUI でこの値を設定するには、「プール」 > 「プール」を選択します。プールを右クリックして、「過剰割り振り限度の変更」を選択します。コマンド・ライン・インターフェースで、mkmdiskgrp または chmdiskgrp-etfcmoverallocationmax パラメーターを使用して、この率を指定できます。

システムは、以下の Tier をサポートします。
Tier 0 フラッシュ
Tier 0 Flash Tier は、プールに高性能のフラッシュ・ドライブが含まれている場合に存在します。
Tier 1 フラッシュ
Tier 1 Flash Tier は、プールに Tier 1 フラッシュ・ドライブが含まれる場合に存在します。通常、Tier 1 フラッシュ・ドライブは、より大きな容量を提供しますが、わずかにパフォーマンスと書き込み特性が低いという特性があります。
Enterprise Tier
Enterprise Tier が存在するのは、パフォーマンスに合わせて最適化されたディスク・ドライブであるエンタープライズ・クラス MDisk がプールに含まれている場合です。
Nearline Tier
Nearline Tier は、容量が増えるよう最適化されたディスク・ドライブであるニアライン・クラスの MDisk がプールに含まれている場合に存在します。

すべての MDisk は Tier の 1 つに属しており、その Tier には、まだプールに組み込まれていない MDisk も含まれています。

子プールは、Easy Tier 設定をその親プールから継承します。子プールで Easy Tier 設定を変更することはできません。親プールでのみ設定を変更できます。