うさがにっき

読書感想文とプログラムのこと書いてきます

サーバのバックアップ(SnapShot)

概要

AWSwebサービスを運用していく上での、運用テクニックの仕方をまとめる
大きく分けて以下の4パターン

  • Snapshotパターン

EC2インスタンスの内容を特定のタイミングで保存し、バックアップする

  • Stampパターン

SnapShotで取得したインスタンスを使い、EC2インスタンスの複製を作る
同じ構成のEC2インスタンスを同時に複数台生成できるため、負荷分散できる

  • Scale Upパターン

既存のEC2スペックを変更する

  • Ondemand Diskパターン

既存のEC2インスタンスに対して、ディスクを増設したり、増量したりする

今回はSnapshot, Stampパターンについて説明

詳細

ある瞬間のEC2インスタンスのバックアップをとるのがSnapShotパターン
データだけのバックアップだけでなく、「EC2インスタンスのマシンイメージ」を丸ごとバックアップできる
※SnapShotはAmazon S3に保存される、Amazon S3は従量課金制のため注意!!
料金 - Amazon S3 (クラウドストレージサービス Amazon Simple Storage Service) | アマゾン ウェブ サービス(AWS 日本語)

作成されたSnapShotは特殊な形式のデータであり、SnapShotを直接ダウンロードして利用するなどはできない
作成したSnapShotは以下の方法で取り出して利用する

  • EBSを作る

SnapShotから新たなEBSを作成する方法
データ領域のバックアップを復元するときはこちらの方法

SnapShotを作ったEBSがブート領域を含んでいるならAMIを作ることができる
SnapShotから作成したAMIを選んでEC2インスタンスを作成すると、基になるEBSと全く同じディスク状態を持つEC2インスタンスを作れる
これはEC2インスタンスの複製ができるということで、負荷分散、Stampパターンに使う

SnapShotの作成(AMIを含まない)

EC2>Volumesから対象のインスタンスを選択し、右クリック、Create Snapshotを選択
f:id:tiro105:20150315201400p:plain
名前と説明を記入する、ここでは英語しか入力できないので注意
f:id:tiro105:20150315201444p:plain
これでSnapShotが作成されたので、見てみる
f:id:tiro105:20150315201539p:plain

SnapShotからEBSを作ってみる

SnapShotは直接アクセスできない
EBS volumeに変換してEC2インスタンスからアクセス可能な状態にする

スナップショット名を右クリックして、Create Volumeを選択
f:id:tiro105:20150315201804p:plain
容量とAZを選ぶ
容量を増やしたければここで増やせる、AZは元と同じところにする
つまり、特に何も変更しない
f:id:tiro105:20150315201922p:plain
これでSnapshotからEBSボリュームが作られる
f:id:tiro105:20150315202012p:plain

SnapshotからAMIを作成する

以下の手順で作成

インスタンスからsnapshotを作るのはやっているのでAMIを作るところから
EC2>Snapshotsの名前を右クリックして「Create Image」をクリック
f:id:tiro105:20150315204716p:plain
いろいろ聞かれるけど、Name,Description, Architectureだけ選べばOK
Name,descriptionは適切に英語で、ArchitectureはOSによって、今回は64bitだったのでx86_64を選択
f:id:tiro105:20150315204841p:plain
作成完了
f:id:tiro105:20150315204901p:plain
AMIsに表示されてる
f:id:tiro105:20150315204953p:plain
次回以降のStamp編でこれは使う