Azure Resource Manager のリソース グループとリソースの削除

この記事では、リソース グループとリソースを削除する方法について示します。 ここでは、リソース グループを削除するときに、Azure Resource Manager によってリソースの削除がどのように並べ替えられるかについて説明します。

Note

リソース グループを削除するには、まず、基になるリソース ロックとバックアップ データを削除する必要があります。

削除の順序が決定される方法

リソース グループを削除する際に、Resource Manager によってリソースを削除する順序が決定されます。 次の順序が使用されます。

  1. すべての子 (入れ子) リソースが削除されます。

  2. 次に、他のリソースを管理するリソースが削除されます。 リソースには、別のリソースによって管理されていることを示す managedBy プロパティが設定されている場合があります。 このプロパティが設定されている場合、他のリソースを管理しているリソースは、その管理対象リソースより前に削除されます。

  3. 残りのリソースは、前の 2 つのカテゴリより後に削除されます。

順序が決定された後、Resource Manager によって、各リソースに対して DELETE 操作が発行されます。 先に進む前に、すべての依存関係が完了するまで待ちます。

同期操作の場合、期待される正常な応答コードは次のとおりです。

  • 200
  • 204
  • 404

非同期操作の場合、期待される正常な応答は 202 です。 Resource Manager では、location ヘッダーまたは azure-async 操作ヘッダーが追跡されて、非同期の削除操作の状態が確認されます。

削除エラー

削除操作からエラーが返された場合、Resource Manager によって DELETE 呼び出しが再試行されます。 再試行は、5xx、429、408 の状態コードに対して行われます。 既定では、再試行の間隔は 15 分です。

削除後

Resource Manager では、削除が試行されるリソースごとに GET 呼び出しが発行されます。 この GET 呼び出しの応答として、404 が期待されます。 Resource Manager が 404 を受け取った場合は、削除が正常に完了したと見なされます。 Resource Manager によって、そのキャッシュからリソースが削除されます。

一方、リソースに対する GET 呼び出しで 200 または 201 が返された場合は、Resource Manager によってリソースが再作成されます。

GET 操作からエラーが返された場合、次のエラー コードであれば Resource Manager によって GET が再試行されます。

  • 100 未満
  • 408
  • 429
  • 500 より大きい

その他のエラー コードの場合は、Resource Manager によるリソースの削除が失敗します。

重要

リソース グループの削除は元に戻すことができません。

リソース グループの削除

リソース グループを削除するには、次のいずれかのメソッドを使用します。

Remove-AzResourceGroup -Name ExampleResourceGroup

Delete resource

リソースを削除するには、次のいずれかのメソッドを使用します。

Remove-AzResource `
  -ResourceGroupName ExampleResourceGroup `
  -ResourceName ExampleVM `
  -ResourceType Microsoft.Compute/virtualMachines

必要なアクセスと削除の失敗

リソース グループを削除するには、Microsoft.Resources/subscriptions/resourceGroups リソースの削除アクションにアクセスできる必要があります。

重要

リソース グループを削除するために必要なアクセス許可は、リソース グループを削除するための削除アクションへのアクセス許可のみです。 そのリソース グループ内の個々のリソースを削除するためのアクセス許可は必要ありません。 さらに、roleAssignment の notActions で指定された削除アクションは、リソース グループの削除アクションに置き換えられます。 これは、Azure ロールベースのアクセス制御モデルのスコープ階層と一致します。

操作の一覧については、「Azure リソース プロバイダーの操作」を参照してください。 組み込みロールの一覧については、Azure の組み込みロールに関するページを参照してください。

必要なアクセス権を持っていても、削除要求が失敗した場合は、リソースまたはリソース グループがロックされているおそれがあります。 リソース グループを手動でロックしなかった場合でも、関連するサービスがそれを自動的にロックしている可能性があります。 または、リソースが、削除されていない他のリソース グループ内のリソースに接続されている場合、削除が失敗する可能性があります。 たとえば、仮想マシンでまだ使用されているサブネットを含む仮想ネットワークを削除することはできません。

削除されたリソース グループを復旧することはできますか?

いいえ。削除されたリソース グループを復旧することはできません。 ただし、最近削除されたリソースの一部を復元できる場合があります。

一部のリソースの種類では、"論理的な削除" がサポートされています。 論理的な削除を使用するには、事前に構成する必要がある場合があります。 論理的な削除を有効にする方法については、次を参照してください。

削除されたリソースを復元するには、次を参照してください。

Azure サポート ケースを開くこともできます。 リソース ID、型、リソース名など、削除されたリソースに関するできるだけ詳細な情報を提供します。 リソースを復元できるかどうかをサポート エンジニアに確認するよう要求します。

Note

削除されたリソースの復旧は、すべての状況で実行できるわけではありません。 サポート エンジニアがシナリオを調査し、可能かどうかをアドバイスします。

次のステップ