おっさん社内SEエンジニアの勉強ブログ

勉強記録のブログとなります。

AWS認定学習記録-EC2-Snapshotの利用

良い習慣は身につかず、悪習慣(毎晩の晩酌)はやめられないという
実情を感じつつ何か代替えするきっかけを作りたいなぁと感じる今日この頃です。

今回のテーマ:Snapshotの活用

概要

  • EC2インスタンスからSpapshotを作成し復元を実施
  • サーバーのバックアップ/リストア試験が業務ではあるパターンです。

脱線(ユーザーデータスクリプトの応用)

インスタンスを終了しているため毎回作り直す際に手間であるため、
ユーザーデータを活用し実装

f:id:In-houseSE:20210420081042p:plain

#!/bin/bash
# サーバーの設定変更
sed -i 's/^HOSTNAME=[a-zA-Z0-9\.\-]*$/HOSTNAME=web-sv/g' /etc/sysconfig/network
hostname 'web-sv'
cp /usr/share/zoneinfo/Japan /etc/localtime
sed -i 's|^ZONE=[a-zA-Z0-9\.\-\"]*$|ZONE="Asia/Tokyo"|g' /etc/sysconfig/clock
echo "LANG=ja_JP.UTF-8" > /etc/sysconfig/i18n
# アパッチのインストール
sudo yum update -y
sudo yum install httpd -y 
# index.htmlファイルの作成
touch /var/www/html/index.html
echo "<html><h1>hello world!</h1></html>"  >> /var/www/html/index.html
# apacheの再起動
sudo systemctl restart httpd
# apacheの自動起動
systemctl enable httpd.service
  • 起動しWEBのトップページが表示されることを確認

f:id:In-houseSE:20210420081400p:plain

実際の手順

  • マネージドコンソール-EC2-Elastic Block Store-ボリューム-Snapshotを取得するボリュームを選択し、アクション-スナップショットの作成をクリック

f:id:In-houseSE:20210420082104p:plain

  • 説明とタグは任意で記入し、スナップショットの作成をクリック

f:id:In-houseSE:20210420082250p:plain

  • スタータスがpendingは準備中なので、completedに変更となったら利用可能となるため状態が確認

f:id:In-houseSE:20210420082425p:plain

f:id:In-houseSE:20210420082625p:plain

  • 作成したスナップショットを選択し、アクション-ボリュームの作成をクリック

f:id:In-houseSE:20210420082755p:plain

  • タグは判別しやすい任意の値を記入し、ボリュームの作成をクリック

f:id:In-houseSE:20210420082900p:plain

  • 元のボリュームを一度デタッチ(外す)後に復元したボリュームをアタッチ(付与)を行う。
    ※復元時元のボリュームラベルは同様なものを定義する必要があるため、デタッチ前のボリュームラベルをコピーする
    該当する箇所はアタッチ済みの情報の「/dev/xvda 」がコピーする値になります。

f:id:In-houseSE:20210420083131p:plain

  • 元のボリュームを選択し、アクション-ボリュームのデタッチをクリック

f:id:In-houseSE:20210420083330p:plain

  • 確認されたら、デタッチをクリック

f:id:In-houseSE:20210420083356p:plain

  • 復元したボリュームをインスタンスへアタッチするため、復元ボリュームを選択し、アクション-ボリュームのアタッチをクリック

f:id:In-houseSE:20210420083524p:plain

  • 復元するインスタンスを指定し、先程コピーしたデバイスを張り付けた後、アタッチをクリック(別のデバイスを指定すると起動しないため)

f:id:In-houseSE:20210420083616p:plain

f:id:In-houseSE:20210420083803p:plain

  • 起動確認後、パブリックIPをコピーしWEBアクセスが可能であるか確認する(自動起動の設定を失念してました。)

f:id:In-houseSE:20210420084309p:plain

  • 作成したスナップショットおよびボリュームを削除しておきます。

今回のテーマは以上です。