技術4課の多田です.
EC2 で 新しいオンデマンドインスタンスの制限が設けられ, vCPU ベース制限 がアナウンスされました.これまでの考え方と異なるため,この記事では今回のアップデートについて利用者側でどんな対応が必要になるか,という観点で整理していきます.
今回のアップデート概要
これまでは EC2 オンデマンドインスタンスの起動できる制限がこれまではサーバーの台数によって決まっていましたが,今回のアップデートで vCPUでの制限に変わります.
なお,この変更に伴い現状のインスタンスは影響は受けないですし,同じ数のインスタンス数は作成できるようになっています.
Q: これにより実行中のインスタンスは影響を受けますか?
いいえ。vCPU ベース制限をオプトインしても実行中のインスタンスには影響ありません。
Q: 引き続き同じ数のインスタンスを作成できますか?
はい。vCPU ベースのインスタンス制限により、数量ベースのインスタンス制限として、少なくとも同じ数のインスタンスを作成できます。
vCPU の制限の種類は次の5つがあります.これらの制限の管理は EC2 または Service Quotas で行うことができます.CloudWatch メトリクスと組み合わせることが可能なため,アラートと組み合わせて設定・管理すると良いでしょう.vCPU 数の制限はデフォルトの制限数に各インスタンスサイズ毎の vCPU 制限が加えられて表示されます.
Q: vCPU ベースの制限とはどのようなものですか?
AWS アカウントでの 1 つ以上のオンデマンドインスタンスの実行は制限されています。Amazon EC2 は、 AWS アカウントで実行中のオンデマンドインスタンスに割り当てられた 総 vCPU (仮想中央演算処理装置) 数に基づき、各制限に対する使用量を測定します。次の表は、各インスタンスサイズの vCPU の数を示しています。インスタンスタイプにおける vCPU のマッピングは異なる可能性があります。詳細については、Amazon EC2 のインスタンスタイプを参照してください。
インスタンスサイズ毎の vCPU 制限数
インスタンスサイズ | vCPU |
nano | 1 |
micro | 1 |
medium | 1 |
large | 2 |
xlarge | 4 |
2xlarge | 8 |
3xlarge | 12 |
4xlarge | 16 |
8xlarge | 32 |
9xlarge | 36 |
10xlarge | 40 |
12xlarge | 48 |
16xlarge | 64 |
18xlarge | 72 |
24xlarge | 96 |
32xlarge | 128 |
Q: Amazon EC2 で実行できるオンデマンドインスタンスの数はどれくらいですか?
5 つの vCPU ベースのインスタンス制限があり、特定のインスタンスファミリーの使用できるキャパシティの量をそれぞれ定義します。ジェネレーション、サイズ、またはバリアント設定 (例: ディスク、プロセッサータイプ) に関係なく、特定のインスタンスファミリーの使用量はすべて、下記の表に記載されているファミリーの総 vCPU 上限に追加されます。新規の AWS アカウントでは、当初この上限よりも少ない数に制限されることがあります。
デフォルトの vCPU 制限数
制限対象 | デフォルトの vCPU 制限 |
オンデマンド標準 (A, C, D, H, I, M, R, T, Z) インスタンス | 1152 vCPU |
オンデマンド F インスタンス | 128 vCPU |
オンデマンド G インスタンス | 128 vCPU |
オンデマンド P インスタンス | 128 vCPU |
オンデマンド X インスタンス | 128 vCPU |
今回のアップデートに伴なう利用者側で発生する対応
今回のアップデートで利用者側はどのような対応が必要になるのでしょうか.よくある質問に下記の記載があり,2019年10月24日以降に vCPU 制限に移行して2019年11月8日以降に台数制限は利用できなくなると記載があるので今のうちに適用して確認しておきましょう,というステータスですね.
スケジュール | 説明 |
2019/9/24 | vCPU ベースのインスタンスの制限をオプトイン可能に |
2019/10/24 | インスタンス制限を vCPU に移行可能に |
2019/11/8 | 台数ベースのインス制限は利用できない,もしくはサポート外となる |
Q: 何が変更されますか?
Amazon EC2 はオンデマンドインスタンス制限を、現在の数量ベースの制限から、新たに vCPU ベースの制限に移行し、AWS のお客様の制限管理エクスペリエンスを簡素化します。vCPU ベースの制限に対する使用量は、アプリケーションのニーズを満たすインスタンスタイプの任意の組み合わせを起動するためのAmazon EC2 のインスタンスタイプにおける vCPU (仮想中央演算処理装置) の数によって測定されます。2019 年 9 月 24 日から、vCPU ベースのインスタンス制限をオプトインできます。Amazon EC2は、2019 年 10 月 24 日からインスタンス制限を vCPU に移行し、2019 年 11 月 8 日以降、現在の数量ベースのインスタンス制限は利用できなくなるか、またはサポートされなくなります。
起動するインスタンスの制限の確認には「vCPU 計算ツール」が役立ちます.
例えば,EC2 の m5.large(vCPU 2コア)
を追加で5台起動する場合を計算すると以下のように算出してくれます.算出結果,10 vCPU 分サービスの上限緩和が必要になります.サーバーの起動計画時に使っていくと良いでしょう.
vCPU 制限のオプトインの実践
私のアカウントはまだ vCPU 制限をオプトインしていなかったので適用してみます.EC2 の制限画面よりオプトイン可能です.
オプトインしてみたところ,vCPU 制限が有効化されるまで最大15分ほど要するようです.なお,有効化前なので台数ベースの起動制限が有効化になっていることを確認しておきます.
オプトイン後の画面は以下の通りです.オプトインされたことと起動制限が vCPU ベースに切り替わっています.
Service Quotas 画面でも同様に切り替わっています.
vCPU 制限のオプトアウトの実践
逆に,オプトアウトで台数制限に戻す場合もオプトイン同様に設定変更可能です.vCPU の検証中に切り戻したいときは下記の通り変更します.
まとめ
EC2 の起動制限が vCPU ベースに変わるためアップデートされる利用者側の観点で情報を整理しました.vCPU の計算ツールは今後の運用を考えると頻繁に使う機会があると思うので慣れておきましょう.時間は少ないですが試されてない方々は vCPU ベースの制限をオプトインして11月8日以降のアップデートを迎える準備をしていくことをお勧めします.不明点や懸念がある場合,下記のブログもしくは弊社にお問合せください.