ThingWorx 高可用性 > ThingWorx Foundation 文件存储
ThingWorx Foundation 文件存储
对于独立的 ThingWorx 安装,通常有三个已建立的文件位置:
/ThingworxPlatform
/ThingworxStorage
/ThingworxBackupStorage
/ThingworxStorage 位置中,默认情况下会创建初始文件信息库。对于群集部署,您必须进行更改并遵循某些规则。
/ThingworxPlatform
ThingworxPlatform 文件夹应针对每个服务器实例本地保留,而不应进行共享。该文件夹还包含在启动 ThingWorx 实例时读取的下列必要文件:
platform-settings.json
keystore-password
license_capability_response.bin (或此文件名的变型)
以下内容必须在所有 ThingWorx HA 服务器之间保持同步:
platform-settings.json
keystore-password
文件构建或生成后,任何时候在其中一个 ThingWorx 服务器上对该文件进行修改时,内容都应更新到其 HA 配置中的所有其他 ThingWorx 服务器。
对于许可内容,每个 ThingWorx 服务器都必须同时保留其自有许可证文件以及初始激活时所创建的信任存储。
可以使用以下过程在每个 ThingWorx 服务器的 /ThingworxPlatform 文件位置建立这些文件:
1. 在所有 ThingWorx 服务器上创建 /ThingworxPlatform。HA 配置中所有 ThingWorx 服务器上的文件夹结构都必须相同。
2. 构建 platform-settings.json 以适应系统环境,并将其保存到初始 ThingWorx 服务器 (要在 HA 配置中启动的第一个 ThingWorx 服务器) 的 /ThingworxPlatform
3. 启动初始 ThingWorx 服务器并确保其完全可操作,且可以使用所有预期的许可功能。此时,/ThingworxPlatform 中应有三个文件:
platform-settings.json
keystore-password
successful_license_capability_response.bin
4. 关闭初始 ThingWorx 服务器。
5. 将这三个文件从初始服务器复制到其他服务器的 /ThingworxPlatform 文件夹中。
* 
platform-settings.json 文件中,必须将 PlatformId 设置更新为每台服务器的唯一 ID。有关详细信息,请参阅 ThingWorx HA 的平台设置
6. 在其他服务器中,将许可证文件从 successful_license_capability_response.bin 重命名为 license_capability_response.bin
7. 依次启动、测试和停止其他 ThingWorx 服务器,以确保所有许可功能均可用。
ThingworxPlatform 文件夹的默认位置为 /ThingworxPlatform。可以通过环境变量 THINGWORX_PLATFORM_SETTINGS 设置非默认位置。在启动 Tomcat with ThingWorx 之前,必须在 Tomcat 操作系统用户环境中建立变量。请确保 THINGWORX_PLATFORM_SETTINGS 所参考的文件夹存在,并且 Tomcat 操作系统用户对其具有读取/写入权限。
/ThingworxStorage
/ThingworxStorage 文件夹必须位于共享文件系统卷上,其中所有 ThingWorx 服务器均对其具有相同的读取/写入权限。
keystore.pfx 文件存储在此文件夹中,并包含平台所需的密码。文件将链接到 keystore-password 文件。应保持这两个文件安全并进行备份。如果任一文件丢失,则将无法解密存储在此数据库中的信息。
日志文件将包含所有服务器中的所有日志,并通过日志条目中的 platformId 进行标识。
platform-settings.jsonBasicSettings 部分中管理 /ThingworxStorage 的位置。
仅就 Windows 而言,当 ThingWorx 平台主机和共享存储目录所在的主机不在域中时,请完成以下步骤:
* 
仅当使用本地用户帐户运行 Apache Tomcat 时,才需完成以下步骤。
1. 在 ThingWorx Platform 主机和共享目录所在主机上创建一个“本地用户帐户”
* 
此用户帐户在两台主机上必须具有相同的密码。
2. 配置 Apache Tomcat,以将其作为步骤 1 中的“本地用户帐户”运行。
a. “服务”中,找到 Apache Tomcat 服务,然后选择“属性” > “登录”
b. 输入本地用户帐户和用户密码。
3. 为本地用户帐户授予对于 Apache Tomcat 文件夹下 tomcat9.exe 文件的“完全控制”权限,以避免出现平台存储初始化失败错误。
4. “本地用户帐户”共享网络位置,并授予“完全控制”权限。
a. 右键单击网络位置,然后选择“属性”。单击“共享”选项卡。
b. 找到“本地用户帐户”,然后选择“读取/写入”
c. 在“安全”选项卡上,确保为本地用户帐户授予“完全控制”权限。
5. platform-settings.json 内的 BasicSettings 下,设置 Storage 密钥的值,以使用网络位置的完整 UNC 路径。包括路径中每个 \ 的附加反斜杠。例如:
网络共享位置:\\ShareHost\MyThingworxShare
platform-settings.json 中的 Storage 值:\\\\ShareHost\\MyThingworxShare
6. 重新启动 Apache Tomcat。
/ThingworxBackupStorage
运行时需要此文件夹。
在每个 ThingWorx 服务器上创建此位置足以避免任何记录的错误。
设置 platform-settings.json 文件中的 "EnableBackup": false,以避免在 HA 环境中进行不必要的处理。
/ThingworxBackupStorage 的位置将在 platform-settings.json 中进行管理。所有 ThingWorx 服务器上的文件夹结构都必须相同。
根文件信息库
根文件信息库必须位于共享文件系统卷上,其中所有 ThingWorx 服务器均对其具有相同的读取/写入权限。
必须将根文件信息库文件夹的位置添加到系统的 platform-settings.json 文件中。参数 FileRepositoryRoot 和共享文件位置应添加到 BasicSettings 部分。该值应列出要建立信息库的文件夹位置。例如,如果要在 /ThingworxFileRepository/repository 中建立初始信息库文件夹,则应将 "FileRepositoryRoot":"/ThingworxFileRepository" 添加到 platform-settings.json 中。
* 
如果 FileRepositoryRoot 参数未在 platform-settings.json 文件中指定,则系统会使用默认的信息库位置 /ThingworxStorage
如果在 FileRepositoryRoot 中定义的位置由于某些原因不可用,则 ThingWorx 将在启动时中止。
文件共享注意事项:
网络连接存储 (NAS) 或云对等产品/服务是提供共享文件系统的常见解决方案。
NAS 产品/服务应拥有其自己的高可用性解决方案,以支持这一 ThingWorx HA 实现。
在启动 ThingWorx 实例之前,必须将此卷安装到服务器。
在每个 ThingWorx 服务器上运行 Tomcat 服务的操作系统用户都必须具有信息库所在文件共享位置的读取/写入权限。
每个 ThingWorx 服务器上的安装位置都必须相同。
这对您有帮助吗?