パッチ API を使用して NSX Advanced Load Balancer のプールをアップグレードしているときに、504 エラーが発生する場合があります。

原因

アップグレードが失敗した後にログを確認すると、タイムアウト エラーが記録されています。プールのタイムアウト値を増やすと、504 エラーは発生しません。

同じ API オブジェクトに対して 1 分あたり 20 回を超えるパッチ アップグレード要求が行われると、パッチ呼び出しの処理時間が長くなる可能性があります。これにより、プールと仮想サービスに設定されたデフォルトのタイムアウトを最終的に超過し、504 の状態がクライアントに送信されます。要求の数が、NSX Advanced Load Balancer パッチ API が処理できる制限を超えた場合、タイムアウト エラーが発生します。

解決策

パッチを使用したアップグレード中の 504 エラーを解決するには、次の手順を実行します。

  • 特定のプールの 1 分あたりの更新 API のレートが 20 を超えないようにする必要があります。

  • 仮想サービスおよびプールのタイムアウト値を増やします。NSX Advanced Load Balancer のログを確認して、仮想サービスとプールの新しいタイムアウト値を確認します。