Cette rubrique aborde plusieurs problèmes et leur résolution.

Les problèmes suivants sont courants lorsque l'équilibrage de charge NSX est utilisé :
  • L'équilibrage de charge sur le port TCP (par exemple, le port 443) ne fonctionne pas.
  • Un membre du pool d'équilibrage de charge n'est pas utilisé.
    • Vérifiez que le serveur se trouve dans le pool, qu'il est activé et surveillez son état de santé.
  • Le trafic Edge n'est pas à équilibrage de charge.
    • Vérifiez le pool et la configuration de persistance. Si la persistance est configurée et que vous utilisez un petit nombre de clients, il se peut que vous ne voyiez pas une distribution uniforme des connexions aux membres du pool principal.
  • Le moteur d'équilibrage de charge de couche 7 est arrêté.
  • Le moteur du moniteur de santé est arrêté.
    • Activez le service d'équilibrage de charge. Consultez le Guide d'administration de NSX.
  • L'état du moniteur du membre du pool est AVERTISSEMENT/CRITIQUE.
    • Vérifiez que le serveur d'applications est accessible à partir de l'équilibrage de charge.
    • Vérifiez que le pare-feu du serveur d'applications ou DFW autorise le trafic.
    • Assurez-vous que le serveur d'applications peut répondre à la sonde d'intégrité spécifiée.
  • Le membre du pool présente l'état INACTIF.
    • Vérifiez que le membre du pool est activé dans la configuration du pool.
  • La table rémanente de couche 7 n'est pas synchronisée avec le dispositif Edge en veille.
    • Vérifiez que la haute disponibilité (HA) est configurée.
  • Connexions client, mais impossible d'effectuer une transaction d'application.
    • Vérifiez que la persistance adéquate est configurée dans le profil d'application.
    • Si l'application fonctionne avec un seul serveur dans le pool (et non deux), il s'agit très probablement d'un problème de persistance.

Dépannage de base

  1. Vérifiez l'état de la configuration de l'équilibrage de charge dans vSphere Web Client :
    1. Cliquez sur Mise en réseau et sécurité > Dispositifs NSX Edge (Networking & Security > NSX Edges).
    2. Double-cliquez sur une instance de NSX Edge.
    3. Cliquez sur Gérer (Manage), puis sur l'onglet Équilibrage de charge (Load Balancer).
    4. Vérifiez l'état de l'équilibrage de charge et le niveau de journalisation configuré.
  2. Avant de dépanner le service d'équilibrage de charge, exécutez la commande suivante sur le dispositif NSX Manager pour vous assurer que le service est actif et en cours d'exécution :
    nsxmgr> show edge edge-4 service loadbalancer
    haIndex:              0
    -----------------------------------------------------------------------
    Loadbalancer Services Status:
    
    L7 Loadbalancer     : running
    -----------------------------------------------------------------------
    L7 Loadbalancer Statistics:
    STATUS     PID        MAX_MEM_MB MAX_SOCK   MAX_CONN   MAX_PIPE   CUR_CONN   CONN_RATE  CONN_RATE_LIMIT MAX_CONN_RATE
    running    1580       0          2081       1024       0          0          0          0               0
    -----------------------------------------------------------------------
    L4 Loadbalancer Statistics:
    MAX_CONN   ACT_CONN   INACT_CONN TOTAL_CONN
    0          0          0          0
    
    Prot LocalAddress:Port Scheduler Flags
      -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
    
    Note : Vous pouvez exécuter show edge all pour rechercher les noms des dispositifs NSX Edge.

Dépannage des problèmes de configuration

Lorsque l'opération de configuration de l'équilibrage de charge est refusée par l'interface utilisateur de NSX ou l'appel API REST, elle est classée comme problème de configuration.

Dépannage des problèmes du plan de données

La configuration de l'équilibrage de charge est acceptée par NSX Manager, mais il existe des problèmes de connectivité ou de performance entre le dispositif Edge client et le serveur d'équilibrage de charge. Les problèmes de plan de données incluent également des problèmes de CLI d'exécution de l'équilibrage de charge et des problèmes d'événement système de l'équilibrage de charge.

  1. Passez le niveau de journalisation du dispositif Edge dans NSX Manager de INFO à TRACE ou DÉBOGAGE à l'aide de l'appel API REST.
    URL: https://NSX_Manager_IP/api/1.0/services/debug/loglevel/com.vmware.vshield.edge?level=TRACE 
    Method: POST
  2. Vérifiez l'état de membre du pool dans vSphere Web Client.
    1. Cliquez sur Mise en réseau et sécurité > Dispositifs NSX Edge (Networking & Security > NSX Edges).
    2. Double-cliquez sur une instance de NSX Edge.
    3. Cliquez sur Gérer (Manage), puis sur l'onglet Équilibrage de charge (Load Balancer).
    4. Cliquez sur Pools pour voir un résumé des pools d'équilibrages de charge configurés.
    5. Sélectionnez votre pool d'équilibrages de charge. Cliquez sur Afficher les statistiques du pool (Show Pool Statistics) et vérifiez que l'état du pool est ACTIF.
  3. Vous pouvez obtenir des statistiques de configuration du pool d'équilibrages de charge plus détaillées à partir du dispositif NSX Manager à l'aide de l'appel API REST suivant :
    URL: https://NSX_Manager_IP/api/4.0/edges/{edgeId}/loadbalancer/statistics 
    Method: GET
    
    <?xml version="1.0" encoding="UTF-8"?>
    <loadBalancerStatusAndStats>
        <timeStamp>1463507779</timeStamp>
        <pool>
            <poolId>pool-1</poolId>
            <name>Web-Tier-Pool-01</name>
            <member>
                <memberId>member-1</memberId>
                <name>web-01a</name>
                <ipAddress>172.16.10.11</ipAddress>
                <status>UP</status>
                <lastStateChangeTime>2016-05-16 07:02:00</lastStateChangeTime>
                <bytesIn>0</bytesIn>
                <bytesOut>0</bytesOut>
                <curSessions>0</curSessions>
                <httpReqTotal>0</httpReqTotal>
                <httpReqRate>0</httpReqRate>
                <httpReqRateMax>0</httpReqRateMax>
                <maxSessions>0</maxSessions>
                <rate>0</rate>
                <rateLimit>0</rateLimit>
                <rateMax>0</rateMax>
                <totalSessions>0</totalSessions>
            </member>
            <member>
                <memberId>member-2</memberId>
                <name>web-02a</name>
                <ipAddress>172.16.10.12</ipAddress>
                <status>UP</status>
                <lastStateChangeTime>2016-05-16 07:02:01</lastStateChangeTime>
                <bytesIn>0</bytesIn>
                <bytesOut>0</bytesOut>
                <curSessions>0</curSessions>
                <httpReqTotal>0</httpReqTotal>
                <httpReqRate>0</httpReqRate>
                <httpReqRateMax>0</httpReqRateMax>
                <maxSessions>0</maxSessions>
                <rate>0</rate>
                <rateLimit>0</rateLimit>
                <rateMax>0</rateMax>
                <totalSessions>0</totalSessions>
            </member>
            <status>UP</status>
            <bytesIn>0</bytesIn>
            <bytesOut>0</bytesOut>
            <curSessions>0</curSessions>
            <httpReqTotal>0</httpReqTotal>
            <httpReqRate>0</httpReqRate>
            <httpReqRateMax>0</httpReqRateMax>
            <maxSessions>0</maxSessions>
            <rate>0</rate>
            <rateLimit>0</rateLimit>
            <rateMax>0</rateMax>
            <totalSessions>0</totalSessions>
        </pool>
        <virtualServer>
            <virtualServerId>virtualServer-1</virtualServerId>
            <name>Web-Tier-VIP-01</name>
            <ipAddress>172.16.10.10</ipAddress>
            <status>OPEN</status>
            <bytesIn>0</bytesIn>
            <bytesOut>0</bytesOut>
            <curSessions>0</curSessions>
            <httpReqTotal>0</httpReqTotal>
            <httpReqRate>0</httpReqRate>
            <httpReqRateMax>0</httpReqRateMax>
            <maxSessions>0</maxSessions>
            <rate>0</rate>
            <rateLimit>0</rateLimit>
            <rateMax>0</rateMax>
            <totalSessions>0</totalSessions>
        </virtualServer>
    </loadBalancerStatusAndStats>
    
  4. Pour vérifier les statistiques d'équilibrage de charge à partir de la ligne de commande, exécutez les commandes suivantes sur le dispositif NSX Edge.

    Pour un serveur virtuel particulier : exécutez d'abord show service loadbalancer virtual pour obtenir le nom du serveur virtuel. Exécutez ensuite show statistics loadbalancer virtual <virtual-server-name>.

    Pour un pool TCP particulier : exécutez d'abord show service loadbalancer pool pour obtenir le nom du pool. Exécutez ensuite show statistics loadbalancer pool <pool-name>.

  5. Examinez les statistiques de l'équilibrage de charge pour rechercher des signes d'échec.