Comprendre F5 · LTM

F5 : construire un moniteur HTTP ou HTTPS utile

Choisir le niveau de contrôle, écrire la requête, comprendre Send/Receive et diagnostiquer un membre de pool marqué indisponible.

Thomas SAUTIER · Publié le · Révisions de certification

Références et objectifs de certification (6)
  • Certification : F5 301A · Référence consultée le · Objectifs abordés : F5 301A 1.01.
  • Certification : F5 301B · Référence consultée le · Objectifs abordés : F5 301B 2.14, F5 301B 2.15.
  • Certification : 201 · Référence consultée le · Objectifs abordés : 201 1.04.
  • Certification : F5CAB3 · Référence consultée le · Objectifs abordés : F5CAB3 F5CAB3.02.
  • Certification : F5CAB5 · Référence consultée le · Objectifs abordés : F5CAB5 F5CAB5.05.
  • Certification : F5CABR · Référence consultée le · Objectifs abordés : F5CABR 3.02, F5CABR 5.05.

Ce guide concerne BIG-IP sur TMOS. Vérifiez les noms et les options dans la documentation de votre version.

Comprendre en imageMoniteur HTTP : une sonde applicative distincte du trafic client
Moniteur HTTP : une sonde applicative distincte du trafic client Le moniteur envoie une requête au service ciblé. La réponse est comparée à ses critères de réception, puis aux paramètres temporels. Un établissement TCP réussi ne suffit pas à prouver que la page de santé attendue est correcte. Oui Non BIG-IP : instance du moniteur HTTP / HTTPS associé au pool ou aumembreDestination : membre ou aliasInterval et timeout configurés Requête de santé Exemple : GET /healthHost adapté au serviceHTTPS : paramètres TLS du moniteur Réponse du service Exemple pédagogique : corps contenanthealth_okReceive recherche le contenu configuréUn TCP établi seul ne suffit pas Réponse conforme ? Contrôle réussi Succès du moniteurRetour up selon time-until-up et manualresumeÉtat administratif examiné séparément Contrôle en échec Absence de réponse ou contenu nonconformeÉvaluer timeout et comportement dutype de moniteurNe pas assimiler chaque échec isolé àdown immédiat Objets et conditions Scénario normal, hors Reverse et Transparent. Unesonde a sa propre connexion vers la cible. Son Host,son URL et ses critères peuvent différer d’une requêteutilisateur. Moniteur vert ≠ application entièrement opérationnelle Choisir une réponse représentative du service. Une dépendance métier non couverte par /health peut rester en panne alorsque cette sonde réussit.

Le moniteur envoie une requête au service ciblé. La réponse est comparée à ses critères de réception, puis aux paramètres temporels. Un établissement TCP réussi ne suffit pas à prouver que la page de santé attendue est correcte.

Télécharger le schéma en SVG · version claire

Contrôler le service attendu

Un ping renseigne la joignabilité IP ; un moniteur TCP vérifie une connexion au port ; un moniteur HTTP peut vérifier une réponse applicative. Aucun de ces résultats ne prouve à lui seul que toutes les fonctions métier sont opérationnelles.

Choisissez une URL de santé stable qui représente le besoin. Une page d’accueil lourde et personnalisée rend le contrôle fragile. Une URL qui répond toujours « OK » alors que les dépendances critiques sont indisponibles rend le contrôle trop permissif.

Sources : F5, Monitors Concepts.

Écrire une requête que le serveur comprend

Pour HTTP/1.1, fournissez un en-tête Host approprié et terminez les en-têtes par une ligne vide. Dans une propriété TMSH ou JSON, les séquences \r\n représentent les fins de ligne CRLF ; ne les remplacez pas par du texte approximatif.

Voici les propriétés d’un exemple de contrôle de contenu. Ce JSON décrit le moniteur ; ce n’est pas une commande d’importation. L’URL, le nom d’hôte et la chaîne de succès sont à adapter au service réel.

Exemple de propriétés Send et ReceiveJSON · propriétés pédagogiques
{
  "send": "GET /health HTTP/1.1\r\nHost: app.example.invalid\r\nConnection: close\r\n\r\n",
  "recv": "application_ready"
}

Sources : F5, ltm monitor http.

Le statut HTTP n’est pas une décision universelle

Le comportement dépend du type de moniteur et des expressions configurées. Un serveur qui retourne 200 avec une page d’erreur peut satisfaire un contrôle trop faible. Un 302 de redirection peut au contraire ne pas fournir le contenu attendu.

Vérifiez la réponse reçue par le moniteur : Host, chemin, protocole et conditions d’accès peuvent différer de votre navigateur. Pour HTTPS, le moniteur réalise son propre échange TLS ; le profil Client SSL de la VIP ne suffit pas à décrire cet échange.

Sources : F5, ltm monitor http ; F5, Monitors Concepts.

Interval, timeout et remontée

L’intervalle règle la fréquence des tentatives ; le timeout borne le délai utilisé pour considérer une ressource indisponible. Ce ne sont pas deux noms pour la même durée. Réduire agressivement les délais peut transformer une surcharge temporaire en retraits répétés du pool.

Time Until Up et Manual Resume répondent à des besoins distincts : attendre avant la remontée, ou demander une action manuelle après récupération. La combinaison avec les autres moniteurs appliqués au node ou au pool doit être relue.

Comprendre en imageTimeout : séparer test, échec et reprise
Timeout : séparer test, échec et reprise Le moniteur effectue des contrôles selon son intervalle. L’absence de réponse valide pendant la fenêtre de timeout peut faire passer le membre down. Sa remontée dépend des succès et paramètres de reprise configurés : ce dessin n’impose aucun délai universel. test suivant Objets, conditions et comparaisons du guide Tests successifs Interval configuré Échec du contrôle Fenêtre de timeout Membre down À expiration applicable Reprise Selon les paramètres Succès confirmés Up interval / time-until-up Nouvelle réponse Critères satisfaits Contrôler le service attendu Un ping renseigne la joignabilité IP ; un moniteurTCP vérifie une connexion au port ; un moniteurHTTP peut vérifier une réponse applicative. Aucunde ces résultats ne prouve à lui seul que toutesles fonctions métier sont opérationnelles. Écrire une requête que le serveurcomprend Pour HTTP/1.1, fournissez un en-tête Hostapproprié et terminez les en-têtes par une lignevide. Dans une propriété TMSH ou JSON, lesséquences \r\n représentent les fins de ligne CRLF; ne les remplacez pas par du texte approximatif.

Le moniteur effectue des contrôles selon son intervalle. L’absence de réponse valide pendant la fenêtre de timeout peut faire passer le membre down. Sa remontée dépend des succès et paramètres de reprise configurés : ce dessin n’impose aucun délai universel.

Télécharger le schéma en SVG · version claire

Sources : F5, ltm monitor http.

Comparer ce qui est configuré et ce qui est envoyé

Affichez le moniteur et son association au pool. Capturez ensuite un nombre limité de paquets vers un membre concerné, au bon VLAN. Recherchez connexion TCP, requête complète, réponse et contenu attendu.

Un moniteur vert sur chaque appareil est utile avant une bascule HA : une route ou une self IP différente sur le standby peut produire un résultat différent pour le même serveur.

Lire le contrôle et l’état du poolShell · commandes de lecture
tmsh list ltm monitor http /Common/mon_application all-properties
tmsh list ltm pool /Common/pool_application all-properties
tmsh show ltm pool /Common/pool_application

Sources : F5, ltm pool ; F5, Packet tracing with tcpdump.

Sources et portée

Les dates de consultation et les versions applicables sont précisées pour chaque référence ci-dessous. Les exemples utilisent des noms et adresses de documentation à remplacer. Les commandes de lecture affichent l’existant ; les captures et requêtes de diagnostic sont à limiter au périmètre autorisé.

Retrouver le parcours de lecture F5 LTM

Continuer la série F5

Explorer tous les guides du parcours F5 LTM

Découvrir l’expertise F5 de Samhan

Échange

Besoin d’éclaircir votre architecture F5 ?

Échangeons sur vos flux, vos contraintes de disponibilité et vos services applicatifs.