例: 3 ノード HA クラスタのインストールおよび構成

Tableau Server の高可用性マルチノード インストールは、Tableau Server の効率性および可用性を最大化する上で有効です。マルチノードの Tableau Server 展開を構成する際は、実行するすべての手順は、冗長性を組み込むことで起こりうるサーバー システムの停止時間の低減を助けるように設計されています。サーバー プロセスを追加のノードに移動または追加することで効率性を向上するのに加え、次の要件を満たすことで Tableau Server の高可用性 (HA) インストールを実現できます。

  • 少なくとも合計 3 台のノードを追加する
  • 調整サービスのアンサンブルを少なくとも 3 台のノードで展開する
  • クライアント ファイル サービス (CFS) のインスタンスを少なくとも 1 つのノードに追加する (調整サービスを実行している各ノードにインスタンスを追加することをお勧めします)
  • 追加ノードのうちの 1 台にファイル ストアの第二インスタンスを追加 (既にノード上にない場合はデータ エンジンが自動的にインストールされます)
  • 追加ノードのうちの 1 台にリポジトリの第 2 インスタンス (pgsql) を追加

このような追加を含む Tableau Server のインストールには、冗長性が組み込まれ、リポジトリに問題が発生した場合のフェールオーバーをサポートします。この例は、このやり方などを示します。

単一サーバー システム

最初のノードに Tableau Server をインストールすると、機能する必要があるすべてを実行するシステムがあります。そのシステムには、全てのサーバー プロセスの少なくとも一つのインスタンスがあり、Tableau Serverの最も基礎的な構成です。冗長性はありません。サーバー トポロジは次のようになります (一部の TSM 固有プロセスは表示されません)。

3 ノード システム

冗長性を組み込むには、リポジトリやデータ エンジンやファイル ストア プロセスのホストインスタンスに追加ノードを追加する必要があります。ノード上のプロセスの複数インスタンスを含め、その他のプロセスのインスタンスを追加することができます。さらに、システムの脆弱性を緩和するため、複数ゲートウェイおよび一部のサーバー プロセスの追加インスタンスを実行することができます。この構成を達成するには最低 3 台のコンピューターが必要です。

下の図では、ファイル ストア プロセスが両方の追加ノードに追加されています。2 番目のリポジトリのパッシブ インスタンスも他の新規ノードの 1 つに追加されています。最後に、サーバー プロセス (青色で表示) が、冗長性を提供するために追加ノードに追加されました。

構成の手順

この手順は、上の図のように、3 ノードの HA Tableau Serverクラスタを、追加ノード上の 2 つのリポジトリ インスタンスおよび 2 つのファイル ストア/データエンジン インスタンスと構成する方法について説明しています。

はじめる前に

追加ノードに Tableau Server をインストールする前に、各追加ノードが分散環境の要件を満たしていることを確認してください。詳細については、分散環境の要件 を参照してください。

注: この操作には、TSM コマンド ラインを使用して実行する必要のある手順が含まれています。

ステップ 1: 最初のノードをインストールする

Tableau Server のインストールと構成を参照してください。

ステップ 2: 追加ノード用の bootstrap ファイルを生成する

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

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

    詳細については、「Tableau サービス マネージャーの Web UI へのサインイン」を参照してください。

  2. [構成] タブをクリックし、[ノードの追加] ボックスで [Bootstrap ファイルをダウンロード] をクリックします。

    bootstrap ファイルが作成され、ローカル コンピューターにコピーされます。

    既定では埋め込みの認証資格情報は bootstrap ファイルに含まれています。認証資格情報を bootstrap ファイルに埋め込まない場合は、[ファイルに一時的な認証資格情報を含める] オプションをオフにします。埋め込み認証資格情報をノードの bootstrap ファイルに含める機能を完全に無効にする場合は、サーバーの構成オプションを設定できます。詳細については、features.PasswordlessBootstrapInitを参照してください。

ステップ 3: ノード 2 をインストールして初期化する

  1. 1 番目のコンピューターで使用した元のインストーラーと、生成した bootstrap ファイルをコピーして、Tableau Server を追加する新しいコンピューターからアクセスできる場所に貼り付けます。この場所とは、据え付けられたネットワーク共有ディスクや、直接新しいコンピューター上である可能性があります。

  2. ローカル ファイアウォールを実行している場合は、クラスタに含まれるすべてのノードに対してファイアウォールのルールを構成する必要があります。詳細については、ローカル ファイアウォールの構成を参照してください。

  3. 新しいノードで、Tableau Server セットアップ プログラムを実行します。

    パッケージ マネージャーを使用して、Tableau Server パッケージをインストールします。

    新しいバージョンを既存のバージョンと同じ場所にインストールする必要があります。インストール場所は、すべてのノードで同じである必要があります。シンボリック リンクを使用している場所や、ネットワーク ファイル システム (NFS) ボリューム上のディレクトリにインストールしないでください。

    • CentOS を含む RHEL ライクなディストリビューションでは、既定以外の場所に Tableau をインストールすることができます。

      • 既定の場所: 既定の場所 (/opt/tableau/tableau_server) にインストールするには次のコマンドを実行します (<version> の書式設定は「メジャー-マイナー-メンテナンス」(例: 2019-2-5))。

        sudo yum update

        sudo yum install tableau-server-<version>.x86_64.rpm

      • 既定以外の場所: 既定以外の場所にインストールするには、rpm -i を使用する必要があります。また、依存するすべてのパッケージをインストールする必要があります。下記の注を参照してください。

        次のコマンドを実行します。

        sudo rpm -i --prefix /preferred/install/path tableau-server.rpm

      注: Tableau Server のインストールに yum を使用した場合、すべての依存するパッケージが自動的にダウンロード、インストールされます。これが Tableau のインストール推奨方法です。既定以外の場所にインストールする場合、または所属の組織で yum の使用が禁止されているため、rpm -i を使用しなくてはならない場合は、依存するすべてのパッケージを個別にインストールしなくてはなりません。依存パッケージのインストールの詳細については、Tableau Server を Linux を実行するエア ギャップ環境にインストールするを参照してください。

    • Ubuntu で次のコマンドを実行します (<version> の書式設定は「メジャー-マイナー-メンテナンス」(例: 2019-2-5))。

      sudo apt-get update
      sudo apt-get upgrade
      sudo apt-get -y install gdebi-core
      sudo gdebi -n tableau-server-<version>_amd64.deb
      
  4. 新しいノードと最初のノードの間の通信を初期化するには、Tableau Server のインストール時にインストールした initialize-tsm スクリプトを実行します。

    scripts ディレクトリへ移動します。

    cd /opt/tableau/tableau_server/packages/scripts.<version_code>/
  5. initialize-tsm スクリプトを実行します。

    sudo ./initialize-tsm -b /path/to/<bootstrap>.json --accepteula
    • -b フラグを使用して、コンピューターにコピーした bootstrap ファイルへのパスを指定します。bootstrap ファイルを暗号化した場合、インポートおよびエクスポート操作におけるシークレットの保護の説明に従って、ファイルをパイプする必要があります。

    • 埋め込み認証資格情報を使用せずに bootstrap ファイルが生成された場合は、-u フラグを使用して最初のノードで管理ユーザーのユーザー名を指定し ます。これは Tableau Server 管理者ではなく、コンピュータの管理ユーザー名です。ユーザー パスワードを入力するように求めるプロンプトが表示されます。詳細については、tsm topology nodes get-bootstrap-fileを参照してください。

      sudo ./initialize-tsm -b /path/to/<bootstrap>.json -u <admin-user-on-first-node> --accepteula

      重要: 最初のノードでインストール処理を行った際に使用したものと同じユーザーの認証資格情報を入力する必要があります。

    • --accepteulaフラグによって、Tableau Server End User License Agreement (EULA) に同意します。EULA は次の場所で入手できます: エンド ユーザー ライセンス契約(新しいウィンドウでリンクが開く)(新しいウィンドウでリンクが開く)

ステップ 4: ノード 3 をインストールして初期化する

上記のステップ 3 を繰り返します。

ステップ 5: 最小トポロジを使用して新しいノードを構成する

クラスタへの新規ノードの追加プロセスを完了するには、最小限のトポロジでノードを構成する必要があります。最小限のトポロジの場合、保留中の変更はクラスタ コントローラーの追加だけであり、これを各ノードで行う必要があります。ノードに他のプロセスが必要な場合は、そのほとんどを同時に追加できます。この例では、クラスタ コントローラーでノードの構成のみを行っています。

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

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

    詳細については、「Tableau サービス マネージャーの Web UI へのサインイン」を参照してください。

  2. [構成] タブをクリックします。新しいノードが追加されたことがメッセージで知らされます。

    [続行] をクリックしてメッセージを閉じます。

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

    3 ノード以上のクラスタを構成している場合、調整サービス アンサンブルの警告が表示されます。続行できます。別のステップで、調整サービス アンサンブルを展開します。

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

    Tableau Server が再起動すると、ノードは必要な最小限のトポロジで組み込まれます。

ステップ 6: 調整サービス アンサンブルを展開する

合計 3 台以上のノードをインストールした場合、調整サービス アンサンブルも展開してください。これを展開しないと、サーバーの構成やトポロジに変更を加えるたびに警告メッセージが表示されるようになります。このメッセージは無視できますが、ベスト プラクティスはマルチノードの調整サービス アンサンブルを展開することです。

Tableau Server をインストールすると、調整サービスのインスタンスが最初のノードに 1 つインストールされます。TSM と Tableau Server は調整サービスが正しく機能することに依存しているため、冗長性を提供し、マルチノード インストールでの可用性を確保するため、調整サービス アンサンブルを展開することで調整サービスの追加のインスタンスを構成します。調整サービス アンサンブルは 1、3、または 5 個の調整サービス インスタンスでインストールされます。Tableau Server の 3 ノード インストールでは、推奨される調整サービスのインスタンス数は 3、つまり各ノードに 1 つです。

保留中の他の変更がある場合は、調整サービス アンサンブルの展開を試行しないでください。新しい調整サービス アンサンブルを展開する前に、保留中の変更を破棄または適用します。

注: この操作には、TSM コマンド ラインを使用して実行する必要のある手順が含まれています。

以下の手順は、既存の 3 ノード Tableau Server クラスタ上に新しい調整サービス アンサンブルを展開し、旧アンサンブルをクリーンアップする方法を説明しています。

  1. 最初のノードで、ターミナル セッションを開きます。

  2. Tableau Server を停止します。

    tsm stop

    メッセージが表示されたら、TSM 管理者としてサインインします。

    管理コントローラーや管理エージェントなど、継続して実行される TSM プロセスもあります。

  3. 保留中の変更がないことを確認します。

    tsm pending-changes list

    保留中の変更がある場合は、変更を破棄するか、変更を適用する必要があります。保留中の変更の適用には少し時間がかかります。

    • 変更を破棄します。

      tsm pending-changes discard
    • または

    • 変更を適用します。

      tsm pending-changes apply

    コマンドが完了し、システム プロンプトに戻るまで待ちます。

  4. クラスタ内の各ノードのノード ID を取得します。

    tsm topology list-nodes -v

  5. tsm topology deploy-coordination-service コマンドを使用して調整サービスを指定されたノードに追加することで、新しい調整サービス アンサンブルを追加します。各ノードを識別するために実際のノード ID を使用して、調整サービスを追加するノードを指定する必要があります。展開が失敗しなければ、このコマンドにより、新しいアンサンブルが "本番環境" のアンサンブル (使用中のアンサンブル) になり、古いアンサンブルが削除されます。このような場合は、以下のステップ 6 を参照してください。

    注: サーバーの再起動が行われることを確認する「y/n (はい / いいえ)」のプロンプトが表示されます。入力せずにコマンドを実行するには、--ignore-prompt オプションを含めます。

    たとえば、調整サービスを 3 ノード クラスタの 3 ノード (node1、node2、node3) すべてに展開します。

    tsm topology deploy-coordination-service -n node1,node2,node3

    コマンドが完了し、システム プロンプトに戻るまで待ちます。

  6. (オプション) 展開が失敗した場合は、tsm topology cleanup-coordination-service コマンドを実行して、配置に失敗したアンサンブルを削除する必要があります。コマンドの実行の詳細については、tsm topology cleanup-coordination-service を参照してください。

  7. Tableau Server を起動します。

    tsm start

新しい調整サービス アンサンブルを展開する方法の詳細については、調整サービス アンサンブルの展開を参照してください。

ステップ 7: 追加のノードでクライアント ファイル・サービス (CFS) を構成する

CFS を追加のノードに追加します。調整サービスを実行しているすべてのノードに CFS を追加することをお勧めします。

注: この操作には、TSM コマンド ラインを使用して実行する必要のある手順が含まれています。

  1. 最初のノードで、ターミナル セッションを開きます。

  2. CFS を追加しようとしているノードのノード ID を確認します。

    tsm topology list-nodes -v

  3. ノード、プロセス、および単一のインスタンスを指定して、ノードに CFS を追加します。

    たとえば、次のコマンドは、CFS の 1 つのインスタンスを node2 に追加します。

    tsm topology set-process -n node2 -pr clientfileservice -c 1

    CFS を使用して既に構成されているノードに CFS のインスタンスを追加しようとすると、エラー メッセージが表示され、ノードに既にインスタンスが存在していることが通知されます。

    CFS をさらに他のノードに追加するには、ノードごとにこの手順を繰り返します。

  4. 変更を適用します。

    tsm pending-changes apply

ステップ 8: ノード 2 のプロセスを構成する

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

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

    詳細については、「Tableau サービス マネージャーの Web UI へのサインイン」を参照してください。

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

  3. 1 台目の追加ノードで実行されるべきプロセスとインスタンスの数を指定します。

    この例では、次のようになります。

    1. [ゲートウェイ] を選択します。

    2. アプリケーション サーバー (vizportal) カウントを 2 に設定。

    3. VizQL Serverカウントを 2 に設定。

    4. キャッシュサーバーカウントを 2 に設定。

    5. [バックグラウンダー] のカウントを 2 に設定します。

      バックグラウンダーをノードに追加すると、まだノードにない場合、データエンジンのインスタンスも追加します。

    6. Data Serverカウントを 2 に設定。

    7. ファイル ストアを選択します。

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

    9. [メトリクス サービス] を選択します。(従来のメトリクス機能は、2024 年 2 月の Tableau Cloud、Tableau Server バージョン 2024.2 で廃止されました。詳細については、「メトリクスの作成とトラブルシューティング (廃止)」を参照してください。)

    10. [メッセージング サービス] を選択します。

    11. [データ ソース プロパティ] を選択します。

    12. [コンテンツ探索サービス] を選択します。

    13. [コレクション サービス] を選択します。

    14. [Index and Search Server] を選択します。

    設定する特定のプロセスおよびプロセス カウントは、組織の環境やニーズによって異なります。一部のプロセスは、別のプロセスを追加すると自動的に追加されます。詳細については、ノードの構成Tableau Server プロセスを参照してください。

    注: TSM の Web UI はインスタンス数の選択を許可するプロセスを最大 8 インスタンスに制限します。これより多くのインスタンスを構成するには、コマンド ラインと TSM topology set-process コマンドを使用してください。詳細については、tsm topology set-processを参照してください。

ステップ 9: ノード 3 のプロセスを構成する

  1. TSM の、構成タブで、2 台目の追加ノードで実行されるべきプロセスとインスタンスの数を指定します。

    この例では、次のようになります。

    1. [ゲートウェイ] を選択します。

    2. アプリケーション サーバー (vizportal) カウントを 2 に設定。

    3. VizQL Serverカウントを 2 に設定。

    4. キャッシュサーバーカウントを 2 に設定。

    5. [バックグラウンダー] のカウントを 2 に設定します。

      バックグラウンダーをノードに追加すると、まだノードにない場合、データエンジンのインスタンスも追加します。

    6. Data Serverカウントを 2 に設定。

    7. ファイル ストアを選択します。

    8. [メトリクス サービス] を選択します。(従来のメトリクス機能は、2024 年 2 月の Tableau Cloud、Tableau Server バージョン 2024.2 で廃止されました。詳細については、「メトリクスの作成とトラブルシューティング (廃止)」を参照してください。)

    9. [データ ソース プロパティ] を選択します。

    10. [コンテンツ探索サービス] を選択します。

    11. [コレクション サービス] を選択します。

    12. [Index and Search Server] を選択します。

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

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

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

ロード バランサーの追加

この時点で 3 つすべてのノードにはゲートウェイがあり、利用できるサーバー プロセスに要求を送るのに使用されます。全てのゲートウェイはアクティブですが、クラスタ内のダウンタイムをさらに削減するには、ロードバランサーを構成できます。詳細については、ロード バランサーの追加を参照してください。