プライベート エンドポイントに対するロード テストの実行で生じた問題のトラブルシューティングを行います。
この記事では、Azure Load Testing を使用してプライベート アプリケーション エンドポイントに対してロード テストを実行するときに発生する可能性がある問題について説明します。 Azure Load Testing サービスは、アプリケーション エンドポイントを含む仮想ネットワークで負荷を生じさせるのに必要な Azure リソースを挿入します。 このプロセスでは、仮想ネットワークの構成とロールベースのアクセス制御 (RBAC) アクセス許可に関連するいくつかの問題が発生する可能性があります。
Azure Load Testing サービスでは、仮想ネットワークから次の宛先への送信接続が必要です。
宛先 | 接続の必要性 |
---|---|
*.azure.com | Azure Load Testing サービスが Azure Batch サービスと対話するには、この宛先へのアクセスが必要です。 |
*.windows.net | Azure Load Testing サービスが Azure Service Bus、Azure Event Grid、Azure Storage と対話するには、この宛先へのアクセスが必要です。 これらのサービスのファイアウォール構成の詳細については、次を参照してください |
*.azurecr.io | Azure Load Testing サービスが Azure Container Registry と対話するには、この宛先へのアクセスが必要です。 Azure Container Registry でのファイアウォール構成の詳細については、次を参照してください |
テスト構成に含まれているプラグインをダウンロードするには、必要に応じて *.maven.org と *.github.com への送信接続が必要です。
Note
Azure Government リージョンの場合、*.azure.us、*.usgovcloudapi.net、*.azurecr.us への送信接続を確認してください。 Azure Government エンドポイントの詳細については、「開発者向けガイダンス」を参照してください。
Azure 仮想マシンをデプロイして仮想ネットワークからの接続のトラブルシューティングを行う
仮想ネットワークから接続をテストするには:
Azure Load Testing のテスト構成で使用しているサブネットにパブリック IP を持つ仮想マシンを作成します。 この仮想マシンは、ネットワーク接続の診断にのみ使用され、トラブルシューティング後に削除できます。 Azure Load Testing サービスでは、負荷を生成するためにこの仮想マシンを使用しません。
次の Azure CLI コマンドを実行して、仮想マシンを作成します。
az vm create --resource-group <your-resource-group> --name <your-virtual-machine-name> --image UbuntuLTS --generate-ssh-keys --subnet <your-subnet>
仮想マシンには任意の種類を指定できます。
Azure Bastion を使用して仮想マシンにログインします。
仮想マシンから azure.com への送信接続をテストする
ドメイン ネーム システム (DNS) 参照を検証するには、次のコマンドを実行します
nslookup azure.com
azure.com に関連付けられた IP アドレスが返された場合は、接続が成功したことを示します。
次のコマンドを実行して、'azure.com' への接続を検証します。
curl azure.com -I
HTTP 応答は、接続が成功したことを示します。
- 'windows.net' と 'azurecr.io' の手順 3 を繰り返して、これらの宛先への DNS 参照と接続を検証します。
他の方法を使用して、サブネットから *.azure.com、*.windows.net、*.azurecr.io への接続を確保することもできます。
接続テストの実行中に、ポリシーの制約またはファイアウォールの制限により問題が発生する可能性があります。 エラー メッセージに従って、必要な修正アクションを実行し、接続テストを再試行します。
アクション可能なエラー メッセージを使用した問題のトラブルシューティング
ロード テストの作成または更新が Subscription not registered with Microsoft.Batch (ALTVNET001)
で失敗する
仮想ネットワークでロード テストを構成する場合、サブスクリプションを Microsoft.Batch
に登録する必要があります。
数分後にロード テストをもう一度作成または更新してみます。
エラーが解決しない場合は、手動で
Microsoft.Batch
リソース プロバイダーにサブスクリプションを登録するための手順に従います。
ロード テストの作成または更新が Subnet is not in the Succeeded state (ALTVNET002)
で失敗する
ロード テストに使用しているサブネットが Succeeded
状態ではなく、それにロード テストをデプロイする準備ができていません。
サブネットの状態を確認します。
状態を確認するには、次の Azure CLI コマンドを実行します。 結果は
Succeeded
となるはずです。az network vnet subnet show -g MyResourceGroup -n MySubnet --vnet-name MyVNet
サブネットに関する問題をすべて解決します。 サブネットを作成したばかりの場合は、数分後にもう一度状態を確認します。
または、ロード テスト用に別のサブネットを選びます。
ロード テストの作成または更新が Subnet is delegated to other service (ALTVNET003)
で失敗する
ロード テストのデプロイに使用するサブネットは、別の Azure サービスに委任できません。 既存の委任を削除するか、サービスに委任されていない別のサブネットを選びます。
サブネットの委任の追加または削除について詳細を確認します。
ロード テストの更新または開始が User doesn't have subnet/join/action permission on the virtual network (ALTVNET004)
で失敗する
ロード テストを更新または開始するには、Azure Load Testing を仮想ネットワークにデプロイするための十分な権限が必要です。 仮想ネットワークでは、 ネットワーク共同作成者 ロール、またはこのロールの親であることが必要です。
アクセス許可を確認するには、「Azure リソースへのユーザーのアクセスを確認する」を参照してください。
アカウントにネットワーク共同作成者ロールを割り当てるための手順に従います。
ロード テストの作成または更新が IPv6 enabled subnet not supported (ALTVNET005)
で失敗する
Azure Load Testing では、IPv6 対応サブネットはサポートされていません。 IPv6 が有効になっていない別のサブネットを選んでください。
ロード テストの作成または更新が NSG attached to subnet is not in Succeeded state (ALTVNET006)
で失敗する
サブネットに接続されているネットワーク セキュリティ グループ (NSG) が、Succeeded
状態ではありません。
NSG の状態を確認します。
状態を確認するには、次の Azure CLI コマンドを実行します。 結果は
Succeeded
となるはずです。az network nsg show -g MyResourceGroup -n MyNsg
NSG に関する問題をすべて解決します。 NSG またはサブネットを作成したばかりの場合は、数分後に状態をもう一度確認します。
または、別の NSG を選びます。
ロード テストの作成または更新が Route Table attached to subnet is not in Succeeded state (ALTVNET007)
で失敗する
サブネットに接続されているルート テーブルが Succeeded
状態ではありません。
ルート テーブルの状態を確認します。
状態を確認するには、次の Azure CLI コマンドを実行します。 結果は
Succeeded
となるはずです。az network route-table show -g MyResourceGroup -n MyRouteTable
ルート テーブルに関する問題をすべて解決します。 ルート テーブルまたはサブネットを作成したばかりの場合は、数分後にもう一度状態を確認します。
または、別のルート テーブルを選びます。
ロード テストの作成または更新が Subnet is in a different subscription than resource (ALTVNET011)
で失敗する
仮想ネットワークは、Azure ロード テスト リソースと同じサブスクリプションおよびリージョンにありません。 Azure 仮想ネットワークまたは Azure ロード テスト リソースを同じサブスクリプションおよびリージョンに移動するか、再作成してください。
プロビジョニングが An azure policy is restricting engine deployment to your subscription (ALTVNET012)
で失敗する
Azure ポリシーにより、サブスクリプションへのロード テスト エンジンのデプロイが制限されています。 ポリシーの制限事項を確認し、もう一度お試しください。 パブリック IP アドレス、Azure ロード バランサー、またはネットワーク セキュリティ グループのデプロイにポリシー制限がある場合は、これらのリソースのデプロイを無効にすることができます。 「ロード テストを構成するには」を参照してください。
プロビジョニングが Engines could not be deployed due to an error in subnet configuration (ALTVNET013)
で失敗する
サブネット構成でエラーが発生したため、ロード テスト エンジンのインスタンスをデプロイできませんでした。 サブネット構成を確認します。 問題が解決しない場合は、サポートでチケットをテストの実行 ID を含めて発行します。
サブネットの状態を確認します。
状態を確認するには、次の Azure CLI コマンドを実行します。 結果は
Succeeded
となるはずです。az network vnet subnet show -g MyResourceGroup -n MySubnet --vnet-name MyVNet
サブネットに関する問題をすべて解決します。 サブネットを作成したばかりの場合は、数分後にもう一度状態を確認します。
問題が解決しない場合は、オンライン カスタマー サポート リクエストを開きます。
サポート リクエスト内に、ロード テストの実行 ID を指定します。
ロード テストの開始が Subnet has {0} free IPs, {1} more free IP(s) required to run {2} engine instance load test (ALTVNET014)
で失敗する
Azure Load Testing に使用するサブネットには、テスト用のロード テスト エンジンの数に対応できる未割り当ての十分な IP アドレスが必要です。
サブネット設定を更新するための手順に従って、IP アドレス範囲を増やします。
ロード テストの開始が Management Lock is enabled on Resource Group of VNET (ALTVNET015)
で失敗する
仮想ネットワークを含むリソース グループにロックがある場合、サービスは仮想ネットワークにテスト エンジンの仮想マシンを挿入できません。 ロード テストを実行する前に、管理ロックを削除します。 Azure portal でロックを構成する方法について説明します。
ロード テストの開始が Insufficient public IP address quota in VNET subscription (ALTVNET016)
で失敗する
ロード テストを開始すると、Azure Load Testing は、アプリケーション エンドポイントを含む仮想ネットワークに次の Azure リソースを挿入します。
- テスト エンジンの仮想マシン。 これらの VM では、ロード テスト中にアプリケーション エンドポイントを呼び出します。
- パブリック IP アドレス。
- ネットワーク セキュリティ グループ (NSG)。
- Azure Load Balancer。
ロード テストで使用するサブスクリプションで使用可能なパブリック IP アドレスが少なくとも 1 つのクォータにあることを確認します。
ロード テストの開始が Subnet with name "AzureFirewallSubnet" cannot be used for load testing (ALTVNET017)
で失敗する
AzureFirewallSubnet サブネットは予約されており、Azure Load Testing には使用できません。 ロード テスト用に別のサブネットを選びます。
次のステップ
- プライベート エンドポイントをロード テストする方法について学習します。
- 仮想ネットワークに Azure Load Testing をデプロイするシナリオについて詳しく説明します。