端的に
表題の通りです。ベーシックサポートを利用している個人開発者は気をつけましょう。ビジネスサポートを契約していればなんとかなるかもしれないし、ならないかもしれません(後述)。
経緯
- 10年以上使っている既存のアカウントA, Bがある
- Control Towerを導入するため、管理アカウントを新規作成
- Control Towerセットアッププロセスの中で監査アカウント・ログアーカイブアカウントも新規作成
- Control Tower導入が無事完了したので、今度はControl Towerを削除する練習1をしようと思い立つ
- Control Towerを綺麗に削除し、導入にともなって作成した上記3件のアカウントも閉鎖
-
Control Tower導入→削除をもう1回繰り返してみた
- やめておけばよかった
- 改めて管理アカウントPを新規作成。Organizations経由でメンバーアカウントQも作成
この最後に作った新規アカウントPとQでトラブルが続出しているのでメモっておきます。
発生したトラブル
Organizationsの利用制限
管理アカウントPから新規OrganizationへアカウントA, Bをメンバーアカウントとして追加しようとしてみたのですが、「メンバーアカウントの数が上限に達した」というエラーで追加ができませんでした。思えばこれがトラブルの始まりでした。
アカウントロック
アカウントQ作成直後にアカウントQがロックされ、次のようなメールが届きました。
AWS アカウントを保留中: 対応が必要です
お客様の Amazon Web Services (AWS) アカウントの詳細を確認できなかったため、アカウントを一時停止いたしました。アカウントが停止されている間は、AWS コンソールにログインしたり、AWS サービスにアクセスしたりすることはできません。
[...]
できるだけ早く、ただし前述の日時より前に、お客様のお名前と住所、AWS アカウントの登録に使用した電話番号 (電話料金の請求書の場合) が記載された現在の請求書 (公共料金の請求書、電話料金など) のコピーをアップロードしてください。
期限は翌日で、それまでに返信しないとアカウントは削除されてしまうそうです。大急ぎで免許証の写真などをアップロードすると、その日の夜にはアカウントロックは解除されました。一件落着。
Bedrockが使えない
復旧したアカウントQのBedrockでClaude3を試してみようと思ったのですが、モデルアクセスをリクエストしようとすると「Operation not allowed」というエラーが必ず発生してしまいます。
サポートに問い合わせたところ、3日後に制限は解除されました。
CloudFormationが使えない
Bedrockは利用できるようになりましたが、CloudFormationのスタックをデプロイしようとすると次のようなエラーが発生しました。
Received response status [FAILED] from custom resource. Message returned: Cannot have more than 0 builds in queue for the account
「このアカウントでは0個以上のビルドをキューに入れられない」ということはつまり利用できないということです。
クローズしていなかったサポートケースで再度問い合わせたところ、今度は即日「担当部署へ確認を依頼」していただき、無事CloudFormationが利用できるようになりました。
BedrockとCloudShellが使えない
この1ヶ月後、再度アカウントQのBedrockが利用できなくなりました。またCloudShellも利用できず、起動しようとすると「アカウントが無効なのでサポートに問い合わせろ」というエラーメッセージが表示されるようになりました。CloudShellが利用できない状態は管理アカウントPでも発生しています。
サポートに問い合わせたところ、 1週間後になって制限は解除されました。ただし、Claude 3 Opusへのアクセス権限が謎に剥奪されてしまい、再度リクエストすることもできない状態になっています。
どうしていたら良かったか
う~ん……
アカウント閉鎖は安易にしない方がいい
これがAWSの不正利用検知システムに引っかかるトリガーになったのかもしれないと想像しています。想像ですが。
クレジットカード
ちょうどクレジットカードを引っ越し作業中でした。上述の古いアカウントA, Bと、今回トラブルが続出しているP, Qでは利用しているクレジットカードが違います。利用実績・支払い実績が積み上がっているのでカードを揃えておけば良かったかもしれません。
なお、前回のトラブルから1ヶ月が過ぎているため、4月分の料金は既に確定しており、クレジットカードの明細にも載っています。AWSとしては支払いの実績があり、未払いの請求はないという状態です。
EC2は利用できた
アカウントQではBedrock, CloudFormation, CloudShellでは利用制限がかかっていたのに、EC2はずっと何の問題もなく利用できていました。つまり、「EC2は普通に使えているので気が付かなかったが、実は利用制限を受けていて使えないサービスがある」という状態があり得ます。新たにサービスを使い始めようとしたところで利用制限に気付くというパターンはダメージが大きそうです。
なお、Stack Overflowで「アカウントに利用制限がかかったときはEC2インスタンスを作って課金を発生させると良い」といった話を見かけたのですが、私の場合まったく効果はありませんでした。
AWS本社マターかもしれない
サポートの回答の中に「海外の担当部署に申し送りし」という一文がありました。仮にアカウントの利用制限はAWS本社の管轄だとすると、ビジネスサポートはもちろん、エンタープライズサポートを契約していても復旧までにはある程度の時間を要することになります2。制限を食らった時点で負けです。
まとめ
AWSは清く正しく使いましょう。何かの間違いでアカウントがロックされた場合、ロックが解除されたからといって一件落着ではなく、それが長く続く戦いの幕開けに過ぎないケースがあります。頑張ってください。