La répartition de charge sur Stack Harbor PaaS opère sur deux couches. Le répartiteur partagé au niveau plateforme (Shared Load Balancer) termine les requêtes entrantes à la périphérie et les achemine vers l’environnement cible. À l’intérieur d’un environnement, un répartiteur de charge au niveau environnement distribue les requêtes entre les répliques de serveur applicatif. Cette page est l’entrée pour les répartiteurs au niveau environnement.
Quand vous mettez à l’échelle horizontalement un palier applicatif, un répartiteur est ajouté à la topologie automatiquement. Vous pouvez aussi en ajouter et en mettre à l’échelle un manuellement — y compris devant un seul serveur applicatif — quand vous voulez terminer le TLS sur le répartiteur, appliquer des règles d’accès ou placer une pile derrière une couche de cache.
Les piles de répartiteur prises en charge
- NGINX — répartition Couche 7 avec mise en cache du contenu. Le choix par défaut et celui qui convient à la plupart des charges HTTP. Modulaire, faible surcoût, bien connu.
- HAProxy — proxy événementiel pour TCP et HTTP. Empreinte mémoire stable en forte concurrence, persistance intelligente, interface admin avec statistiques en direct.
- Varnish — proxy inverse de cache HTTP uniquement. Sur le PaaS, il est livré avec NGINX en façade pour la terminaison TLS, ce qui se combine avec le TLS personnalisé.
- Répartiteur Apache — répartiteur à modules avec de larges crochets de personnalisation. Pertinent si vous exploitez déjà Apache et voulez un palier homogène.
- LiteSpeed Web ADC — ADC commercial haute performance avec HTTP/3 / QUIC, pare-feu applicatif web, filtrage anti-DDoS de couche 7 et délestage.
Exploiter un palier applicatif derrière un répartiteur de charge avec deux nœuds ou plus est le motif de production standard — il vous donne la redondance et retire le serveur applicatif lui-même comme point de défaillance unique.
Où chaque couche s’inscrit
| Couche | Rôle | Emplacement |
|---|---|---|
| Shared Load Balancer | Achemine les requêtes entrantes depuis l’internet public vers le bon environnement | Géré par la plateforme, devant chaque environnement sans IP publique |
| Répartiteur d’environnement | Distribue les requêtes entre les répliques d’un même environnement | À l’intérieur de l’environnement, comme nœud dédié |
| IP publique | Contourne le Shared Load Balancer et s’attache directement à un nœud | Attachée à n’importe quel nœud de l’environnement |
Vous pouvez exécuter le répartiteur d’environnement derrière le Shared Load Balancer (par défaut) ou l’exposer directement via une IP publique — voir le document IP publique pour le compromis.
Vérifications de santé des backends
Chaque répartiteur au niveau environnement embarque une vérification de santé par défaut afin qu’une réplique défaillante soit retirée de la rotation :
- NGINX — vérification TCP sur le port amont juste avant de router une requête. En cas d’échec, le nœud suivant dans la couche est essayé.
- HAProxy — vérifications TCP toutes les 2 secondes par défaut ; les résultats vivent dans une table d’état en mémoire.
- Varnish — sonde l’URL configurée une fois par minute avec un délai de 30 secondes, déclarant le backend défaillant après 2 échecs dans une fenêtre de 5 sondes.
- LiteSpeed ADC — vérification TCP sur l’IP interne chaque seconde avec un délai d’une seconde, au niveau Worker Group.
- Répartiteur Apache — pas de vérification de santé par défaut ; configurez-la via
mod_proxy_hcheckd’Apache si vous voulez un sondage actif.
Les valeurs par défaut sont des points de départ raisonnables. Ajustez l’intervalle, le délai et le seuil d’échec depuis les fichiers de configuration du répartiteur via le gestionnaire de fichiers du tableau de bord ou en SSH.
Choisir un répartiteur
Un arbre de décision sommaire :
- Application HTTP sans exigence de cache particulière → NGINX
- Mix TCP / HTTP, forte concurrence, persistance de session intelligente, interface de statistiques → HAProxy
- Application HTTP où la mise en cache en bordure du contenu statique et dynamique cacheable est l’objectif → Varnish
- Préférence pour Apache, règles de réécriture avancées, extension par module → Répartiteur Apache
- HTTP/3 dès le départ, WAF, performance de classe ADC, support commercial → LiteSpeed Web ADC
Le choix n’est pas définitif — vous pouvez changer la pile de répartiteur plus tard en modifiant la topologie de l’environnement.