

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon EBS スナップショットのアーカイブに関するガイドラインとベストプラクティス
<a name="archiving-guidelines"></a>

このセクションでは、スナップショットのアーカイブに関するガイドラインとベストプラクティスをいくつか示します。

**Topics**
+ [ボリュームの 1 つのスナップショットをアーカイブする](#guidelines-single-snapshot)
+ [単一ボリュームの増分スナップショットをアーカイブする](#guidelines-incremental-snapshot)
+ [コンプライアンス上の理由から完全なスナップショットをアーカイブする](#guidelines-full-snapshot)
+ [標準階層のストレージコストの削減を決定する](#archive-guidelines)

## ボリュームの 1 つのスナップショットをアーカイブする
<a name="guidelines-single-snapshot"></a>

ボリュームのスナップショットが 1 つしかない場合、スナップショットは、スナップショットの作成時にボリュームに書き込まれたブロックと常に同じサイズになります。このようなスナップショットをアーカイブすると、標準階層のスナップショットは同等サイズのフルスナップショットに変換され、標準階層からアーカイブ階層に移動されます。

これらのスナップショットをアーカイブすることで、ストレージコストの削減に役立ちます。ソースボリュームが不要になった場合は、ストレージコストをさらに節約するためにボリュームを削除できます。

![\[スナップショットを作成し、アーカイブし、ソースボリュームを削除します。\]](http://docs.aws.amazon.com/ja_jp/ebs/latest/userguide/images/archive-single-snap.png)


## 単一ボリュームの増分スナップショットをアーカイブする
<a name="guidelines-incremental-snapshot"></a>

増分スナップショットをアーカイブすると、スナップショットは完全なスナップショットに変換され、アーカイブ階層に移動されます。たとえば、以下の画像では、**スナップ B** をアーカイブする場合、スナップショットは 10 GiB の完全なスナップショットに変換され、アーカイブ階層に移動されます。同様に、**スナップ C** をアーカイブする場合の場合、アーカイブ階層内の完全なスナップショットのサイズは 14 GiB です。

![\[ボリュームの増分スナップショットをアーカイブします。\]](http://docs.aws.amazon.com/ja_jp/ebs/latest/userguide/images/snapshot_1e.png)


標準階層のストレージコストを削減するためにスナップショットをアーカイブする場合は、増分スナップショットのセットに最初のスナップショットをアーカイブしないでください。これらのスナップショットは、スナップショット系統内の後続のスナップショットによって参照されます。ほとんどの場合、これらのスナップショットをアーカイブしても、ストレージコストは削減されません。

**注記**  
増分スナップショットのセットには、最後のスナップショットをアーカイブしないでください。最後のスナップショットは、ボリュームの最新のスナップショットです。ボリュームが破損または紛失した場合に、標準階層からボリュームを作成する場合は、標準階層でこのスナップショットが必要になります。

後続のスナップショットで参照されるデータを含むスナップショットを系統でアーカイブすると、参照されるデータに関連付けられているデータストレージコストとストレージコストは、系統内の後続のスナップショットに割り当てられます。この場合、スナップショットをアーカイブしても、データストレージやストレージのコストは削減されません。例えば、上の図で**スナップ B** をアーカイブする場合、その 4 GiB のデータは**スナップ C** に帰属しています。この場合、アーカイブ階層の**スナップ B **のフルバージョンのストレージコストが発生し、標準階層のストレージコストは変わらないため、全体のストレージコストが増加します。

**スナップ C** をアーカイブする場合、データが系統の後半で他のスナップショットによって参照されないため、標準階層ストレージは 4 GiB 減少します。また、スナップショットが完全なスナップショットに変換されるため、アーカイブ階層のストレージは 14 GiB 増加します。

## コンプライアンス上の理由から完全なスナップショットをアーカイブする
<a name="guidelines-full-snapshot"></a>

コンプライアンス上の理由から、毎月、四半期、または年単位でボリュームのフルバックアップを作成する必要がある場合があります。これらのバックアップでは、スナップショット系統内の他のスナップショットへの後方参照または前方参照なしで、スタンドアロンスナップショットが必要になる場合があります。EBS Snapshots Archive でアーカイブされたスナップショットは完全なスナップショットであり、系統内の他のスナップショットへの参照はありません。さらに、コンプライアンスのために、これらのスナップショットを数年間保持する必要があります。EBS スナップショットアーカイブを使用すると、これらの完全なスナップショットを長期保存するためにコストパフォーマンスに優れた方法でアーカイブできます。

## 標準階層のストレージコストの削減を決定する
<a name="archive-guidelines"></a>

増分スナップショットをアーカイブしてストレージコストを削減する場合は、アーカイブ階層の完全なスナップショットのサイズと、標準階層のストレージの削減を考慮する必要があります。ここでは、その方法について説明します。

**重要**  
API レスポンスは、API が呼び出された時点での正確なデータです。API レスポンスは、スナップショットの系統が変更された結果、スナップショットに関連付けられたデータが変わるため、異なる可能性があります。

標準階層でのストレージおよびストレージコストの削減を判断するには、次のステップに従います。

1. アーカイブするスナップショットについて、フルスナップショットサイズとその作成元のソースボリュームを確認します。[describe-snapshots](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html) コマンドを使用し、アーカイブするスナップショットの ID を `--snapshot-id` に指定します。

   ```
   $ aws ec2 describe-snapshots --snapshot-id snapshot_id
   ```

   `FullSnapshotSizeInBytes` のレスポンス値はフルスナップショットサイズをバイト単位で示し、`VolumeId` のレスポンス値はソースボリュームの ID を示します。

   たとえば、次のコマンドは、スナップショット `snap-09c9114207084f0d9` に関する情報を返します。

   ```
   $ aws ec2 describe-snapshots --snapshot-id snap-09c9114207084f0d9
   ```

   次の出力例は、フルスナップショットサイズが `5678912341` バイト (5.28 GiB) で、ソースボリュームが `vol-0f3e2c292c52b85c3` であることを示しています。

   ```
   {
       "Snapshots": [
           {
               "Description": "", 
               "Tags": [], 
               "Encrypted": false, 
               "VolumeId": "vol-0f3e2c292c52b85c3",
               "State": "completed", 
               "VolumeSize": 8, 
               "StartTime": "2021-11-16T08:29:49.840Z", 
               "Progress": "100%", 
               "OwnerId": "123456789012", 
               "FullSnapshotSizeInBytes" : "5678912341",
               "SnapshotId": "snap-09c9114207084f0d9"
           }
       ]
   }
   ```

1. ソースボリュームから作成されたすべてのスナップショットを検索します。[describe-snapshots](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html) コマンドを使用します。`volume-id` フィルターを指定して、フィルター値に、前のステップで取得したボリューム ID を指定します。

   ```
   $ aws ec2 describe-snapshots --filters "Name=volume-id, Values=volume_id"
   ```

   たとえば、次のコマンドは、ボリューム `vol-0f3e2c292c52b85c3` から作成されたすべてのスナップショットを返します。

   ```
   $ aws ec2 describe-snapshots --filters "Name=volume-id, Values=vol-0f3e2c292c52b85c3"
   ```

   以下のコマンド出力は、ボリューム `vol-0f3e2c292c52b85c3` から作成された 3 つのスナップショットを示します。

   ```
   {
       "Snapshots": [
           {
               "Description": "", 
               "Tags": [], 
               "Encrypted": false, 
               "VolumeId": "vol-0f3e2c292c52b85c3", 
               "State": "completed", 
               "VolumeSize": 8, 
               "StartTime": "2021-11-14T08:57:39.300Z",
               "Progress": "100%", 
               "OwnerId": "123456789012", 
               "SnapshotId": "snap-08ca60083f86816b0"
           }, 
           {
               "Description": "", 
               "Tags": [], 
               "Encrypted": false, 
               "VolumeId": "vol-0f3e2c292c52b85c3", 
               "State": "completed", 
               "VolumeSize": 8, 
               "StartTime": "2021-11-15T08:29:49.840Z", 
               "Progress": "100%", 
               "OwnerId": "123456789012", 
               "SnapshotId": "snap-09c9114207084f0d9"
           }, 
           {
               "Description": "01", 
               "Tags": [], 
               "Encrypted": false, 
               "VolumeId": "vol-0f3e2c292c52b85c3", 
               "State": "completed", 
               "VolumeSize": 8, 
               "StartTime": "2021-11-16T07:50:08.042Z", 
               "Progress": "100%", 
               "OwnerId": "123456789012", 
               "SnapshotId": "snap-024f49fe8dd853fa8"
           }
       ]
   }
   ```

1. 前のコマンドの出力を使用して、スナップショットを最も古いものから新しいものまで作成時刻順にソートします。各スナップショットの `StartTime` レスポンスパラメータには、そのスナップショットの作成時刻が UTC 時間形式で表示されます。

   例えば、前のステップで返されたスナップショットは、最も古いものから新しいものまで作成時刻順に整理され、次のようになります。

   1. `snap-08ca60083f86816b0` (最古 — アーカイブしたいスナップショットの前に作成される)

   1. `snap-09c9114207084f0d9` (アーカイブするスナップショット)

   1. `snap-024f49fe8dd853fa8` (最新 — アーカイブしたいスナップショットの後に作成される)

1. アーカイブしたいスナップショットの直前と直後に作成されたスナップショットを特定します。この場合、スナップショット `snap-09c9114207084f0d9` をアーカイブします。これは、3 つのスナップショットのセットで作成された 2 番目の増分スナップショットです。スナップショット `snap-08ca60083f86816b0` は直前に作成され、スナップショット `snap-024f49fe8dd853fa8` が直後に作成されます。

1. アーカイブしたいスナップショット内の参照されていないデータを検索します。まず、アーカイブしたいスナップショットの直前に作成されたスナップショットと、アーカイブするスナップショットの間で異なるブロックを見つけます。[list-changed-blocks](https://docs.aws.amazon.com/cli/latest/reference/ebs/list-changed-blocks.html) コマンドを使用します。`--first-snapshot-id` に、アーカイブしたいスナップショットの直前に作成されたスナップショットの ID を指定します。`--second-snapshot-id` に、アーカイブしたいスナップショットの ID を指定します。

   ```
   $ aws ebs list-changed-blocks --first-snapshot-id snapshot_created_before --second-snapshot-id snapshot_to_archive
   ```

   たとえば、次のコマンドは、スナップショット `snap-08ca60083f86816b0` (アーカイブしたいスナップショットの前に作成されたスナップショット) とスナップショット `snap-09c9114207084f0d9` (アーカイブしたいスナップショット) の間で異なるブロックのブロックインデックスを表示します。

   ```
   $ aws ebs list-changed-blocks --first-snapshot-id snap-08ca60083f86816b0 --second-snapshot-id snap-09c9114207084f0d9
   ```

   以下に、一部のブロックが省略されたコマンド出力を示します。

   ```
   {
       "BlockSize": 524288, 
       "ChangedBlocks": [
           {
               "FirstBlockToken": "ABgBAX6y+WH6Rm9y5zq1VyeTCmEzGmTT0jNZG1cDirFq1rOVeFbWXsH3W4z/", 
               "SecondBlockToken": "ABgBASyx0bHHBnTERu+9USLxYK/81UT0dbHIUFqUjQUkwTwK5qkjP8NSGyNB", 
               "BlockIndex": 4
           }, 
           {
               "FirstBlockToken": "ABgBAcfL+EfmQmlNgstqrFnYgsAxR4SDSO4LkNLYOOChGBWcfJnpn90E9XX1", 
               "SecondBlockToken": "ABgBAdX0mtX6aBAt3EBy+8jFCESMpig7csKjbO2Ocd08m2iNJV2Ue+cRwUqF", 
               "BlockIndex": 5
           }, 
           {
               "FirstBlockToken": "ABgBAVBaFJmbP/eRHGh7vnJlAwyiyNUi3MKZmEMxs2wC3AmM/fc6yCOAMb65", 
               "SecondBlockToken": "ABgBAdewWkHKTcrhZmsfM7GbaHyXD1Ctcn2nppz4wYItZRmAo1M72fpXU0Yv", 
               "BlockIndex": 13
           }, 
           {
               "FirstBlockToken": "ABgBAQGxwuf6z095L6DpRoVRVnOqPxmx9r7Wf6O+i+ltZ0dwPpGN39ijztLn", 
               "SecondBlockToken": "ABgBAUdlitCVI7c6hGsT4ckkKCw6bMRclnV+bKjViu/9UESTcW7CD9w4J2td", 
               "BlockIndex": 14
           }, 
           {
               "FirstBlockToken": "ABgBAZBfEv4EHS1aSXTXxSE3mBZG6CNeIkwxpljzmgSHICGlFmZCyJXzE4r3", 
               "SecondBlockToken": "ABgBAVWR7QuQQB0AP2TtmNkgS4Aec5KAQVCldnpc91zBiNmSfW9ouIlbeXWy", 
               "BlockIndex": 15
           },
           .....
           {
               "SecondBlockToken": "ABgBAeHwXPL+z3DBLjDhwjdAM9+CPGV5VO5Q3rEEA+ku50P498hjnTAgMhLG", 
               "BlockIndex": 13171
           }, 
           {
               "SecondBlockToken": "ABgBAbZcPiVtLx6U3Fb4lAjRdrkJMwW5M2tiCgIp6ZZpcZ8AwXxkjVUUHADq", 
               "BlockIndex": 13172
           }, 
           {
               "SecondBlockToken": "ABgBAVmEd/pQ9VW9hWiOujOAKcauOnUFCO+eZ5ASVdWLXWWC04ijfoDTpTVZ", 
               "BlockIndex": 13173
           }, 
           {
               "SecondBlockToken": "ABgBAT/jeN7w+8ALuNdaiwXmsSfM6tOvMoLBLJ14LKvavw4IiB1d0iykWe6b", 
               "BlockIndex": 13174
           }, 
           {
               "SecondBlockToken": "ABgBAXtGvUhTjjUqkwKXfXzyR2GpQei/+pJSG/19ESwvt7Hd8GHaUqVs6Zf3", 
               "BlockIndex": 13175
           }
       ], 
       "ExpiryTime": 1637648751.813, 
       "VolumeSize": 8
   }
   ```

   次に、同じコマンドを使用して、アーカイブするスナップショットとその直後に作成されたスナップショットとの間で異なるブロックを検索します。`--first-snapshot-id` に、アーカイブしたいスナップショットの ID を指定します。`--second-snapshot-id` に、アーカイブしたいスナップショットの直後に作成されたスナップショットの ID を指定します。

   ```
   $ aws ebs list-changed-blocks --first-snapshot-id snapshot_to_archive --second-snapshot-id snapshot_created_after
   ```

   たとえば、次のコマンドは、スナップショット `snap-024f49fe8dd853fa8` (アーカイブしたいスナップショットの後に作成されたスナップショット) とスナップショット `snap-09c9114207084f0d9` (アーカイブしたいスナップショット) の間で異なるブロックのブロックインデックスを表示します。

   ```
   $ aws ebs list-changed-blocks --first-snapshot-id snap-09c9114207084f0d9 --second-snapshot-id snap-024f49fe8dd853fa8
   ```

   以下に、一部のブロックが省略されたコマンド出力を示します。

   ```
   {
       "BlockSize": 524288, 
       "ChangedBlocks": [
           {
               "FirstBlockToken": "ABgBAVax0bHHBnTERu+9USLxYK/81UT0dbSnkDk0gqwRFSFGWA7HYbkkAy5Y", 
               "SecondBlockToken": "ABgBASEvi9x8Om7Htp37cKG2NT9XUzEbLHpGcayelomSoHpGy8LGyvG0yYfK", 
               "BlockIndex": 4
           }, 
           {
               "FirstBlockToken": "ABgBAeL0mtX6aBAt3EBy+8jFCESMpig7csfMrI4ufnQJT3XBm/pwJZ1n2Uec", 
               "SecondBlockToken": "ABgBAXmUTg6rAI+v0LvekshbxCVpJjWILvxgC0AG0GQBEUNRVHkNABBwXLkO", 
               "BlockIndex": 5
           }, 
           {
               "FirstBlockToken": "ABgBATKwWkHKTcrhZmsfM7GbaHyXD1CtcnjIZv9YzisYsQTMHfTfh4AhS0s2", 
               "SecondBlockToken": "ABgBAcmiPFovWgXQio+VBrxOqGy4PKZ9SAAHaZ2HQBM9fQQU0+EXxQjVGv37", 
               "BlockIndex": 13
           }, 
           {
               "FirstBlockToken": "ABgBAbRlitCVI7c6hGsT4ckkKCw6bMRclnARrMt1hUbIhFnfz8kmUaZOP2ZE", 
               "SecondBlockToken": "ABgBAXe935n544+rxhJ0INB8q7pAeoPZkkD27vkspE/qKyvOwpozYII6UNCT", 
               "BlockIndex": 14
           }, 
           {
               "FirstBlockToken": "ABgBAd+yxCO26I+1Nm2KmuKfrhjCkuaP6LXuol3opCNk6+XRGcct4suBHje1", 
               "SecondBlockToken": "ABgBAcPpnXz821NtTvWBPTz8uUFXnS8jXubvghEjZulIjHgc+7saWys77shb", 
               "BlockIndex": 18
           },
           .....
           {
               "SecondBlockToken": "ABgBATni4sDE5rS8/a9pqV03lU/lKCW+CTxFl3cQ5p2f2h1njpuUiGbqKGUa", 
               "BlockIndex": 13190
           }, 
           {
               "SecondBlockToken": "ABgBARbXo7zFhu7IEQ/9VMYFCTCtCuQ+iSlWVpBIshmeyeS5FD/M0i64U+a9", 
               "BlockIndex": 13191
           }, 
           {
               "SecondBlockToken": "ABgBAZ8DhMk+rROXa4dZlNK45rMYnVIGGSyTeiMli/sp/JXUVZKJ9sMKIsGF", 
               "BlockIndex": 13192
           }, 
           {
               "SecondBlockToken": "ABgBATh6MBVE904l6sqOC27s1nVntFUpDwiMcRWGyJHy8sIgGL5yuYXHAVty", 
               "BlockIndex": 13193
           }, 
           {
               "SecondBlockToken": "ABgBARuZykaFBWpCWrJPXaPCneQMbyVgnITJqj4c1kJWPIj5Gn61OQyy+giN", 
               "BlockIndex": 13194
           }
       ], 
       "ExpiryTime": 1637692677.286, 
       "VolumeSize": 8
   }
   ```

1. 前のステップで両方のコマンドで返された出力を比較します。両方のコマンド出力に同じブロックインデックスが表示される場合は、ブロックに参照されていないデータが含まれていることを示します。

   例えば、前のステップのコマンド出力では、ブロック 4、5、13、14 がスナップショット `snap-09c9114207084f0d9` に固有のものであり、スナップショットの系統の中で他のスナップショットから参照されていないことを示しています。

   標準階層ストレージの削減を判断するには、両方のコマンド出力に表示されるブロック数に 512 KiB (スナップショットブロックサイズ) を掛けます。

   たとえば、9,950 ブロックインデックスが両方のコマンド出力に表示されている場合、標準階層ストレージが約 4.85 GiB (9,950 ブロック \$1 512 KiB = 4.85 GiB) 減少することを示します。

1. 参照されていないブロックを標準階層に 90 日間格納するためのストレージコストを決定します。この値を、ステップ 1 で説明した完全なスナップショットをアーカイブ階層に格納するコストと比較します。最低 90 日間はアーカイブ階層から完全なスナップショットを復元しないことを前提として、値を比較することで、コスト削減を判断できます。詳細については、「[Amazon EBS スナップショットをアーカイブするための料金と請求](snapshot-archive-pricing.md)」を参照してください。