10.3. 拓扑了解数据发布


配置红帽构建的 Keycloak 以了解您的网络拓扑,增加数据在出现硬件故障时的可用性,因为 Infinispan 能够确保数据被正确分布。例如,如果为缓存配置了 num_owners=2,它将确保两个所有者在可能的情况下不会存储在同一节点上。

注意

默认情况下,用户和客户端会话安全存储在数据库中,它们不受这些设置的影响。剩余的分布式缓存会受到此配置的影响。

以下拓扑信息可用于配置:

站点名称

如果您的红帽构建的 Keycloak 集群在不同的数据中心之间部署,请使用此选项来确保数据副本存储在不同的数据中心。它可防止数据中心离线或失败时数据丢失。

使用 SPI 选项 spi-cache-embedded-​default-​site-name (或环境变量 KC_SPI_CACHE_EMBEDDED__DEFAULT__SITE_NAME)。值本身并不重要,但每个数据中心都必须具有唯一的值。

例如 :--spi-cache-embedded-​default-​site-name=site-1

机架名称

如果您的红帽构建的 Keycloak 集群在数据中心的不同机架中运行,请设置这个选项以确保数据副本存储在不同的物理机架中。它可防止在机架突然断开连接或失败时数据丢失。

使用 SPI 选项 spi-cache-embedded-​default-​rack-name (或环境变量 KC_SPI_CACHE_EMBEDDED__DEFAULT__RACK_NAME)。值本身并不重要,但每个机架都必须具有唯一的值。

例如 :--spi-cache-embedded-​default-​rack-name=rack-1

机器名称

如果您有多个红帽构建的 Keycloak 实例在同一物理机上运行(例如,使用虚拟机或容器),请使用此选项来确保数据副本存储在不同的物理机器中。它可防止因为物理机失败而丢失数据。

使用 SPI 选项 spi-cache-embedded-​default-​machine-name (或环境变量 KC_SPI_CACHE_EMBEDDED__DEFAULT__MACHINE_NAME)。值本身并不重要,但每台机器都必须具有唯一的值。

例如 :--spi-cache-embedded-​default-​machine-name=machine-1

注意

Red Hat build of Keycloak Operator 会自动根据 Kubernetes 节点配置机器名称。它确保如果将多个 pod 调度到同一节点上,则数据副本仍可以复制到不同的节点上。我们建议设置反关联性规则和/或拓扑分布约束,以防止将多个 Pod 调度到同一节点上,从而进一步降低一个节点故障的风险,从而导致数据丢失。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat