書籍『Amazon Web Services クラウドデザインパターン 実装ガイド』写経・実践メモ - 2章 基本クラウドデザインパターン



主に以下の書籍について、"実践編"のタイトル通り実際に読み進め、環境構築を行なっていった過程でのメモ書き等を後学の為にもエントリとしてUPする事にする。
Amazon Web Services クラウドデザインパターン実装ガイド

Amazon Web Services クラウドデザインパターン実装ガイド

なお、以下の書籍も時折参照。

Amazon Web Services クラウドデザインパターン 設計ガイド

Amazon Web Services クラウドデザインパターン 設計ガイド

Amazon Web Servicesプログラミング ―APIの基礎からElastic Beanstalkの利用まで

Amazon Web Servicesプログラミング ―APIの基礎からElastic Beanstalkの利用まで


2章 基本クラウドデザインパターン

Snapshotパターン

ある瞬間の仮想イメージを保存。

  • AWSでは、【EBS】が『スナップショット』機能を有しているのでこれを使う。耐久性は『イレブン・ナイン』(99.999999999%)。
  • スナップショット機能を用いる事で、EBSに含まれるデータが丸ごと【S3】に複製される。
  • 2回目以降のスナップショットは差分のみを保存。
  • データだけでなくOS丸ごとのスナップショットも可能。AMIとして利用可能となり、ここからOS複製も可能。


関連:


実践

  • EC2インスタンスが利用しているボリュームを確認
  • そこからスナップショットを作成(EBS -> Snapshot)
  • スナップショットからは直接アクセス出来ないので、そこからEBSボリュームを作成(Snapshot -> EBS) create volume…
  • スナップショットからAMIを作ることも出来る(Snapshot -> AMI) create image...
Stampパターン

EC2インスタンスを雛型から作成。あたかも『スタンプ(Stamp)』を押すかのように仮想サーバを複製する。


実践:

  • snapshotからイメージを作成(create image)。
  • EC2インスタンスから操作し、AMIを作成。(create image(ebs ami)
  • AMIインスタンスの起動 -> ECインスタンスに表示される
  • 前以て作成した(&AMI起動時に流用した)証明書を使ってログイン確認


関連:

Scale Upパターン

CPUやメモリー等のスペックを変更する。動的なサーバーのスペックアップ/ダウン。

  • EC2では簡単な操作でサーバスペックを変更出来る。
  • 変更は停止中に限る。
  • 似たもので『Scale Outパターン』があるが、こちらはサーバ数の動的増減。

関連:

Ondemand Diskパターン

動的なディスク容量を変更。

  • 方法は2種類。
    • 新しいディスクを追加する方法
    • 既存ディスクを拡張する方法

実践:

$ sudo mkfs -t ext4 /dev/sdf
$ sudo mkdir /ebs
$ sudo mount /dev/sdf /ebs
$ ls /ebs
  • 既存ディスク拡張
    • EC2インスタンス停止(stop)
    • 1個目のEBS(root)のスナップショットを作成
    • 作成したスナップショットからボリュームを作成
    • 既存のrootボリュームをデタッチ
    • 新しいボリュームをアタッチ(/dev/sda1)
    • sshログイン、ファイルシステム拡張
$ df -h
Filesystem            Size  Used Avail Use% マウント位置
/dev/xvda1            7.9G  957M  6.9G  12% /
tmpfs                 298M     0  298M   0% /dev/shm
$ 

resize2fsコマンドで再構築後再確認。

$ sudo resize2fs /dev/sda1
$ df -h
Filesystem            Size  Used Avail Use% マウント位置
/dev/xvda1             20G  961M   19G   5% /
tmpfs                 298M     0  298M   0% /dev/shm
$