Comprendre F5 BIG-IP

F5 : persistance et maintenance des pool members

Cookie, source address, Universal et SSL : choisir une affinité, comprendre Disabled et Forced Offline et organiser le drainage.

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

  • Référence de F5 301A consultée le · Objectifs abordés : F5 301A 1.06, F5 301A 2.07.
  • Référence de F5 301B consultée le · Objectifs abordés : F5 301B 2.06, F5 301B 2.08, F5 301B 2.09.

Ce guide concerne BIG-IP sur TMOS. Les noms et options doivent être confrontés à la documentation de votre version.

Repère visuelDrainer un membre : distinguer les trois états
Drainer un membre : distinguer les trois états Enabled rend le membre disponible à la sélection habituelle. Disabled peut encore recevoir de nouvelles connexions correspondant à une persistance existante. Forced Offline limite le service aux connexions déjà actives : aucun de ces états ne signifie automatiquement un reset de toutes les connexions. admis admis conservés 01 Enabled Sélection autorisée 02 Disabled Drainage avec persistance 03 Forced Offline Connexions actives seules 04 Nouveaux clients Sélection habituelle 05 Clients persistants Peuvent encore revenir 06 Flux déjà actifs Peuvent se terminer
Enabled rend le membre disponible à la sélection habituelle. Disabled peut encore recevoir de nouvelles connexions correspondant à une persistance existante. Forced Offline limite le service aux connexions déjà actives : aucun de ces états ne signifie automatiquement un reset de toutes les connexions.

Une affinité répond à un besoin applicatif

La persistance retrouve une destination pour une session ou une identité. Le load balancing choisit une destination lorsqu’aucune contrainte d’affinité ne s’impose. Si l’état métier est stocké uniquement sur un serveur, perdre cette affinité peut produire des paniers vides ou de nouvelles demandes de connexion.

La persistance BIG-IP ne réplique pas cet état métier. Une architecture qui partage les sessions côté application peut avoir d’autres besoins qu’une architecture qui les conserve localement.

Sources : F5, Session Persistence Profiles.

Choisir une clé qui représente le client

La source IP fonctionne avec plusieurs protocoles, mais rassemble les utilisateurs derrière un NAT ou un proxy. La persistance cookie utilise une information HTTP. Universal peut utiliser une clé définie par une iRule. La persistance SSL repose sur l’identifiant de session TLS dans les cas supportés ; ce n’est pas un identifiant métier permanent.

En chaîne de proxys, relisez l’identité disponible à chaque étage. Une seconde couche BIG-IP ne voit pas nécessairement les adresses originales si la première applique le SNAT. La bonne clé dépend de ce que cet étage peut réellement lire.

Choisir selon le trafic et l’identité disponible
MéthodeInformation utiliséeLimite à examiner
Source AddressAdresse sourceNAT ou proxy partagé
CookieCookie HTTPDisponibilité de HTTP et comportement du navigateur
UniversalClé extraite par une iRuleÉvénement, profils et stabilité de la clé
SSLSession TLS dans les configurations supportéesReprise de session et compatibilité du mode TLS

Sources : F5, Session Persistence Profiles.

Portée et connexions existantes

Match Across Services, Virtual Servers et Pools élargissent la portée de certaines persistances selon leurs règles. Ne les activez pas par défaut pour « tout rendre cohérent » : cela peut associer des services qui ne doivent pas partager une destination.

Une décision déjà prise pour une connexion établie n’est pas automatiquement recalculée à chaque changement de configuration. Pour HTTP, OneConnect peut permettre une nouvelle décision entre requêtes. Distinguez donc connexion TCP, requête HTTP et entrée de persistance.

Sources : F5, Session Persistence Profiles ; F5, ltm persistence cookie.

Disabled et Forced Offline ne sont pas un reset

Sur les versions 11.x–17.x décrites par F5, un membre Disabled continue à traiter les connexions existantes et peut accepter de nouvelles connexions liées à une persistance. Forced Offline retire aussi ce cas de nouvelles connexions persistantes, tout en laissant les connexions déjà établies se terminer.

Exemple : vous désactivez un membre puis constatez encore du trafic une heure plus tard. Cela ne prouve pas que l’action a échoué ; il peut s’agir de connexions longues ou d’utilisateurs persistants. Couper immédiatement les connexions existantes est une opération distincte et disruptive.

Sources : F5, Disable nodes or pool members for maintenance, 11.x–17.x ; F5, sys connection.

Suivre un drainage sans effacer son contexte

Relevez les états administratifs et les statistiques avant la maintenance. Vérifiez le profil de persistance et la présence de connexions côté serveur. Dans cet exemple, remplacez l’adresse et le port par ceux du membre étudié.

La commande de lecture filtrée est préférable à un inventaire global d’une table volumineuse. Décidez à l’avance du délai de drainage, du comportement attendu pour les sessions longues et du critère de remise en service.

Repère visuelAvant une maintenance : suivre ce qui reste actif
Avant une maintenance : suivre ce qui reste actif Un drainage commence par un état administratif choisi et des critères de fin explicites. Observer connexions, entrées de persistance et application avant l’arrêt permet d’éviter de confondre absence de nouvelles sélections et absence de trafic. contexte 01 État choisi Disabled ou Forced Offline 02 Connexions actives Observer leur évolution 03 Persistance Observer les retours 04 Maintenance Si critères atteints 05 Validation Application + compteurs 06 Critères de fin À définir avant le drainage
Un drainage commence par un état administratif choisi et des critères de fin explicites. Observer connexions, entrées de persistance et application avant l’arrêt permet d’éviter de confondre absence de nouvelles sélections et absence de trafic.
Suivre un membre en maintenanceShell · commandes de lecture
tmsh list ltm pool /Common/pool_application all-properties
tmsh list ltm virtual /Common/vs_application all-properties
tmsh show sys connection ss-server-addr 192.0.2.60 ss-server-port 443

Sources : F5, ltm pool ; F5, sys connection.

Faire revenir le membre progressivement

Après validation du service et des moniteurs, reprenez le trafic selon la procédure prévue. Le slow ramp peut limiter l’afflux vers un membre qui revient avec peu de connexions. Contrôlez ensuite erreurs, nouvelles sessions et charge plutôt que le seul passage au vert.

Sources : F5, ltm pool.

Sources et portée

Références consultées le . 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 votre configuration BIG-IP.