メインコンテンツまでスキップ

FAQ :『 Over Provisioning aka Thin Provisioning in ONTAP 』

Views:
1,034
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
CORE
Last Updated:

環境

オーバープロビジョニング/シンプロビジョニング

回答

  • オーバープロビジョニングはシンプロビジョニングとも呼ばれ、ストレージ管理者は包含アグリゲートよりも多くのストレージスペースをプロビジョニングできます。
  • ONTAPには、2種類のシンプロビジョニング機能があります。
    • ボリュームのシンプロビジョニング
    • LUNシンプロビジョニング
ボリュームのシンプロビジョニング
  • シンプロビジョニングボリュームを作成した場合、ONTAPはボリュームの作成時に追加のスペースをリザーブしません。
  • ボリュームにデータが書き込まれるときに、書き込み処理に対応するために必要なストレージをアグリゲートから確保するようにボリュームが要求します。
  • シンプロビジョニングボリュームを使用すると、アグリゲートをオーバープロビジョニングできます。これにより、アグリゲートの空きスペースが不足した場合、ボリュームが必要なスペースを確保できなくなる可能性があります。
  • シンプロビジョニングボリュームを作成するには、スペースギャランティをnoneに設定します。
    • スペースギャランティがnoneの場合、ボリュームサイズはアグリゲートサイズによって制限されません。
    • すなわち、必要に応じて、各ボリュームを包含アグリゲートよりも大きくできます。
    • アグリゲートから提供されるストレージは、データがボリュームに書き込まれるときにのみ使用されます。
LUNのシンプロビジョニング 
  • ストレージ管理者は、シンプロビジョニングを行い、ボリューム上で実際に利用可能な量よりも多くのストレージをLUNにプロビジョニングできます。
  • 要求したスペースをユーザが使い切ることはめったになく、その場合、スペース リザーブLUNを使用するとストレージの効率が低下します。
  • ボリュームをオーバープロビジョニングすることで、ボリューム容量を効率よく活用できます。
  • シンプロビジョニングLUNが新しく作成されても、その時点ではそのLUNが属するボリューム内のスペースは使用されません。LUNにブロックが書き込まれ、LUN内のスペースが消費された時点で、そのLUNがあるボリューム内で同量のスペースが消費されます。
  • シンプロビジョニングを使用すると、 ストレージ  コントローラで実際に使用できるよりも多くのストレージスペースを、ストレージコントローラに接続しているホストに割り当てることができます。
  • シンプロビジョニングLUNを使用したストレージ プロビジョニングでは、ユーザが必要とした時点でストレージを提供できます。

シンプロビジョニングには次の利点があります。

  1. ストレージ効率を高める。
  2. 空きスペースを複数のLUNで共有できる。
  3. 実際に使用するスペースのみをLUNが消費できる。

例:

次に、シンプロビジョニングLUNを使用するボリュームの例を示します。次の表に示すように、4、000GBのボリュームを5つのシンプロビジョニングLUNでプロビジョニングし、各LUNに1、000GBのスペースを確保できます。

表1.4,000GBボリュームのシンプロビジョニングLUN

LUN名

LUNが実際に使用するスペース

LUNに設定されている使用可能なスペース

lun1

100GB

1,000GB

lun2

100GB

1,000GB

lun3

100GB

1,000GB

lun4

100GB

1,000GB

lun5

100GB

1,000GB

合計

500GB

5,000GB

  • 5つのLUNそれぞれが100GBのストレージを使用していますが、各LUNで使用可能なストレージは1,000GBです。
  • この構成では、ボリュームは1、000GBだけオーバープロビジョニングされていますが、LUNによって実際に使用されているスペースは500GBであるため、このボリュームには3、500GBの空きスペースが残っています。
  • シンプロビジョニングでは、LUNの拡大量はさまざまです。
  • LUNにデータのブロックが書き込まれるたびに、利用可能なスペースのプールからLUNにスペースが拡充されます。
  • それぞれに設定されている全スペースをすべてのLUNで使い切ってしまうと、ボリュームの空きスペースは不足します。
  • ストレージ管理者は、 ストレージコントローラを監視し 、必要に応じてボリュームのサイズを拡張する必要があります。

シンプロビジョニングLUNとスペース リザーブLUNを、同じボリュームおよび同じアグリゲートに配置できます。たとえば、クリティカルな本番用アプリケーションにスペース リザーブLUNを使用して、その他のアプリケーションにはシンプロビジョニングLUNを使用できます。

オーバープロビジョニング
  • アグリゲートよりも合計サイズが大きい論理コンテナ(ボリュームまたはLUN)を作成できるため、基盤となる物理ストレージよりも多くの論理スペースをホストに提供することが一般的です。
  • その結果、アグリゲートがオーバープロビジョニングされます。

アグリゲートがオーバープロビジョニングされている場合、利用可能なスペース不足が原因で次の種類の書き込みが失敗する可能性があります。

  1. スペースギャランティが noneに設定されたボリュームへの書き込み。
  2. スペースリザベーションが有効になっておらず、スペースギャランティが fileのボリューム内にあるファイルに書き込みます。

そのため、アグリゲートをオーバープロビジョニングした場合は、使用可能なスペースを監視し、必要に応じてアグリゲートにストレージを追加して、スペース不足による書き込みエラーを回避する必要があります。

この場合のLUNとは、ストレージアレイでストレージに使用されるアレイLUNではなく、Data ONTAPがクライアントに提供するLUNを指します。

注: アグリゲートには、アグリゲートに含まれる各ボリュームのメタデータを保持するための十分な空きスペースが必要です。ボリュームのメタデータに必要なスペースは、ボリュームの公称サイズの約0.5%です。

LUNがシンプロビジョニングされているかどうかを表示する方法:

LUNがシンプロビジョニングされているかどうかを確認するには、次のコマンドを実行して、強調表示された出力を書き留めます。

cluster1::> lun show -vserver vs1 -path /vol/vol1/lun1 -instance Vserver Name: vs1 LUN Path: /vol/vol1/lun1 Volume Name: vol1 Qtree Name: "" LUN Name: lun1 LUN Size: 10MB OS Type: linux Space Reservation: disabled Serial Number: wCVt1]IlvQWv Serial Number (Hex): 77435674315d496c76515776 Comment: new comment Space Reservations Honored: false Space Allocation: disabled State: offline LUN UUID: 76d2eba4-dd3f-494c-ad63-1995c1574753 Mapped: mapped Block Size: 512

上記で強調表示されているオプションについては、以下で詳しく説明します。

  • [-space-reserve {enabled | disabled}] -スペースリザベーション -このパラメータ値に一致するLUNを選択します。  trueの場合、LUNのスペースがリザーブされます。 falseに設定すると、LUNはシンプロビジョニングされます。デフォルトは trueです。
  • [-space-reserve-honored {true | false}] -スペースリザベーションが有効 -指定したパラメータ値に一致するLUNを選択します。  trueを 指定すると、コンテナボリュームでスペースリザベーションが有効になっているLUNが表示されます。  falseを指定 すると、シンプロビジョニングされたLUNが表示されます。
  • [-space-allocation {enabled | disabled}] -スペース割り当て -指定したパラメータ値に一致するLUNを選択します。このパラメータを enabledに設定すると、スペース割り当てが有効になり、LUNのプロビジョニングのしきい値イベントが報告されます。このパラメータを disabledに設定すると、スペース割り当ては無効になり、LUNのプロビジョニングしきい値イベントは報告されません。
シンプロビジョニングを使用する場合は、ボリュームのスペースが不足しないように、LUNで使用されているスペースを追跡してください。
ボリュームがシンプロビジョニングされているかどうかを確認する方法:
  • ボリュームがシンプロビジョニングされているかどうかを確認するには、次のコマンドを実行して、強調表示された出力を書き留めます。
cluster1::*> volume show -vserver vs1 -volume vol1 Vserver Name: vs1 Volume Name: vol1 Aggregate Name: aggr1 Volume Size: 30MB Volume Data Set ID: 1026 Volume Master Data Set ID: 2147484674 Volume State: online Volume Type: RW Volume Style: flex Is Cluster Volume: true Is Constituent Volume: false Export Policy: default User ID: root Group ID: daemon Security Style: mixed Unix Permissions: ---rwx------ Junction Path: - Junction Path Source: - Junction Active: - Junction Parent Volume: - Comment: Available Size: 23.20MB Filesystem Size: 30MB Total User-Visible Size: 28.50MB Used Size: 5.30MB Used Percentage: 22% Volume Nearly Full Threshold Percent: 95% Volume Full Threshold Percent: 98% Maximum Autosize (for flexvols only): 8.40GB Minimum Autosize: 30MB Autosize Grow Threshold Percentage: 85% Autosize Shrink Threshold Percentage: 50% Autosize Mode: off Autosize Enabled (for flexvols only): false Total Files (for user-visible data): 217894 Files Used (for user-visible data): 98 Space Guarantee Style: none Space Guarantee In Effect: true Snapshot Directory Access Enabled: true Space Reserved for Snapshot Copies: 5% Snapshot Reserve Used: 98% Snapshot Policy: default Creation Time: Mon Jul 08 10:54:32 2013 Language: C.UTF-8 Clone Volume: false Node name: cluster-1-01

上記で強調表示されているオプションについては、以下で詳しく説明します。

  • [-size{<integer>[KB|MB|GB|TB|PB]}]-ボリュームサイズ
    このパラメータを指定すると、指定したサイズに一致するボリュームに関する情報のみが表示されます。サイズは、ボリュームが関連付けられているアグリゲートから消費できるスペースの最大量で、ユーザ データ、メタデータ、Snapshotコピー、およびSnapshotリザーブが含まれます。space-guaranteeがvolumeに設定されていないボリュームの場合、この最大サイズまでボリュームに格納できるかどうかは、関連付けられているアグリゲートで使用可能なスペースによって決まります。
  • [-space-guarantee-enabled{true | false}]-有効なスペースギャランティ -このパラメータを指定すると、指定したスペースギャランティ設定に一致するボリュームに関する情報のみが表示されます。space-guaranteeの値がnoneの場合、-space-guarantee-enabledの値は常にtrueになります。つまり、ギャランティが存在しないため、ギャランティは常に有効です。space-guaranteeの値がvolumeの場合、ギャランティされたスペース量がボリュームのマウント時に使用可能であったかどうかに応じて、-space-guarantee-enabledの値をtrueまたはfalseに設定できます。
  • [-space-guarantee |-s{none | volume}]-スペースギャランティ形式 -このパラメータを指定すると、指定したスペースギャランティ形式に一致するボリュームに関する情報のみが表示されます。space-guaranteeの値がnoneの場合、-space-guarantee-enabledの値は常にtrueになります。つまり、ギャランティが存在しないため、ギャランティは常に有効です。space-guaranteeの値がvolumeの場合、ギャランティされたスペース量がボリュームのマウント時に使用可能であったかどうかに応じて、-space-guarantee-enabledの値をtrueまたはfalseに設定できます。
ボリュームのストレージフットプリントを表示する方法

volume show-footprint コマンドを使用して、ボリュームがアグリゲート内で使用している合計スペース量を確認することもできます。

cluster1::> volume show-footprint Vserver : nodevs Volume : vol0 Feature Used Used% -------------------------------- ---------- ----- Volume Data Footprint 103.1MB 11% Volume Guarantee 743.6MB 83% Flexible Volume Metadata 4.84MB 1% Delayed Frees 4.82MB 1% Total Footprint 856.3MB 95%

注: 上記の例はシックプロビジョニングボリュームを示しています。ボリュームがシンプロビジョニングされている場合、ボリュームギャランティは0になります。

  • 合計フットプリントの値は、アグリゲート内のボリュームによって使用されているスペースの量を示します。
  • これらの数値を追跡しておく必要があります。特にシンプロビジョニングを使用する場合は、アグリゲート内のボリュームによって消費されているスペース量を把握し、それに応じて変更を加える必要があります。
  • ボリュームおよびLUNに対してシンプロビジョニングを使用する場合、ストレージスペースの使用量を追跡する最後の手順は、スペース不足を避けるためにアグリゲートで使用されているスペースの量を追跡することです。
アグリゲートの全体的なストレージ使用状況を表示する方法

アグリゲートのスペース使用量を追跡するには、次のコマンドを使用します。

cluster1::> storage aggregate show-space Aggregate : wqa_gx106_aggr1 Feature Used Used% -------------------------------- ---------- ------ Volume Footprints 101.0MB 0% Aggregate Metadata 300KB 0% Snapshot Reserve 5.98GB 5% Total Used 6.07GB 5% Total Physical Used 34.82KB 0%
アグリゲートで使用されているストレージを視覚的に表示
  • ボリュームフットプリント –アグリゲート内のすべてのボリュームフットプリントの合計が表示されます。このボリュームには、次の図に示すように、包含アグリゲート内のすべてのボリュームのすべてのデータおよびメタデータ用に使用またはリザーブされているすべてのスペースが含まれます。

Clipboard_E84E8FC31615DC686BDFA 128DB6BB0E33.PNG

  • Total Used –ボリューム、メタデータ、またはSnapshotコピーによって使用またはリザーブされているアグリゲート内のすべてのスペースの合計。
  • Physical Used –将来使用するためにリザーブされているのではなく、現在データに使用されているスペースの量です。アグリゲートSnapshotコピー用に使用されるスペースが含まれます。
スペース管理

 

NetApp provides no representations or warranties regarding the accuracy or reliability or serviceability of any information or recommendations provided in this publication or with respect to any results that may be obtained by the use of the information or observance of any recommendations provided herein. The information in this document is distributed AS IS and the use of this information or the implementation of any recommendations or techniques herein is a customer's responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. This document and the information contained herein may be used solely in connection with the NetApp products discussed in this document.

 

  • この記事は役に立ちましたか?