Controller(控制器)
控制器管理服务设置并将工作委派给工作程序。在一个部署中,您只能启用一台计算机作为控制器。
在系统设置中的 Controller(控制器)屏幕上配置控制器组件。如果您在 Environment(环境) > Setup Type(设置类型)屏幕上选择了以下选项之一,则在系统设置中会显示 Controller(控制器)屏幕:
Designer and Scheduler Only(仅限 Designer 和计划程序)
Complete Alteryx Server(完整的 Alteryx Server)
Custom(自定义) > Enable Controller(启用控制器)
Controller Configuration(控制器配置)
Controller Configuration(控制器配置)屏幕包括配置选项,例如要用于存储临时文件和日志文件的位置以及要记录的信息。

Token(令牌)
控制器Token(令牌)是一个自动生成的私密密钥,控制器使用该私密密钥与使用 Designer 的工作程序和计算机进行通信。
如果使用 Designer 的计算机不是控制器计算机,并且您希望在这台计算机上计划未来某个日期的工作流,则必须在 Schedule Workflow(计划工作流)屏幕上添加控制器令牌,以计划工作流。
如果要让一台计算机充当控制器,另一台计算机充当工作程序,您也需要控制器令牌。设置控制器计算机以获取控制器令牌。然后,在设置工作程序计算机时,在系统设置 > Controller(控制器) > Remote(远程)中添加控制器令牌。
如有必要,您可以重新生成令牌,比方说,在令牌被盗用的情况下。如果您重新生成令牌,则必须也在部署中的 Server UI 和工作程序节点进行更新。如果要重新生成令牌,请单击Regenerate(重新生成)。
Communication(通信)
Enable Controller SSL/TLS(启用控制器 SSL/TLS):选中 Enable Controller SSL/TLS 复选框时,将为控制器启用 SSL/TLS。
默认情况下,此设置对 FIPS 环境启用,对非 FIPS 环境禁用。
选择此设置之前,请确保已安装有效的签名证书和私钥。如需详细了解如何安装和配置证书,请参阅配置 SSL/TLS。
请注意,如果您已经在Environment Configuration(环境配置)页面上为环境启用了 Globally Enable SSL/TLS(全局启用 SSL/TLS)设置,它将在此处自动启用并锁定。
Port(端口):未选中时,端口默认为 80。选中时,端口默认为 443。但是,您仍然可以手动更改端口。
Workspace(工作区)
Workspace(工作区)是控制器存储临时文件或缓存文件的位置。默认情况下,该文件夹位于 System Settings(系统设置)的 Environment(环境)屏幕中定义的全局工作空间文件夹中。请使用可安全存储大量文件的位置。
Logging(日志记录)
控制器为诸如服务已启动和已关闭之类的事件以及执行请求等生成日志。这些日志有助于进行故障排除。如需了解详情,请访问配置并使用 Server 日志。
Level(级别):您可以设置日志记录级别。对于需要很少日志记录的生产环境,None(无)或 Low(低)级别可能足以满足需求,而 High(高)级别将记录更多消息,有助于进行故障排除。
File size (MB) (文件大小):此选项允许您在日志轮换之前指定日志文件的最大大小,新的活动日志文件将写入其中,之前的日志将放在存档文件中。这有助于防止创建难以在标准日志阅读器中使用的大型日志文件。
Enable log file rotation(启用日志文件轮换):启用该选项以将超过最大大小的日志文件放在存档文件中。新事件将写入新文件。这可以防止创建难以在标准日志读取器中使用的大型日志文件。
Scheduler(计划程序)
选择 Enable Scheduler auto-connect(启用计划程序自动连接),以允许计算机上的用户自动连接至计划程序。如果在连接至计划程序时遇到困难,请启用此选项。
重要
Enable Scheduler auto-connect(启用计划程序自动连接)已禁用,无法为 Server-FIPS 启用。
Engine(引擎)
选中 Enable AMP Engine(启用 AMP Engine),以支持在此环境中运行使用 Alteryx Multi-threaded Processing (AMP) 引擎的工作流。在 Server 环境中,这是开/关式设置。如果您为控制器启用 AMP Engine,则还需要在系统设置 > Engine 屏幕上设置至少一个工作程序来运行 AMP Engine。如需了解详情,请转到 Engine 和 AMP Engine 最佳实践帮助页面。
了解 AMP Engine 设置
对于 Server 环境,系统设置 > Controller(控制器)屏幕上的 Enable AMP Engine(启用 AMP Engine) 设置是开/关式设置。此设置在环境级别启用 AMP。系统设置 > Engine(引擎)中的设置告诉工作程序可以使用哪些引擎,以及可以运行哪些工作流。如需了解详情,请转到 Engine 和 AMP Engine 最佳实践帮助页面。
例如,让我们以一个 3 节点环境为例。节点 1 已为控制器和 Server UI 进行设置并启用了 AMP。节点 2 是工作程序专用的节点,其引擎设置为 Original Engine Only(仅限原始引擎)。节点 3 是工作程序专用的节点,其引擎设置为 Both Engines(两类引擎)。在此情景中,启用了在 Server 上运行 AMP 工作流的选项,这些工作流将仅在节点 3 上运行。原始引擎工作流将在节点 2 或节点 3 上运行。如果节点 3 脱机,原始引擎工作流仍将在节点 2 上运行,但 AMP 工作流将卡在队列中,直到节点 3 恢复联机为止。
我们建议在将 AMP Engine 部署到生产环境之前,在开发环境中对其进行测试。如需详细了解 AMP Engine,包括内存要求,请参阅 AMP Engine 文档和 AMP Engine 最佳实践。
Persistence(持久层)
作为工作流执行和各种其他操作的编排器,控制器需要一个可以维护可用工作流、执行请求队列和其他信息的位置。在 Persistence(持久层)屏幕上定义对服务运行至关重要的信息的存储位置。

Database Type(数据库类型)
控制器通过 SQLite(仅限 Designer 使用)、MongoDB 或 SQL DB 维护信息。Server 提供嵌入式 MongoDB 以及 User-managed MongoDB(用户管理的 MongoDB) 或 User-managed SQL DB(用户管理的 SQL DB) 选项。如果要为 Server UI 配置计算机,则必须使用 MongoDB、User-Managed Mongo DB(用户管理的 Mongo DB) 或User-managed SQL DB(用户管理的 SQL DB)。
重要
MongoDB 社区版不能在 FIPS 环境运行,因此未嵌入到 Server-FIPS 中。您需要用户管理的 MSSQL、用户管理的 Mongo DB Atlas 或 MongoDB 企业高级版。
SQLite:创建 SQLite 数据库的实例。建议用于使用计划程序的轻量级和本地部署。
MongoDB:创建 MongoDB 数据库的实例。如使用量很大建议此选项。
User-Managed MongoDB(用户管理的 MongoDB):允许连接至您的 MongoDB 实现。
User-managed SQL DB(用户管理的 SQL DB):允许您连接到 SQL DB。目前,SQL Server DB 仅接受 Advanced(高级)选项。
重要
对于用户管理的 MongoDB,我们仅支持使用 SCRAM 身份验证的 MongoDB。不支持使用 Kerberos 身份验证的 MongoDB。
我们强烈建议您为持久层数据库建立自动备份系统。如需了解如何备份 MongoDB,请转到 MongoDB 备份。要备份 SQLite,您可以压缩或复制
\ProgramData\Alteryx\Service\中的 Persistence 文件夹。如果在 SQLite 和 MongoDB 数据库类型之间切换,则不会迁移计划作业。必须手动重新计划这些作业。
Data Folder(数据文件夹)
Data Folder(数据文件夹)是 SQLite 或嵌入式 MongoDB 数据库文件的存储位置。如果您选择 User-Managed MongoDB(用户管理的 MongoDB),则 Data Folder(数据文件夹)将被禁用,因为它是在您的 MongoDB 实例中配置的。
高级数据库连接
高级用户管理的 MongoDB
如果您需要相关支持,请选择 Advanced User-Managed MongoDB(高级用户管理的 MongoDB)。
TLS/SSL
Replica Sets(副本集)
Sharding(分片)
MongoDB Atlas
重要
如果您在连接字符串选项推出之前(2020.1 版或以前的版本)使用了副本集,则必须更改为连接字符串。
选择此选项后,Database(数据库)部分将显示一个 MongoDB Connection字段,供您指定 MongoDB 连接字符串。访问高级连接字符串帮助页面,获取有关指定连接字符串的提示和示例。

高级用户管理的 SQL
如果选择了 User-Managed SQL DB(用户管理的 SQL DB) 作为 Database Type(数据库类型),则 Advanced Database Connection(高级数据库连接)部分将自动预填充Advanced User-Managed SQL(高级用户管理的 SQL) 选项。

Database(数据库)
如果您选择了 User-Managed MongoDB(用户管理的 MongoDB),并且不用 Advanced Database Connection(高级数据库连接),那么您将在 Database(数据库)部分指定 MongoDB 实例的Host(主机)位置以及Database Name(数据库名称)。如果 MongoDB 实例需要身份验证,请在Username(用户名)和Admin Password(管理员密码)字段中输入这些信息。

对于嵌入式 MongoDB,系统会自动填充Host(主机)、Username(用户名)、Admin Password(管理员密码)和Password(密码)字段。该Admin Password(管理员密码)供 MongoDB 管理员用于设置备份和副本集。所有组件都使用该Password(密码)与 MongoDB 进行通信。您还可以使用该 Password(密码)来创建与数据库相关联的使用情况报告。

用户名、密码或参数值中的特殊字符必须进行 URL 编码。
如果选择了 User-Managed SQL DB(用户管理的 SQL DB),则必须在Database(数据库) > SQL Connection(SQL 连接)中指定 SQL Server 实例的连接字符串。
Persistence 部分显示 SQL Connection 字段,供您指定 SQL DB 连接字符串。转至 SQL DB 高级连接字符串,获取有关指定连接字符串的提示和示例。
在确认 SQL 连接字符串后,系统设置会屏蔽该字符串。如果再次选择 SQL 连接字符串,则会出现一个弹出窗口。确认是否应清除或保留该值。有关 SQL 连接字符串的详细信息,请转至 SQL DB 高级连接字符串。
Persistence Options(持久层选项)
数据库维护工作流结果、计划和上传文件的历史记录。您可以将各种项目和文件标记为在指定天数后删除。这些设置会减少 Server 使用的硬盘驱动器空间。
重要
持久层选项具有追溯性。如果将所有持久层选项设置为10天后删除,则工作流结果、计划和文件的历史记录将仅显示最近10天的数据。
这些设置还将应用于 Server 使用情况报告的可用历史记录。
对于所有持久层选项,处于错误状态的记录不会予以删除。
Delete queue and results after (days)(在(天数)后删除队列和结果):在指定天数后从数据库和工作流结果中删除已完成的作业。
Delete completed schedules after (days)(在(天数)后删除已完成的计划):在指定天数后删除状态为已完成的计划。
Delete uploaded files after (days)(在(天数)后删除上传的文件):在指定天数后删除通过分析应用程序和
POST /user/v2/inputfiles上传到 Server UI 的文件。如果某个计划引用了上传的文件,则会保留文件,直到该计划被删除。一旦计划被删除,将应用“持久层选项”中定义的天数。
重要
我们建议您采用定期备份节奏,并启用在 180 天(或您选择的非零值)后删除队列和结果、完成的计划和上传的文件。如果将值设置为 0,项目将无限期保留。
优点:这减少了硬盘空间的使用。
Mapping Configuration(测绘配置)
在Mapping Configuration(测绘配置)屏幕上,将计算机配置为地图控制器并定义图块和图层缓存的阈值。缓存地图图块和渲染它们所需的参考地图可提高性能。更大的缓存体积和更长的生存时间会导致对先前请求的图块的响应更快,但会占用更多的内存和磁盘空间。较小的缓存会产生相反的效果。
Enable map tile controller(启用地图图块控制器):选择“启用地图图块控制器”以允许计算机处理工作程序渲染的地图图块。“地图问题”和地图输入工具使用这些图块来渲染地图。
Memory cache (no. of tiles)(内存缓存(图块数)):这是存储在内存中的最大地图图块数。1,000 个图块需要大约 450 MB 内存。内存缓存越高,存储的图块越多,性能越高,但需要的系统资源也越多。
Disk cache (MB)(磁盘缓存 (MB)):这是为在硬盘上缓存地图图块图像分配的最大空间量。磁盘缓存越高,硬盘空间消耗越大,但可能会提高地图图块请求的性能。
Reference layer time to live (seconds)(引用图层生存时间(秒)):“地图问题”和地图输入工具创建引用图层并由 YXDB 文件驱动。控制器可以维护对此 YXDB 文件的引用,以帮助加速渲染。此设置将定义用于保留引用图层信息的时间量。增加该数量可以优化频繁请求的图层的性能。下次请求时会重新生成过期的引用图层。
连接 - Alteryx One Platform
包含 Server 与 Alteryx One Platform 端点之间进行通信所需的数据。
Server 链接有效负载
使用您的 Alteryx One 工作区账户对 Server 环境和 Alteryx One 工作区之间的连接进行身份验证。在 Alteryx One 上,您需要创建具有数据世系功能和服务主体权限的管理员角色,以生成 Server 链接有效负载。
有关如何创建 Server 链接有效负载的详细说明,请参阅数据世系连接文章。
要启用 Server 与 Alteryx One Platform 的连接...
选中启用 Server 连接至 Alteryx One 复选框。
将 Alteryx One 中的有效负载粘贴到有效负载代码文本框中。
选择测试连接。
代理用户注意事项
如果贵组织采用数据世系并使用代理将 Server 连接到 Alteryx One Platform,则需要将某些站点列入白名单。有关站点的完整列表,请参阅 Alteryx Platform 服务白名单。
Alteryx Server 服务日志中的错误消息
当您在 Alteryx Server 中设置数据世系连接时,可能会出现这些错误消息。要查看这些消息,请检查 Server 服务日志。
- LineageReducer_ProcessEvent_ParseError
从引擎收到的响应无效。预期为 JSON 格式。
- LineageReducer_FinalizeLineage_FinalParseError
从引擎收到的完成事件不是 JSON 格式。
- LineageReducer_FinalizeLineage_Failure
无法从引擎核对世系数据。请将此问题连同重现工作流一起报告给 Alteryx 支持。
- 未找到具有以下名称的数据集
从引擎收到中间数据集。
- AlteryxExecuteLineage_CallbackLineage_NoObject
从引擎收到的信息无效。预期为 JSON 格式。
- AlteryxExecuteLineage_CallbackLineage_Fail
无法将启动事件发送到 AACP。有关详细信息,请参阅前面的错误。
- AlteryxExecuteLineage_CallbackLineage_UnexpectedError
在世系处理过程中出现意外错误。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_SendAacpLineageData_EmptyAccessToken
工作程序无法从控制器获取访问权限。请检查控制器日志以了解详细信息。
- AlteryxExecuteLineage_SendAacpLineageData_EmptyUrl
AACP 的 URL 为空。请确认 Server 链接有效负载未被修改。
- AlteryxExecuteLineage_SendAacpLineageData_Fail
此问题可能与权限有关。请检查日志以了解详细信息。您可能需要重新生成 Server 链接有效负载并重新测试连接。
- AlteryxExecuteLineage_SendAacpLineageData_CurlFail
由于发生错误,未能发送世系数据和 cURL。请使用配置中的测试按钮重新验证连接。
- AlteryxExecuteLineage_SendAacpLineageData_stdFailure
请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_SendAacpLineageData_UnknownError
请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_ProcessLineageResults_MissingEnd
引擎未发送结束事件。这是可恢复的,但可能会导致目录中的数据丢失。引擎很可能已崩溃。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_ProcessLineageResults_EmptyStartId
引擎未发送启动事件。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_ProcessLineageResults_EmptyEndId
引擎未发送结束事件,且无法创建该事件。不会发送任何世系。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_ProcessLineageResults_MisMatchId
在世系处理过程中发生不匹配。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_ProcessLineageResults_EmptyJson
无法使用世系最终确定 JSON 有效负载。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_UpdateJob_NoName
引擎发送了一个未命名的作业。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_UpdateJob_NoJob
引擎发送了一个没有作业的有效负载。请将此问题报告给 Alteryx 支持。
- AlteryxExecuteLineage_GetServerUrl
无法解析服务器 URL。无法添加源代码位置属性,但这不会影响功能运行。
- AlteryxExecuteLineage_DecorateSourceCodeLocation_NoServerUrl
无法解析服务器 URL。无法添加源代码位置属性,但这不会影响功能运行。
- AlteryxExecuteLineage_CreateFinalEvent_NoFailure
意外的作业状态:既未取消也未失败。作业可能已成功完成,这不会影响功能运行。
- AlteryxExecuteLineage_SendAacpLineageDataViaProxy_NotJson
通过代理从 AACP 收到的响应无效。预期为 JSON 格式。
- AlteryxExecuteLineage_SendAacpLineageDataViaProxy_MissingReqs
AACP 通过代理发送的数据不完整。
- AlteryxExecuteLineage_SendAacpLineageDataViaProxy_SendError
无法通过代理将有效负载发送到数据目录。请仔细检查配置。
- AlteryxExecuteLineage_SendAacpLineageDataViaProxy_CurlError
无法通过代理将有效负载发送到数据目录。请仔细检查配置。
- AlteryxExecuteLineage_SendAacpLineageDataViaProxy_stdError
无法通过代理将有效负载发送到数据目录。请仔细检查配置。
- AlteryxExecuteLineage_SendAacpLineageDataViaProxy_UnknownError
无法通过代理将有效负载发送到数据目录。请仔细检查配置。
- LineageOAuth_GetAccessTokenEncrypted_Failure
无法从 AACP 获取访问令牌。请确认 Server 链接有效负载仍然有效。
- LineageOAuth_GetAccessTokenEncrypted_GetResponseString
AACP 返回了成功响应 (200),但未提供令牌。请将此问题报告给 Alteryx 支持。
- LineageOAuth_GetAccessTokenEncrypted_Json
AACP 返回了成功响应 (200),但响应不是 JSON 格式。请将此问题报告给 Alteryx 支持。
- LineageOAuth_GetAccessTokenEncrypted_HttpException
请将此问题报告给 Alteryx 支持。
- LineageOAuth_GetAccessTokenEncrypted_Exception
请将此问题报告给 Alteryx 支持。
- LineageOAuth_GetAccessTokenEncrypted_UnknownError
请将此问题报告给 Alteryx 支持。
- ServicePluginQueue_GetLineageConnection_emptystring
Server 链接有效负载设置为空。请验证 Server 链接有效负载配置。
- ServicePluginQueue_InitializeLineageConnection
Server 链接有效负载设置不是 JSON 格式。请验证 Server 链接有效负载配置。
系统设置中的消息
这些消息与数据目录的连接有关(仅当端点位于专用网络之后时适用)。如果端点是公开可访问的,则可以使用 Alteryx One Platform 中的测试连接按钮来测试连接。它们还涵盖了与控制平面中的世系服务的连接。
- 连接失败。请重试或联系您的管理员寻求帮助。
未能连接数据世系服务。
- 已建立连接。
数据世系服务返回 200(成功)。
- 身份验证失败。请重试或联系您的管理员寻求帮助。
数据世系服务返回 401(其中一项服务未能通过身份验证)。请联系您的 Server 管理员。
- 对此页面的访问受限。联系您的管理员以申请访问权限。
数据世系服务返回 403(缺少权限)。请联系您的 Server 管理员以申请访问权限。
- 数据世系配置已删除。要检查您的设置,请前往“数据世系连接”,然后重试。
数据世系服务返回 409(配置缺失)。前往数据世系连接并检查您的设置。
- 未能验证连接。在帮助文档中了解更多关于连接的信息。
其他非 305 的响应。有关更多详细信息,请访问数据世系连接。
- 未能连接到数据目录。检查 URL 并确保可以从您的网络访问该目录。
未能连接到数据目录。转到数据世系连接,检查 URL 并确保可以从您的网络访问该目录。
- 未能对数据目录进行身份验证。验证您的目录权限。(错误代码 401/403)。
未能通过数据目录身份验证。请验证您的数据目录权限。
- 已建立连接。
连接已建立。
- 未能验证数据目录(错误代码___)。
其他返回代码。
- 未能发送请求,原因:[error reason]。
发送请求时发生异常。
- 出现未知错误。请重试。
这是默认错误消息。
Remote Controller(远程控制器)
如果您已将计算机配置为 worker(工作程序),则 Remote Controller(远程控制器)屏幕是 Controller(控制器)下唯一的屏幕。这是将计算机连接至控制器计算机的位置。输入主机位置和控制器令牌以连接至控制器计算机。
Host(主机):输入控制器计算机的主机位置。
Use SSL/TLS(使用 SSL/TLS):选中 Use SSL/TLS 时,将为远程控制器启用 SSL/TLS。默认情况下,此设置对 FIPS 环境启用,对非 FIPS 环境禁用。
Port(端口):选中 Use SSL/TLS 设置时,端口默认为 443。如果未选中,则端口默认为 443。但是,您仍然可以手动更改端口。
Token(令牌):输入控制器计算机令牌。您可以在控制器计算机“系统设置”中的Controller(控制器) > General(常规)屏幕上找到控制器令牌。转至本文中的General 配置部分。
选择 View(查看)或 Hide(隐藏)以显示或隐藏控制器令牌字符。

如何限制 Server 上的临时文件大小
默认情况下,Server 上的临时目录为 C:\ProgramData\Alteryx\Service\Staging\<UUID>\__StageTemp\
当工作流或分析应用程序在 Server 上运行时,将创建一个新文件夹:C:\ProgramData\Alteryx\Service\Staging\<UUID>\__StageTemp\Engine_<UUID>

要更改或添加负责限制引擎在 Server 上用于写入临时文件的 TempFolder 大小的设置:
前往
%PROGRAMDATA%\Alteryx。打开 RuntimeSettings.xml。
查找 TempFileMaxSize 控制器设置。如果它不存在,您可以使用以下示例添加。
示例(TempFileMaxSize 以兆字节为单位设置):
<Controller><TempFileMaxSize>20000</TempFileMaxSize><Controller/>
AlteryxService 每秒检查一次文件夹大小。如果当前大小超过 TempFileMaxSize,则 AlteryxService 会停止执行,并将日志错误消息(“AlteryxService:超出临时文件大小限制”)输出至 C:\ProgramData\Alteryx\Service\AlteryxServiceLog.log。

执行后,系统将移除所有临时文件。如果 TempFileMaxSize 的设置为空,则 AlteryxService 不检查文件夹的大小。
重要
为每个同时运行的工作流设置 TempFileMaxSize,因此如果可以同时运行 2 个工作流,并且 TempFileMaxSize 设置为 20 GB,则可能使用的总磁盘空间为 40 GB。
引擎记录交换文件分配在工作流临时文件夹中,并在 RAM 不足时用于内存交换。每个交换文件各分配了 1 GB,因此我们建议在磁盘上保留额外的可用空间。考虑到其他程序也可以在同一磁盘上写入临时文件,如果您有大约 50 GB 的可用磁盘空间,我们建议为临时文件分配总共约 40 GB 的空间,并保留 5 -10 GB 未使用的空间。
如何应用更改
转至 C:\ProgramData\Alteryx 并打开 RuntimeSettings.xml 文件。
将 <Controller><TempFileMaxSize> 添加到文件中。
示例:
<Controller><TempFileMaxSize>20000</TempFileMaxSize></Controller>重新启动 AlteryxService。
您可以使用命令行:
在管理员模式下打开 PowerShell。
转至 Alteryx\bin 文件夹
cd C:\Program Files\Alteryx\bin\停止服务
.\AlteryxService.exe stop启动服务
.\AlteryxService.exe start
或者,您可以使用 Alteryx 配置:
打开 Designer。
依次单击选项 > 高级选项 > 系统设置。
完成所有步骤后,选择 Finish,然后等待服务重新启动。
选择 Done。