EC2のスナップショットからインスタンスを復元する方法2パターン

こんにちは、櫻井です。

 

EC2のスナップショットを作成しておくことで、利用しているインスタンスが壊れてしまった場合や、インスタンスを間違って削除してしまった場合にスナップショットを作成した時点の状態までの復元をすることが可能になります。

 

さて、今回はEC2のスナップショットからインスタンスを復元する方法を2種類のやり方で紹介しようと思います。

1つ目は、スナップショットからEBSボリューム(以下ボリューム)を作成して対象のインスタンスのボリュームと付け替える方法です。

2つ目は、スナップショットからAMIを作成し、インスタンスを起動させる方法です。

 

 

 

 

手順

 

AWSマネジメントコンソール上での作業をするので、AWSにログインしておいてください。

 

2パターン共通でやること

 

復元できたかの確認がしやすいようにEC2にファイルを配置する

 

スナップショットを作成する対象のインスタンスにログインし、以下のコマンドで “restore_test.txt” というファイルを任意のディレクトリに配置します。

 

正常にファイルが作成されたかの確認をします。

 

インスタンス内の作業は一旦終わりなのでログアウトしてください。

 

インスタンスからスナップショットを作成する

 

EC2に移動し、左側のタブの “ボリューム” を選択します。スナップショットを作成したいインスタンスにアタッチされているボリュームを選択し”アクション” から “スナップショットの作成” をクリックします。

 

 

 

“スナップショットの作成” をクリックします。

ネームタグを付けていますが、わかりやすくするために付けたものなので必須ではありません。

 

 

 

“restore_test.txt”を削除する

 

“復元できたかの確認がしやすいようにEC2にファイルを配置する” のステップで作成した “restore_test.txt” を 対象のインスタンスから削除します。先程 “restore_test.txt” を配置したディレクトリで以下のコマンドを実行してください。

 

削除されているかの確認をします。以下のコマンドを実行して”restore_test.txt” が出力されていなければ削除できています。

 

これで、先ほど作成したスナップショットには “restore_test.txt” があり、対象のインスタンスには “restore_test.txt” がないという状況を作れました。

“restore_test.txt” があるスナップショットから作成したボリュームを対象のインスタンスのボリュームと付け替え、インスタンスにログインをして”restore_test.txt” があれば復元をすることが出来たということになります。

 

 

パターン1:スナップショットからボリュームを作成して対象のインスタンスのボリュームと付け替える

 

対象のインスタンスのIDをクリックして、詳細画面に移動します。

 

 

詳細画面の下部の “ストレージ” のタブを開き “ルートボリュームを置き換える” をクリックします。

 

 

 

スナップショットの欄で先ほど作成したスナップショットを選択し “置き換えタスクの作成” をクリックします。

選択するスナップショットの候補に先程選択したスナップショットがなかった場合は、作成したスナップショットのIDをコピー&ペーストしてください。

 

 

 

しばらく待つと、”タスクの状態” が “保留中” から “成功” に変わります。これでボリュームの置き換えが出来ました。これで復元ができているはずです。

 

 

 

ではインスタンスにログインして、復元が出来ているかの確認をします。

先程 “restore_test.txt” を配置したディレクトリに移動して以下のコマンドを実行してください。”restore_test.txt” ファイルがあれば成功です。

 

 

パターン2:スナップショットからAMIを作成し、インスタンスを起動させる

 

左側のタブからスナップショットを選択し、先ほど作成したスナップショットを選択します。 “アクション” から “スナップショットからイメージを作成” をクリックします。

 

 

任意のAMI名を入力し、その他はデフォルトで “イメージの作成” をクリックします。

 

 

左側のタブから “AMI” を選択し、先ほど作成したAMIを選択して “AMIからインスタンスを起動” をクリックします。

 

 

インスタンスを設定を行い “インスタンスの起動” をクリックします。

 

 

AMIから作成したインスタンスにログインして “restore_text.txt”を配置したディレクトリに移動します。以下のコマンドを実行し “restore_text.txt” が出力されていれば復元成功です。

 

 

 

まとめ

 

今回はスナップショットからインスタンスを復元する2つのパターンを紹介しました。
インスタンスが壊れてしまった場合や削除してしまった場合にスナップショットから復元することで、スナップショットを作成した時点までの復元をすることが可能です。
もしもの事が起こってしまった時に焦らずに復元できるように覚えておくと良いと思います。

カジュアル面談も実施中!

ギークフィードではAWSエンジニアを募集しています。

弊社に興味を持っていただいたり、会社のことをカジュアルに聞いてみたいという場合でも、ご気軽にフォームからお問い合わせください。その場合はコメント欄に、カジュアルにお話したいです、と記載ください!

AWS・開発エンジニア募集

この記事が気に入ったら
いいね ! しよう

Twitter で
The following two tabs change content below.
櫻井
櫻井
2022年3月にギークフィードに入社。 エンジニア完全未経験からSAP・SAAを三週間で取得することが出来ました。そのためAWSに関することを中心に記事を作成する予定です。 自分が初心者だからこそわかる、エンジニア未経験の方や、エンジニアを始めたばかりの方の躓きポイントをうまく説明できるように頑張ります。

【採用情報】一緒に働く仲間を募集しています

採用情報
ページトップへ