Устранение неполадок с состоянием развертывания Microsoft.Network в Azure

Эта статья поможет вам понять смысл различных состояний предоставления для ресурсов Microsoft.Network. Вы можете эффективно устранять неполадки при сбое состояния.

Если проблема Azure не устранена в этой статье, посетите форумы Azure на форумах Microsoft Q и A и Stack Overflow. Описание своей проблемы можно опубликовать на этих форумах или написать в Twitter (@AzureSupport). Также можно отправить запрос в службу поддержки Azure. Чтобы отправить такой запрос, на странице поддержки Azure щелкните Получить поддержку.

Состояния настройки

Состояние подготовки — это состояние операции на плоскости управления, инициируемой пользователем, на ресурсе Azure Resource Manager.

Состояние настройки Описание
Обновление Ресурс создается или обновляется.
Неудача Последняя операция с ресурсом не была успешной.
Удалось Последняя операция с ресурсом прошла успешно.
Удаление Удаляется ресурс.
Миграция Наблюдалось при переходе из Azure Service Manager в Azure Resource Manager.

Эти состояния являются свойствами метаданных ресурса. Они не зависят от функциональных возможностей самого ресурса. Состояние сбоя не обязательно означает, что ресурс не работает. В большинстве случаев он может продолжать работать и обслуживать трафик без проблем.

В нескольких сценариях, если ресурс находится в состоянии сбоя, дальнейшие операции с ресурсом или другими ресурсами, которые зависят от него, могут завершиться ошибкой. Перед выполнением других операций необходимо вернуть состояние в режим успешности.

Например, невозможно выполнить операцию на VirtualNetworkGateway, если у него есть зависимый VirtualNetworkGatewayConnection объект в состоянии сбоя.

Восстановление успешного состояния с помощью операции PUT

Чтобы восстановить успешное состояние, выполните другую операцию записи (PUT) в ресурсе.

Проблема, которая вызвала предыдущую операцию, больше не будет актуальной. Более новая операция записи должна быть успешной и восстановить состояние провизионирования.

Проще всего выполнить эту задачу с помощью Azure PowerShell. Выдача команды Get для конкретного ресурса, которая извлекает всю текущую конфигурацию ресурса. Затем выполните команду Set или эквивалентную, чтобы зафиксировать операцию записи Azure, содержащую все свойства ресурса, настроенные в данный момент.

Это важно

  • Set Выполнение команды на ресурсе без предварительного запуска Get приводит к перезаписи ресурса с параметрами по умолчанию. Эти параметры могут отличаться от настроенных в данный момент. Не запускайте команду Set, если вы не собираетесь сбросить настройки на значения по умолчанию.
  • Get и Set выполнение операции с использованием стороннего программного обеспечения или любого инструмента, использующего более старую версию API, также может привести к потере некоторых настроек. Эти параметры могут не присутствовать в версии API, с помощью которой выполняется команда.

Командлеты Azure PowerShell для восстановления состояния успешного предоставления

В шагах и примерах в этой статье используются модули Az для Azure PowerShell. Чтобы установить модули Az локально, см. статью Установка Azure PowerShell. Дополнительные сведения о новом модуле Az см. в статье Знакомство с новым модулем Azure PowerShell Az. Командлеты PowerShell обновляются с высокой частотой. Если вы не используете последнюю версию, применение значений, указанных в инструкциях, может привести к сбою. Чтобы найти установленные в системе версии PowerShell, используйте командлет Get-Module -ListAvailable Az.

Предварительные операции

  1. Установите последнюю версию командлетов PowerShell для Azure Resource Manager. Дополнительные сведения см. в статье Установка модуля Azure Az PowerShell.

  2. Откройте консоль PowerShell с повышенными привилегиями и подключитесь к учетной записи. Для подключения используйте следующий пример кода:

    Connect-AzAccount
    
  3. Если у вас несколько подписок Azure, проверьте подписки вашей учетной записи.

    Get-AzSubscription
    
  4. укажите подписку, которую нужно использовать;

    Select-AzSubscription -SubscriptionName "Replace_with_your_subscription_name"
    
  5. Выполните команды, относящиеся к ресурсу, в следующих разделах, чтобы сбросить состояние подготовки.

Примечание.

Каждая примерная команда в этой статье использует your_resource_name имя ресурса и your_resource_group_name имя группы ресурсов. Обязательно замените эти строки соответствующими именами ресурсов и групп ресурсов для развертывания.

Microsoft.Network/applicationGateways

Get-AzApplicationGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzApplicationGateway

Microsoft.Network/applicationGatewayWebApplicationFirewallPolicies

Get-AzApplicationGatewayFirewallPolicy -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzApplicationGatewayFirewallPolicy

Microsoft.Network/azureFirewalls

Get-AzFirewall -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzFirewall

Microsoft.Network/бастионHosts

$bastion = Get-AzBastion -Name "your_resource_name" -ResourceGroupName "your_resource_group_name"
Set-AzBastion -InputObject $bastion

Microsoft.Network/connections

Get-AzVirtualNetworkGatewayConnection -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzVirtualNetworkGatewayConnection

Microsoft.Network/expressRouteCircuits

Get-AzExpressRouteCircuit -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzExpressRouteCircuit

Microsoft.Network/expressRouteGateways

Get-AzExpressRouteGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzExpressRouteGateway

Примечание.

Microsoft.Network/expressRouteGateways развертываются в виртуальной WAN-сети. Если у вас есть автономный шлюз ExpressRoute в виртуальной сети, выполните команды, связанные с Microsoft.Network/virtualNetworkGateways.

Microsoft.Network/expressRoutePorts

Get-AzExpressRoutePort -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzExpressRoutePort

Microsoft.Network/firewallPolicies

Get-AzFirewallPolicy -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzFirewallPolicy

Microsoft.Network/loadBalancers

Get-AzLoadBalancer -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzLoadBalancer

Microsoft.Network/localNetworkGateways

Get-AzLocalNetworkGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzLocalNetworkGateway

Microsoft.Network/natGateways

Get-AzNatGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzNatGateway

Microsoft.Network/networkInterfaces

Get-AzNetworkInterface -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzNetworkInterface

Microsoft.Network/networkSecurityGroups

Get-AzNetworkSecurityGroup -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzNetworkSecurityGroup

Microsoft.Network/networkVirtualAppliances

Get-AzNetworkVirtualAppliance -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzNetworkVirtualAppliance

Примечание.

Большинство ресурсов, связанных с виртуальной глобальной сетью, таких как networkVirtualAppliances, используют командлет Update для операций записи, а не Set.

Microsoft.Network/privateDnsZones

Get-AzPrivateDnsZone -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPrivateDnsZone

Microsoft.Network/privateEndpoints

Get-AzPrivateEndpoint -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPrivateEndpoint

Microsoft.Network/privateLinkServices

Get-AzPrivateLinkService -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPrivateLinkService

Microsoft.Network/publicIpAddresses

Get-AzPublicIpAddress -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzPublicIpAddress

Microsoft.Network/routeFilters

Get-AzRouteFilter -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzRouteFilter

Microsoft.Network/routeTables

Get-AzRouteTable -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzRouteTable

Microsoft.Network/virtualHubs

Get-AzVirtualHub -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVirtualHub

Примечание.

Большинство связанных ресурсов виртуальной глобальной сети, таких как virtualHubs, используют Update командлет, а не Set, для операций записи.

Microsoft.Network/virtualNetworkGateways

Get-AzVirtualNetworkGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzVirtualNetworkGateway

Microsoft.Network/virtualNetworks

Get-AzVirtualNetwork -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Set-AzVirtualNetwork

Microsoft.Network/virtualWans

Get-AzVirtualWan -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVirtualWan

Примечание.

Большинство ресурсов, связанных с виртуальной глобальной сетью, таких как virtualWans, используют командлет Update, а не Set, для операций записи.

Microsoft.Network/vpnGateways

Get-AzVpnGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVpnGateway

Примечание.

  • Microsoft.Network/vpnGateways развертываются в виртуальной сети WAN. Если у вас есть автономный VPN-шлюз в виртуальной сети, выполните команды, связанные с Microsoft.Network/virtualNetworkGateways.
  • Большинство ресурсов, связанных с Виртуальной WAN, таких как vpnGateways, используют командлет Update для операций записи, а не Set.

Microsoft.Network/vpnSites

Get-AzVpnSite -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVpnSite

Примечание.

Большинство ресурсов, связанных с виртуальной глобальной сетью, таких как vpnSites, используют командлет Update, а не Set для операций записи.

Дальнейшие действия

Если выполненная команда не устранила состояние сбоя, он должен вернуть код ошибки. Большинство кодов ошибок содержат подробное описание того, в чем может заключаться проблема, и предлагают подсказки для её решения.

Если у вас по-прежнему возникают проблемы, откройте запрос в службу поддержки Майкрософт. Укажите агент поддержки как код ошибки, полученный в последней операции, так и метку времени при выполнении операции.