Dépannage des problèmes HTTP de l'équilibreur de charge

Découvrez les problèmes HTTP associés aux équilibreurs de charge.

HTTP 400 - En-tête de demande ou témoin incorrect

Une solution possible consiste à augmenter la taille d'en-tête de demande HTTP de l'équilibreur de charge. Par défaut, la taille maximale est de 8 Ko, mais l'augmenter à 64 Ko résout le problème. Cette solution n'est prise en charge que pour HTTP. Vous pouvez créer une règle pour augmenter la taille de l'en-tête HTTP afin de résoudre cette erreur. Une règle de traitement des caractères spéciaux dans le nom d'en-tête peut également entraîner des erreurs similaires.

Pour plus d'informations, voir Règles d'en-tête HTTP.

Erreurs HTTP 502 de passerelle incorrecte

Outre la surveillance et la gestion, la journalisation de l'équilibrage de charge vous aide à identifier, isoler et résoudre les problèmes liés à votre infrastructure d'équilibreur de charge. La procédure suivante illustre comment dépanner une erreur 502 Bad Gateway détectée lors du déploiement d'une nouvelle application Web, example.com. Dans cet exemple, un équilibreur de charge public Oracle Cloud Infrastructure est utilisé en frontal dans un environnement de développement. La tâche échoue avec une erreur 502 Bad Gateway dans le navigateur. Dépannez le problème à l'aide des journaux d'accès et d'erreurs de l'équilibreur de charge, comme suit :

  1. Vérifiez l'erreur à l'aide de l'utilitaire curl, comme suit :
    curl -v http://example.com
    > GET / HTTP/1.1
    > Host: 192.0.2.99
    > User-Agent: curl/7.54.0
    > Accept: */*
    >
    < HTTP/1.1 502 Bad Gateway
    < Content-Type: text/html
    < Content-Length: 161
    < Connection: keep-alive
  2. Recherchez "lbStatusCode" et "backendStatusCode" dans les journaux d'accès et d'erreurs de l'équilibreur de charge.
    • Si les résultats incluent backendStatusCode: 502, alors :

      Causes possibles :

      • Le problème est dû à un serveur dorsal configuré de manière incorrecte.
      • Le serveur dorsal est probablement un autre mandataire inverse ou équilibreur de charge.

      Solutions possibles :

      • Examinez les journaux du mandataire en amont pour déterminer pourquoi l'erreur 502 est retournée.
      • Corrigez tous les problèmes du dernier serveur dorsal qui provoquent le retour d'une erreur 502 par le mandataire en amont.
    • Si les résultats incluent backendStatusCode: 504, alors :

      Causes possibles :

      • Lorsqu'une erreur 504 vient du serveur dorsal, cela indique généralement que le serveur dorsal est un autre mandataire ou une autre instance du service d'équilibreur de charge. Cette erreur se produit généralement lorsqu'un mandataire ne peut pas se connecter à un serveur en amont dans un délai spécifié.
      • Examinez les journaux du système en amont pour déterminer ce qui empêche la connexion du mandataire en amont au serveur dorsal.

      Solutions possibles :

      • Augmentez le délai de temporisation de connexion.
      • Déterminez pourquoi le système dorsal met plus de temps que d'habitude à répondre, à l'aide d'un utilitaire tel que tcpdump et d'outils d'application intégrés.
    • Si les résultats incluent backendStatusCode: 500, alors :
      Causes possibles :
      • Lorsqu'une erreur 500 vient du système dorsal, cela indique généralement une erreur côté serveur, communément appelée "Erreur de serveur interne". Cette erreur est généralement due aux applications dorsales.
      • Connexion impossible aux ressources en amont, telles que les bases de données, les API et les services.

      Solutions possibles :

      Résolvez le problème au niveau de l'application à l'origine de l'erreur.

    • Si les résultats incluent backendStatusCode: sans code d'erreur, alors :
      • En général, lorsqu'aucun code de statut de serveur dorsal n'accompagne lbStatusCode: 502, aucun système dorsal n'est disponible pour envoyer les connexions.
      • Vous remarquerez peut-être également un message No healthy backends available in associated backendSet dans les journaux d'erreurs de l'équilibreur de charge.
      • Assurez-vous que les serveurs dorsaux sont sains. Si les serveurs dorsaux sont sains, vérifiez que la vérification d'état est correctement configurée.

HTTP 504

L'erreur HTTP 504 indique généralement que le serveur dorsal est utilisé en tant qu'autre instance de mandataire ou de service d'équilibreur de charge. Cette erreur se produit généralement lorsqu'un mandataire ne peut pas se connecter à un serveur en amont dans un délai spécifié. Examinez les journaux du système en amont pour déterminer ce qui empêche la connexion du mandataire en amont au serveur dorsal.

Les solutions possibles sont les suivantes :

  • Augmentation du délai de temporisation de connexion.

  • Déterminer pourquoi le serveur dorsal met plus de temps que d'habitude à répondre, à l'aide d'un utilitaire tel que tcpdump et d'outils d'application intégrés.

Pour plus d'informations, voir Erreurs HTTP 502 de passerelle incorrecte.