💭

放置気味のAWSアカウントでEC2が構築できない?vCPUの利用上限が原因かも|備忘録

2023/08/25に公開

事件発生か?

AWS CDKv2 でEC2インスタンスを複数台プロビジョニングするためにcdk deploy を実行しました。すると、コンソール上にこのようなエラーが表示されました。

You have requested more vCPU capacity than your current vCPU limit of 5 allows for the instance bucket that the specified instance type belongs to. Please visit http://aws.amazon.com/contact-us/ec2-request to request an adjustment to this limit. (Service: AmazonEC2; Status Code: 400; Error Code: VcpuLimitExceeded;

あなたのAWSアカウントではこのリージョン内において、合計「5vCPU」までしか利用できません。

しばらく放置されたAWSアカウントでは、「このアカウントではvCPUが含まれるサービスは利用しない」とAWSが判断し、5vCPUまで自動で引き下げられるようです。

AWSのデータセンター拡張の判断基準として調整してそうですね(個人的な見解)

Q: これらの制限は時間経過とともに変わりますか?
はい。制限は時間の経過とともに変わる可能性があります。Amazon EC2 は各リージョン内で使用状況を継続的に監視しており、EC2の使用に基づいて制限が自動的に引き上げられます。

https://aws.amazon.com/jp/ec2/faqs/#EC2_On-Demand_Instance_limits

vCPUクォータの確認方法

【AWS マネジメント コンソール で確認する方法】
  1. Service Quotas コンソール >Amazon Elastic Compute Cloud (Amazon EC2) にアクセスします。
  2. サービスクォータの検索窓にAll Standard (A, C, D, H, I, M, R, T, Z) Spot Instance Requestsと入力します。

【AWS CLIv2 で確認する方法】
  1. 以下のコマンドをコンソールで実行する(東京リージョンの場合)
PowerShell
aws service-quotas get-service-quota `
 --service-code ec2 `
 --quota-code L-1216C47A `
 --region ap-northeast-1

現在、利用可能なvCPU数はValueプロパティに表示されます。

クォータを引き上げる手順

個人的にクォータの引き上げ作業はGUI操作で行うことを推奨します!

「クォータの引き上げをリクエスト」をクリックします。

「クォータ値を変更」に希望するvCPU数を入力し、「リクエスト」をクリックします。

リクエストしたvCPU数の引き上げ結果メールは、2〜3分後にAWSアカウントで作成したメールアドレスに送信されます。

AWS側でリクエスト値(64vCPU)が変更され、512vCPUの利用許可が承認されていました。
伝播されて利用できるまで最大30分かかるようですので、念のため待機しました。

Service Quotas コンソールに戻ると、新しくクォータ値が 512vCPU まで引き上げられていることが確認できました。

最後に

久しぶりにAWSアカウントを利用するときは、リソースのクォータ制限に引っかかりやすいことが判明しました。Amazon EC2の大規模障害ではなくてホッとしました(´∇`)

Discussion