Azure Resource Manager を使用した Azure へのデプロイで発生する一般的なエラーのトラブルシューティングTroubleshoot common Azure deployment errors with Azure Resource Manager

この記事では、Azure へのデプロイに関する一般的なエラーについて説明し、そのエラーを解決するための情報を提供します。This article describes some common Azure deployment errors, and provides information to resolve the errors. デプロイ エラーのエラー コードを見つけることができない場合は、「エラー コードを見つける」を参照してください。If you can't find the error code for your deployment error, see Find error code.

エラー コードに関する情報を探していて、その情報がこの記事に記載されていない場合は、お知らせください。If you're looking for information about an error code and that information isn't provided in this article, let us know. このページの最後で、フィードバックを残していただくことができます。At the bottom of this page, you can leave feedback. このフィードバックは、GitHub のイシューで追跡されます。The feedback is tracked with GitHub Issues.

エラー コードError codes

エラー コードError code 対応策Mitigation 詳細情報More information
AccountNameInvalidAccountNameInvalid ストレージ アカウントの名前付けの制限に従ってください。Follow naming restrictions for storage accounts. ストレージ アカウント名の解決Resolve storage account name
AccountPropertyCannotBeSetAccountPropertyCannotBeSet 使用可能なストレージ アカウント プロパティを確認してください。Check available storage account properties. storageAccountsstorageAccounts
AllocationFailedAllocationFailed クラスターまたはリージョンに使用可能なリソースがないか、要求された VM サイズをサポートできません。The cluster or region doesn't have resources available or can't support the requested VM size. 後で要求を再試行するか、別の VM サイズを要求します。Retry the request at a later time, or request a different VM size. Linux のプロビジョニングと割り当ての問題Windows のプロビジョニングと割り当ての問題割り当てエラーのトラブルシューティングProvisioning and allocation issues for Linux, Provisioning and allocation issues for Windows and Troubleshoot allocation failures
AnotherOperationInProgressAnotherOperationInProgress 同時実行操作の完了を待ちます。Wait for concurrent operation to complete.
AuthorizationFailedAuthorizationFailed お客様のアカウントまたはサービス プリンシパルには、デプロイを完了するために十分なアクセス権がありません。Your account or service principal doesn't have sufficient access to complete the deployment. 自分のアカウントが属するロールと、デプロイの範囲に対するアクセス権を確認してください。Check the role your account belongs to, and its access for the deployment scope.

必要なリソース プロバイダーが登録されていないと、このエラーを受け取ることがあります。You might receive this error when a required resource provider isn't registered.
Azure ロールベースのアクセス制御 (Azure RBAC)Azure role-based access control (Azure RBAC)

登録を解決するResolve registration
BadRequestBadRequest Resource Manager で予期される値と一致しないデプロイ値を送信しました。You sent deployment values that don't match what is expected by Resource Manager. トラブルシューティングの方法については、内部ステータス メッセージを確認してください。Check the inner status message for help with troubleshooting. テンプレート リファレンスサポートされている場所Template reference and Supported locations
ConflictConflict リソースの現在の状態では許可されていない操作を要求しています。You're requesting an operation that isn't allowed in the resource's current state. たとえば、ディスクのサイズ変更が許可されているのは、VM の作成時と VM の割り当て解除時のみです。For example, disk resizing is allowed only when creating a VM or when the VM is deallocated.
DeploymentActiveAndUneditableDeploymentActiveAndUneditable このリソース グループへの同時実行デプロイが完了するまで待ちます。Wait for concurrent deployment to this resource group to complete.
DeploymentFailedCleanUpDeploymentFailedCleanUp 完全モードでデプロイすると、テンプレートにないすべてのリソースが削除されます。When you deploy in complete mode, any resources that aren't in the template are deleted. このエラーは、テンプレートにないすべてのリソースを削除するための適切なアクセス許可がない場合に表示されます。You get this error when you don't have adequate permissions to delete all of the resources not in the template. このエラーを回避するには、デプロイ モードを増分モードに変更します。To avoid the error, change the deployment mode to incremental. Azure Resource Manager のデプロイ モードAzure Resource Manager deployment modes
DeploymentNameInvalidCharactersDeploymentNameInvalidCharacters デプロイ名に使用できるのは、文字、数字、'-'、'.' または ''. のみです。The deployment name can only contain letter, digit, '-', '.' or ''.
DeploymentNameLengthLimitExceededDeploymentNameLengthLimitExceeded デプロイ名は、64 文字までに制限されています。The deployment names are limited to 64 characters.
DeploymentFailedDeploymentFailed DeploymentFailed エラーは、そのエラーを解決するために必要な詳細が示されない一般的なエラーです。The DeploymentFailed error is a general error that doesn't provide the details you need to solve the error. エラー コードのエラー詳細で情報を確認してください。Look in the error details for an error code that provides more information. エラー コードを見つけるFind error code
DeploymentQuotaExceededDeploymentQuotaExceeded リソース グループあたり 800 のデプロイという上限に達した場合、不要になった履歴からデプロイを削除します。If you reach the limit of 800 deployments per resource group, delete deployments from the history that are no longer needed. デプロイ数が 800 を超えたときのエラーを解決するResolve error when deployment count exceeds 800
DeploymentJobSizeExceededDeploymentJobSizeExceeded テンプレートを簡略化して、サイズを小さくします。Simplify your template to reduce size. テンプレートのサイズ エラーの解決Resolve template size errors
DnsRecordInUseDnsRecordInUse DNS レコード名は、一意の名前にする必要があります。The DNS record name must be unique. 別の番号を入力します。Enter a different name.
ImageNotFoundImageNotFound VM イメージの設定を確認してください。Check VM image settings.
InUseSubnetCannotBeDeletedInUseSubnetCannotBeDeleted リソースを更新しようとするときにこのエラーが発生することがありますが、リソースを削除して作成すると、要求が処理されます。You might get this error when trying to update a resource, and the request is processed by deleting and creating the resource. 変更されていないすべての値を指定してください。Make sure to specify all unchanged values. リソースを更新するUpdate resource
InvalidAuthenticationTokenTenantInvalidAuthenticationTokenTenant 該当するテナントのアクセス トークンを取得します。Get access token for the appropriate tenant. トークンは、自分のアカウントが属するテナントからのみ取得できます。You can only get the token from the tenant that your account belongs to.
InvalidContentLinkInvalidContentLink これは、入れ子になった無効なテンプレートにリンクしようとしたことが原因と考えられます。You've most likely attempted to link to a nested template that isn't available. 入れ子になったテンプレートに指定した URI を十分に確認してください。Double check the URI you provided for the nested template. ストレージ アカウントにテンプレートがある場合は、URI がアクセス可能であることを確認してください。If the template exists in a storage account, make sure the URI is accessible. 場合によっては、SAS トークンを渡す必要があります。You might need to pass a SAS token. 現時点では、Azure Storage ファイアウォールの背後にあるストレージ アカウントのテンプレートにリンクすることはできません。Currently, you can't link to a template that is in a storage account behind an Azure Storage firewall. GitHub などの別のリポジトリにテンプレートを移動することを検討してください。Consider moving your template to another repository, like GitHub. リンク済みテンプレートLinked templates
InvalidDeploymentLocationInvalidDeploymentLocation サブスクリプション レベルでデプロイする場合は、以前に使用したデプロイ名に別の場所を指定しています。When deploying at the subscription level, you've provided a different location for a previously used deployment name. サブスクリプション レベルのデプロイSubscription level deployments
InvalidParameterInvalidParameter リソースに対して指定したいずれかの値が、予期される値に一致しません。One of the values you provided for a resource doesn't match the expected value. このエラーはさまざまな状況が原因となって発生する可能性があります。This error can result from many different conditions. たとえば、パスワードが十分でない場合や、BLOB 名が正しくない場合があります。For example, a password may be insufficient, or a blob name may be incorrect. エラー メッセージから、どの値を修正する必要があるかがわかるはずです。The error message should indicate which value needs to be corrected.
InvalidRequestContentInvalidRequestContent デプロイの値に認識されない値が含まれているか、必要な値が不足しています。The deployment values either include values that aren't recognized, or required values are missing. リソースの種類の値を確認してください。Confirm the values for your resource type. テンプレート リファレンスTemplate reference
InvalidRequestFormatInvalidRequestFormat デプロイを実行するときにデバッグ ログを有効にし、要求の内容を確認してください。Enable debug logging when running the deployment, and verify the contents of the request. デバッグ ログDebug logging
InvalidResourceNamespaceInvalidResourceNamespace type プロパティに指定したリソース名前空間を確認してください。Check the resource namespace you specified in the type property. テンプレート リファレンスTemplate reference
InvalidResourceReferenceInvalidResourceReference リソースがまだ存在しないか、正しく参照されていません。The resource either doesn't yet exist or is incorrectly referenced. 依存関係を追加する必要があるかどうかを確認してください。Check whether you need to add a dependency. シナリオに必要なパラメーターを含めて reference 関数を使用しているかどうかを確認してください。Verify that your use of the reference function includes the required parameters for your scenario. 依存関係を解決するResolve dependencies
InvalidResourceTypeInvalidResourceType type プロパティに指定したリソースの種類を確認してください。Check the resource type you specified in the type property. テンプレート リファレンスTemplate reference
InvalidSubscriptionRegistrationStateInvalidSubscriptionRegistrationState リソース プロバイダーにサブスクリプションを登録してください。Register your subscription with the resource provider. 登録を解決するResolve registration
InvalidTemplateInvalidTemplate テンプレートの構文にエラーがないか確認してください。Check your template syntax for errors. 無効なテンプレートを解決するResolve invalid template
InvalidTemplateCircularDependencyInvalidTemplateCircularDependency 不要な依存関係を削除します。Remove unnecessary dependencies. 循環依存関係を解決するResolve circular dependencies
JobSizeExceededJobSizeExceeded テンプレートを簡略化して、サイズを小さくします。Simplify your template to reduce size. テンプレートのサイズ エラーの解決Resolve template size errors
LinkedAuthorizationFailedLinkedAuthorizationFailed デプロイ先のリソース グループと同じテナントに自分のアカウントが属しているかどうかを確認してください。Check if your account belongs to the same tenant as the resource group that you're deploying to.
LinkedInvalidPropertyIdLinkedInvalidPropertyId リソースのリソース ID が正しく解決されていません。The resource ID for a resource isn't resolving correctly. リソース ID に必要なすべての値 (サブスクリプション ID、リソース グループ名、リソースの種類、親リソース名 (必要な場合)、リソース名など) を指定しているかどうかを確認してください。Check that you provide all required values for the resource ID, including subscription ID, resource group name, resource type, parent resource name (if needed), and resource name.
LocationRequiredLocationRequired リソースの場所を指定します。Provide a location for the resource. 場所を設定するSet location
MismatchingResourceSegmentsMismatchingResourceSegments 入れ子になったリソースの名前と種類でセグメント数が正しいことを確認します。Make sure nested resource has correct number of segments in name and type. リソース セグメントを解決するResolve resource segments
MissingRegistrationForLocationMissingRegistrationForLocation リソース プロバイダーの登録状態、およびサポートされている場所を確認してください。Check resource provider registration status and supported locations. 登録を解決するResolve registration
MissingSubscriptionRegistrationMissingSubscriptionRegistration リソース プロバイダーにサブスクリプションを登録してください。Register your subscription with the resource provider. 登録を解決するResolve registration
NoRegisteredProviderFoundNoRegisteredProviderFound リソース プロバイダーの登録状態を確認してください。Check resource provider registration status. 登録を解決するResolve registration
NotFoundNotFound 依存するリソースを、親リソースと並列にデプロイしようとしている可能性があります。You might be attempting to deploy a dependent resource in parallel with a parent resource. 依存関係を追加する必要があるかどうかを確認してください。Check if you need to add a dependency. 依存関係を解決するResolve dependencies
OperationNotAllowedOperationNotAllowed デプロイで、サブスクリプション、リソース グループ、またはリージョンのクォータを超過する操作が試みられています。The deployment is attempting an operation that exceeds the quota for the subscription, resource group, or region. 可能であれば、クォータ内に収まるようにデプロイを修正してください。If possible, revise your deployment to stay within the quotas. 修正できない場合は、クォータの変更を要求することを検討してください。Otherwise, consider requesting a change to your quotas. クォータを解決するResolve quotas
ParentResourceNotFoundParentResourceNotFound 子リソースを作成する前に親リソースが存在することを確認してください。Make sure a parent resource exists before creating the child resources. 親リソースを解決するResolve parent resource
PasswordTooLongPasswordTooLong 文字数の多すぎるパスワードを選択したか、パスワードの値をパラメーターとして渡す前にセキュリティで保護された文字列に変換した可能性があります。You might have selected a password with too many characters, or converted your password value to a secure string before passing it as a parameter. テンプレートに secure string パラメーターが含まれている場合、値をセキュリティで保護された文字列に変換する必要はありません。If the template includes a secure string parameter, you don't need to convert the value to a secure string. パスワードの値はテキストとして指定してください。Provide the password value as text.
PrivateIPAddressInReservedRangePrivateIPAddressInReservedRange 指定した IP アドレスは、Azure で必要なアドレス範囲に含まれます。The specified IP address includes an address range required by Azure. 予約済みの範囲を避けるように IP アドレスを変更してください。Change IP address to avoid reserved range. IP アドレスIP addresses
PrivateIPAddressNotInSubnetPrivateIPAddressNotInSubnet 指定した IP アドレスがサブネットの範囲外です。The specified IP address is outside of the subnet range. サブネットの範囲に収まるように IP アドレスを変更してください。Change IP address to fall within subnet range. IP アドレスIP addresses
PropertyChangeNotAllowedPropertyChangeNotAllowed デプロイ済みのリソースで、一部のプロパティを変更できません。Some properties can't be changed on a deployed resource. リソースを更新する際は、許可されているプロパティに変更を制限してください。When updating a resource, limit your changes to permitted properties. リソースを更新するUpdate resource
RequestDisallowedByPolicyRequestDisallowedByPolicy デプロイ時に実行しようとしているアクションを禁止するリソース ポリシーがサブスクリプションに含まれます。Your subscription includes a resource policy that prevents an action you're trying to perform during deployment. アクションをブロックしているポリシーを見つけてください。Find the policy that blocks the action. 可能であれば、ポリシーの制限を満たすようにデプロイを変更してください。If possible, change your deployment to meet the limitations from the policy. ポリシーを解決するResolve policies
ReservedResourceNameReservedResourceName 予約された名前が含まれていないリソース名を指定します。Provide a resource name that doesn't include a reserved name. 予約されたリソース名Reserved resource names
ResourceGroupBeingDeletedResourceGroupBeingDeleted 削除が完了するまで待ちます。Wait for deletion to complete.
ResourceGroupNotFoundResourceGroupNotFound デプロイのターゲット リソース グループの名前を確認してください。Check the name of the target resource group for the deployment. サブスクリプションにターゲット リソース グループが既に存在している必要があります。The target resource group must already exist in your subscription. サブスクリプションのコンテキストを確認してください。Check your subscription context. Azure CLI PowerShellAzure CLI PowerShell
ResourceNotFoundResourceNotFound 解決できないリソースをデプロイで参照しています。Your deployment references a resource that can't be resolved. reference 関数に、シナリオに必要なパラメーターを含まれていることを確認してください。Verify that your use of the reference function includes the parameters required for your scenario. 参照を解決するResolve references
ResourceQuotaExceededResourceQuotaExceeded デプロイで、サブスクリプション、リソース グループ、またはリージョンのクォータを超過するリソースの作成が試みられています。The deployment is trying to create resources that exceed the quota for the subscription, resource group, or region. 可能であれば、クォータ内に収まるようにインフラストラクチャを変更してください。If possible, revise your infrastructure to stay within the quotas. 修正できない場合は、クォータの変更を要求することを検討してください。Otherwise, consider requesting a change to your quotas. クォータを解決するResolve quotas
SkuNotAvailableSkuNotAvailable 選択した場所で利用可能な SKU (VM サイズなど) を選択します。Select SKU (such as VM size) that is available for the location you've selected. SKU を解決するResolve SKU
StorageAccountAlreadyExistsStorageAccountAlreadyExists ストレージ アカウントに一意の名前を指定してください。Provide a unique name for the storage account. ストレージ アカウント名の解決Resolve storage account name
StorageAccountAlreadyTakenStorageAccountAlreadyTaken ストレージ アカウントに一意の名前を指定してください。Provide a unique name for the storage account. ストレージ アカウント名の解決Resolve storage account name
StorageAccountNotFoundStorageAccountNotFound サブスクリプション、リソース グループ、および使用するストレージ アカウントの名前を確認してください。Check the subscription, resource group, and name of the storage account that you're trying to use.
SubnetsNotInSameVnetSubnetsNotInSameVnet 仮想マシンでは、仮想ネットワークを 1 つのみを持つことができます。A virtual machine can only have one virtual network. 複数の NIC をデプロイするときは、それらが同じ仮想ネットワークに属していることを確認してください。When deploying several NICs, make sure they belong to the same virtual network. 複数の NICMultiple NICs
SubscriptionNotFoundSubscriptionNotFound デプロイ用に指定されたサブスクリプションにアクセスできません。A specified subscription for deployment can't be accessed. サブスクリプション ID が間違っている、テンプレートをデプロイしているユーザーにサブスクリプションにデプロイするための適切なアクセス許可がない、またはサブスクリプション ID の形式が間違っている可能性があります。It could be the subscription ID is wrong, the user deploying the template doesn't have adequate permissions to deploy to the subscription, or the subscription ID is in the wrong format. 入れ子になったデプロイを使用してスコープにまたがってデプロイする場合は、サブスクリプションの GUID を指定してください。When using nested deployments to deploy across scopes, provide the GUID for the subscription.
SubscriptionNotRegisteredSubscriptionNotRegistered リソースをデプロイするときは、リソース プロバイダーをサブスクリプションに登録する必要があります。When deploying a resource, the resource provider must be registered for your subscription. デプロイに Azure Resource Manager テンプレートを使用すると、リソース プロバイダーがサブスクリプションに自動的に登録されます。When you use an Azure Resource Manager template for deployment, the resource provider is automatically registered in the subscription. 自動登録が時間内に完了しないことがあります。Sometimes, the automatic registration doesn't complete in time. この断続的なエラーを回避するには、デプロイの前にリソース プロバイダーを登録します。To avoid this intermittent error, register the resource provider before deployment. 登録を解決するResolve registration
TemplateResourceCircularDependencyTemplateResourceCircularDependency 不要な依存関係を削除します。Remove unnecessary dependencies. 循環依存関係を解決するResolve circular dependencies
TooManyTargetResourceGroupsTooManyTargetResourceGroups 1 回のデプロイのリソース グループ数を減らします。Reduce number of resource groups for a single deployment. スコープをまたいだデプロイCross scope deployment

エラー コードを見つけるFind error code

発生する可能性のあるエラーには、次の 2 種類があります。There are two types of errors you can receive:

  • 検証エラーvalidation errors
  • デプロイ エラーdeployment errors

検証エラーは、デプロイ前に判断できるシナリオで発生します。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.

検証エラーValidation errors

ポータルでのデプロイ時に、値を送信した後に検証エラーを確認します。When deploying through the portal, you see a validation error after submitting your values.

ポータルの検証エラーの表示

詳細については、メッセージを選択します。Select the message for more details. 次の図では、InvalidTemplateDeployment エラーとポリシーがデプロイをブロックしていることを示すメッセージが示されます。In the following image, you see an InvalidTemplateDeployment error and a message that indicates a policy blocked deployment.

検証の詳細の表示

デプロイ エラーDeployment errors

操作が検証に合格しても、デプロイ中に失敗した場合、デプロイ エラーを受け取ります。When the operation passes validation, but fails during deployment, you get a deployment error.

PowerShell でデプロイ エラー コードとメッセージを表示するには、以下を使用します。To see deployment error codes and messages with PowerShell, use:

(Get-AzResourceGroupDeploymentOperation -DeploymentName exampledeployment -ResourceGroupName examplegroup).Properties.statusMessage

Azure CLI でデプロイ エラー コードとメッセージを表示するには、以下を使用します。To see deployment error codes and messages with Azure CLI, use:

az deployment operation group list --name exampledeployment -g examplegroup --query "[*].properties.statusMessage"

ポータルで通知を選択します。In the portal, select the notification.

通知エラー

デプロイに関する詳細を表示します。You see more details about the deployment. オプションを選択して、エラーの詳細を確認します。Select the option to find more information about the error.

デプロイの失敗

エラー メッセージとエラー コードを表示します。You see the error message and error codes. 2 つのエラー コードがあることを確認します。Notice there are two error codes. 最初のエラー コード (DeploymentFailed) は、解決する必要があるエラーの詳細が示されない一般的なエラーです。The first error code (DeploymentFailed) is a general error that doesn't provide the details you need to solve the error. 2 つ目のエラー コード (StorageAccountNotFound) は、必要な詳細が示されます。The second error code (StorageAccountNotFound) provides the details you need.

エラーの詳細

デバッグ ログの有効化Enable debug logging

問題が発生した原因を調べるには、要求と応答の詳細が必要な場合があります。Sometimes you need more information about the request and response to learn what went wrong. デプロイ中に、追加情報をログに記録することを要求できます。During deployment, you can request that additional information is logged during a deployment.

PowerShellPowerShell

PowerShell では、DeploymentDebugLogLevel パラメーターを All、ResponseContent、または RequestContent に設定します。In PowerShell, set the DeploymentDebugLogLevel parameter to All, ResponseContent, or RequestContent.

New-AzResourceGroupDeployment `
  -Name exampledeployment `
  -ResourceGroupName examplegroup `
  -TemplateFile c:\Azure\Templates\storage.json `
  -DeploymentDebugLogLevel All

次のコマンドレットを使用して、要求の内容を確認します。Examine the request content with the following cmdlet:

(Get-AzResourceGroupDeploymentOperation `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup).Properties.request `
| ConvertTo-Json

次のコマンドレットを使用して、応答の内容を確認します。Or, the response content with:

(Get-AzResourceGroupDeploymentOperation `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup).Properties.response `
| ConvertTo-Json

この情報は、テンプレートの値が正しく設定されているかどうかを確認するのに役立ちます。This information can help you determine whether a value in the template is being incorrectly set.

Azure CLIAzure CLI

現在、Azure CLI はデバッグ ログの有効化をサポートしていませんが、デバッグ ログを取得できます。Currently, Azure CLI doesn't support turning on debug logging, but you can retrieve debug logging.

次のコマンドでデプロイ操作を確認します。Examine the deployment operations with the following command:

az deployment operation group list \
  --resource-group examplegroup \
  --name exampledeployment

次のコマンドを使用して、要求の内容を確認します。Examine the request content with the following command:

az deployment operation group list \
  --name exampledeployment \
  -g examplegroup \
  --query [].properties.request

次のコマンドを使用して、応答の内容を確認します。Examine the response content with the following command:

az deployment operation group list \
  --name exampledeployment \
  -g examplegroup \
  --query [].properties.response

入れ子になったテンプレートNested template

入れ子になったテンプレートのデバッグ情報をログに記録するには、debugSetting 要素を使用します。To log debug information for a nested template, use the debugSetting element.

{
  "type": "Microsoft.Resources/deployments",
  "apiVersion": "2020-10-01",
  "name": "nestedTemplate",
  "properties": {
    "mode": "Incremental",
    "templateLink": {
      "uri": "{template-uri}",
      "contentVersion": "1.0.0.0"
    },
    "debugSetting": {
       "detailLevel": "requestContent, responseContent"
    }
  }
}

トラブルシューティング用テンプレートの作成Create a troubleshooting template

場合によっては、テンプレートのトラブルシューティングの最も簡単な方法は、テンプレートの一部をテストすることです。In some cases, the easiest way to troubleshoot your template is to test parts of it. エラーの原因と考えられる部分に注目できる簡略化されたテンプレートを作成できます。You can create a simplified template that enables you to focus on the part that you believe is causing the error. たとえば、リソースの参照時にエラーが発生しているとします。For example, suppose you're receiving an error when referencing a resource. この場合、テンプレート全体を処理するのではなく、問題の原因と考えられる部分を返すテンプレートを作成します。Rather than dealing with an entire template, create a template that returns the part that may be causing your problem. これにより、適切なパラメーターを渡しているかどうか、テンプレート関数を正しく使用しているかどうか、求めているリソースを取得しているかどうかを確認できます。It can help you determine whether you're passing in the right parameters, using template functions correctly, and getting the resource you expect.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
  "storageName": {
    "type": "string"
  },
  "storageResourceGroup": {
    "type": "string"
  }
  },
  "variables": {},
  "resources": [],
  "outputs": {
  "exampleOutput": {
    "value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageName')), '2016-05-01')]",
    "type" : "object"
  }
  }
}

または、設定が誤っている依存関係に関連すると思われるデプロイ エラーが発生しているとします。Or, suppose you're getting deployment errors that you believe are related to incorrectly set dependencies. テンプレートをテストするには、これを簡略化されたテンプレートに分解します。Test your template by breaking it into simplified templates. 最初に、1 つのリソース (SQL Server など) のみをデプロイするテンプレートを作成します。First, create a template that deploys only a single resource (like a SQL Server). そのリソースを正しく定義したことを確認したら、それに依存するリソース (SQL Database など) を追加します。When you're sure you have that resource correctly defined, add a resource that depends on it (like a SQL Database). これら 2 つのリソースを正しく定義したことを確認したら、その他の依存リソース (監査ポリシーなど) を追加します。When you have those two resources correctly defined, add other dependent resources (like auditing policies). 各テスト デプロイの合間に、リソース グループを削除して、依存関係を適切にテストしていることを確認します。In between each test deployment, delete the resource group to make sure you adequately testing the dependencies.

次のステップNext steps