【EC2】T系ファミリーの概要と、T2,T3の仕様の違いについてのまとめ

AWS運用自動化サービス「Cloud Automator」

こんにちは、技術4課の城です。
先日JAWSDAYS2019に当日スタッフとして参加してきました。
セッションスタッフでしたのでセッションを聞くこともでき、とてもいい経験をさせていただきました。

その中で、JAWS初心者支部 武田さんのセッションでT2のCPUCreditについてお話をされてまして、自分も整理しないとなと思い、このブログでアウトプットします。

T系ファミリーとは

ドキュメントではバーストパフォーマンスインスタンスと表現されています。
ここでのバーストとはベースラインパフォーマンスからのバーストを意味しています。
例えばt3.microの1vCPU当たりのベースラインパフォーマンスは10%ですが、CPUCreditを利用することでそれ以上のCPU性能を利用することが出来ます。
概要イメージは下記となります。

参考ページ:バースト可能パフォーマンスインスタンスの CPU クレジットおよびベースラインパフォーマンス
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html

CPUCredit

CPUCreditとはT系のインスタンスにおいてCPUを利用する権利のようなものです。
1CPUCreditで1つのvCPUを使用率100%で1分間実行することが出来ます。
1つのvCPUを50%で2分間、2つのvCpu25%で2分間など、どちらも等しく1CPUCreditを消費します。
イメージ図では「水」がCPUCreditを表しています。

時間(ミリ秒レベルの細かさ)でCPUCreditを獲得し、CPUリソースを使用するとCPUCreditが消費されます。

ベースラインパフォーマンス

ベースラインパフォーマンスとはイメージ図のところのバケツ内の水の量が変わらないCPU使用率を表します。
具体的には下記が成立する状態です。

実際のCPU使用率がベースラインパフォーマンスを下回っていれば、獲得CPUCreditの方が多くなるため、CPUCreditを蓄積することが出来ます。

蓄積可能な最大CPUCredit

蓄積可能な最大CPUCreditとはイメージ図のところのバケツの容量です。
24時間分のCPUクレジット獲得量となっています。
これを超えた分については蓄積されずに破棄されます。

T2,T3の仕様の違い

旧世代のT2と最新世代のT3ですが、仕様として違いがありますのでまとめてみます。

スペックの違い

まず、スペックの違いについて比較表を作ってみました。

※コストはWindowsで記載しています。
※セルの背景色については単純にその項目のみで比較して、「対T2で優位=青」、「対T2で劣位=赤」としています。

大きく違うところと言えば、nano,micro,smallについてはvCPU数が増えていて、その分CPUCredit関連も増えています。
コストは微増と言ったところでしょうか。
medium,largeについては同スペックですが、コストが削減されています。
xlarge,2xlargeについてはCPUCredit関連が増強されており、コストも微増です。

起動クレジット

T2ファミリーには起動クレジットという概念があります。
これはインスタンスのローンチ時、及び、スタート時にvCPU あたり 30の起動クレジットを獲得できます。
T3インスタンスには起動クレジットは存在せず、初回ローンチ時はCPUCreditは0となります。
ただし、T3インスタンスのデフォルト設定はunlimitedオプションがオンになっているため、オフにしなければ、初回ローンチ時からCPUリソースをゴリゴリ利用することができます。
また、T2インスタンスであってもunlimitedオプションをオンにすると起動クレジットを獲得できなくなりますので、ご注意ください。

起動クレジット
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/burstable-performance-instances-standard-mode.html#launch-credits

バーストパフォーマンスインスタンスの無制限モード
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode.html

CPUCreditの失効

実行中のインスタンスのCPUCreditは失効しませんが、T2,T3それぞれ下記の条件でCPUクレジットが失効します。

T2:インスタンスを停止した場合
T3:インスタンス停止後、7日間経過

T2は停止した時点でCPUCreditが失われてまうので注意が必要です。

まとめ

今回はT系インスタンスの概要とT2,T3の世代間での仕様の違いをまとめてみました。
T系ファミリーはその他のファミリーと比べ、コストが低く、人気が高いかと思われますが、本番利用する場合はCPUCreditの仕様等に注意し、安全に利用しましょう。

どなたかの助けになれば幸いです。

AWS運用自動化サービス「Cloud Automator」