« 【AWS発表】Amazon Redshiftの無料トライアルとアジアパシフィックでの値下げ | メイン | 【AWS発表】ElastiCacheアップデート - M3およびR3インスタンスタイプのサポートを追加 »

【AWS発表】バースト可能な性能を持つ新しい低コストEC2インスタンス

私の車のスピードメーターを見ると最大時速240kmまでスピードを出すことができますが、滅多にそんなスピードで運転することはありません。しかし、時と場合によっては、そんなオプションがあることが良いこともあります。それでもほとんどの場合、利用可能なパワーのほんの一部を使っているにすぎません。

多くの興味深いコンピュートワークロードはこれと似たようなパターンに従います。すなわち、普段はコンピュータパワーをそれほど必要としないが、時折、多めのコンピュータリソースが必要となるといった具合です。例えば、リモートデスクトップ、開発環境(ビルドサーバーを含む)、トラフィックの少ないウェブサイト、小さなデータベースのようなものがこれに含まれます。 これらのケースの多くでは、全てのCPUコアを消費しうる、ペダルを床まで踏み込むようなフルスロットルの処理のバーストによって、長期間のCPU使用率の低いワークロードが中断されています。また、これらのワークロードは多くの場合、コストを重視する傾向もあります。 数百台、数千台のリモートデスクトップをデプロイしたり環境を構築するような企業の場合、各デプロイのコストを節約することで、全体のコストが劇的に変わってきます。トラフィックの少ないウェブサイトや実験では、経費節減できる能力は、全体的な経済モデルと潜在的な収益性に大きな影響を持つことができます。

新しいT2インスタンス
本日、Amazon EC2用の新しいT2インスタンスをローンチいたしました。 T2インスタンスは、CPUパワーのバーストから利益を得ることがができるアプリケーションのコストを劇的に削減します。 このインスタンスは3つのサイズ(microsmallmedium)が利用可能で、オンデマンド料金で、1時間$0.013(月あたり$9.50)からご利用いただけます。 2つのt2.microインスタンス(一方がLinuxでもう一方がWindows)をAWS無料利用枠を介して無料でアクセスすることができます。

T2のインスタンスは、より多くのコンピューティングパワーを必要とするとき、自動的かつ透過的に、完全なコアまでスケールアップする機能が結合された処理能力の寛大で、保証基準額を提供する、処理配分モデルを中心に構築されています。 少し控えめなサイズおよびコストのインスタンスを配備しつつ、計算能力のピーク需要を処理するための適切なコンピュートパワーを持つことができます。

お客様のワークロードが上記のいずれかのカテゴリに合致する場合、T2インスタンスは非常に魅力的な価格で必要十分なパフォーマンスを提供します。 CPUおよびメモリの要件に基づいて適切なサイズを選択すれば、あとはT2が非常に良く面倒を見てくれます。 ほとんどの場合、実際にはバーストベースのモデルの詳細を無視して、単にビジネスに取りかかることができます。 多くのアプリケーションはベースラインレベルのパワーさえも滅多に必要としませんので、アプリケーションがバーストを必要とする時のためにCPUクレジットを蓄積します。 もちろん、詳細な情報についても利用可能にしていますので、それらの情報をもとにして、ニーズに最適なインスタンスの種類やサイズを決定することもできます。

ボトムライン: T2インスタンスの登場により、より安価な方法でスモールスタートし、コンピュートパワーに対する刻々と変化する需要に対応し、全てのAWSサービスを最大限に活用することができます。

スペックは次のとおりです。(料金は米国東部(北バージニア)のオンデマンドインスタンスです。):

名前 vCPUs ベースライン性能 RAM (GiB) 1時間あたりのCPUクレジット 1時間あたりの料金 Price / Month
t2.micro 1 10% 1.0 6 $0.013 $9.50
t2.small 1 20% 2.0 12 $0.026 $19.00
t2.medium 2 40% 4.0 24 $0.052 $38.00

「ベースライン性能」 という欄は、インスタンスに割り当てられた基盤となる物理CPUのシングルコアの性能の割合を示しています。 例えば、t2.smallインスタンスは、2.5 GHz(ターボモードで最大3.3GHz)のIntel Xeonプロセッサのシングルコアの20%へアクセスすることができます。t2.mediumはシングルコアの性能の40%にアクセスできます。需要によって1つあたは両方のコアを使うことができます。

「1時間あたりのCPUクレジット」の欄は、T2インスタンスが1時間毎に受け取るCPUクレジットの割合を示しています。 CPUクレジットは、インスタンスがCPUのベースラインの割当を使用していない場合、蓄積し、インスタンスがアクティブなときに消費されます。 未使用のCPUクレジットは最大24時間保存されます。

CPUクレジット
上記の表に示すように、各T2インスタンスは、インスタンスのサイズによって決定される速度でCPUクレジットを受け取ります。 1CPUクレジットは1分間の完全なCPUコアのパフォーマンスを提供します。

例えば、t2.microインスタンスは、1時間毎に6CPUクレジットを継続的に受け取ります。 この機能は、CPUコアの10%に相当するベースライン性能を提供します。 受け取ったクレジットを必要としない場合には、最大24時間、CPUクレジット残高に格納します。 インスタンスがベースラインCPUを10時間使わなかった場合、t2.microインスタンスは、ほぼ1時間完全なコア性能を実行できる十分なクレジットを蓄積できます。(10時間 x 6CPUクレジット / 時間 = 60 CPUクレジット)

ある地域の各時間帯で、営業日の最初と最後にCPUパワーのバーストを必要とするビジネスプロセスがあるとしましょう。 このプロセスをT2インスタンスに置くことにより、非ピーク時に蓄積されたCPUクレジットを使用して、迅速かつコスト効率よく、ピーク時の計算負荷を処理することができます。

別の例として、外部のニュース記事や悪天候などの影響で時折、予測不可能なバーストが起こるような動的Webサイトを考えてみましょう。 繰り返しになりますが、T2インスタンスでこのサイトをホストすることが、これらのバーストを処理出来る能力を持つ、コスト効率の高いソリューションとなります。

インスタンスがCPUクレジット使い切ると、性能は徐々にベースラインレベルに戻ります。この減速プロセスは、ユーザーにスムーズで気持ちのいい体験を提供するために、15分にわたって行われます。

クレジットは使用されない場合、ベースラインの蓄積の1日分に相当するレベルに達するまで蓄積されていきます。:

  • t2.micro - 144 - (6 CPU分 / 時間 * 24 時間)
  • t2.small - 288 (12 CPU分 / 時間 * 24 時間)
  • t2.medium - 576 (24 CPU分 / 時間 * 24 時間)

インスタンスがこのレベルに達すると、それ以上のクレジットを蓄積しません。 一般的に、T2インスタンスに最適なワークロードは、通常、正の貸方残高を維持します。 一貫してクレジットが満タンにたまっているのを見つけたら、より小さいインスタンスサイズにスイッチしコストを削減することを検討するのが良いでしょう。

バーストで、もしくは必要に応じて一度に、蓄積されたクレジットを消費することができます。しかしながら、インスタンスをstop/startしたり、予期せずterminateされたりするとクレジットは失われてしまいます。 インスタンス単位でレポートされる2つの新しいCloudWatchのメトリックを見ることで、クレジットの蓄積および支払いを追跡することができます。:

  • CPUCreditUsage - 経時的なクレジットの支払いを追跡します。
  • CPUCreditBalance - 経時的なクレジットの蓄積を追跡します。

各々の新しくローンチされたインスタンスは、フルコアスピードで起動できるよう、初期CPUクレジットが割り当てられます。 この初期クレジットは新しいSSDベースのElastic Block Storageにより提供されるIOPSの「ブートバースト」と組み合わせることで、より高速にT2インスタンスが起動するようになります。

T2 in Action
私は開発シナリオでのテストにt2.smallを使うことにしました。その意図は、どのようにCPUクレジットが蓄積、消費されるのかをお見せするためです。この結果を公式なベンチマークと考えないでください。

私は、インスタンスを起動し、100 GBのGeneral Purpose (SSD) EBSボリュームを作成、フォーマット、アタッチ、マウントし、ncurses-develgccパッケージをインストールし、Kernel.orgからLinuxのカーネルソースをダウンロードしました。 そして、menuconfig実行し、全てデフォルトを受け入れ、.configファイルを保存しました。その後、カーネルのビルトを行いました。:

ご覧のように、カーネル全体は23分でビルドされました。-- 階段を駆け下り、ランチをNosh the Truck に買いにいってくるには十分な時間です。フィッシュアンドチップスを買って帰るとビルトは完了していました。AWSマネージメントコンソールを開いて、ビルドがCPUクレジットにどのような影響を与えたかを確認するためにCloudWatchメトリックをみてみました。私が見たものは次のとおりです。:

オレンジのラインはビルトの過程を通して、CPUクレジットの利用料(1分単位)を示しています。 青のラインはインスタンスのCPUクレジット残高(1分単位)を示しています。 ご覧のとおり、残高はビルドを開始する前は上昇傾向でした(インスタンスはアイドル状態だったということです)。ビルドの最中はクレジットを消費していますが、完全にビルドが終わった直後も十分クレジットが残っており、15を下回ることはありませんでした。 ビルドが完了した後は、クレジットは再び蓄積され始め、1時間以内に16分から25分に上昇しました。

ビルド中のCPU負荷のCloudWatchメトリックがこちらです:

そして、こちらが、長期的なビューです。CPUクレジットを消費するよう、私はさらに複数回カーネルのビルドを行いました。(並行して3つ、各々ソースツリーの別々のコピーでmake -j 2を実行しました。ご覧のように、これをこなすには十分な性能だったようです:

最後に
個人的な実験の結果、私はT2は非常に幅広いユースケースに適していると確信することができました。 皆様のフィードバックもお待ちしております!

比較するのが必ずしも正確ではありませんが、次のように、前の世代のEC2インスタンスをT2インスタンスに置き換えるのが妥当です。:

  • t1.microt2.micro
  • m1.smallt2.small
  • m1.mediumt2.medium

前の世代のインスタンスを同等のT2インスタンスに交換することで、今までの半分のコストで、劇的によい性能を手に入れることが出来ます。 この置き換えを計画する場合(私もそのつもりです)、T2インスタンスはローカル(インスタンス)ストレージを持たないので、1つ以上のEBSボリュームをかわりに使用する必要があることに注意してください。

T2インスタンスは、基本となるCPUから可能な限り最高の性能を得るために、Hardware Virtualization (HVM)を使用していますので、HVM AMIを使う必要があります。

可用性と料金
T2インスタンスは本日より、次のAWSリージョンでご利用可能となっておりますので、今すぐ起動してみることができます:

  • 米国東部(バージニア北部)
  • 米国西部(オレゴン州)
  • EU(アイルランド)
  • アジアパシフィック(シンガポール)
  • アジアパシフィック(東京)
  • アジアパシフィック(シドニー)
  • 南米(サンパウロ)

T2インスタンスは米国西部(北カリフォルニア)、中国(北京)、AWS GovCoud (米国)でも近い将来ローンチ予定です。

上記の用に、価格は米国東部(北バージニア)リージョンでオンデマンドt2.microインスタンスが1時間あたり$0.013からご利用いただけます。 最後にもう一度、本当に魅力的な価格で、小さくはじめて、必要に応じてスケールし、全てのAWSサービスを使用することができます! さらに詳しい情報については、EC2の料金ページをご覧ください。

-- Jeff;


この記事はAWSシニアエバンジェリスト Jeff BarrのAmazon Web Services Blogの記事、 New Low Cost EC2 Instances with Burstable Performanceを 堀内康弘 (Facebook, Twitter)が翻訳したものです。

コメント

トラックバック

この記事のトラックバックURL:
http://www.typepad.com/services/trackback/6a00d8341c534853ef01a511d8ab53970c

【AWS発表】バースト可能な性能を持つ新しい低コストEC2インスタンスを参照しているブログ:

Featured Event

2016年3 月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31