すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:スナップショットの仕組み

最終更新日:Aug 26, 2024

スナップショットは、ディスクのポイントインタイムバックアップです。 ディスクのスナップショットを使用して、スナップショットが作成された時点までディスクデータを復元できます。 このトピックでは、スナップショットを作成および削除し、スナップショットサイズを計算する方法について説明します。 このトピックでは、スナップショットサイズとディスクサイズの関係についても説明します。

スナップショットの作成

ビジネス要件に基づいて、ディスクのスナップショットを手動または自動で作成できます。 詳細については、「ディスクのスナップショットの作成」または「自動スナップショットポリシーの作成」をご参照ください。

説明

スナップショットは、フルスナップショットと増分スナップショットに分類されます。 ディスク用に作成する最初のスナップショットは、完全なスナップショットです。 スナップショットには、スナップショットの作成時にディスクに書き込まれた、空のデータブロックを除くすべてのデータブロックが含まれます。 ディスクに対して作成する後続のスナップショットは増分スナップショットであり、前のスナップショット以降に変更されたデータブロックのみが含まれます。 フルスナップショットと増分スナップショットのメタデータには、すべてのデータブロックに関する情報が含まれます。 ディスクのスナップショットを使用してディスクをロールバックすると、スナップショットが作成された時点までディスクのすべてのデータを復元できます。

説明

ディスクを初期化すると、ディスクは論理ブロックアドレス (LBA) に基づいてデータブロックに分割されます。 データブロックは、スナップショットのデータバックアップの最小粒度です。 データがデータブロックに書き込まれると、すべての変更されたデータブロックは、次のスナップショットにコピーするためにラベル付けされる。 ディスクに書き込まれて変更されたデータは、作成されたスナップショットには影響しません。 スナップショットは元のディスクデータには影響しません。

作成されたスナップショットはObject Storage Service (OSS) に保存されます。

  • デフォルトでは、スナップショットデータは、データの冗長性を最大化するために、OSSがZRSをサポートしているリージョンのZRSバケットに保存されます。

  • OSSがZRSをサポートしていないリージョンでは、スナップショットデータはローカル冗長ストレージ (LRS) バケットに格納されます。 ビジネスで高可用性が必要な場合は、スナップショットをコピーしてデータをバックアップすることを推奨します。

  • データセキュリティ上の理由から、スナップショットデータを保存するために作成したOSSバケットを選択することはできません。

OSSがZRSをサポートしているリージョンについては、「ストレージ冗長性の概要」および「ZRSバケットの作成」をご参照ください。

スナップショットを使用してディスクを作成またはロールバックすると、スナップショットに含まれるデータブロックがOSSからディスクに読み込まれます。 ロードされていないスナップショットデータにアクセスすると、システムは直ちにOSSからディスクにスナップショットデータをロードします。 ロードプロセスを完了するのに必要な時間は、スナップショットのサイズによって異なり、数分または数時間になります。 スナップショット内のすべてのデータブロックがディスクにロードされる前に、ディスクの読み取りレイテンシが増加します。 スナップショット内のすべてのデータブロックがディスクにロードされると、ディスクの読み取りレイテンシは通常レベルに戻ります。

例:

ECS (Elastic Compute Service) インスタンスのディスクに10:00:00と11:00:00にデータが書き込まれるとします。 次のセクションでは、ディスクのスナップショットの作成方法について説明します。

  1. 9:00:00に、ディスクにはデータブロックA、B、Cが含まれ、ディスクの最初のスナップショット (スナップショット1) が作成されます。 データブロックA、B、およびCはすべてスナップショット1でバックアップされます。 スナップショット1は、ディスク上のすべてのデータをバックアップする完全なスナップショットです。

  2. データはディスクに書き込まれ続けます。 データブロックAはA1に変更され、データブロックBはB1に変更され、データブロックDが追加される。 ディスクの2番目のスナップショット (スナップショット2) は10:00:00に作成されます。 スナップショット2は、変更されたデータブロックA1、B1、Dのみをバックアップする増分スナップショットである。スナップショット2のメタデータは、ディスクの全てのデータブロック (A1、B1、C、及びD) に関する情報を含む。 データブロックCは、スナップショット1から導出される。

  3. データはディスクに書き込まれ続けます。 データブロックCはC1に変更され、データブロックEが追加される。 3番目のスナップショット (スナップショット3) は11:00:00に作成されます。 スナップショット3は、変更されたデータブロックC1およびEのみをバックアップする増分スナップショットである。スナップショット3のメタデータは、ディスクの全てのデータブロックA1、B1、C1、D、Eの情報を含む。 データブロックA1、B1、およびDは、スナップショット2から導出される。

  4. 前述のプロセスが繰り返される。

image

スナップショットの削除

ストレージ容量を解放したい場合、またはスナップショットの最大数に達した場合は、不要になったスナップショットを削除できます。 スナップショットの削除方法については、「スナップショットの削除」をご参照ください。

説明

各ディスクには、最大256の手動スナップショットと1,000の自動スナップショットを含めることができます。 詳細については、「制限」トピックのスナップショット制限セクションを参照してください。

説明

スナップショットを作成する場合と比較して、スナップショットを削除するときに、スナップショットに含まれるデータブロックとデータブロック間の関係に基づいてストレージ領域を解放する必要があります。 ディスクの最初のスナップショットを削除すると、最初の増分スナップショットは削除されたスナップショットの属性を継承してフルスナップショットになります。 ディスクに削除された完全なスナップショットしかない場合、ディスク用に作成される次のスナップショットは、ディスクの作成以降に書き込まれたすべてのデータブロックをバックアップする完全なスナップショットです。

例:

ECSインスタンス上のディスクに対してスナップショット1、スナップショット2、およびスナップショット3が作成されているとします。 次のセクションでは、各スナップショットに含まれるデータブロックについて説明します。

  • スナップショット1: データブロックA、B、およびCを含む。

  • スナップショット2: データブロックA1 (データブロックAから変更された) 、B1 (データブロックBから変更された) 、C (変更されていない) 、およびD (新しいデータブロック) を含む。 データブロックCは、スナップショット1から導出される。

  • スナップショット3: データブロックA1 (未変更) 、B1 (未変更) 、C1 (データブロックCから変更) 、D (未変更) 、およびE (新規データブロック) を含む。 データブロックA1、B1、およびDは、スナップショット2から導出される。

次のセクションでは、スナップショットの削除方法について説明します。

  1. スナップショット1が14:00:00に削除されたとします。 スナップショット1に含まれるデータブロックAおよびBは参照されず、直接削除される。 データブロックCは、スナップショット2によって参照されるので保持される。 この場合、スナップショット2は完全なスナップショットになり、データブロックA1、B1、C、およびDを含む。スナップショット3は増分スナップショットとして残ります。

  2. 次に、スナップショット2は15:00:00に削除されます。 スナップショット2に含まれるデータブロックCは参照されず、直接削除される。 データブロックA1、B1、およびDは、スナップショット3によって参照され、保持される。 この場合、スナップショット3は完全なスナップショットになり、データブロックA1、B1、C1、D、およびEを含む。

  3. 最後に、スナップショット3は16:00:00に削除されます。 この場合、Snapshot 3のすべてのデータブロックは参照されず、削除されます。

image

スナップショットサイズの計算

説明

ディスクの合計スナップショットサイズは、スナップショットチェーンの粒度で計算されます。 スナップショットチェーンは、ディスクに対して作成されたすべてのスナップショットのチェーンです。 ディスクのすべてのスナップショットのデータブロックが占めるストレージ容量が計算されます。 次のセクションでは、スナップショットサイズに関する概念について説明します。

  • 完全スナップショットサイズ: 1つのスナップショット内のすべてのデータブロックが占有するストレージ容量。

  • 増分スナップショットサイズ: 同じスナップショットチェーン内の前のスナップショット以降に変更されたスナップショット内のデータブロックによって占有されたストレージ容量。

  • 合計スナップショットサイズ: 最初のスナップショット (フルスナップショット) のサイズと、それ以降のすべての増分スナップショットのサイズの合計。

    説明

    スナップショットはディスクに保存されず、ディスク領域を消費しません。 各リージョンに保存されているスナップショットのサイズに基づいて、リージョン固有のスナップショットストレージ料金が課金されます。 詳細については、「スナップショット」をご参照ください。

ECSコンソールでスナップショットチェーンごとにスナップショットのサイズを表示できます。 詳細については、「スナップショットサイズの表示」トピックの「ディスクのスナップショットチェーンに基づくディスクのスナップショットサイズの表示」をご参照ください。

例:

ECSインスタンスのディスクに10:00:00と11:00:00にデータが書き込まれるとします。 次のセクションでは、ディスクのスナップショットサイズを計算する方法について説明します。

  1. ディスクにデータブロックA (2 MB) 、B (2 MB) 、C (2 MB) が含まれているとします。 スナップショット1は9:00:00に作成され、データブロックA、B、Cをバックアップします。スナップショット1は完全なスナップショットです。

    スナップショット1のサイズ=データブロックAのサイズ + データブロックBのサイズ + データブロックCのサイズ=6 MB

  2. データブロックA1 (2 MB) 、B1 (2 MB) 、D (2 MB) がディスクに書き込まれる。 スナップショット2は、10:00:00に作成され、スナップショット1以降に変更されたデータブロックA1、B1、およびDのみをバックアップする。 スナップショット2は増分スナップショットです。

    スナップショット2のサイズ=データブロックA1のサイズ + データブロックB1のサイズ + データブロックDのサイズ=6 MB

  3. データブロックC1 (2 MB) 及びデータブロックE (2 MB) は、ディスクに書き込まれる。 スナップショット3は、11:00: 00に作成され、スナップショット2以降に変更されたデータブロックC1およびEのみをバックアップする。 スナップショット3は増分スナップショットです。

    スナップショット3のサイズ=データブロックC1のサイズ + データブロックEのサイズ=4 MB

  4. 合計スナップショットサイズ=スナップショット1のサイズ + スナップショット2のサイズ + スナップショット3のサイズ=16 MB

image

スナップショットサイズとディスクサイズの関係

ディスクの単一スナップショットのサイズは、ディスクサイズを超えません。 スナップショットの数が増えると、ディスクサイズはすべてのスナップショットの合計サイズよりも小さくなる可能性があります。

40 GBのディスクを作成し、そのディスクに20 GBのデータを書き込み、そのディスクのスナップショットを作成するとします。 スナップショットのサイズは20 GBです。 引き続き10 GBのデータをディスクに書き込み、ディスクに別のスナップショットを作成するとします。 ディスクサイズはまだ40 GBで、スナップショットの合計サイズは30 GBです。 このプロセスが繰り返される。 スナップショットチェーンを使用して、スナップショットサイズを表示できます。 詳細については、「スナップショットサイズの表示」トピックの「ディスクのスナップショットチェーンに基づくディスクのスナップショットサイズの表示」をご参照ください。

次の図で、① はディスクサイズ、② はディスクのすべてのスナップショットのサイズです。快照容量和云盘容量

スナップショットサイズとシステム値の違い

  • スナップショットサイズは、スナップショットのデータバックアップの最小粒度として固定サイズのデータブロックを使用して計算されます。

  • ディスクからファイルを削除すると、オペレーティングシステムに表示される使用ディスク容量が減少します。 オペレーティングシステムのファイルシステムからファイルを削除すると、ファイルは削除済みのラベルが付けられますが、ファイルのデータは物理的に削除されません。 ディスク上のファイル削除は書き込み操作であり、データが占有する実際のディスク容量を減らすことはありません。 スナップショットがファイル削除中に作成された場合、スナップショットには削除されたファイルに対応するデータブロックが含まれます。 オペレーティングシステムのファイルシステムからファイルが物理的に削除された場合、スナップショットには削除されたファイルのデータブロックは含まれません。 詳細については、ファイルシステムのTRIMメカニズムのドキュメントを参照してください。

  • システムディスクにデータを書き込まなくても、スナップショットサイズが増加することがあります。 オペレーティングシステムが実行されると、システムファイルが生成され、ディスクに書き込まれ、スナップショットでバックアップされます。

  • スナップショットのサイズは、ファイルシステムの特定のメタデータがディスク領域を占有するため、ディスクに書き込まれるデータのサイズよりもわずかに大きい場合があります。 スナップショットのデータブロックは、メタデータ及び書き込まれたデータを含む。 たとえば、ディスク上に1 MBのテキストファイルしか作成しない場合、スナップショットによってバックアップされるデータのサイズは、ファイルシステムのメタデータのためにテキストファイルのサイズよりもわずかに大きくなります。 スナップショットサイズが1 MBを超えています。