Azure Load Balancer のトラブルシューティングTroubleshoot Azure Load Balancer

重要

Azure Load Balancer では、2 種類がサポートされています。Basic と Standard です。Azure Load Balancer supports two different types: Basic and Standard. この記事では、Basic Load Balancer について説明します。This article discusses Basic Load Balancer. Standard Load Balancer について詳しくは、Standard Load Balancer の概要に関するページをご覧ください。For more information about Standard Load Balancer, see Standard Load Balancer overview.

このページには、Azure Load Balancer についてよく寄せられる質問のトラブルシューティング情報が示されています。This page provides troubleshooting information for common Azure Load Balancer questions. Load Balancer の接続が利用できない場合の最も一般的な症状を次に示します。When the Load Balancer connectivity is unavailable, the most common symptoms are as follows:

  • Load Balancer の背後にある VM が正常性プローブに応答しないVMs behind the Load Balancer are not responding to health probes
  • Load Balancer の背後にある VM が構成済みポートのトラフィックに応答しないVMs behind the Load Balancer are not responding to the traffic on the configured port

バックエンド VM に対する外部クライアントがロード バランサーを通過するときは、クライアントの IP アドレスが通信に使用されます。When the external clients to the backend VMs go through the load balancer, the IP address of the clients will be used for the communication. クライアントの IP アドレスが NSG 許可リストに追加されていることを確認してください。Make sure the IP address of the clients are added into the NSG allow list.

症状:Load Balancer の背後にある VM が正常性プローブに応答しないSymptom: VMs behind the Load Balancer are not responding to health probes

バックエンド サーバーがロード バランサ― セットに参加するには、プローブ チェックを渡す必要があります。For the backend servers to participate in the load balancer set, they must pass the probe check. 正常性プローブの詳細については、Load Balancer のプローブに関するページをご覧ください。For more information about health probes, see Understanding Load Balancer Probes. 

Load Balancer バックエンド プール VM は、次のいずれかの理由によりプローブに応答しない可能性があります。The Load Balancer backend pool VMs may not be responding to the probes due to any of the following reasons:

  • Load Balancer バックエンド プール VM が正常でないLoad Balancer backend pool VM is unhealthy
  • Load Balancer バックエンド プール VM がプローブ ポートでリッスンしていないLoad Balancer backend pool VM is not listening on the probe port
  • ファイアウォール、またはネットワーク セキュリティ グループが Load Balancer バックエンド プール VM 上のポートをブロックしているFirewall, or a network security group is blocking the port on the Load Balancer backend pool VMs
  • Load Balancer の他の構成ミスOther misconfigurations in Load Balancer

原因 1:Load Balancer バックエンド プール VM が正常でないCause 1: Load Balancer backend pool VM is unhealthy

検証と解決策Validation and resolution

この問題を解決するには、参加している VM にログインし、VM の状態が正常かどうか、また、その VM が、プール内の他の VM からの PsPing または TCPing に応答できるかどうかを確認します。To resolve this issue, log in to the participating VMs, and check if the VM state is healthy, and can respond to PsPing or TCPing from another VM in the pool. VM が正常でない場合、またはプローブに応答できない場合、その VM を負荷分散に参加させるには、問題を解決してから、VM を正常な状態に戻す必要があります。If the VM is unhealthy, or is unable to respond to the probe, you must rectify the issue and get the VM back to a healthy state before it can participate in load balancing.

原因 2:Load Balancer バックエンド プール VM がプローブ ポートでリッスンしていないCause 2: Load Balancer backend pool VM is not listening on the probe port

VM の状態が正常であるにもかかわらず、プローブに応答していない場合、参加している VM のプローブ ポートが開いていないか、そのポート上で VM がリッスンしていないことが原因の 1 つとして考えられます。If the VM is healthy, but is not responding to the probe, then one possible reason could be that the probe port is not open on the participating VM, or the VM is not listening on that port.

検証と解決策Validation and resolution

  1. バックエンド VM にログインします。Log in to the backend VM.
  2. コマンド プロンプトを開き、次のコマンドを実行して、プローブ ポートでリッスンしているアプリケーションが存在しているかどうかを検証します。Open a command prompt and run the following command to validate there is an application listening on the probe port: 
    netstat -annetstat -an
  3. ポートの状態が "リッスン中" になっていない場合は、適切なポートを構成します。If the port state is not listed as LISTENING, configure the proper port.
  4. または、"リッスン中" として表示されている別のポートを選択し、ロード バランサ―の構成を適宜更新します。Alternatively, select another port, that is listed as LISTENING, and update load balancer configuration accordingly. 

原因 3:ファイアウォール、またはネットワーク セキュリティ グループが Load Balancer バックエンド プール VM 上のポートをブロックしているCause 3: Firewall, or a network security group is blocking the port on the load balancer backend pool VMs 

VM 上のファイアウォールがプローブ ポートをブロックしているか、サブネットまたは VM 上に構成された 1 つ以上のネットワーク セキュリティ グループが、ポートへのプローブのアクセスを許可していない場合、VM は正常性プローブに応答できません。If the firewall on the VM is blocking the probe port, or one or more network security groups configured on the subnet or on the VM, is not allowing the probe to reach the port, the VM is unable to respond to the health probe.

検証と解決策Validation and resolution

  • ファイアウォールが有効になっている場合は、プローブ ポートを許可するように構成されているかどうかを確認します。If the firewall is enabled, check if it is configured to allow the probe port. 許可する構成になっていない場合は、プローブ ポートのトラフィックを許可するように構成し、再度テストします。If not, configure the firewall to allow traffic on the probe port, and test again.
  • ネットワーク セキュリティ グループの一覧で、プローブ ポートの受信または送信トラフィックで干渉が発生していないかどうかを確認します。From the list of network security groups, check if the incoming or outgoing traffic on the probe port has interference.
  • また、サブネットまたは VM の NIC で、すべて拒否ネットワーク セキュリティ グループ ルールの優先順位が、LB プローブとトラフィックを許可する既定のルールよりも高くなっていないかどうかを確認します (ネットワーク セキュリティ グループでは、Load Balancer IP アドレス 168.63.129.16 が許可されている必要があります)。Also, check if a Deny All network security groups rule on the NIC of the VM or the subnet that has a higher priority than the default rule that allows LB probes & traffic (network security groups must allow Load Balancer IP of 168.63.129.16).
  • ルールのいずれかがプローブのトラフィックをブロックしている場合は、そのルールを削除し、プローブ トラフィックを許可するように再構成します。If any of these rules are blocking the probe traffic, remove and reconfigure the rules to allow the probe traffic. 
  • VM が正常性プローブに応答するようになったかどうかをテストします。Test if the VM has now started responding to the health probes.

原因 4:Load Balancer の他の構成ミスCause 4: Other misconfigurations in Load Balancer

上記の原因すべてを検証し、正しく解決したにもかかわらず、バックエンド VM が正常性プローブに応答しない場合は、手動で接続をテストし、トレースをいくつか収集して、接続状況を把握します。If all the preceding causes seem to be validated and resolved correctly, and the backend VM still does not respond to the health probe, then manually test for connectivity, and collect some traces to understand the connectivity.

検証と解決策Validation and resolution

  • VNet 内にある他の VM から Psping でプローブ ポートの応答をテストし (.\psping.exe-t 10.0.0.4:3389 など)、結果を記録します。Use Psping from one of the other VMs within the VNet to test the probe port response (example: .\psping.exe -t 10.0.0.4:3389) and record results.
  • VNet 内にある他の VM から TCPing でプローブ ポートの応答をテストし (.\tcping.exe 10.0.0.4 3389 など)、結果を記録します。Use TCPing from one of the other VMs within the VNet to test the probe port response (example: .\tcping.exe 10.0.0.4 3389) and record results.
  • この ping テストで応答がない場合は、次の操作を行いますIf no response is received in these ping tests, then
    • 同じ VNet のターゲット バックエンド プール VM と他のテスト VM で同時 Netsh トレースを実行します。Run a simultaneous Netsh trace on the target backend pool VM and another test VM from the same VNet. ここで、しばらくの間 PsPing テストを実行し、ネットワーク トレースをいくつか収集して、テストを停止します。Now, run a PsPing test for some time, collect some network traces, and then stop the test.
    • ネットワーク キャプチャを分析し、ping クエリに関連する受信パケットと送信パケットの両方があるかどうかを確認します。Analyze the network capture and see if there are both incoming and outgoing packets related to the ping query.
      • バックエンド プール VM に受信パケットがない場合は、トラフィックをブロックしているネットワーク セキュリティ グループまたは UDR の構成ミスが存在する可能性があります。If no incoming packets are observed on the backend pool VM, there is potentially a network security groups or UDR mis-configuration blocking the traffic.
      • バックエンド プール VM に送信パケットがない場合は、関連のない問題 (アプリケーションがプローブ ポートをブロックしている、など) が VM にないかどうかを確認する必要があります。If no outgoing packets are observed on the backend pool VM, the VM needs to be checked for any unrelated issues (for example, Application blocking the probe port).
    • プローブが、ロード バランサーに到達する前に、他の場所に (おそらく UDR 設定によって) 強制的に転送されていないかどうかを確認します。Verify if the probe packets are being forced to another destination (possibly via UDR settings) before reaching the load balancer. この場合、トラフィックは、バックエンド VM に到達しません。This can cause the traffic to never reach the backend VM.
  • プローブの種類を (たとえば、HTTP から TCP に) 変更し、ネットワーク セキュリティ グループ ACL とファイアウォールの対応するポートを、プローブ応答の構成に問題があるかどうかを検証するように構成します。Change the probe type (for example, HTTP to TCP), and configure the corresponding port in network security groups ACLs and firewall to validate if the issue is with the configuration of probe response. 正常性プローブ構成の詳細については、正常性プローブ構成のエンドポイント負荷分散に関するページをご覧ください。For more information about health probe configuration, see Endpoint Load Balancing health probe configuration.

症状:Load Balancer の背後にある VM が構成済みデータ ポートのトラフィックに応答しないSymptom: VMs behind Load Balancer are not responding to traffic on the configured data port

バックエンド プール VM が正常として表示され、正常性プローブに応答するにもかかわらず、負荷分散に参加していない、またはデータ トラフィックに応答していない場合は、次のいずれかが原因である可能性があります。If a backend pool VM is listed as healthy and responds to the health probes, but is still not participating in the Load Balancing, or is not responding to the data traffic, it may be due to any of the following reasons:

  • Load Balancer バックエンド プール VM がデータ ポートでリッスンしていないLoad Balancer Backend pool VM is not listening on the data port
  • ネットワーク セキュリティ グループが Load Balancer バックエンド プール VM 上のポートをブロックしているNetwork security group is blocking the port on the Load Balancer backend pool VM 
  • 同じ VM と NIC から Load Balancer にアクセスしているAccessing the Load Balancer from the same VM and NIC
  • 参加している Load Balancer バックエンド プール VM からインターネット Load Balancer フロントエンドにアクセスしているAccessing the Internet Load Balancer frontend from the participating Load Balancer backend pool VM

原因 1:Load Balancer バックエンド プール VM がデータ ポートでリッスンしていないCause 1: Load Balancer backend pool VM is not listening on the data port

VM がデータ トラフィックに応答しない場合、その原因としては、参加している VM でターゲット ポートが開いていない、または VM がそのポートでリッスンしていないことが考えられます。If a VM does not respond to the data traffic, it may be because either the target port is not open on the participating VM, or, the VM is not listening on that port.

検証と解決策Validation and resolution

  1. バックエンド VM にログインします。Log in to the backend VM.
  2. コマンド プロンプトを開き、次のコマンドを実行して、データ ポートでリッスンしているアプリケーションが存在しているかどうかを検証します。  netstat -anOpen a command prompt and run the following command to validate there is an application listening on the data port:  netstat -an
  3. そのポートに "リッスン中" 状態が表示されていない場合は、適切なリスナー ポートを構成しますIf the port is not listed with State “LISTENING”, configure the proper listener port
  4. ポートが "リッスン中" としてマークされている場合は、そのポートのターゲット アプリケーションに問題がないかどうかを確認します。If the port is marked as Listening, then check the target application on that port for any possible issues.

原因 2:ネットワーク セキュリティ グループが Load Balancer バックエンド プール VM 上のポートをブロックしているCause 2: Network security group is blocking the port on the Load Balancer backend pool VM 

サブネットまたは VM で構成されている 1 つ以上のネットワーク セキュリティ グループが、発信元 IP またはポートをブロックしている場合、VM は応答できません。If one or more network security groups configured on the subnet or on the VM, is blocking the source IP or port, then the VM is unable to respond.

パブリック ロード バランサーの場合、クライアントとロード バランサーのバックエンド VM の間の通信には、インターネット クライアントの IP アドレスが使用されます。For the public load balancer, the IP address of the Internet clients will be used for communication between the clients and the load balancer backend VMs. クライアントの IP アドレスがバックエンド VM のネットワーク セキュリティ グループで許可されていることを確認してください。Make sure the IP address of the clients are allowed in the backend VM's network security group.

  1. バックエンド VM で構成されているネットワーク セキュリティ グループを一覧表示します。List the network security groups configured on the backend VM. 詳しくは、ネットワーク セキュリティ グループの管理に関する記事をご覧ください。For more information, see Manage network security groups
  2. ネットワーク セキュリティ グループの一覧で、次を確認します。From the list of network security groups, check if:
    • データ ポートの受信または送信トラフィックで干渉が発生していないかどうか。the incoming or outgoing traffic on the data port has interference.
    • サブネットまたは VM の NIC で、すべて拒否ネットワーク セキュリティ グループ ルールの優先順位が、Load Balancer プローブとトラフィックを許可する既定のルールよりも高くなっていないかどうか (ネットワーク セキュリティ グループでは、プローブ ポートである Load Balancer IP アドレス 168.63.129.16 が許可されている必要があります)a Deny All network security group rule on the NIC of the VM or the subnet that has a higher priority that the default rule that allows Load Balancer probes and traffic (network security groups must allow Load Balancer IP of 168.63.129.16, that is probe port)
  3. ルールのいずれかがトラフィックをブロックしている場合は、そのルールを削除し、データ トラフィックを許可するように再構成します。If any of the rules are blocking the traffic, remove and reconfigure those rules to allow the data traffic. 
  4. VM が正常性プローブに応答するようになったかどうかをテストします。Test if the VM has now started to respond to the health probes.

原因 3:同じ VM とネットワーク インターフェイスから Load Balancer にアクセスしているCause 3: Accessing the Load Balancer from the same VM and Network interface

Load Balancer のバックエンド VM でホストされているアプリケーションが、同じネットワーク インターフェイスを介して同じバックエンド VM でホストされている別のアプリケーションにアクセスしようとすると、失敗します。このシナリオはサポートされていません。If your application hosted in the backend VM of a Load Balancer is trying to access another application hosted in the same backend VM over the same Network Interface, it is an unsupported scenario and will fail.

解決策: この問題を解決するには、次のいずれかの方法を使用します。Resolution You can resolve this issue via one of the following methods:

  • アプリケーションごとに個別のバックエンド プール VM を構成する。Configure separate backend pool VMs per application.
  • 各アプリケーションが独自のネットワーク インターフェイスと IP アドレスを使用していたように、デュアル NIC VM でアプリケーションを構成する。Configure the application in dual NIC VMs so each application was using its own Network interface and IP address.

原因 4:参加している Load Balancer バックエンド プール VM から内部 Load Balancer フロントエンドにアクセスしているCause 4: Accessing the internal Load Balancer frontend from the participating Load Balancer backend pool VM

内部 Load Blancer が VNet 内で構成され、参加しているバックエンド VM の 1 つが内部 Load Balancer フロントエンドにアクセスしようとしている場合は、エラーが発生し、アクセス元の VM にフローがマップされます。If an internal Load Balancer is configured inside a VNet, and one of the participant backend VMs is trying to access the internal Load Balancer frontend, failures can occur when the flow is mapped to the originating VM. このシナリオはサポートされません。This scenario is not supported. 詳しくは、「制限事項」をご覧ください。Review limitations for a detailed discussion.

解決策: このシナリオをブロック解除するには、プロキシの使用などいくつかの方法があります。Resolution There are several ways to unblock this scenario, including using a proxy. Application Gateway または他のサードパーティ製プロキシ (nginx や haproxy など) を評価してください。Evaluate Application Gateway or other 3rd party proxies (for example, nginx or haproxy). Application Gateway の詳細については、「Application Gateway の概要」を参照してくださいFor more information about Application Gateway, see Overview of Application Gateway

その他のネットワーク キャプチャAdditional network captures

サポート ケースを開く場合は、迅速に解決できるように次の情報を収集します。If you decide to open a support case, collect the following information for a quicker resolution. 1 つのバックエンド VM を選択して、次のテストを実行してください。Choose a single backend VM to perform the following tests:

  • VNet 内にあるバックエンド VM から Psping でプローブ ポートの応答をテストし (psping 10.0.0.4:3389 など)、結果を記録します。Use Psping from one of the backend VMs within the VNet to test the probe port response (example: psping 10.0.0.4:3389) and record results.
  • この ping テストで応答がなかった場合は、PsPing を実行しながら、バックエンド VM と VNet テスト VM で同時 Netsh トレースを実行し、その後、Netsh トレースを停止します。If no response is received in these ping tests, run a simultaneous Netsh trace on the backend VM and the VNet test VM while you run PsPing then stop the Netsh trace.

次のステップNext steps

前の手順で問題を解決できない場合は、 サポート チケットを開きます。If the preceding steps do not resolve the issue, open a support ticket.