この記事は、Microsoft.Network リソースのさまざまなプロビジョニングの状態の意味を理解するのに役立ちます。 状態が失敗の場合に、トラブルシューティングを効果的に行うことができます。
この記事で Azure の問題に対処できない場合は、Microsoft Q & A および Stack Overflow の Azure 関連フォーラムを参照してください。 問題をこれらのフォーラムに投稿するか、または Twitter の @AzureSupport に投稿できます。 Azure サポート要求を送信することもできます。 サポート要求を送信するには、[Azure サポート] ページで [サポートを受ける] を選択します。
プロビジョニング状態
プロビジョニング状態とは、Azure Resource Manager リソース上でユーザーが開始したコントロール プレーン操作の状態のことです。
| プロビジョニングの状態 | 説明 |
|---|---|
| 更新中 | リソースが作成または更新中です。 |
| 失敗 | リソースに対する最後の操作が成功しませんでした。 |
| 成功 | リソースに対する最後の操作が成功しました。 |
| 削除中 | リソースが削除中です。 |
| 移行 | Azure Service Manager から Azure Resource Manager に移行するときに表示されます。 |
これらの状態は、リソースのメタデータ プロパティです。 これらは、リソース自体の機能から独立しています。 失敗状態であることは、必ずしもリソースが機能していないことを意味するものではありません。 ほとんどの場合、トラフィックの運用と処理を問題なく継続できます。
シナリオによっては、リソースが失敗状態である場合、そのリソースやそれに依存する他のリソースに対する追加の操作が失敗する可能性があります。 他の操作を実行する前に、状態を正常に戻す必要があります。
たとえば、VirtualNetworkGateway が失敗状態の依存 VirtualNetworkGatewayConnection オブジェクトを持つ場合、これに対して操作を実行することはできません。
PUT 操作による成功した状態の復元
成功状態を復元するには、リソースに対して別の書き込み (PUT) 操作を実行します。
前の操作の原因となった問題が最新ではなくなっている可能性があります。 より新しい書き込み操作が成功し、プロビジョニングの状態が復元されます。
このタスクを構成する最も簡単な方法は、Azure PowerShell を使用することです。 リソースの現在の構成をすべてフェッチするリソース固有の Get コマンドを発行します。 次に、Set コマンド (またはそれと同等のもの) を実行して、現在構成されているすべてのリソース プロパティを含む書き込み操作を Azure にコミットします。
重要
- 最初に
Getを実行せずにリソースに対してSetコマンドを実行すると、リソースが既定の設定で上書きされます。 これらの設定は、現在構成されているものとは異なる場合があります。 既定値にリセットする場合を除き、Setコマンドを実行しないでください。 - サードパーティ製ソフトウェア、または古い API バージョンを使用するツールを使用して
GetおよびSet操作を実行すると、一部の設定が失われる可能性もあります。 これらの設定は、コマンドを実行する API バージョンに存在しない可能性があります。
成功のプロビジョニング状態を復元するための Azure PowerShell コマンドレット
この記事の手順と例では、Azure PowerShell Az モジュールが使用されます。 Az モジュールをご利用のコンピューターにローカルにインストールするには、Azure PowerShell のインストールに関するページを参照してください。 Az モジュールの詳細については、「新しい Azure PowerShell Az モジュールの概要」を参照してください。 PowerShell コマンドレットは、頻繁に更新されます。 最新バージョンを実行していないと、手順で指定されている値は失敗する場合があります。 システムにインストールされている PowerShell のバージョンを確認するには、Get-Module -ListAvailable Az コマンドレットを使用します。
準備中の操作
Azure Resource Manager PowerShell コマンドレットの最新版をインストールしてください。 詳細については、「Azure Az PowerShell モジュールをインストールする」を参照してください。
昇格された特権で PowerShell コンソールを開き、アカウントに接続します。 接続については、次の例を参考にしてください。
Connect-AzAccount複数の Azure サブスクリプションを所有している場合には、アカウントのサブスクリプションをすべて確認します。
Get-AzSubscription使用するサブスクリプションを指定します。
Select-AzSubscription -SubscriptionName "Replace_with_your_subscription_name"次のセクションでリソース固有のコマンドを実行して、プロビジョニングの状態をリセットします。
Note
この記事のすべてのサンプル コマンドでは、リソースの名前に 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/bastionHosts
$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 などの Virtual WAN 関連リソースのほとんどでは、書き込み操作に Set ではなく Update コマンドレットを使用します。
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 などの Virtual WAN 関連リソースのほとんどでは、書き込み操作に Set ではなく Update コマンドレットを使用します。
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 などの Virtual WAN 関連リソースのほとんどでは、書き込み操作に Set ではなく Update コマンドレットを使用します。
Microsoft.Network/vpnGateways
Get-AzVpnGateway -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVpnGateway
注意
Microsoft.Network/vpnGatewaysは仮想 WAN 内にデプロイされます。 仮想ネットワークにスタンドアロンの VPN ゲートウェイがある場合は、Microsoft.Network/virtualNetworkGateways に関連するコマンドを実行します。- vpnGateways などの Virtual WAN 関連リソースのほとんどでは、書き込み操作に
SetではなくUpdateコマンドレットを使用します。
Microsoft.Network/vpnSites
Get-AzVpnSite -Name "your_resource_name" -ResourceGroupName "your_resource_group_name" | Update-AzVpnSite
注意
vpnSites などの Virtual WAN 関連リソースのほとんどでは、書き込み操作に Set ではなく Update コマンドレットを使用します。
次の手順
実行したコマンドで失敗状態が解決されなかった場合は、エラー コードが返されます。 ほとんどのエラー コードには、問題の詳細な説明と、それを解決するためのヒントが含まれています。
それでも問題が解決されない場合は、Microsoft サポートでサポート チケットを申請してください。 サポート エージェントに、最後の操作で受け取ったエラー コードと、操作の実行時のタイムスタンプの両方を指定します。