知识库

排除“Worker Initialization Failed”错误


发布时间: 17 Apr 2015
上次修改日期: 12 May 2020

问题

安装、升级或启动 Tableau Server 时,Tableau Server 配置实用工具中可能会出现以下错误:
 
Worker initialization failed.
See the tabadmin.log for details.(工作服务器初始化失败。有关详细信息,请参阅 tabadmin.log。)
 
注意:“工作服务器初始化失败”错误也可能出现在 Tableau Server 的单一计算机安装中,因为错误中的“工作服务器”可能是主节点(例如,工作服务器 0)。 

环境

Tableau Server

解决方案

首先,检查权限:

  • 确保安装 Tableau Server 的用户和用户运行身份都具有在安装目录中进行安装所需的权限。有关详细信息,请参阅所需的用户运行身份帐户设置
  • 确保没有为 Tableau 文件和文件夹选择“只读”属性。有关详细信息,请参阅 Microsoft TechNet 上的文件和文件夹权限
  • 确保“Local Service”帐户对安装了 Tableau Server 的驱动器的根目录具有足够的权限。
注意: 如果从早期版本升级到 Tableau Server 9.3 或更高版本,则检查“Local Service”帐户特别重要。在 Tableau 9.3 中,Tableau 许可证服务开始采用“Local Service”帐户运行。

重置协调服务 (Zookeeper)


如果 Zookeeper 未正确启动,则日志中会出现类似于如下的错误:
user=__request=__ Sending 'ruok' to localhost:12000...user=__request=__ Error getting ZooKeeper state: Errno::ECONNREFUSED:Connection refused - Connection refused
在这种情况下,运行 tabadmin cleanup --reset -coordination 可解决问题。有关详细信息,请参阅 tabadmin commands: cleanup
注意:在运行上述命令之前,请将日志存档。此命令将清理所有日志文件。有关详细信息,请参阅使用日志文件

确保必要的端口已开放

确保 Tableau Server 所需的端口已开放。

检查是否有可用端口

在安装和启动期间,Tableau Server 将为其进程检查是否有可用端口。

例如:

为 pgsql.port 检查 1 端口的范围,默认值为 8060。
为 worker0.vizqlserver.port 检查 1 端口的范围,默认值为 9100。
初始化:创建初始配置后配置端口完成
如果没有可用于绑定的默认端口,该信息将输出到日志。

在安装期间打开端口

在安装期间,Tableau Server 将在 Windows 防火墙中打开子网范围的端口。这就是为何我们建议将 Tableau Server 群集中的所有计算机放在同一 IP 子网上的原因。

  • 根据默认防火墙规则,系统将不允许从 IP 子网外部连接的计算机进行连接。 如果您有计算机位于不同 IP 子网上的群集中,则必须手动设置防火墙规则。
  • Tableau Server 不会尝试在除 Windows 防火墙外的任何其他防火墙中打开端口。

使用 telnet 来检查端口

Telnet 客户端是一个 Microsoft 程序,可安装在大多数 Windows Server 环境中。有关详细信息,请参阅 Microsoft Technet 上的安装 Telnet 客户端。此处列出了 Tableau Server 默认使用的特定端口:Tableau Server 端口

 若要检查主 Tableau Server 节点是否可使用端口 3730 与工作服务器节点通信来完成工作服务器安装,您可以从主节点中执行以下测试:

如果工作服务器是使用 IP 地址添加的:telnet <workerIP> 3730
如果工作服务器是使用计算机名称添加的:telnet <worker-machine-name> 3730

确保工作服务器可访问主服务器的 Tableau 管理进程:

从工作服务器中:telnet <primary-machine-name> 8755

若要检查工作服务器是否可在某个端口上与自身通信,您可以从工作计算机中使用 localhost 或 127.0.0.1:

从工作服务器中:telnet localhost <port>

如果 telnet 测试成功,您将看到空白屏幕。
如果 telnet 测试未成功,您将看到如下错误:
正在连接到 localhost...无法在端口 <number> 上建立与主机的连接: 
连接失败
上述错误表明通信被阻止或所选端口上没有进程在进行。
确保任何代理、防火墙或防病毒软件配置为允许 Tableau Server 通过必要的端口通信。有关详细信息,请参阅针对 Tableau Server 配置代理使用防病毒排除项提高性能

原因

之所以发生此错误,原因通常是用户运行身份帐户或 Local Service 帐户没有足够的权限、Zookeeper 未正确启动,或者 Tableau Server 通信所需的端口被阻止。
此文章是否已解决问题?