Chapitre 31. Répartition de la charge sur RHOSP
31.1. Limites des services d'équilibrage de charge
Les clusters OpenShift Container Platform sur Red Hat OpenStack Platform (RHOSP) utilisent Octavia pour gérer les services d'équilibreur de charge. En raison de ce choix, ces clusters présentent un certain nombre de limitations fonctionnelles.
RHOSP Octavia a deux fournisseurs supportés : Amphora et OVN. Ces fournisseurs diffèrent en termes de fonctionnalités disponibles et de détails d'implémentation. Ces distinctions affectent les services d'équilibrage de charge qui sont créés sur votre cluster.
31.1.1. Politiques locales en matière de trafic externe
Vous pouvez définir le paramètre de politique de trafic externe (ETP), .spec.externalTrafficPolicy
, sur un service d'équilibreur de charge pour préserver l'adresse IP source du trafic entrant lorsqu'il atteint les pods d'extrémité du service. Cependant, si votre cluster utilise le fournisseur Amphora Octavia, l'adresse IP source du trafic est remplacée par l'adresse IP de la VM Amphora. Ce comportement ne se produit pas si votre cluster utilise le fournisseur OVN Octavia.
Si l'option ETP
est définie sur Local
, des moniteurs de santé doivent être créés pour l'équilibreur de charge. En l'absence de moniteurs de santé, le trafic peut être acheminé vers un nœud qui n'a pas de point d'extrémité fonctionnel, ce qui entraîne l'interruption de la connexion. Pour forcer Cloud Provider OpenStack à créer des moniteurs de santé, vous devez définir la valeur de l'option create-monitor
dans la configuration du fournisseur de cloud à true
.
Dans RHOSP 16.1 et 16.2, le fournisseur OVN Octavia ne prend pas en charge les moniteurs de santé. Par conséquent, la définition de l'ETP en local n'est pas supportée.
Dans RHOSP 16.1 et 16.2, le fournisseur Amphora Octavia ne prend pas en charge les moniteurs HTTP sur les pools UDP. Par conséquent, les services d'équilibrage de charge UDP ont des moniteurs UDP-CONNECT
créés à la place. En raison de détails d'implémentation, cette configuration ne fonctionne correctement qu'avec le plugin CNI OVN-Kubernetes. Lorsque le plugin CNI OpenShift SDN est utilisé, les nœuds vivants des services UDP sont détectés de manière non fiable.
31.1.2. Plages de sources de l'équilibreur de charge
Utilisez la propriété .spec.loadBalancerSourceRanges
pour restreindre le trafic qui peut passer par l'équilibreur de charge en fonction de l'IP source. Cette propriété ne peut être utilisée qu'avec le fournisseur Amphora Octavia. Si votre cluster utilise le fournisseur OVN Octavia, l'option est ignorée et le trafic n'est pas limité.