各サービスを組み合わせてクラウド活用

Amazon EC2/S3の使い方解説、決定版をAWSが公開

2010/01/15

 米アマゾン傘下のAmazon Web Servicesは1月14日、クラウドコンピューティング上でシステム構築を行う場合のベスト・プラクティスをまとめた「Architecting for the Cloud: Best Practices」を公表した。

 これまでにも同社は、AWSのサービスを組み合わせてスケーラビリティや可用性を実現する事例を紹介したり、具体的なサービスの組み合わせ方などを解説する文書を公開してきた。今回新たに公開されたホワイト・ペーパーは、こうした解説の集大成と言えるもので、自社だけでなくマイクロソフトやIBM、グーグルが公開しているホワイト・ペーパーも参照している。

 20ページの英文PDFはクラウド一般のメリットや特徴から説き起こし、AWSの各サービスの簡単な解説を続けた後に、クラウドの各種の特性を最大限に引き出すシステムについて、一般論としての概説と具体的なアプローチを箇条書きにするというスタイルで説明している。

aws01.png Amazon Web Servicesのサービス全体像
aws02.png スケーラブルなシステム構成のポイントを解説する図の一例

 例えば、フェイルオーバー、高可用性、スケーラブルなアプリケーションの実現方法としては、

  • Elastic IPを使って動的にIPアドレスとサーバインスタンスを結びつける。これによりトラフィックを任意のサーバに振り向けることができ、アプリケーションのバージョンアップやハードウェア障害時に対処できる。
  • 異なるAvailability Zoneを使うことで、異なるデータセンターを使うかのように可用性を上げられる。
  • AMI(Amazon Machine Image)を維持しておくことで、任意のタイミングでAvailability Zoneに複製サーバを起動できる。
  • Amazon CloudWatch、もしくはオープンソースの監視ツールを使うことで、リアルタイムに死活監視、パフォーマンス監視を行える。
  • 自動スケーリングのためのサーバ群を準備しておき、不調なAmazon EC2サーバがあれば、新しいサーバで置き換えられるようにしておく。
  • cronによりAmazon EBSやAmazon S3に増分スナップショットを取る。
  • Amazon SQSのキューを使ってコンポーネントを分離。これにより処理を非同期できるほか、バッファリングも可能。高負荷時の自動スケーリングを容易に行えるようになる。
  • アプリケーションをなるべくステートレスに設計する。セッション情報はSimpleDBなどに保存する。
  • ブート時に各サーバのロールに応じた設定を読み込んでAmazon S3上にAMIを生成するビルドプロセスを自動化する。そのためのオープンソースのツールを利用する。
  • 汎用性の高いAMIはスナップショットを作っておき、実際のブート時には高速なAmazon EBSを複数のAmazon EC2インスタンスからマウントして利用する。

 このほかホワイト・ペーパーでは、並列・分散処理の方法や、ファイアウォールの設定なども具体的に説明している。

(@IT 西村賢)

情報をお寄せください:

Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ

- PR -

注目のテーマ

ソリューションFLASH

「ITmedia マーケティング」新着記事

広告業界の平均年収上昇率ランキングトップ10
国内540万社の企業情報を網羅した日本最大級のデータベース「SalesNow DB」が、上場企業...

ドミノ・ピザに学ぶ「必ず記憶に残る」ブランディング(無料eBook)
“たまたまピザを売っているEコマース企業”を名乗るドミノ・ピザの斜め上を行く発想はど...

Appleの新iPad Pro広告動画は「1984」で解放されたクリエイティビティーをディストピアに戻す暴挙
ピアノや彫刻などの芸術品を大型プレスで破壊する映像は、Apple史上稀有な失敗となった。