AWSのスナップショットとAMIイメージの作成の違いについて
2023/3/4
AWSのEC2に少しリスクの高い作業を行おうとした際に、AMIイメージを作りコピーインスタンスを作りました。この時、AMIイメージとEBSスナップショットという2つの違いや必要な料金がよく分からなかったので整理した内容をまとめました。
AMIイメージ作成とスナップショット作成の違い
EC2を使う際はEBSボリュームを使用すると思いますが、このEBSボリュームのバックアップをスナップショットと言います。ハードディスクのコピーのようなもののイメージです。
EBSスナップショットはS3に格納されるため、スナップショットを保持している期間はS3の料金がかかります。大体1GBあたり毎月0.05USD程度。
AMIイメージ作成はEC2のインスタンス起動に必要な情報(AMIイメージ)とEBSスナップショットの両方が取得されます。AMIイメージに料金は特にかかりません。
バックアップという意味ではAMIイメージを一度作り、その後は定期的にEBSスナップショットを取得すればよいのかと思います。インスタンスのコピーを作る場合は、AMIイメージを作成して、そこから新しいインスタンスを作ることができます。
スナップショット取得時にはインスタンスの停止が推奨
スナップショット取得時にはインスタンスまたはファイルを更新するサービスを停めておくことが推奨されています。スナップショット取得中にファイルシステムが更新されると整合性の取れていない状態になる可能性があり、この場合は復元時に問題が発生する可能性があるようです。
一応、インスタンスを停止しなくてもスナップショットやAMIイメージは取得することができます。
AMIイメージの取得方法
AMIイメージ作成は「EC2」->「インスタンス」 -> 「アクション」 -> 「イメージの作成」で取得できます。
EBSスナップショットは 「EC2」->「ボリューム」 -> 「アクション」 -> 「スナップショットの作成」で取得できます。
AMIイメージからインスタンスを作る方法
EC2の「AMI」から「アクション」->「起動」でインスタンスを作ることができます。新しいインスタンスなのでIPはオリジナルとは別になりますが、キーペアなどは同じものが利用できます。