我正在编写将Web服务部署到eks的头盔图。 我需要为运行Web应用程序的Pod部署负载均衡器。 我正在创建部署网络负载平衡器的服务
apiVersion: v1
kind: Service
metadata:
name: my-service
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
spec:
selector:
app: "MyApp"
type: LoadBalancer
ports:
- name: http
port: {{ .Values.app.port }}
protocol: TCP
targetPort: {{ .Values.app.port }}
此应用程序需要粘性会话。
我试图将sessionAffinity: ClientIP
添加到图表中,但这失败了。不会创建LoadBalancer。
以其他方式创建LoadBalancer,但仍禁用目标组中的粘性会话。
通过舵图为NLB配置粘性会话的正确方法是什么?
答案 0 :(得分:0)
由于AWS功能序列,这是不可能的。
此功能属于NLB的TargetGroup。
create LoadBalancer时,您无法编辑“目标”组的属性。
创建后,TargetGroup的属性可以为modified。
Kubernetes does not implement任何可更改此标志的注释。
结论:创建LoadBalancer后,请运行awscli脚本以更改粘性会话标志。