cloudpackエバンジェリストの吉田真吾(@yoshidashingo)です。
もう1年以上前になりますが、AWSから以下のような発表があり、以降AWSアカウントを作成した人は、EC2(仮想サーバー)をAmazon VPCという閉域ネットワーク内に作成することが必須になりました。そして以前からAWSアカウントを持っている人は、引き続きインターネットパブリックな環境にEC2を立てることができる(EC2 Classic環境という名称で)状態が続いていました。
T2インスタンスファミリーはEC2 Classicでは起動できない
しばらく上記の状況が続いていたのですが、この7月に発表された「最も安価な価格帯」で「強烈にコスト効率のよい」新しいEC2のインスタンスファミリー「T2」ファミリーは、EC2 Classic環境を持っていても、VPC内でないと起動ができない、初めてのインスタンスファミリーです。
T2+gp2は最強の組合わせ
gp2 EBSについて
T2インスタンスより少し前に、EC2にアタッチして利用するディスクであるEBS(Elastic Block Store)に、SSD版のもの(General Purpose SSD:通称gp2)もリリースされました。そして、このgp2からは「トークンバケットモデル」という、いざというときには性能を一定時間バースト(ターボエンジンとかブーストシステムみたいなもの)させI/O性能を強化できる仕様が盛り込まれました。
ちなみに、バーストクレジットを使い果たしても、ディスクの大きさにより徐々にバーストクレジットが回復する(FFで言うところのリジェネみたいなもの)ため、特定の時間帯だけバーストさせて、その他の時間はI/Oが少ないたいていのITシステムにおいては非常に合理的なモデルと言えます。
詳細はこちらなどを参照されたい↓
Amazon EBSのGeneral Purpose(SSD)のトークンバケットの仕様について - yoshidashingo
T2インスタンスファミリーのパワーアップについて
gp2でI/O性能にトークンバケットモデルが採用されたのと同様、T2インスタンスではCPU性能にトークンバケットモデルが採用されました。
たとえばt2.micro、1世代前のt1.microと比べて、ホスト機のCPUの世代が更新され(要はパワーアップしてる)ているうえメモリも多くなってるため、実際にWebを運用してきた人のワークロードを見ても、t1.microでカツカツだったのがt2.microでだいぶ余裕のある状況になっていることが分かります↓
なのにT2インスタンスファミリーはEC2 Classicで起動できない
そんなおトクなt2インスタンスファミリー、比較的カジュアルにEC2を使ううえで最も馴染みがよさそうなインスタンスなのですが、EC2 Classicでは起動できません。
ということでこれからはどんなにカジュアルに使いたくてもVPCを知ったうえでEC2を使う必要があるのです。
こわくないVPC
ネットワーク環境の違い
EC2 ClassicだけだったときとVPC by Defaultになってからの、EC2を一つだけ立てる際の、ネットワーク環境の違いを図示すると以下のようになります。
インターネットダイレクトかイントラネットワーク内かの違いで見るとこんな感じです。
イメージ的には「EC2 Classicはインターネットの大平原で野宿」しており、VPCは「家を建ててその中に住んでる」ような違い。
Default VPCを使えば別に不便じゃない
上記に示したVPC環境は、現在AWSアカウントを作成するとはじめにあらかじめ1つ作成されているVPCを示してます。VPCは閉域網を構築するサービスですが、このすでに作成されているVPC内にEC2を起動する分には、EC2 Classic環境と同様に、インターネット側からの通信が行えます。
ポイントはあらかじめ作られているInternet Gateway
VPCサブネットにはRoute Tableという、パケットの行き先のネットワークを定義した経路表がありますが、インターネット側との通信が可能なInternet Gatewayを作成しておき、内部通信以外をInternet Gatewayに経路指定しておけば、インターネットとの通信が可能です。
Default VPCにははじめからこのセットが用意されているので、特に内部ネットワークの細かい制御を考慮しない人は、このDefault VPCにEC2を立てて使うとよいです。
それでもコワいと感じる人は
イベントに行ってみる
- 人生を変えるような素敵な出会いもあるかもしれない。
http://aws.amazon.com/jp/event_schedule/
ということで、今回は簡単にt2やVPCの話をしてみました。AWSはとても便利なのだけど、初心者や、カジュアルに使いたい人にとってVPCで気圧されてしまうことは多いはず。だけど別に原理が分かってしまえば難しいもんじゃないんだなということを覚えておいていただきたいです。