何が起こったか?
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まで自動で引き下げられるようです。
Q: これらの制限は時間経過とともに変わりますか?
はい。制限は時間の経過とともに変わる可能性があります。Amazon EC2 は各リージョン内で使用状況を継続的に監視しており、EC2の使用に基づいて制限が自動的に引き上げられます。
AWSのデータセンター拡張の判断基準としてこの仕様にしたのでしょうか?(個人的な見解)
vCPUクォータの確認方法
このAWSアカウントでは いくつまでの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)aws service-quotas
コマンドを実行します。
# 利用可能なvCPU数を表示
aws service-quotas get-service-quota `
--service-code ec2 `
--quota-code L-1216C47A `
--region ap-northeast-1
(2)実行結果
現在、利用可能なvCPU数はValue
プロパティに表示されます。
クォータを引き上げる手順
個人的にクォータの引き上げ作業はGUI操作
で行うことを推奨します!
(1)「クォータの引き上げをリクエスト」をクリックします。
(2) 「クォータ値を変更」に希望するvCPU数を入力し、「リクエスト」をクリックします。
(3)リクエストしたvCPU数の引き上げ結果メールは、2〜3分後にAWSアカウントで作成したメールアドレスに送信されます。
AWS側でリクエスト値(64vCPU)が変更され、512vCPUの利用許可が承認されていました。
伝播されて利用できるまで最大30分かかるようですので、念のため待機しました。
(4)Service Quotas コンソールに戻ると、新しくクォータ値が 512vCPU まで引き上げられていることが確認できました。
最後に
久しぶりにAWSアカウントを利用するときは、リソースのクォータ制限に引っかかりやすいことが判明しました。
Amazon EC2の大規模障害ではなくてホッとしました(´∇`)