Tableau Server は PostgreSQL リポジトリに依存してサーバー データを保存しています。Tableau Server インストールには常に少なくとも 1 つの有効なインスタンスが必要で、インストールに少なくとも 3 つのノードがある場合は、最大で 2 つのインスタンス(1 つアクティブ、1 つパッシブ)を使用できます。唯一のインスタンスの場合は、リポジトリ インスタンスを削除できません。

つまり、リポジトリの唯一のインスタンスを 1 つのノードから他のノードに移動したい場合、2 番目のインスタンスを追加して新しいリポジトリと古いリポジトリを同期してから、古いリポジトリを削除する必要があります。サーバーを起動してリポジトリ インスタンスを同期します。新しいリポジトリを追加したら、既存のインスタンスと自動的に同期します。

サーバークラスタからノードを削除するときにそのノードがリポジトリの唯一のインスタンスをホストしている場合は、ノードを削除する前に、リポジトリの 2 番目のインスタンスを追加してそのインスタンスを同期する必要があります。

また、ファイル ストアを移動する場合は、同時にリポジトリも移動できます。ファイル ストアのプロセスの移動を参照してください。

リポジトリに変更を加える前に、Tableau Server のフル バックアップを作成します。詳細については、tsm maintenance backupを参照してください。

重要: 同じステップで、2 番目のリポジトリ インスタンスの追加と、1 番目のインスタンスの削除はできません。両方を実行させて、元のインスタンスを削除する前に、1 番目のインスタンスのコンテンツを 2 番目と同期させる必要があります。

リポジトリの削除ステップは以下の通りです。

  1. リポジトリの新しいインスタンスを別のノードに追加し、サーバーを起動し、1 番目のリポジトリと同期するのを待ちます。

  2. リポジトリのインスタンスを元のノードから削除します。

リポジトリを移動するには、まず 2 番目のインスタンスを 2 番目のノードに追加し、次に 2 つのインスタンスが元のリポジトリにあるデータ全てを同期した後で、元のインスタンスを削除します。上記ステップは、2 つのインスタンス間でのコンテンツ同期を可能にするために別々に行う必要があります。

リポジトリの新しいインスタンスの追加

  1. ブラウザーで TSM を開きます。

    https://<tsm-computer-name>:8850

    詳細については、「Tableau Services Manager の Web UI へのサインイン」を参照してください。

  2. [構成] タブをクリックします。

  3. リポジトリに追加するノードでは以下を行います。

    リポジトリ (pgsql)を選択します。

  4. ページ上部の [変更を保留中] をクリックします。

    [変更を保留中] のリストが表示されます。

    3 または 5 ノードのクラスタを構成していて、調整サービス アンサンブルをまだ展開していない場合、警告が表示されます。継続して、調整サービス アンサンブルを別のステップで展開します。新しい調整サービス アンサンブルを展開する方法についての詳細は、調整サービス アンサンブルの展開を参照してください。

  5. [変更を適用して再起動][確認] をクリックし、Tableau Server の再起動を確認します。

  6. Tableau Server が起動したら、ステータス タブで、すべてのプロセスが有効であることを検証します。

リポジトリのインスタンスの削除

  1. TSM の ステータス タブで、すべてのプロセスが有効であることを検証します。両方のリポジトリが有効として表示されたら、 1 番目を削除できます。

  2. [構成] タブをクリックします。

  3. リポジトリを削除しようとしているノードで、リポジトリ ボックスをクリアします。

  4. ページの上部にある変更を保留中をクリックします。

    3 または 5 ノードのクラスタを構成していて、調整サービス アンサンブルをまだ展開していない場合、警告が表示されます。継続して、調整サービス アンサンブルを別のステップで展開します。新しい調整サービス アンサンブルを展開する方法についての詳細は、調整サービス アンサンブルの展開を参照してください。

  5. [変更を適用して再起動][確認] をクリックし、Tableau Server の再起動を確認します。

リポジトリを移動するには、まず 2 番目のインスタンスを 2 番目のノードに追加し、次に 2 つのインスタンスが元のリポジトリにあるデータ全てを同期した後で、元のインスタンスを削除します。上記ステップは、2 つのインスタンス間でのコンテンツ同期を可能にするために別々に行う必要があります。

リポジトリの新しいインスタンスの追加

  1. リポジトリ (pgsql) を別のノードに追加します。

    tsm topology set-process -n <nodeID> -pr pgsql -c 1
  2. 変更を適用します。保留中の変更にサーバーの再起動が必要な場合は、pending-changes apply コマンドの実行時に、再起動が行われることを知らせるメッセージが表示されます。このメッセージはサーバーが停止していても表示されますが、その場合には再起動は行われません。--ignore-prompt オプションを使用してメッセージが表示されないようにできますが、そのようにしても再起動に関する動作が変わることはありません。変更に再起動が必要ない場合は、メッセージなしで変更が適用されます。詳細については、tsm pending-changes applyを参照してください。

    tsm pending-changes apply
  3. 2 番目のノードの新しいリポジトリが最初のノードのリポジトリと同期するまで待機します。

    tsm status -v

    新しいリポジトリのステータスが [パッシブ] として表示されるまで待機します。

リポジトリのインスタンスの削除

リポジトリの新しいインスタンスが完全に同期され、[パッシブ] として表示されたら、元のインスタンスを削除できます。

  1. プロセス カウントを 0 (ゼロ) に設定して、1 番目のノードからリポジトリを削除します。

    tsm topology set-process -n <nodeID> -pr pgsql -c 0
  2. 変更を適用します。保留中の変更にサーバーの再起動が必要な場合は、pending-changes apply コマンドの実行時に、再起動が行われることを知らせるメッセージが表示されます。このメッセージはサーバーが停止していても表示されますが、その場合には再起動は行われません。--ignore-prompt オプションを使用してメッセージが表示されないようにできますが、そのようにしても再起動に関する動作が変わることはありません。変更に再起動が必要ない場合は、メッセージなしで変更が適用されます。詳細については、tsm pending-changes applyを参照してください。

    tsm pending-changes apply
ありがとうございます!