知识库

TSM 重新启动后,Tableau Server 节点陷入错误状态


发布时间: 30 Jan 2019
上次修改日期: 08 Apr 2024

问题

重新启动 Tableau Server 群集后,节点可能会停留在错误状态,无法启动 TSM,并且系统会记录以下 TabvcHandler 错误:
   
+ \logs.zip\logs\tabsvc\tabsvc_node2-0.log:
 
2018-12-15 09:09:54.780 -0600  Thread-1 : INFO  com.tableausoftware.tabsvc.TabSvcHandler - Resurrection data file path set to: F:\Tableau Server\data\tabsvc\tabsvc\0\tabsvc-service-resurrection-data_tabsvc-clusterid.json
2018-12-15 09:09:54.780 -0600  Thread-1 : INFO  com.tableausoftware.tabsvc.TabSvcHandler - Found resurrection data file F:\Tableau Server\data\tabsvc\tabsvc\0\tabsvc-service-resurrection-data_tabsvc-clusterid.json.Will now try to resurrect the services.
2018-12-15 09:09:54.785 -0600  Thread-1 : ERROR com.tableausoftware.tabsvc.TabSvcHandler - Failed to load resurrection data file: F:\Tableau Server\data\tabsvc\tabsvc\0\tabsvc-service-resurrection-data_tabsvc-clusterid.json
        java.lang.RuntimeException: com.fasterxml.jackson.databind.JsonMappingException: No content to map due to end-of-input

环境

  • Windows Server 2012 和 2016
  • 带 TSM 的 Tableau Server(所有当前版本)

解决方案

从群集中移除故障节点,在节点上重新安装 Tableau Server,然后再次将节点添加到群集中。
  1. 使用 TSM UI 移除处于错误状态的节点,或使用命令 TSM topology remove-nodes --node-names "node2"。这会使群集的其余部分处于良好状态。 
  2. 可选:在移除 Tableau 之前创建数据备份,并将备份文件保存到不属于 Tableau 安装的计算机上的安全位置。注意:默认情况下,会在 C:\ProgramData\Tableau\Tableau Server 中创建这些文件,名称类似于“uninstall-2018.1.tsbak”。将备份文件保存在单独的计算机上将允许您重新安装创建备份的 Tableau Server 版本,并将数据包含在备份中,即使在运行 Tableau-server-bliterate 脚本之后也是如此。
  3. 验证已从节点备份所有 Tableau 数据后,在群集中的每个故障节点上运行 Tableau-Server-bliterate 脚本,默认位置为:C:\Program Files\Tableau\Tableau Server\packages\scripts.<version_code>\tableau-server-obliterate.cmd -y -y –y
  4.  使用 TSM Web 界面或 TSM CLI 在所需的节点上重新安装 Tableau Server
在附加节点上安装 Tableau Server 的一般步骤如下:
a.确认先决条件
b.生成节点引导程序文件 
c.安装附加节点
d.配置附加节点
e.安装驱动程序

注意仅当可以通过应用挂起的更改完全完成该过程时,才应添加和配置附加节点。在未通过应用挂起的更改完成操作0的情况下添加节点可能会导致用户无法登录到 Tableau Server。
  1. 应用挂起的更改并重新启动 Tableau Server。
  2. 通过查看 TSM 状态页面或 Web UI 服务器状态页面,验证节点是否已添加到群集并且是否成功

原因

The tabsvc 恢复文件 (tabsvc-service-resurrection-data-*.json) 已损坏,此文件负责在 TSM 中实例化 tabsvc 的运行状态。  当磁盘空间耗尽时,可能会发生这种情况。  
此文章是否已解决问题?