Keycloak HA:分布式缓存检查

问题描述 投票:0回答:1

我正在尝试通过 docker-compose 来测试 Keycloak HA 基础设施模拟它。 我的 docker-compose 有 ha-proxy 作为负载均衡器,2 个 keycloak 节点和用于共享 keycloak 数据库的外部 sql 服务器。 这 2 个节点配置为使用分布式缓存 (infinispan) 和 jdbc_ping 进行节点发现。 一切似乎都有效,因为节点将订阅行添加到 jdbc_ping 相关表并检查控制台日志,我可以看到集群发现工作正常,没有错误。

我的疑问如下:使用这种配置,如果我直接登录到 keycloak nodeA,我会创建一个会话。如果我尝试使用同一用户登录 keycloak nodeB,如果分布式缓存运行良好(它还分发会话),我想我应该已经登录共享相同的会话?我错了吗? 因为此时如果我尝试登录 NodeB,它会自动从两个节点注销我!

我做这个测试只是为了了解分布式缓存是否运行良好,也因为生产中的所有请求都会通过负载均衡器。

如何检查keycloak的分布式缓存是否运行良好?

提前致谢

keycloak infinispan
1个回答
0
投票

检查日志消息以确认容器彼此可见。

ISPN000094: Received new cluster view for channel ISPN:

[Context=<cache-name>] ISPN100002: Starting rebalance with members

会员列表将跟随这两条消息。

© www.soinside.com 2019 - 2024. All rights reserved.