ナレッジベース

TSM の再起動後に Tableau Server ノードがエラー状態でスタックする


発行: 30 Jan 2019
最終修正日: 08 Apr 2024

問題

Tableau Server を再起動した後、 クラスタのノードがエラー状態のままになり、TSM が次のログに記録された TabsvcHandler エラーにより起動できません。
   
+ \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-obliterate スクリプトを実行した後でも、バックアップを作成した Tableau Server のバージョンをもう一度インストールして、データをバックアップに含めることができます。
  3. すべてのTableau データをノードからバックアップしたことを確認したら、クラスタ内の失敗した各ノードで Tableau-Server-Obliterate スクリプトを実行します。デフォルトの場所: 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. ドライバーをインストールする

: 保留中の変更を適用してプロセスをすべて完了する場合のみ、追加ノードを追加して構成する必要があります。保留中の変更を適用して終了せずにノードを追加すると、ユーザーが Tableau Server にログインできない可能性があります。
  1. 保留中の変更を適用して、Tableau Server を再起動します。
  2. TSM のステータス ページまたは Web UI のサーバー ステータス ページを表示して、ノードがクラスタが正常に追加されていることを確認します。

原因

tabsvc 復元ファイル (tabsvc-service-resurrection-data-*.json) が破損しています。TSM で tabsvc の実行状態をインスタンス化するにはこのファイルが必要です。  これは、ディスク空き容量が不足すると発生する場合があります。  
この記事で問題は解決しましたか?