当前位置: 首页 > 知识库问答 >
问题:

密钥斗篷独立集群配置是否需要仲裁?

鲁鹤轩
2023-03-14

据说KeyClope构建在WildFly应用服务器及其子项目Infinispan(用于缓存)和Hibernate(用于持久性)之上。

Keycloak 建议查看 WildFly 文档和高可用性指南。

如果理解正确,独立群集配置允许在群集周围进行SSO上下文的会话复制或传输。

我不明白是否需要奇数个密钥保护节点才能达到仲裁。

单子系统状态

10.1.3.Quorum网络分区对于单例服务来说尤其成问题,因为它们会触发同一服务的多个单例提供者同时运行。为了防止这种情况,单例策略可以定义一个仲裁,该仲裁要求在单例提供者选举发生之前存在最少数量的节点。典型的部署场景使用N/2 1的仲裁,其中N是预期的集群大小。这个值可以在运行时更新,并将立即影响任何活动的单体服务。例如

它是否与KeyClope及其独立集群配置有关?

共有1个答案

谢英光
2023-03-14

Keycloak邮件列表的回复:

否,Keycloak 使用 Infinispan 进行缓存,Infinispan 使用 JGroups 进行聚类。JGroups不需要共识。

据说KeyClope构建在WildFly应用服务器及其子项目Infinispan(用于缓存)和Hibernate(用于持久性)之上。

Keycloak 建议查看 WildFly 文档和高可用性指南。

如果理解正确,独立群集配置允许在群集周围进行SSO上下文的会话复制或传输。

但是我不明白是否需要奇数个Keycloak节点才能达到法定人数。

不,它不是严格要求的。与几乎所有分布式系统一样,拥有奇数个节点有助于从Split Brain场景中恢复。

 类似资料:
  • 我有java REST应用程序,我希望通过keycloak保护。我做了一些测试,应用程序与keycloak servlet过滤器配合良好,但我在Spring Security适配器方面遇到了问题。 钥匙斗篷。json(删除值) 可见,我只需要承载授权,若请求包含有效令牌,那个么若不是http 401,那个么我希望是http 200。我使用了以下xml配置: 到底发生了什么?请求经过身份验证,但成功

  • 我有一个spring boot应用程序(带有Keyclope适配器),运行在端口8000上,Keyclope运行在8080上 我编辑了我的 /etc/hosts文件,将测试域(foo.bar.com)上的请求路由到127.0.0.1 到目前为止,我对SSL不感兴趣。 我的示例nginx配置: 问题: 此示例nginx conf是否足够?我有一些无限的重定向发生。我的spring应用程序中来自Key

  • 我的问题在这一点上更理论化。 我有一个用例,我必须将我的应用程序(App 1)与Keycloak集成,并将Keycloak与外部身份提供者集成。在这种情况下,奇克洛只是一个经纪人。该外部IDP上还注册了其他应用程序。 场景1:用户既没有登录App 1,也没有登录IDP 当用户尝试访问App 1时,它最终被重定向到外部IDP登录表单并发布身份验证,它将被重定向回应用程序。这是一个简单的流程。 场景2

  • 我试图使用Keycloak的openId-connectendpoint来获取关于用户角色的信息。我使用/auth/realms/moje/protocol/OpenID-connect/userinfoendpoint来获取关于已验证用户的信息。我可以获得姓名、用户名、电子邮件等信息。但是我不能强迫Keyclak给我关于用户角色的信息。 我已经阅读了openID文档,我没有找到任何关于必须获取角

  • 我有一个spring boot应用程序,它隐藏在反向代理后面。当用户未经授权向资源发送请求时,会将其重定向到Keyclope登录页面,并将redirect\u uriparam设置为,例如http://some_url/sso/login(URL始终相对于上下文路径)。我需要将此URL更改为类似于,以便反向代理知道将此类请求重定向到哪里。你知道如何做到这一点吗?是否有任何keydeport适配器配

  • 为什么我们不再需要它们在集群中?netty-acceptor到底代表什么?