AWSでiOSアプリのバックエンドを構築する(1) 金額のめやす

先日から、弊社アプリのサーバサイドをレンタルサーバからAWSに移行しています。
レンタルサーバはお手軽で、かつある程度のスペックが確保されるため小規模アプリにはもってこいです。

実際、弊社アプリでも規模的にはエックスサーバー様のX10プランを複数台お借りすることで十分捌けています。しかし、エンジニア目線を重視する弊社としては、「イマドキAWSも使えないでエンジニアを語るなんて・・・!」という観点からもAWS利用を無視できません。

そこで意を決してAWSでサーバサイドの環境を構築しました。数回に分けて、自社ナレッジとして構築の流れを書き記したいと思います。

構成

構築する構成は、よくあるものです。

  • Webサーバ2台
  • DBサーバ1台
  • LB(ロードバランサー)1台

図で表すとこんな感じ。

この構成で実現すべき(インフラ観点での)機能は以下の通り。

  • アプリはLBにアクセスし、LBがWebサーバに振り分けを行う。
  • それぞれのWebサーバはDBサーバにアクセスし情報を取得して返す。
  • LBはヘルスチェックを行い、Webサーバの生死監視をする。一方のWebサーバが停止している場合は縮退で片方にのみアクセスし、ロストを防ぐ。

金額はいくらくらいかかるの?

AWSを利用したことがない場合、最初に気になるのは金額面かと思います。弊社でも金額が不確定な点と、その割に手間がかかりそうな点からレンタルサーバに甘えていました。

AWSは重量課金制のため、「こんなスペック・構成ならいくらです」ということにはなりません。同じスペック、台数、構成でも通信量やデータ量で費用が変わってきます。

ちなみに今回構築した構成で、月に70~80ドルくらいになりそうです。1ドル112円で換算下場合、1万円弱/月です。(2016.2現在)

レンタルサーバ(エックスサーバー様のX10プラン)1台で運用した場合、月額1,080円ですので、コスト面においてAWSに移行するのは合理的ではないということになってしまいます。

しかし、今後のユーザー数の増加に備え

  • 柔軟にリソースを追加できるシステムにしておくこと
  • Webサーバの2重化(多重化)による可用性の向上を図ること

ができるため、コスト面以外でのメリットを享受できます。差額1万円程度であれば大きな問題にはならないかと思います。

構築の流れ

AWSで環境を作るのは、思っていた以上に簡単で、時間のかからないものでした。以前VPSを使って色々調べながら頑張ったときは、もっと難しく、かつ時間がかかったように思います。

基本的にはWebのマネジメントコンソール + SSHログイン後CLIでのオペレーションです。大きな流れは以下の通りです。

  1. AWSアカウント作成
  2. VPC作成
  3. RDS作成
  4. EC2作成
  5. ELB作成

次回以降、これらの中身を深堀りしていきたいと思います。

  • このエントリーをはてなブックマークに追加

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です