インスタンスの選択方法(最適なサイジング)と起動方法

これから「AmimotoAMI Masterへの道」と題し数回に分けてAmimotoAMIを中心にWordPressの運用や効率的な管理をご紹介したいと思います。
第1回目は、数あるインスタンスの中でどれを選べばいいのか、そしてAWS Market Placeを利用したインスタンスの起動方法をご紹介します。

EC2のリージョンの選択

AWSは世界中の複数地域にリージョンと呼ばれるデータセンター群があります。

  • US East (Virginia)
  • US West (Oregon)
  • US West (Northern California)
  • EU West (Ireland)
  • Asia Pacific (Singapore)
  • Asia Pacific (Sydney)
  • Asia Pacific (Tokyo)
  • South America (Sao Paulo)

EC2でインスタンスを作成する時、どのリージョン(地域)にインスタンスをおくのかをあらかじめ選択する必要があります。
もちろん、メインターゲットになるユーザーの居住地域に近いデータセンターの方が転送速度が早いです。

Check!

日本に住んでいるユーザー向けなら Asia Pacific (Tokyo)

EC2 のインスタンスタイプ

EC2のインスタンスは複数ありますが、その性能によって大きく分類され「ファミリー」と呼ばれています。

小規模な CPU リソース:T2
EC2 の機能を知るための無料試用。開発環境、サーバーの構築、サンプルコードレポジトリ、低トラフィックウェブアプリケーション、初期製品実験、小規模データベース。
一般的な目的(汎用):M3
小規模および中規模のデータベース、増設メモリを必要とするデータ処理タスク、キャッシュサーバー群、および SAP、Microsoft SharePoint、その他の企業アプリケーション。
コンピューティング最適化:C3、C4
高パフォーマンスのフロントエンド群、ウェブサーバー、バッチ処理、分散分析、高パフォーマンスな科学/工学への応用、広告サービス、MMO ゲーム、ビデオエンコーディング、分散分析。
メモリを最適化:R3
高パフォーマンスが必要なデータベース、分散型メモリキャッシュ、メモリ内分析、ゲノムのアセンブリと分析、SAP や Microsoft SharePoint などの企業アプリケーションの大規模なデプロイの場合は、メモリ最適化インスタンスがお勧め。
GPU:G2
ゲームのストリーミング、ビデオエンコーディング、3D アプリケーションストリーミング、その他のサーバー側のグラフィックの作業負荷。
ストレージ最適化:I2、HS1
I2 の一般的なユースケース: NoSQL データベース(Cassandra、MongoDB など)で、トランザクションデータベース、データウェアハウス、Hadoop、およびクラスターファイルシステムをスケールアウトします。
HI1 の一般的なユースケース: データウェアハウス、Hadoop/MapReduce、並列ファイルシステム

さらにインスタンスファミリーによってvCPU、ECU、メモリの比率が決まっており、「micro」「small」「medium」「large」という名称がつけられています。

ファミリーとvCPU、メモリなどの組み合わせは以下になります。

インスタンス
ファミリー
インスタンス
タイプ
vCPU メモリ(GiB) ストレージ
(GB)
ネットワーク
T2 t2.micro 1 1 EBS のみ 低から中
t2.small 1 2 EBS のみ 低から中
t2.medium 2 4 EBS のみ 低から中
M3 m3.medium 1 3.75 1 x 4 SSD
m3.large 2 7.5 1 x 32 SSD
m3.xlarge 4 15 2 x 40 SSD
m3.2xlarge 8 30 2 x 80 SSD
C3 c3.large 2 3.75 2 x 16 SSD
c3.xlarge 4 7.5 2 x 40 SSD
c3.2xlarge 8 15 2 x 80 SSD
c3.4xlarge 16 30 2 x 160 SSD
c3.8xlarge 32 60 2 x 320 SSD 10 ギガビット
C4 c4.large 2 3.75 EBS のみ
c4.xlarge 4 7.5 EBS のみ
c4.2xlarge 8 15 EBS のみ
c4.4xlarge 16 30 EBS のみ
c4.8xlarge 36 60 EBS のみ 10 ギガビット
R3 r3.large 2 15.25 1 x 32 SSD
r3.xlarge 4 30.5 1 x 80 SSD
r3.2xlarge 8 61 1 x 160 SSD
r3.4xlarge 16 122 1 x 320  SSD
r3.8xlarge 32 244 2 x 320 SSD 10 ギガビット
G2 g2.2xlarge 8 15 1 x 60 SSD
I2 i2.xlarge 4 30.5 1 x 800 SSD
i2.2xlarge 8 61 2 x 800 SSD
i2.4xlarge 16 122 4 x 800 SSD
i2.8xlarge 32 244 8 x 800 SSD 10 ギガビット
HS1 hs1.8xlarge 16 117 24 x 2,048 10 ギガビット

参照
http://aws.amazon.com/jp/ec2/instance-types/

どのインスタンスを選べばいいの?

個人ブログやお試しであればまずは t2.micro で始めてみましょう。
一般的なのコーポレートサイト(目安として月間PVが10万PV〜30万PV程度)なら t2.small 、ちょっとしたブログメディア(目安として月間PVが50万PV〜100万PV程度)なら t2.medium あたりで始めて様子をみてみましょう。

AWSなら途中でもインスタンスのスケールアップ&スケールダウンが1時間単位できます。
自分のサイトに最適なインスタンスがわからない時は小さいインスタンスから始めてCPUの利用状況をクラウドウォッチ等で確認しながら徐々に最適化する事が可能です。
また、急激なトラフィックや画像の再生成など負荷のかかるときだけインスタンスを大きくし、終わったら戻すという事も可能です。
しかもAWSのインスタンス使用料は月額ではないので、使った時間の分だけで料金が計算されます。

Check!

AWSで新規にアカウントを作った場合、最初の1年間は t2.micro + Amimotoの場合、月750時間までなら無料です(ただしAWS EC2インスタンスの使用料でありこれ以外のSoftware利用料などは別途必要です)。
インスタンスを稼働したままでも 720時間(月30日で計算)となるので、残り時間以内なら複数のインスタンスを稼働させることが出来ます。

起動方法

リージョンが決まったら「AMI セルフホスティングプラン」のページから決めたリージョンの「Launch AMI」をクリックします。

amiblog1

これでリージョンが選択された状態でAWSマーケットプレイスに移動できます(要ログイン)。

「1-Click Launch」タブでは細かい設定が可能です。
詳しくは「使い方」をご覧のうえ設定を進めていき、インスタンスが起動したらブラウザで表示してみましょう。

Check!

AWSマーケットプレイスでは右側のタブ内に月どれぐらいの料金がかかるか概算が出ます(なお、EBS料金及びデータ転送料は別途必要です)。

アジアパシフィック(東京)リージョンでt1.microインスタンスの場合アジアパシフィック(東京)リージョンでt1.microインスタンスの場合

US East(バージニア)リージョンでm1.smallインスタンスの場合US East(バージニア)リージョンでm1.smallインスタンスの場合