具有会话关联性的Google容器引擎负载均衡器问题

时间:2016-12-06 06:22:22

标签: kubernetes google-compute-engine google-kubernetes-engine

我在Google GKE Kubernetes群集上运行了3个Nginx pod。我已使用带有Load Balancer选项(TCP Level 4)的Kubernetes服务将这些pod暴露给外部Internet。使用SessionAffinity:ClientIP选项打开粘性会话。

当我访问外部URL时,请求将转发到与SessionAffinity配置相同的内部Nginx pod。但是,如果我让浏览器闲置大约3分钟,然后再次访问外部URL,请求将转到另一个Nginx pod。为什么会这样?是否可以在GKE负载均衡器中配置SessionAffinity到期或超时?

我的Nginx Yaml,

    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      name: nginx-deployment
    spec:
      replicas: 3
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: nginx:1.7.9
            ports:
            - containerPort: 80

我的服务yaml for external load balancer,

    apiVersion: v1
    kind: Service
    metadata:
      name: live
    spec:
      ports:
        - name: name2
          port: 80
          targetPort: 80
          nodePort: 31080
      selector:
        app: nginx
      type: LoadBalancer
      sessionAffinity: ClientIP

0 个答案:

没有答案