チュートリアル:Resource Manager テンプレート デプロイのトラブルシューティングTutorial: Troubleshoot Resource Manager template deployments

Resource Manager テンプレート デプロイ エラーのトラブルシューティング方法について学習します。Learn how to troubleshoot Resource Manager template deployment errors. このチュートリアルでは、テンプレートに 2 つのエラーを設定し、アクティビティ ログとデプロイ履歴を使用して問題を解決する方法について学習します。In this tutorial, you set up two errors in a template, and learn how to use the activity logs and deployment history to resolve the issues.

テンプレート デプロイに関連するエラーには、次の 2 種類があります。There are two types of errors that are related to template deployment:

  • 検証エラーは、デプロイ前に判断できるシナリオで発生します。Validation errors arise from scenarios that can be determined before deployment. これには、テンプレートに構文エラーがある場合や、サブスクリプション クォータを超えるリソースをデプロイしようとしている場合などがあります。They include syntax errors in your template, or trying to deploy resources that would exceed your subscription quotas.
  • デプロイ エラーは、デプロイ プロセスで発生する状況に起因します。Deployment errors arise from conditions that occur during the deployment process. これには、並列でデプロイされているリソースにアクセスしようとしている場合などがあります。They include trying to access a resource that is being deployed in parallel.

この 2 種類のエラーでは、デプロイのトラブルシューティングに使用するエラー コードが返されます。Both types of errors return an error code that you use to troubleshoot the deployment. どちらの種類のエラーもアクティビティ ログに表示されます。Both types of errors appear in the activity log. ただし、検証エラーは、デプロイが開始されていないため、デプロイ履歴には表示されません。However, validation errors don't appear in your deployment history because the deployment never started.

このチュートリアルに含まれるタスクは次のとおりです。This tutorial covers the following tasks:

  • 問題のあるテンプレートの作成Create a problematic template
  • 検証エラーのトラブルシューティングTroubleshoot validation errors
  • デプロイ エラーのトラブルシューティングTroubleshoot deployment errors
  • リソースのクリーンアップClean up resources

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。If you don't have an Azure subscription, create a free account before you begin.

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

前提条件Prerequisites

この記事を完了するには、以下が必要です。To complete this article, you need:

問題のあるテンプレートの作成Create a problematic template

Azure クイック スタート テンプレート」から Create a standard storage account テンプレートを開き、2 つのテンプレートの問題を設定します。Open a template called Create a standard storage account from Azure QuickStart Templates, and setup two template issues.

  1. Visual Studio Code から、[ファイル]>[ファイルを開く] を選択します。From Visual Studio Code, select File>Open File.

  2. [ファイル名] に以下の URL を貼り付けます。In File name, paste the following URL:

    https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-storage-account-create/azuredeploy.json
    
  3. [開く] を選択して、ファイルを開きます。Select Open to open the file.

  4. apiVersion 行を次の行に変更します。Change the apiVersion line to the following line:

    "apiVersion1": "2018-07-02",
    
    • apiVersion1 は無効な要素名です。apiVersion1 is invalid element name. これは検証エラーになります。It is a validation error.
    • API バージョンは "2018-07-01" である必要があります。The API version shall be "2018-07-01". これはデプロイ エラーになります。It is a deployment error.
  5. [ファイル]>[名前を付けて保存] を選択し、ファイルを azuredeploy.json としてご自身のローカル コンピューターに保存します。Select File>Save As to save the file as azuredeploy.json to your local computer.

検証エラーのトラブルシューティングTroubleshoot the validation error

テンプレートのデプロイ」セクションを参照してテンプレートをデプロイします。Refer to the Deploy the template section to deploy the template.

シェルから次のようなエラーが返されます。You shall get an error from the shell similar to:

New-AzResourceGroupDeployment : 4:29:24 PM - Error: Code=InvalidRequestContent; Message=The request content was invalid and could not be deserialized: 'Could not find member 'apiVersion1' on object of type 'TemplateResource'. Path 'properties.template.resources[0].apiVersion1', line 36, position 24.'.

このエラー メッセージは、apiVersion1 に問題があることを示しています。The error message indicates the problem is with apiVersion1.

Visual Studio Code を使用して apiVersion1apiVersion に変更して問題を解決し、テンプレートを保存します。Use Visual Studio Code to correct the problem by changing apiVersion1 to apiVersion, and then save the template.

デプロイ エラーのトラブルシューティングTroubleshoot the deployment error

テンプレートのデプロイ」セクションを参照してテンプレートをデプロイします。Refer to the Deploy the template section to deploy the template.

シェルから次のようなエラーが返されます。You shall get an error from the shell similar to:

New-AzResourceGroupDeployment : 4:48:50 PM - Resource Microsoft.Storage/storageAccounts 'storeqii7x2rce77dc' failed with message '{
  "error": {
    "code": "NoRegisteredProviderFound",
    "message": "No registered resource provider found for location 'centralus' and API version '2018-07-02' for type 'storageAccounts'. The supported api-versions are '2018-07-01, 2018-03-01-preview, 2018-02-01, 2017-10-01, 2017-06-01, 2016-12-01, 2016-05-01, 2016-01-01, 2015-06-15, 2015-05-01-preview'. The supported locations are 'eastus, eastus2, westus, westeurope, eastasia, southeastasia, japaneast, japanwest, northcentralus, southcentralus, centralus, northeurope, brazilsouth, australiaeast, australiasoutheast, southindia, centralindia, westindia, canadaeast, canadacentral, westus2, westcentralus, uksouth, ukwest, koreacentral, koreasouth, francecentral'."
  }
}'

デプロイ エラーは、次の手順を使用して、Azure portal で見つけることができます。The deployment error can be found from the Azure portal using the following procedure:

  1. Azure Portal にサインインします。Sign in to the Azure portal.

  2. [リソース グループ] を選択し、目的のリソース グループ名を選択して、リソース グループを開きます。Open the resource group by selecting Resource groups and then the resource group name. [デプロイ] の下に [1 件失敗] が表示されます。You shall see 1 Failed under Deployment.

    Resource Manager チュートリアルのトラブルシューティング

  3. [エラーの詳細] を選択します。Select Error details.

    Resource Manager チュートリアルのトラブルシューティング

    エラー メッセージは、前に示したものと同じです。The error message is the same as the one shown earlier:

    Resource Manager チュートリアルのトラブルシューティング

アクティビティ ログからエラーを見つけることもできます。You can also find the error from the activity logs:

  1. Azure Portal にサインインします。Sign in to the Azure portal.

  2. [監視] > [アクティビティ ログ] を選択します。Select Monitor > Activity log.

  3. フィルターを使用してログを見つけます。Use the filters to find the log.

    Resource Manager チュートリアルのトラブルシューティング

Visual Studio Code を使用して問題を解決し、テンプレートを再デプロイします。Use Visual Studio Code to correct the problem, and then redeploy the template.

一般的なエラーの一覧については、「Azure Resource Manager を使用した Azure へのデプロイで発生する一般的なエラーのトラブルシューティング」を参照してください。For a list of common errors, see Troubleshoot common Azure deployment errors with Azure Resource Manager.

リソースのクリーンアップClean up resources

Azure リソースが不要になったら、リソース グループを削除して、デプロイしたリソースをクリーンアップします。When the Azure resources are no longer needed, clean up the resources you deployed by deleting the resource group.

  1. Azure portal で、左側のメニューから [リソース グループ] を選択します。From the Azure portal, select Resource group from the left menu.
  2. [名前でフィルター] フィールドに、リソース グループ名を入力します。Enter the resource group name in the Filter by name field.
  3. リソース グループ名を選択します。Select the resource group name. リソース グループ内の合計 6 つのリソースが表示されます。You shall see a total of six resources in the resource group.
  4. トップ メニューから [リソース グループの削除] を選択します。Select Delete resource group from the top menu.

次の手順Next steps

このチュートリアルでは、Resource Manager テンプレート デプロイ エラーのトラブルシューティング方法について学習しました。In this tutorial, you learned how to troubleshoot Resource Manager template deployment errors. 詳細については、「Azure Resource Manager を使用した Azure へのデプロイで発生する一般的なエラーのトラブルシューティング」を参照してください。For more information, see Troubleshoot common Azure deployment errors with Azure Resource Manager.