タイトルのとおり、削除したストレージ アカウント名を別 Azure Entra ID (ディレクトリ) で再利用する際にハマった話をまとめました。
背景
Azure Entra ID (ディレクトリ) が独立した検証環境と本番環境の環境があり、検証環境でストレージ アカウントを含む Azure リソースの構築、設定内容を確認、リソース名が重複しないよう削除後、本番環境に構築しようとしました。
その際に、“ストレージ アカウント名 ‘XXXXXXXX’ は既に使用されています。” というエラーが表示され、ストレージ アカウントが本番環境で作成することができなかった。
切り分け
以下の切り分けを実施した結果、同一 Azure Entra ID (ディレクトリ) 上でのストレージ アカウント名の再利用は問題ありませんでしたが、別の Azure Entra ID (ディレクトリ) での再利用はできませんでした。
- 同一 Azure Entra ID (ディレクトリ)、同一サブスクリプション上で再作成
→ 問題なく再作成できる - 同一 Azure Entra ID (ディレクトリ)、別のサブスクリプション上で再作成
→ 問題なく再作成できる - 別の Azure Entra ID (ディレクトリ)、別のサブスクリプション上で再作成
→ “ストレージ アカウント名 ‘XXXXXXXX’ は既に使用されています。” エラーで再作成できない
また、以前このブログでも紹介したストレージ アカウントの標準機能である、「削除したストレージ アカウントの回復機能」が影響している可能性を考え、削除から 14 日経過後に確認してみましたが、別の Azure Entra ID (ディレクトリ) での再利用はできませんでした。
- 削除から 14 日後に別の Azure Entra ID (ディレクトリ)、別のサブスクリプション上で再作成
→ “ストレージ アカウント名 ‘XXXXXXXX’ は既に使用されています。” で再作成できない
削除したストレージ アカウント名を別 Azure Entra ID (ディレクトリ) で再利用できないのか、と思いつつ毎日確認していた結果、削除から 30 日経過した後で再作成できたことを確認しました。
- 削除から 30 日後に別の Azure Entra ID (ディレクトリ)、別のサブスクリプション上で再作成
→ 問題なく再作成できる
原因と対策
この現象について、某サポートにも問い合わせを実施しましたが満足する結果が得られませんでしたが、要は「Azure ストレージ アカウントの想定された動作」であるということが分かりました。
Microsoft の正式な回答、仕様ではなく推測の範疇にはなりますが、以下の挙動になるようです。
- ストレージ アカウントを作成すると、再利用を防止するために Azure 全体 (各 Azure Entra ID (ディレクトリ)) にストレージ アカウント名の情報を伝搬する
- ストレージ アカウントを削除すると、削除した Azure Entra ID (ディレクトリ) 上からストレージ アカウント名の情報と DNS の名前解決が削除されるが、伝搬された Azure Entra ID (ディレクトリ) には情報が残存したままになるので、一定期間 (30 日) を過ぎないと再利用できない
なおストレージ アカウントの削除後から 30 日を待たずに削除したい場合には、某サポートに問い合わせを行う必要がありますが、以下が必要になるとのことです。
- ストレージ アカウントを削除した Azure Entra ID (ディレクトリ) のサブスクリプションに紐づいているアカウントとサポート契約
- 再利用する Azure Entra ID (ディレクトリ) のサブスクリプションに紐づいているアカウントとサポート契約
- サポート契約しているアカウントは、どちらも同一である必要がある。
想定された動作だし、某サポートのルール、方針だからしょうがないね
(何かを期待することを諦めた顔
上記理由により対策として、別 Azure Entra ID (ディレクトリ) で削除したストレージ アカウント名を再利用するのではなく「あらかじめストレージ アカウント名は別々にしておく」、以外にはないようです。
まとめ
まとめると、以下になります。
- 別 Azure Entra ID (ディレクトリ) 上で削除したストレージ アカウント名を直ぐに再利用できない
- 再利用する場合、削除から 30 日後待つ必要がある
- 検証環境など、本番環境とは別 Azure Entra ID (ディレクトリ) に存在する場合、ストレージ アカウント名は本番環境で使用する予定の名前以外のものを指定しておく
関連サイト
- Azure Blob Storage のドキュメント | Microsoft Learn
https://learn.microsoft.com/azure/storage/blobs/ - 削除されたストレージ アカウントを復旧します – Azure Storage | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/storage/common/storage-account-recover