zoukankan      html  css  js  c++  java
  • k8s的tomcat多pod session会话保持配置

    问题:k8s启动的tomcat服务,每次访问都带了session会话,每次调整不同的pod导致session实效,系统登录失败。

    处理:在server中添加session保持

    sessionAffinity: ClientIP
    实验:
    启动服务:
    [root@master test]# more Deploy.yaml 
    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      name: spring-k8s
    spec:
      replicas: 4
      selector:
        matchLabels:
          app: spring-k8s
      template:
        metadata:
          labels:
            app: spring-k8s
        spec:
          containers:
            - name: spring-k8s
              image: jiangbo920827/spring-k8s:liveness
              ports:
                - containerPort: 8080
    [root@master test]# more Service.yaml 
    apiVersion: v1
    kind: Service
    metadata:
      name: spring-k8s
    spec:
      selector:
        app: spring-k8s
      type: NodePort
      ports:
        - nodePort: 30008
          port: 80
          protocol: TCP
          targetPort: 8080
    
    容器启动:
    [root@master ~]# kubectl get pods |grep sprin
    spring-k8s-7db85b44fc-4d9xg   1/1       Running   0          1h
    spring-k8s-7db85b44fc-4rjp4   1/1       Running   0          1h
    spring-k8s-7db85b44fc-64v76   1/1       Running   0          1h
    spring-k8s-7db85b44fc-s5hhw   1/1       Running   0          1h
    没加session亲和信参数:分布到各个pod
    [root@master test]# for i in {1..10};do curl http://192.168.10.98:30008/hostname;echo ;done
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4rjp4
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-64v76
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-s5hhw
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-64v76
    spring-k8s-7db85b44fc-s5hhw
    
    添加session亲和性参数:sessionAffinity: ClientIP
    [root@master test]# more Service.yaml 
    apiVersion: v1
    kind: Service
    metadata:
      name: spring-k8s
    spec:
      selector:
        app: spring-k8s
      type: NodePort
      ports:
        - nodePort: 30008
          port: 80
          protocol: TCP
          targetPort: 8080
      sessionAffinity: ClientIP
    [root@master test]# for i in {1..10};do curl http://192.168.10.98:30008/hostname;echo ;done
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    spring-k8s-7db85b44fc-4d9xg
    

      

      

      

    做一个决定,并不难,难的是付诸行动,并且坚持到底。
  • 相关阅读:
    Python heapq 模块的实现
    使用Python在2M内存中排序一百万个32位整数
    heapq
    将不确定变成确定~Uri文本文件不用浏览器自动打开,而是下载到本地
    说说设计模式~组合模式(Composite)
    JS~字符串长度判断,超出进行自动截取(支持中文)
    DDD~基础设施层~续
    谈谈设计模式~原型模式(Prototype)
    Study note for Continuous Probability Distributions
    Spring——AOP配置时的jar包异常
  • 原文地址:https://www.cnblogs.com/wukc/p/15152562.html
Copyright © 2011-2022 走看看