keycloak~登录步骤页login-actions/authenticate出现无限次302跳转的原因与 ...

打印 上一主题 下一主题

主题 892|帖子 892|积分 2676

问题出现的前提


  • keycloak通过k8s部署,并进行了集群部署,共2个节点
  • 通过域名解析后,直接到外网LB,在LB上配置了k8s-ingress的IP,端口是80和443
  • 在keycloak应用的ingress配置中,对域名进行了keycloak服务的绑定
问题的描述


  • 有时间无法完成登录,点登录后,刷新了一次登录页,未完成登录行为
  • 有时在登录时,出现死循环,反复302到login-actions/authenticate,keycloak日志中显示“会话失效”,或者可以理解为,“你使用了无效的会话session_code”
问题解决过程


  • 如果是单节点不会有这个问题
  • 如果是多节点部署,需要在LB上添加会话保持
  • 如果是容器化部署的情况下,如果k8s-ingress进行负载,那么,除了在LB上添加了会话保持的,还需要为ingress添加会话保持,代码如下:
  1. apiVersion: extensions/v1beta1
  2. kind: Ingress
  3. metadata:
  4.   namespace: default
  5.   name: my-app
  6.   annotations:
  7.     nginx.ingress.kubernetes.io/affinity: "cookie"
  8.     nginx.ingress.kubernetes.io/session-cookie-name: "route"
  9.     nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
  10.     nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
  11.     nginx.ingress.kubernetes.io/proxy-buffer-size: "16k" #缓冲区大小
  12.     nginx.ingress.kubernetes.io/proxy-buffers-number: "8" #缓冲区数据,不加它参数多时返
复制代码

  • 如果你使用rancher部署应用,直接在应用对应的负载均衡上添加即可


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

欢乐狗

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表