单点登录和高可用性配置
ThingWorx 支持高可用性配置中的单一登录,但是还需要考虑到其他一些配置的复杂性。
对于每个 ThingWorx 高可用性 (HA) 服务器,您需要单独配置 PingFederate。无论每台服务器是位于同一台物理计算机上但使用不同的端口,还是位于不同的计算机上但使用相同的端口,每台计算机都需要在所使用的各个 PingFederate OAuth 客户端进行配置。此外,每个服务器需要一个 PingFederate 服务提供工具连接。
如果同一台计算机上存在多个 ThingWorx 服务器,但每个服务器都有不同的配置端口,则需要使用 THINGWORX_SSO_SETTINGS 环境变量为每个服务器设置特定的 ssoSecurityConfig 目录。每个目录都需要有其自己的 sso-settings.json 文件,该文件中包含 clientBaseURLmetadataEntityBaseUrl,后者还包含了服务器端口的完全限定域名。
用于访问 ThingWorx 内的内容的任何 URL 都应该通过 VIP 或代理 (如 HAProxy) 来访问。如果发生了 HA 故障转移,则应用程序会通过特定端口的代理服务器计算机访问内容。该代理负责重新定位到 HA 架构中的其他计算机或端口,具体取决于哪个计算机可用。
应将 sso-settings.json 文件的 AccessTokenPersistenceSettings 部分中的参数配置为使用用于 HA 环境的 PostgreSQL 配置/服务器,而该环境中的 ThingWorx 安装均指向同一个 PostgreSQL 服务器。这样,访问令牌 (授权批准) 便可以在发生故障转移时从一个 HA ThingWorx 转移到次要服务器。