バーストパフォーマンスインスタンスの CPU クレジットとベースライン使用率 - Amazon Elastic Compute Cloud

バーストパフォーマンスインスタンスの CPU クレジットとベースライン使用率

従来の Amazon EC2 インスタンスタイプの場合は CPU 使用率が一定ですが、バーストパフォーマンスインスタンスの場合はベースラインレベルの CPU 使用率を提供するとともに、そのベースラインレベルを超えて CPU 使用率をバーストできます。ベースライン使用率とバースト機能は、CPU クレジットで管理します。

CPU クレジットは、1 分間の CPU コア全体の使用率を 100% にします。その他の vCPU、使用率、時間数の組み合わせを CPU クレジットと同じにすることができます。たとえば、1 個の CPU クレジットは 1 台の vCPU を使用率 50% で 2 分間実行するか、または 2 台の vCPU を使用率 25% で 2 分間実行するのと等しくなります。

CPU クレジットの獲得

各バーストパフォーマンスインスタンスは、インスタンスサイズに応じて、1 時間当たりの CPU クレジットを絶えず一定の割合で (ミリ秒レベルの細かさで) 獲得します。クレジットを蓄積または消費する会計処理もミリ秒レベルの細かさで実施されるため、CPU クレジットの浪費について心配する必要はありません。CPU の短期バーストでは CPU クレジットのごく一部しか使用されません。

バーストパフォーマンスインスタンスが使用する CPU リソースが、ベースライン使用率に必要な CPU リソースよりも少ない場合 (アイドル時など)、未使用の CPU クレジットが CPU クレジット残高に蓄積されます。バーストパフォーマンスインスタンスがベースライン使用率を超えてバーストする必要がある場合は、蓄積されたクレジットを消費します。CPU 使用率を増やす必要がある場合、バーストパフォーマンスインスタンスが蓄積したクレジットが多いほど、ベースラインを超えてバーストできる時間が増えます。

次の表は、バーストパフォーマンスインスタンスのタイプ、1 時間あたりに CPU クレジットを獲得するレート、インスタンスが蓄積できる獲得 CPU クレジットの最大数、インスタンスあたりの vCPU 数、およびコア全体に対する割合で表したベースライン使用率 (単一の vCPU を使用した場合) の一覧です。

インスタンスタイプ

1 時間あたりに受け取る CPU クレジット

蓄積可能な最大獲得クレジット*

vCPU

vCPU あたりのベースライン使用率

T2

t2.nano

3

72

1

5%

t2.micro

6

144

1

10%

t2.small

12

288

1

20%

t2.medium

24

576

2

20%**

t2.large

36

864

2

30%**

t2.xlarge

54

1296

4

22.5%**

t2.2xlarge

81.6

1958.4

8

17%**

T3

t3.nano

6

144

2

5%**

t3.micro

12

288

2

10%**

t3.small

24

576

2

20%**

t3.medium

24

576

2

20%**

t3.large

36

864

2

30%**

t3.xlarge

96

2304

4

40%**

t3.2xlarge

192

4608

8

40%**

T3a

t3a.nano

6

144

2

5%**

t3a.micro

12

288

2

10%**

t3a.small

24

576

2

20%**

t3a.medium

24

576

2

20%**

t3a.large

36

864

2

30%**

t3a.xlarge

96

2304

4

40%**

t3a.2xlarge

192

4608

8

40%**

* 蓄積できるクレジットの数は、24 時間で獲得できるクレジットの数と同じです。

** 表内のベースライン使用率は vCPU 別の割合です。CloudWatch では、CPU 使用率は vCPU 別に表示されます。例えば、ベースラインレベルで動作する t3.large インスタンスの CPU 使用率は、CloudWatch の CPU メトリクスに 30% として表示されます。ベースライン使用率の計算方法については、「ベースライン使用率」を参照してください。

CPU クレジットの獲得率

1 時間あたりに獲得する CPU クレジット数は、インスタンスのサイズによって決まります。たとえば、t3.nano は 1 時間あたり 6 クレジットを獲得しますが、t3.small は 1 時間あたり 24 クレジットを獲得します。前記の表は、すべてのインスタンスのクレジット獲得率を示しています。

CPU クレジット蓄積制限

実行中のインスタンスで獲得されたクレジットが失効することはありませんが、インスタンスが蓄積できる獲得クレジットの数には制限があります。制限は、CPU クレジット残高により決まります。下記の図に示されているとおり、制限に到達すると、獲得された新しいクレジットはすべて破棄されます。フルバケットは CPU クレジット残高制限を示し、スピルオーバーは制限を超えた新しく獲得されたクレジットを示します。

CPU クレジット残高制限は、各 インスタンスのサイズによって異なります。たとえば、t3.micro インスタンスは CPU クレジット残高で最大 288 の獲得 CPU クレジットを蓄積できます。前記の表は、各 インスタンスに累積できる獲得クレジットの最大数を示しています。

T2 スタンダードインスタンスは、起動クレジットも獲得します。起動クレジットは、CPU クレジット残高制限に対してカウントされません。T2 インスタンスがその起動クレジットを消費しておらず、獲得クレジットを蓄積しながら 24 時間以上アイドル状態が続いた場合、CPU クレジット残高は制限を上回って表示されます。詳細については、「起動クレジット」を参照してください。

T3 インスタンスは起動クレジットを獲得しません。これらのインスタンスはデフォルトで unlimited として起動するため、起動クレジットなしでも起動後すぐにバーストできます。

CPU 存続期間の蓄積

実行中のインスタンスの CPU クレジットは失効しません。

T2 では、CPU クレジット残高は、インスタンスが停止して起動すると引き継がれません。T2 インスタンスを停止した場合、蓄積されたすべてのクレジットが失われます。

T3 では、CPU クレジットバランスは、インスタンスが停止して起動すると、7 日間保持された後失われます。7 日以内にインスタンスを起動する場合、クレジットは失われません。

詳細については、「CloudWatch メトリクスの表」の CPUCreditBalance を参照してください。

ベースライン使用率

ベースライン使用率とは、CPU クレジットの獲得数と CPU クレジットの使用数が一致する場合に、正味クレジット残高 0 で CPU を使用できるレベルです。ベースライン使用率はベースラインとも呼ばれます。

ベースライン使用率は、vCPU の使用に対する割合として表され、次のように計算されます。

(number of credits earned/number of vCPUs)/60 minutes = % baseline utilization

例えば、2 つの vCPU を持つ t3.nano インスタンスが 1 時間あたり 6 クレジットを獲得すると、ベースライン使用率は 5% になります。これは、次のように計算されます。

(6 credits earned/2 vCPUs)/60 minutes = 5% baseline utilization

4 つの vCPU を持つ t3.xlarge インスタンスが 1 時間あたり 96 クレジットを獲得すると、ベースライン使用率は 40% になります ((96/4)/60)。