Tableau Resource Monitoring Tool 的外部存储库

Tableau Resource Monitoring Tool 使用 PostgreSQL 数据库作为其存储库来收集和存储 Tableau Server 监视数据,这些数据用于提供性能和使用情况信息。该数据库与 Tableau Server 数据库是分开的。

在 2022.3 版之前,这个 PostgreSQL 存储库自动与 RMT Server 安装在同一台计算机上,并且这是唯一可用的选项。从版本 2022.3 开始,您可以重新配置 RMT Server 以使用外部托管的 PostgreSQL 数据库,而不是本地安装的数据库。当 RMT Server 配置为使用外部托管的 PostgreSQL 数据库时,我们称之为外部存储库。

托管外部存储库的支持平台是 AWS RDS 实例。在外部托管存储库数据库允许您管理 RMT Server 的存储库组件的可用性、备份和灾难恢复。

通过添加这个选项来配置外部存储库,RMT Server 可以通过以下方式进行配置:

  • 继续使用本地安装的存储库:这意味着与 RMT Server 一起自动安装在同一台计算机上的 PostgreSQL 数据库将被用作 RMT Server 的存储库,并且不对此配置进行进一步的更改。

  • 配置 RMT Server 使用外部存储库:这意味着 RMT 使用的 PostgreSQL 数据库是托管在 RMT Server 外部的。这需要在安装后进行一些配置更改。目前只有 AWS RDS 实例支持作为 PostgreSQL 数据库的托管平台。

为了设置和管理外部存储库,您应该对 AWS RDS 平台和 PostgreSQL 数据库有很好的了解。我们建议您使用 AWS 网站上的文档来获取与平台相关的说明。

您还需要知道如何为 Resource Monitoring Tool 配置和管理外部存储库配置。本主题将在以下部分为您提供相关信息。

Resource Monitoring Tool 的新安装

本部分中详细介绍的说明适用于 Resource Monitoring Tool 的新安装。如果您已有 RMT 的现有部署,并希望移动到外部存储库配置,请参见本主题的现有 Resource Monitoring Tool 安装部分。

当您安装 RMT Server 时,它会自动将存储库数据库安装在与 RMT Server 相同的计算机上。配置外部存储库的过程是一个安装后配置,您将重新配置 RMT Server 以使用外部托管的 PostgreSQL 数据库。

使用以下步骤安装 Resource Monitoring Tool 并重新配置 RMT Server 以使用外部存储库:

  1. 创建外部存储库:使用以下建议创建一个 RDS 实例来托管外部存储库。

    • 推荐的最低 PostgreSQL 实例规格:

      • db.m6g.2xlarge(8 vcpu,32 GiB RAM)

      • 具有 500 GB 磁盘空间的 SSD 存储器

    • 实例配置值:
      • 最大工作服务器进程数:逻辑处理器总数

      • 每次收集的最大工作服务器进程数:最小值(逻辑处理器总数/ 2,4)

      • 最大并行工作服务器数:逻辑处理器总数

      • 最大并行维护工作服务器数:最小值(逻辑处理器总数/ 2,4)

      • 共享缓冲区:总内存/ 4

      • 有效缓存大小:总内存的 75%

      • 维护工作内存:总内存/16 (Linux),最大 2GB - 1MB (Windows)

      • Wal 缓冲区:源自共享缓冲区,可能大约 16 MB

      • 工作内存:源自共享缓冲区和每次收集的最大工作服务器数

    若要了解如何在 AWS 上创建和连接 PostgreSQL DB 实例,请参见 AWS 文档站点上的此页面

  2. 安装 RMT:按照说明使用命令行安装 RMT Server来安装 RMT Server,但是跳过创建环境的步骤在配置 RMT Server 以使用外部存储库之后,您将会这样做请注意,这将首先安装一个本地 PostgreSQL 数据库。

  3. 测试到外部存储库的连接:使用 psql 测试到新数据库的连接,psql 是一个随 RMT Server 一起安装的 PostgreSQL 管理工具;

    • 导航到本地安装的 PostgreSQL 安装目录的“bin”文件夹。

      C:\Program Files\Tableau\Tableau Resource Monitoring Tool\prerequisites\postgresql<version number>\bin

    • 运行以下命令以测试连接。在下面用您自己的值替换 aws_rds_servername,并在出现提示时提供您在 AWS 中创建的 PostgreSQL 密码。

      .\psql.exe -h <aws_rds_servername> -p 5432 -d postgres -U postgres

      如果此时收到错误消息并且无法成功连接,请对照 AWS RDS 控制台中的值查看命令中的参数值。

    • 成功建立连接后,您可以使用以下命令关闭 psql 会话:

      \q

  4. 运行 rmtadmin master-setup将 RMT Server 配置为使用外部存储库。使用以下命令示例,并编辑该命令以反映您的 Resource Monitoring Tool 安装路径、AWS RDS 实例名称、端口号和 RDS PostgreSQL管理员用户密码:

    • 导航到 Resource Monitoring Tool RMT Server 的安装目录:

      cd 'c:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\'

    • 运行命令来配置外部存储库:

      ./rmtadmin master-setup --db-config=external --db-server=<aws_rds_servername> --db-database=<aws_rds_database_name> --db-port=5432 --db-admin-username=postgres --db-admin-password=<postgres_user_password>

  5. 现在创建一个环境并下载引导程序文件。

    • 运行以下命令以创建环境:

      rmtadmin create-env --name=<myenvironment> --api-username=<TableauServer API user name> --api-password=<password for the Tableau Server API user account>

    • 下载引导程序文件以注册代理:

      rmtadmin bootstrap-file --env=<myenvironment> --filename=<The absolute or relative path including the file name>

      此处详细描述了这些步骤:使用命令行安装 RMT Server

  6. 按照使用命令行安装代理的说明,在 Tableau Server 节点上安装和注册代理。

现有 Resource Monitoring Tool 安装

将当前使用本地存储库的现有 RMT 安装迁移到外部存储库有两种途径:您选择的途径取决于您的环境的规模和复杂性。

  1. 注册并重建环境:这适合于 RMT 安装,它的环境规模较小,没有太多的配置和通知,因为这种途径涉及到重建环境和重新开始,并且会丢失到目前为止收集的数据。

    这包括重新配置 RMT Server 以使用外部存储库、重新创建环境、重新进行所有定制配置(如事件阈值)以及重新注册代理。这与上一部分中描述的 RMT 的新安装非常相似,只是在这种情况下您不会安装 RMT。

  2. 数据丢失最少的手动迁移:这是专门为拥有大型复杂环境且不想从头开始的客户设计的。此迁移是手动的,不是 RMT 的内置迁移功能。执行此操作的说明如下:

    将本地 Resource Monitoring Tool 存储库手动迁移到外部 AWS PostgreSQL DB 实例

    步骤 1:创建一个 RDS 实例来托管外部存储库

    创建新的 RDS 实例时,请使用以下建议:

    • 推荐的最低 PostgreSQL 实例规格:

      • db.m6g.2xlarge(8 vcpu,32 GiB RAM)

      • 具有 500 GB 磁盘空间的 SSD 存储器

    • 实例配置值:
      • 最大工作服务器进程数:逻辑处理器总数

      • 每次收集的最大工作服务器进程数:最小值(逻辑处理器总数/ 2,4)

      • 最大并行工作服务器数:逻辑处理器总数

      • 最大并行维护工作服务器数:最小值(逻辑处理器总数/ 2,4)

      • 共享缓冲区:总内存/ 4

      • 有效缓存大小:总内存的 75%

      • 维护工作内存:总内存/16 (Linux),最大 2GB - 1MB (Windows)

      • Wal 缓冲区:源自共享缓冲区,可能大约 16 MB

      • 工作内存:源自共享缓冲区和每次收集的最大工作服务器数

    若要了解如何在 AWS 上创建和连接 PostgreSQL DB 实例,请参见 AWS 文档站点上的此页面

    步骤 2:进行测试以确保您能够连接到新的数据

    使用 psql 测试到新数据库的连接,psql 是与 RMT Server 捆绑在一起的 PostgreSQL 管理工具。在下面用您自己的值替换 aws_rds_servername,并在出现提示时提供您在 AWS 中创建的 PostgreSQL 密码。

    • 导航到本地安装的 PostgreSQL 安装目录的“bin”文件夹。

      C:\Program Files\Tableau\Tableau Resource Monitoring Tool\prerequisites\postgresql<version number>\bin

    • 运行以下命令以测试连接。在下面用您自己的值替换 aws_rds_servername,并在出现提示时提供您在 AWS 中创建的 PostgreSQL 密码。

      .\psql.exe -h <aws_rds_servername> -p 5432 -d postgres -U postgres

      如果此时收到错误消息并且无法成功连接,请对照 AWS RDS 控制台中的值查看命令中的参数值。

    • 成功建立连接后,您可以使用以下命令关闭 psql 会话:

      \q

    步骤 3:获取 RMT 当前使用的本地 PostgreSQL 数据库的管理员

    运行以下命令从本地存储库中获取管理员密码。在进行迁移之前,需要这样做以备份本地存储库中的数据。

    • 导航到 RMT Server 的安装文件夹:

      cd 'c:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\'

    • 获取管理员密码:

      rmtadmin get db.adminPassword


    步骤 4:备份现有 PostgreSQL 数据库

    • 首先,停止 RMT,准备进行数据库备份:

      rmtadmin stop

    • 现在只重新启动数据库服务,这样您就可以进行备份了:

      rmtadmin start -db

    • 使用以下示例脚本,并用您自己的值替换文件路径。如果您已经定制了端口,也要进行相应更新。出现提示时,提供上一步中的密码:
      • 导航到本地存储库的 bin 文件夹:

        cd 'C:\Program Files\Tableau\Tableau Resource Monitoring Tool\prerequisites\postgresql<version number>\bin'

    • 进行备份:

      pg_dump -f your_file_name.dump -F d -j 10 -Z 5 -d tabrmt -h localhost -p 5555 -U postgres

      • -F d:输出适合输入 pg_restore 的目录格式归档文件
      • -j 10:通过同时备份多达 10 个表来并行运行备份
      • -Z 5:指定要使用的压缩级别

    注意:迁移完成后,将不会保留在此步骤和最后步骤之间 Resource Monitoring Tool 收集的数据。

    步骤 5:配置 RMT Server 以指向外部存储

    • 重新启动所有 RMT 服务:

      rmtadmin restart --all

    • 以如下命令为例。编辑该命令以反映 RDS 服务器名称、数据库名称、端口和 RDS postgres 用户密码。

      导航到 RMT Server 的安装文件夹:

      cd 'c:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\'

      配置外部存储库:

      rmtadmin master-setup --db-config=external --db-server=<aws_rds_servername> --db-database=<aws_rds_database_name> --db-port=5432 --db-admin-username=postgres --db-admin-password=<postgres_user_password>

    步骤 6:将备份还原到外部存储库

    • 首先,停止 RMT Server:

      rmtadmin stop

    • 将您在步骤 4 中创建的备份还原到新的 AWS RDS PostgreSQL 实例。编辑下面提供的示例脚本,以反映您的 AWS RDS 服务器名称和端口,并确保转储文件路径和名称是准确的。出现提示时,提供 RDS 中“postgres”用户的密码。

      pg_restore -j 5 -c -h <aws_rds_servername> -p 5432 -U postgres -d tabrmt <your_file_name>.dump

      • -j 5:通过同时还原 5 个表来并行运行还原
      • -c:在重新创建数据库对象之前,清理(删除)它们

    步骤 7:启动 RMT Server

    rmtadmin start

    步骤 8:重新注册代理

    成功执行服务更改后,重新启动每个代理,然后按照以下步骤使用 Web 界面重新注册代理。

    1. 从 RMT Server 下载一个新的引导程序文件。

    2. 通过导航到 http://localhost:9002/setup/register 访问代理 Web 界面,导入引导程序。

    3. 单击“测试消息队列”。如果收到错误,请查看之前的输入。

    4. 单击“连接到消息队列”。

    5. 在“服务器”部分下,单击预先选择了“新环境服务器”的下拉列表,而不是接受默认设置,从列表中选择您尝试注册的服务器。滚动到底部,然后单击“注册代理”按钮。

    有关注册代理的更多详细信息,请参见使用命令行安装代理

    步骤 9:验证 RMT Server 是否正在运行,并且您正在查看历史

    登录到 RMT Server,验证旧时间段的数据是否存在,以及是否正在处理新数据。还要检查任何自定义配置值,以确保所有内容都正确迁移。

升级最佳做法

如果您希望升级 Tableau Resource Monitoring Tool 并同时迁移到外部存储库,需要遵循以下一般步骤:

迁移并重建环境:

  1. RMT Server 和所有代理升级到 2022.3 或更高版本。

  2. 步骤 2-4 与您进行新安装的步骤非常相似 - 请参见上面的Resource Monitoring Tool 的新安装。这主要涉及:
    • 创建一个 AWS PostgreSQL DB 实例。

    • 将 RMT Server 配置为使用外部存储库。

    • 重新创建环境并重新注册所有代理。

  3. 重新配置任何自定义配置。

注意:您将丢失历史数据,并且还需要重新配置任何自定义配置。

数据丢失最少的手动迁移:

  1. RMT Server 和所有代理升级到版本 2022.3 或更高版本。

  2. 按照迁移部分中详细介绍的步骤操作。这主要涉及:
    • 创建一个 AWS PostgreSQL DB 实例。

    • 创建 PostgreSQL 数据库的备份。

    • 将 RMT Server 配置为使用外部存储库(PostgreSQL DB 实例)。

    • 将备份还原到外部存储库。重新注册代理。

    • 重新注册代理。

当 RMT 的新版本需要主版本 PostgreSQL 升级时进行升级

Resource Monitoring Tool 的 PostgreSQL 主版本要求发生变化时,最佳做法是在升级 Resource Monitoring Tool 之前先升级外部存储库 PostgreSQL 版本。下文提供了更多细节。若要了解是否应该升级外部存储库 PostgreSQL 版本,请参见产品兼容性表

当需要 PostgreSQL 主版本升级时,使用以下步骤升级 RMT 和 RDS 实例

  1. 备份您的 RDS 实例。如果需要回滚升级,您将需要此备份。有关详细信息,请参见 AWS 网站上的备份和还原 Amazon RDS DB 实例主题。

  2. Resource Monitoring Tool 目录中创建配置文件的副本。配置文件位于:

    C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\config.json

  3. 将 RDS 实例升级到 PostgreSQL 的新版本。有关详细信息,请参见 AWS 网站上的升级适用于 Amazon RDS 的 PostgreSQL 数据库引擎主题。

  4. 升级 RMT Server。如果升级(包括数据库迁移)成功完成,请继续执行下一步。如果升级失败,请参见本部分中有关如何恢复和回滚升级的说明。

  5. 将 Tableau Server 节点上的所有代理升级到新的 RMT 版本。有关详细信息,请参见升级 Resource Monitoring Tool

从失败的升级中恢复

  1. 卸载升级的 RMT Server。

  2. 将 AWS RDS 实例还原到升级之前的版本。有关详细信息,请参见 AWS 网站上的备份和还原 Amazon RDS DB 实例主题。

  3. 在以下位置替换升级前备份的配置文件。您可能必须创建此文件夹,因为它可能已在卸载过程中被删除:

    C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\config.json

  4. 安装 RMT Server,它会安装一个本地存储库。

  5. 将 RMT Server 配置为使用外部存储库:

    rmtadmin master-setup --db-config=external --db-server=<aws_rds_servername> --db-database=<aws_rds_database_name> --db-port=5432 --db-admin-username=postgres --db-admin-password=<postgres_user_password>

 

RMT 和 PostgreSQL 版本兼容性

此表仅列出 RMT 版本 2022.3 及更高版本,因为外部存储库仅在版本 2022.3 及更高版本中可用。

RMT 版本RMT 附带的 PostgreSQL 版本外部存储库支持的 PostgreSQL 版本
2022.3 - 2024.213.713.7

谁可以执行此操作

为了安装 Resource Monitoring Tool,您必须具有以下所有各项:

  • 正在安装 Resource Monitoring Tool 的计算机上的管理员权限。
  • Tableau Server 管理员站点角色。
  • Resource Monitoring Tool 管理员帐户。
感谢您的反馈!您的反馈已成功提交。谢谢!