È possibile specificare l'impostazione della persistenza con i parametri l4_persistence e l7_persistence in NCP ConfigMap.
# 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
# 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>
Per un servizio LoadBalancer Kubernetes, è inoltre possibile specificare sessionAffinity nella specifica del servizio per configurare il comportamento della persistenza per il servizio se la persistenza di livello 4 globale è disattivata, ovvero se l'opzione l4_persistence è impostata su <None>. Se l'opzione l4_persistence è impostata su source_ip, è possibile utilizzare sessionAffinity nella specifica del servizio per personalizzare il timeout della persistenza per il servizio. Il timeout della persistenza del livello 4 predefinito è 10800 secondi (uguale a quello specificato nella documentazione di Kubernetes per i servizi (https://kubernetes.io/docs/concepts/services-networking/service). Tutti i servizi con timeout della persistenza predefinito condivideranno lo stesso profilo di persistenza del bilanciamento del carico di NSX. Verrà creato un profilo dedicato per ogni servizio con timeout della persistenza non predefinito.
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