Tableau Server のクローンを作成

Tableau Server のバージョン 2022.3 以降では、新しい tsm コマンドを使用すると、Tableau Server 展開の構成とトポロジのコピーを作成し、それを使用して元の展開の正確なレプリカを作成できます。コマンド tsm settings clone は、「クローン ペイロード」と呼ぶ一連のファイルを作成します。これには、設定、シークレット、構成、トポロジ (使用ポートを含む)、および外部サービスに関する情報が含まれます。

セキュリティに関する考慮事項

tsm settings clone コマンドで生成される「クローン ペイロード」と呼ぶ一連のファイルには、構成の際にサーバー管理者が提供したキーペアと証明書を含むキーストアなどの情報だけでなく、Tableau Server によって生成されたすべてのシークレットも含まれます。クローン ペイロードとその出力場所を安全に保つことは、セキュリティ上非常に重要です。これを容易にするために、以下が行われます。

  • 出力ディレクトリが存在しない場合、tsm settings clone コマンドを実行しているユーザーにアクセスが制限されたディレクトリが tsm によって作成されます。
  • コマンド実行時に出力ディレクトリが存在する場合、コマンドを実行しているユーザーがそのディレクトリを所有していること、およびアクセス許可がそのユーザーのみに制限されていることを tsm が確認します。ディレクトリに必要な権限がない場合は、次のメッセージが表示されます。

    The output directory '<path/to/directory>' exists, but must be restricted to owner only.

クローン ペイロードの制約

  • 複製される Tableau Server のバージョンは、作成されたバージョンと一致する必要があります。古いバージョンのクローン ペイロードを使用して、新しいバージョンのサーバーをインストールすることはできません。

clone コマンドを使用して Tableau Server のコピーを作成する

Tableau Server の複製を作成するプロセスは複数の手順からなりますが、基本的な手順は次の 2 つです。

  1. 複製する Tableau Server インストールからクローン ペイロードを作成します。
  2. クローン ペイロードを使用して、 Tableau Server のデプロイメントをもう一つインストールします。2 つのインストールは、トポロジを一致させ、元のデプロイメントと一致するようにノードを追加する必要があります。

クローン ペイロードを作成する

tsm settings clone コマンドを使用して、Tableau Server の構成とトポロジの設定を含む一連のファイル (クローン ペイロード) を生成します。このコマンドが取る引数は 1 つであり、一連のファイルを保存する出力ディレクトリです。

tsm settings clone --output-directory <output_directory>

作成したクローン ペイロードを使用すると、Tableau Server の新しいインスタンスを元のインストールと同じ構成とトポロジでインストールできます。

クローン ペイロードを使用して Tableau Server のコピーを作成する

  1. 最初のノードに Tableau Server パッケージをインストールします。Tableau Server は初期化しないでください。Tableau Server パッケージのインストール

  2. initialize-tsm スクリプトを実行し、tsm settings clone コマンドで作成したクローン ペイロードへのパスを指定します。

    sudo /opt/tableau/tableau_server/packages/scripts.<version>/initialize-tsm --accepteula --clone-artifact-dir=<path-to-clone-directory>

    注: Tableau Server は特権のない tableau ユーザーとして実行されるため、管理者は tableau ユーザーがクローンのディレクトリとファイルへの読み取りアクセス権を持っていることを確認する必要があります。ほとんどの場合、クローン ディレクトリのコンテンツに対する読み取り権限と、すべての親ディレクトリに対する実行権限 (トラバーサル用) を「others」に付与する必要があります。

  3. (オプション) Tableau Server の元の (複製元の) インストールとノード数が一致するように、追加のノードをインストールします。元のインストールでノードを追加した場合、この手順は必須です。元のインストールと同数のノードのみを追加してインストールします。

    1. 最初のノード上で bootstrap ファイルを生成します。
    2. 追加した各ノードに Tableau Server をインストールし、スクリプト initialize-tsm を実行します。

      追加のノードのインストールと構成

  4. 最初のノードで、初期化を完了します。

    tsm initialize

コンテナ

クローン機能は、コンテナで Tableau Server を使用する場合、特に外部のリポジトリやストレージで使用する場合に便利です。clone コマンドを使用すると、管理者は Tableau Server 環境をすばやく再構築し、外部サービスを再接続できます。

注: Tableau Server クラスタを再作成する手順は、使用しているコンテナ技術 (docker、docker compose、Kubernetes など) によって異なる場合があります。

以下の情報は、docker を直接使用する場合に固有のものです。最初のノードのコンテナを起動するときに、CLONE_ARTIFACT_DIR 環境変数を使用してクローン ペイロードの場所を指定する必要があります。

例:

docker run \
-v <path-to-clone-directory>:/docker/custom-clone-path \
-e CLONE_ARTIFACT_DIR=/docker/custom-clone-path \
-e LICENSE_KEY=<key> \
-p 8080:8080 -p 8800-9000:8800-9000 -p 27000-27010:27000-27010 \
--hostname=<static (internal) name of host machine> \
-d <Tableau Server in a Container image ID or tag>

Tableau Server のマルチノード展開をコンテナで再作成する

マルチノードの Tableau Server 展開から生成されたクローン ペイロードの場合、最初のコンテナは追加のノードがクラスタに参加するのを待ちます。

クローンを使用するときに追加のノードをクラスタにセットアップすることは、通常の展開でノードを追加することと同じであり、以下が必要です。

  • ノード間で bootstrap ファイルを共有するためのボリュームのマウント
  • 環境変数 ALWAYS_WRITE_BOOTSTRAP_FILE および BOOTSTRAP_INSTALL の指定

コンテナ展開でマルチノード環境を作成する詳細な手順については、「マルチノードの Tableau Server in a Container」を参照してください。

注: クローン ペイロードは、クラスタ内の最初のノードにのみマウントして使用する必要があります。追加のノードにクローン ペイロードをマウントする必要はありません。

フィードバックをお送りいただき、ありがとうございます。フィードバックは正常に送信されました。ありがとうございます!