Устранение распространенных ошибок развертывания в Azure с помощью Azure Resource Manager | Microsoft AzureTroubleshoot 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.

Примечание

Эта статья была изменена и теперь содержит сведения о новом модуле Az для Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Вы по-прежнему можете использовать модуль AzureRM, исправления ошибок для которого будут продолжать выпускаться как минимум до декабря 2020 г.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 (Знакомство с новым модулем Az для Azure PowerShell).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.

Коды ошибокError codes

Код ошибкиError code УстранениеMitigation Дополнительные сведенияMore information
AccountNameInvalidAccountNameInvalid Следуйте ограничениям для имен учетных записей хранения.Follow naming restrictions for storage accounts. Устранение ошибок, связанных с именами учетных записей храненияResolve storage account name
AccountPropertyCannotBeSetAccountPropertyCannotBeSet Проверьте доступные свойства учетной записи хранения.Check available storage account properties. Справочник по шаблонам Microsoft.Storage/storageAccountsstorageAccounts
AllocationFailedAllocationFailed Кластер или регион не имеют доступных ресурсов или не поддерживают запрашиваемый размер виртуальной машины.The cluster or region doesn't have resources available or can't support the requested VM size. Повторите запрос позже или укажите другой размер виртуальной машины.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.
Управление доступом на основе ролей в AzureAzure Role-Based Access Control

Устранение ошибок регистрации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
КонфликтConflict  Запрашиваемая операция не разрешена в текущем состоянии ресурса.You're requesting an operation that isn't allowed in the resource's current state. Например, изменение размера диска разрешено только при создании или освобождении виртуальной машины.For example, disk resizing is allowed only when creating a VM or when the VM is deallocated.
деплойментактивеандунедитаблеDeploymentActiveAndUneditable Дождитесь завершения параллельного развертывания в эту группу ресурсов.Wait for concurrent deployment to this resource group to complete.
деплойментфаиледклеанупDeploymentFailedCleanUp При развертывании в полном режиме все ресурсы, не находящимся в шаблоне, удаляются.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 ManagerAzure Resource Manager deployment modes
деплойментнамеинвалидчарактерсDeploymentNameInvalidCharacters Имя развертывания может содержать только буквы, цифры, символы "-", "." и "".The deployment name can only contain letter, digit, '-', '.' or ''.
деплойментнамеленгслимитексцеедедDeploymentNameLengthLimitExceeded Длина имен развертывания ограничена 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. Устранять ошибку, если число развертываний превышает 800Resolve error when deployment count exceeds 800
DnsRecordInUseDnsRecordInUse  Имя записи DNS должно быть уникальным.The DNS record name must be unique. Введите другое имя.Enter a different name.
ImageNotFoundImageNotFound  Проверьте параметры образа виртуальной машины.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.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
инвалиддеплойментлокатионInvalidDeploymentLocation При развертывании на уровне подписки вы указали другое расположение для ранее использованного имени развертывания.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. Например, пароля может быть недостаточно или имя большого двоичного объекта может быть неверным.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
LinkedAuthorizationFailedLinkedAuthorizationFailed  Проверьте, принадлежит ли ваша учетная запись к тому же клиенту, что и группа ресурсов, в которую выполняется развертывание.Check if your account belongs to the same tenant as the resource group that you're deploying to.
LinkedInvalidPropertyIdLinkedInvalidPropertyId  Идентификатор ресурса не удается разрешить правильно.The resource ID for a resource isn't resolving correctly. Убедитесь, что указаны все обязательные значения для идентификатора ресурса, включая идентификатор подписки, имя группы ресурсов, тип ресурса, имя родительского ресурса (если необходимо) и имя ресурса.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. Если шаблон содержит параметр защищенной строки, не нужно преобразовывать значение в защищенную строку.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 (например, размер виртуальной машины), который доступен в выбранном расположении.Select SKU (such as VM size) that is available for the location you've selected. Устранение ошибок, связанных с недоступностью номера SKUResolve 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  Виртуальная машина может иметь только одну виртуальную сеть.A virtual machine can only have one virtual network. При развертывании нескольких сетевых адаптеров убедитесь, что они принадлежат той же виртуальной сети.When deploying several NICs, make sure they belong to the same virtual network. Использование нескольких сетевых адаптеровMultiple NICs
TemplateResourceCircularDependencyTemplateResourceCircularDependency Удалите ненужные зависимости.Remove unnecessary dependencies. Устранение циклических зависимостейResolve circular dependencies
TooManyTargetResourceGroupsTooManyTargetResourceGroups Уменьшите количество групп ресурсов для одного развертывания.Reduce number of resource groups for a single deployment. Развертывание в нескольких группах ресурсовCross resource group deployment

Поиск кода ошибкиFind error code

Существует два типа ошибок, которые могут произойти: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.

Ошибки обоих типов возвращают код ошибки, с помощью которого можно устранить неполадки развертывания.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 group deployment operation 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. Обратите внимание, что имеется два кода ошибки.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. Второй код ошибки (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.

Инфраструктура CLI AzureAzure 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 group deployment operation list \
  --resource-group examplegroup \
  --name exampledeployment

Проверьте содержимое запроса с помощью следующей команды:Examine the request content with the following command:

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

Проверьте содержимое ответа с помощью следующей команды:Examine the response content with the following command:

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

Вложенный шаблонNested template

Чтобы вести журнал отладочной информации для вложенного шаблона, используйте элемент debugSetting.To log debug information for a nested template, use the debugSetting element.

{
    "apiVersion": "2016-09-01",
    "name": "nestedTemplate",
    "type": "Microsoft.Resources/deployments",
    "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/2015-01-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. Сначала создайте шаблон, который развертывает только один ресурс (например, SQL Server).First, create a template that deploys only a single resource (like a SQL Server). Если вы уверены, что ресурс правильно определен, добавьте зависящий от него ресурс (например, базу данных SQL).When you're sure you have that resource correctly defined, add a resource that depends on it (like a SQL Database). Проверив правильность определения этих двух ресурсов, добавьте другие зависимые ресурсы (например, политики аудита).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