Skip to main content

Server 主机恢复指南

本指南旨在帮助 Server 管理员在以下情况中恢复 Server 实例:一台或多台原始主机出现故障、迁移到新升级的 Server、从本地服务器迁移到云服务器,以及与基础架构发生变化相关的其他情况。

通过 Server 恢复,您可以基于原始 Server 的以下内容,使用原始用户、工作流、计划等运行新的 Server:

  • 控制器令牌

  • 控制器节点中的 RuntimeSettings.xml

  • MongoDB 备份

重要

受影响的 Alteryx Server版本:

  • 2021.4.2.47792(补丁 5)及更新版本

  • 2022.1.1.42590(补丁 3)及更新版本

  • 2022.3.1.430 (GA) 及更新版本

如果MongoDB数据库迁移到新计算机,则MongoDB数据库中的DCM连接将不可用。https://community.alteryx.com/t5/Alteryx-Server-Knowledge-Base/DCM-Connections-fail-after-Host-Recovery/ta-p/1087864 有关如何更新DCM连接以使其在此情况下正常工作的说明,请参阅主机恢复后DCM连接失败一文。

以下是Server 恢复过程每个步骤的详细信息:

先决条件

1 - 准备

2 - 恢复 RuntimeSettings.xml

3 - 恢复 MongoDB

4 - 恢复其他文件和设置

5 - 启动 Alteryx Server

6 - 测试

可恢复范围

  • 使用嵌入式 MongoDB 的单一默认 Server 安装故障进行恢复。

  • 包含完整必要信息的可用备份。

  • 目标计算机可被覆盖。

不在可恢复范围内

  • 多节点 Server 环境或用户管理的 MongoDB - 请联系客户支持以获得帮助。

  • 合并连接文件数据库。

  • 备份或还原 ODBC 驱动程序。

  • 备份或还原用户或系统 DSN。

  • 备份或还原在 Windows 中存储的存在于 Alteryx 之外的其他别名。

先决条件

  • 在完成本指南中列出的步骤之前,请安装工作流操作所需的所有数据库驱动程序和必要软件,以尽可能降低停机时间。

  • 具有对目标 Server 的管理员权限。

  • 具有所有用于模拟使用者的凭证,包括服务账户(如果不是本地系统)、Run As(运行身份)以及任何已经定义/已使用的工作流凭证。

  • 来自原始 Server 的控制器令牌。

    • 在原始服务器上,验证控制器令牌的长度。如果它的长度为40个字符,并且您正在2021.4或2022.1上恢复您的服务器实例,请在继续执行本指南中的步骤之前执行以下步骤:

      1. 打开 Alteryx 系统设置 控制器常规 >>,保存现有令牌,然后选择 重新生成 以创建新令牌。新令牌的长度为64个字符。

      2. 浏览 Alteryx 系统设置的其余部分,然后选择Finish。这将重新启动 AlteryxService。

      3. 如果您具有多节点设置,请使用新重新生成的控制器令牌将所有节点重新连接到 控制器 节点。

    • 在本主机恢复指南的其余部分中使用新的64字符控制器令牌。

  • 要访问原始 Server 中的 RuntimeSettings.xml,请访问以下路径:%ProgramData%\Alteryx\RuntimeSettings.xml

  • 将原始 Server 的 MongoDB 进行备份。了解如何执行备份。

    • 有关“Server 备份与恢复”的详细信息,请参阅“Server 备份与恢复最佳实践”:第 1 部分第 2 部分

  • 在 Windows 时区设置中,确认目标 Server 的时区设置与原始 Server 相同。如果未设置为同一时区,在计划视图中可能会出现错误。

可选

原始 Server 中可能未利用以下各项。检查是否使用了该功能,并完成本指南中标记为(可选)的相应步骤。

  • 服务登录用户(如果使用)。

  • 工作程序配置中的 Run As(运行身份)详细信息:

    • 用户名

    • 密码

  • 用于 Server 配置的 SMTP 服务器用户名和密码。

  • %ProgramData%\Alteryx\Tools 中的连接器。

  • 原始 Server 中的基于 Alteryx 系统的别名和库内连接别名。

    • 有关系统库内数据连接,请查看 %ProgramData%\Alteryx\Engine\SystemConnections.xml

    • 有关系统数据连接,请查看 %ProgramData%\Alteryx\Engine\SystemAlias.xml

  • 原始 Server 中的基于 Alteryx 用户的别名和库内连接别名 – 以下可能与每个运行身份或工作流凭证用户账户相关

    • 有关用户数据连接,请查看 C:\Users\[username]\AppData\Roaming\Alteryx\Engine\UserConnections.xml

    • 有关用户库内数据连接,请查看 C:\Users\[username]\AppData\Roaming\Alteryx\Engine\UserAlias.xml

步骤 1:准备

#

步骤

详情

1.1

设置计算机时区

新计算机的 Windows 时区必须设置为与原始计算机一致。

1.2

确保可访问 Alteryx

确保计算机可以连接到 Alteryx 许可系统所使用的 whitelist.alteryx.com

1.3

安装相同版本的 Server

全新安装生成 Mongo 备份的同一版本的 Server。

使用该季度的最新维护版本,例如,如果您的备份版本为 2022.4.2 且 2022.4.5 维护版本可用,则使用该版本。如果您的版本在 http://downloads.alteryx.com 上仍不可用,请联系 fulfillment@alteryx.com

安装或升级 Server

测试 Server UI 在浏览器中显示,您无需登录。

1.4

排错

许可证密钥“使用中”错误

如果您的许可证密钥仍与旧 Server 绑定,则需要在该计算机上停用此密钥。如果无法访问该计算机,请联系您的许可证管理员以释放许可证。

步骤 2:恢复 RuntimeSettings.xml

#

步骤

详情

2.1

在 bin 文件夹中打开命令提示符 1

以管理员身份打开命令提示符并导航至 Alteryx\bin 文件夹,然后输入以下命令(根据您的安装位置进行调整)。

c: cd \Program Files\Alteryx\bin

2.2

停止服务

输入命令

net stop alteryxservice

成功后,您应看到“已成功停止 AlteryxService 服务。”

2.3

备份现有的 RuntimeSettings.xml

输入命令

c: cd \ProgramData\Alteryx ren RuntimeSettings.xml RuntimeSettings_BACKUP.xml

2.4

还原 RuntimeSettings.xml

RuntimeSettings.xml 文件从原始 Server 复制到当前的 %ProgramData%\Alteryx\ 目录。

2.5

清除控制器令牌

编辑刚刚复制的 RuntimeSettings.xml 并删除 <ServerSecretEncrypted> 标签之间的所有内容,仅保留标签,如下所示:

64ae505fe2c2c.png

保存并关闭文件。

2.6

恢复控制器令牌

使用原始 Server 控制器令牌输入命令

AlteryxService.exe setserversecret=CONTROLLER_TOKEN_FROM_ORIGINAL_SERVER

故障排除:

版本 2021.3+ 在此步骤中可能会出现以下错误:“设置服务器密钥失败:CryptImportKey(3) 出错:数据错误。(-2146893819)”。要纠正此错误,请查看上一步,以确保删除标签之间的值。

2.7

恢复加密存储密钥

步骤 2.6 中重置控制器令牌时,<StorageKeysEncrypted> 值可能已改变。如果是这样,则应将其替换为原始 RuntimeSettings.xml 文件中的值。如果需要,在原始计算机上打开 ProgramData%\Alteryx\RuntimeSettings.xml,以获取所需的值。最简单的方法是同时复制标签,以确保原始 RuntimeSettings.xml 文件标签之间的整个值得以复制。当您在步骤 3 中进行进一步更改时,可以在文本编辑器中将 RuntimeSettings.xml 保持打开状态。

提示:以管理员身份打开记事本以保存文件。

Step 2.7 Restore Encryption Keys

2.8

恢复Run As(运行身份)

如果原始 Server 上有 Run As(运行身份),请输入以下命令,否则请跳过此步骤。

AlteryxService.exe setexecuteuser=NAME,DOMAIN,PASSWORD

2.9

恢复 SMTP 密码

如果已填写 Alteryx 系统设置 > Server UI > SMTP > 密码(即使未选中 SMTP 复选框),请输入以下命令,否则会跳过此步骤。

AlteryxService.exe setsmtppassword=PASSWORD

2.10

保存 RuntimeSettings.xml

保存RuntimeSettings.xml文件。

2.11

传输加密密钥

此功能仅适用于以下版本:

  • 2021.4.2 补丁 11+

  • 2022.1 补丁 9+

  • 2022.3 补丁 6+

  • 2023.1 补丁 2+

  • 2023.2 GA+

重要

请注意,这要求 AlteryxService 在您的原始 Server 控制器节点上运行,并且您的新 Server 需要能够通过网络进行访问。

您可以按照加密密钥传输过程的步骤将加密密钥从现有控制器传输到新控制器。

2.12

留在命令行上

步骤 3 假定您在 \Alteryx\bin 文件夹中且位于管理员命令行上。

步骤 3:恢复 MongoDB

#

步骤

3.1

获取 MongoDB 备份

将 Mongo 备份从原始 Server 复制到新 Server 上的 MONGO_BACKUP 文件夹。

3.2

恢复到新文件夹

将 Mongo 数据库从备份文件夹恢复到新的还原文件夹。最后一个参数 ,10 可确保恢复期间 MongoDB 的内存使用量较低。这可以降低内存不足错误的几率,但可能会增加恢复时间。去掉 ,10 可能会加快恢复速度。在这两种情况下,请按照下面的说明检查 mongoRestore.log,以确保还原成功。

AlteryxService.exe emongorestore="MONGO_BACKUP_FOLDER","MONGO_RESTORE_FOLDER",10

3.3

确认恢复成功

确认恢复成功。

注意

这是必要步骤,因为还原失败不会在上一步中报告,并可能导致您 Server上的数据丢失。为此,请找到已恢复数据的 MongoDB 文件夹,查看 mongoRestore.log 文件。打开 mongoRestore.log 并执行以下步骤:

  • 确认最后一行报告 #### document(s) restored successfully, 0 document(s) failed to restore(文档已成功恢复,并且所有文档均成功恢复)

  • 搜索error(错误)critical(严重)fatal(致命)failed(失败)。如果您正在寻找failed,请确保结果与上一点中的句子不同,其中包含 0 document(s) failed(0 个失败的文档)

如果恢复失败,或者在搜索上面列出的关键字时找到任何结果,请联系支持部门并提供您收集的所有信息。

如果 MongoDB 恢复失败,请勿继续操作。

3.4

在 RuntimeSettings.XML 中设置 Mongo 路径

编辑 RuntimeSettings.xml 并在 <EmbeddedMongoDBRootPath> 标签中输入 MONGO_RESTORE_FOLDER 的路径。

示例:

Set Mongo path in RuntimeSettings.XML

保存并关闭文本编辑器。

3.5

启动 MongoDB

输入命令

mongod ––dbpath "MONGO_RESTORE_FOLDER" ––auth ––port 27018

示例

mongod ––dbpath "%ProgramData%\Alteryx\Service\Persistence\Mongo_Restore" ––auth ––port 27018

请勿关闭命令提示符窗口。

如果您关闭了上一步的窗口,则后续步骤都将无法进行。

<<第二个命令提示符部分开始>>

3.6

在 bin 文件夹中打开第二个命令提示符

以管理员身份打开第二个命令提示符并导航至 Alteryx\bin 文件夹,然后输入以下命令(根据您的安装位置进行调整)。

c: cd \Program Files\Alteryx\bin

3.7

获取非管理员 Mongo 密码

输入命令并将 NON_ADMIN_MONGO_PASSWORD 复制到记事本

AlteryxService.exe getemongopassword

3.8

启动 Mongo 命令行

输入命令

mongo mongodb://SERVER:PORT/AlteryxGallery -u user -p NON_ADMIN_MONGO_PASSWORD

示例

mongo mongodb://localhost:27018/AlteryxGallery -u user -p CCEC***33C0

成功后,您应看到“>”提示。

3.9

删除原始 Server 设置的锁定

输入 Mongo 命令

db.locks.remove({})

如果成功,您应看到:“writeResult({ “nRemoved” : N })”,其中 N 是介于 0 和 3 之间的数字。

3.10

退出 Mongo 命令行和命令提示符 2

输入命令

exit

关闭 Command_Prompt_2

<<第二个命令提示符部分结束>>

3.11

停止 Mongo 数据库

在原始命令提示符下,输入键盘命令

ctrl-c

输入一次或多次,直到您退出 MongoDB 并返回正常的命令提示符。

关闭命令提示符。

步骤 4:恢复其他文件和设置

#

步骤

详情

4.1

您在原始 Server 上是否有服务登录用户

在新 Server 上设置服务登录用户

Windows 服务应用程序 > 右键单击 AlteryxService > 属性 > 登录

4.2

添加数据驱动程序和系统 DSN。

添加相同版本的驱动程序和相同名称的系统 DSN,以匹配原始 Server https://downloads.alteryx.com/

可能不适用于恢复的高级问题:

4.3

在更安全的环境中,配置所需的Run As(运行身份)用户权限。

确保用于运行工作流的所有凭证(Run As 运行身份、服务登录或保存工作流时设置的凭证)具有足够的访问权限,请参阅配置所需的运行用户权限

4.4

恢复基于系统的别名和库内连接别名

系统数据连接:

%ProgramData%\Alteryx\Engine\SystemAlias.xml

系统库内数据连接:

%ProgramData%\Alteryx\Engine\SystemConnections.xml

4.5

恢复基于用户的别名和用户库内连接别名

用户数据连接:

C:\Users\[username]\AppData\Roaming\Alteryx\Engine\UserConnections.xml

用户库内数据连接:

C:\Users\[username]\AppData\Roaming\Alteryx\Engine\UserAlias.xml

4.6

工作流是否使用连接器?

将连接器文件夹从原始 Server 复制到

%ProgramData%\Alteryxools

联系客户支持,以在新 Server 上启用连接器。

4.7

工作流是否使用 Python 工具?

重新安装工作流已安装的 Python 软件包。请参阅 Server Upgrade Python Tool Environment Checklist

4.8

工作流是否使用 R 工具?

即将推出。

4.9

您是否拥有多节点环境或用户管理的 Mongo?

(即将推出)请联系您的客户经理或客户支持。

4.10

是否使用 SSL?

如果要恢复到 Sandbox Server 进行测试,请使用 HTTP 进行测试。

如果要迁移到新 Server,请重新建立 SSL:

配置 Server SSL/TLS

为获取 SSL 和安装证书配置 Alteryx Server (15577)

步骤 5:启动 Alteryx Server

#

步骤

详情

5.1

查看 Alteryx 系统设置,如果需要,可暂停计划。

运行 Alteryx 系统设置并逐页浏览,确认设置(如控制器令牌)包含您预期的值。

如果不希望在服务启动时运行计划,请取消选中:

Worker > General > Allow machine to run scheduled Alteryx workflows

选择Finish时,AlteryxService 应启动,且 Server 在浏览器中应可用。

步骤 6:测试

#

步骤

详情

6.1

基本测试

AlteryxService 是否在运行?

您能否:

  • 访问 Server UI URL?

  • 在管理员页面之间移动并查看用户、集合等?

  • 将工作流从 Designer 发布到 Server?

  • 运行工作流?

  • 如果配置允许,请保存并运行指定凭证的工作流。

6.2

特定于工作流的测试

您是否可以运行包含扩展或外部连接的工作流,如

  • 网络 UNC 路径的输入/输出

  • 数据库连接

  • 连接器工具

  • 地理位置或业务洞察数据集

  • Python 工具

  • R 工具