Festlegen der Persistenz für den Load Balancer auf Schicht 4 und Schicht 7
Mit den Parametern
l4_persistence
und l7_persistence
können Sie im NCP-ConfigMap-Objekt eine Persistenzeinstellung angeben.Die verfügbare Option für die Schicht-4-Persistenz ist „Quell-IP“. Die verfügbaren Optionen für die Schicht-7-Persistenz sind „Cookie“ und „Quell-IP“. Die Standardeinstellung ist
<None>
. Beispiel:
# Choice of persistence type for ingress traffic through L7 Loadbalancer. # Accepted values: # 'cookie' # 'source_ip' l7_persistence = cookie # Choice of persistence type for ingress traffic through L4 Loadbalancer. # Accepted values: # 'source_ip' l4_persistence = source_ip
Für Schicht-7-Persistenz können Sie auch den Namen des Cookies angeben.
# Specify a custom cookie name for NSX default LB when l7_persistence type # is set to cookie. It has no effect if l7_persistence is not set. #cookie_name = <None>
Für einen Kubernetes-LoadBalancer-Dienst können Sie
sessionAffinity
auch in der Dienstspezifikation angeben, um das Persistenzverhalten für den Dienst zu konfigurieren, wenn die globale Schicht-4-Persistenz deaktiviert, also l4_persistence
auf <None>
festgelegt ist. Wenn l4_persistence
auf source_ip
festgelegt ist, kann die sessionAffinity
auf der Dienstspezifikation verwendet werden, um die Persistenz-Zeitüberschreitung für den Dienst anzupassen. Die standardmäßige Persistenz-Zeitüberschreitung von Layer 4 beträgt 10.800 Sekunden (wie in der Kubernetes-Dokumentation für Dienste (https://kubernetes.io/docs/concepts/services-networking/service) angegeben. Alle Dienste mit standardmäßiger Persistenz-Zeitüberschreitung nutzen das gleiche Persistenz-Profil des NSX-T
Load Balancer. Für jeden Dienst mit einer nicht standardmäßigen Persistenz-Zeitüberschreitung wird ein dediziertes Profil erstellt. Wenn der Backend-Dienst eines Ingress ein Dienst des Typs LoadBalancer ist, dürfen der virtuelle Server der Schicht 4 für den Dienst und der virtuelle Server der Schicht 7 für den Ingress nicht unterschiedliche Persistenzeinstellungen aufweisen, beispielsweise
source_ip
für Schicht 4 und cookie
für Schicht 7. In einem Szenario dieser Art müssen die Persistenzeinstellungen für beide virtuelle Server identisch sein (source_ip
, cookie
oder None
), oder einer davon hat die Einstellung None
(in diesem Fall kann die andere Einstellung source_ip
oder cookie
lauten). Beispiel für ein Szenario dieser Art:
apiVersion: extensions/v1beta1 kind: Ingress metadata: name: cafe-ingress spec: rules: - host: cafe.example.com http: paths: - path: /tea backend: serviceName: tea-svc servicePort: 80 ----- apiVersion: v1 kind: Service metadata: name: tea-svc <==== same as the Ingress backend above labels: app: tea spec: ports: - port: 80 targetPort: 80 protocol: TCP name: tcp selector: app: tea type: LoadBalancer