Tableau Server の動的トポロジの変更
TSM の導入に伴い、Tableau Server でサーバーを再起動せずに特定のトポロジの変更や更新を実行する機能も導入されました。これらは動的トポロジの変更として知られ、バックグラウンダーや VizQL Server のプロセスで可能です。
ノードで既にプロセスのインスタンスが少なくとも 1 つ以上実行されている場合は、Tableau Server を再起動しなくても、ノード上のバックグラウンダーまたは VizQL Server インスタンスの数を増減することができます。変更する必要があるのはバックグラウンダーまたは VizQL Server のインスタンス数のみです。別のプロセスを追加/削除する場合、またはバックグラウンダーまたは VizQL Server の最初のインスタンスをノードに追加する場合、あるいはそのいずれかの最後のインスタンスをノードから削除する場合は、Tableau Server を再起動する必要があります
動的な構成変更
Tableau Server のバージョン 2020.2.0 以降では、特定の構成変更を構成キーを使用して動的に行うこともできます。動的構成の変更を加えるのと同時に、動的トポロジの変更を行うことができ、Tableau Server を再起動する必要はありません。動的構成の変更の詳細については、Tableau Server の 2020.2 の新機能と変更点でTableau Server のリリース ノートを参照してください。
シナリオの例
これが役立つ理由について理解を深めるため、次の例を考えてください。
- バックグラウンダー - 営業四半期末に、営業チームが Tableau Server を使用して数値を追跡しています。抽出に左右されるダッシュボードには、営業担当者の実績が表示されています。抽出の更新に遅延があると、最新の数値が表示されません。バックグラウンダーまたは VizQL Server が既に 1 つ以上ある任意のノードに追加バックグラウンダーを追加し、抽出の更新のスループットを向上させることにより、四半期の終了時点で確実に最新の数値を得ることができます。その後、四半期ごとのプッシュの後に、バックグラウンダーのインスタンスを再度減らし、Tableau Server を元の構成に戻すことができます。
- VizQL Server - 同様に Tableau Server がビューの更新に遅れないようにすることができない場合、VizQL Server またはバックグラウンダーが構成されているインスタンスが既に 1 つ以上ある任意のノードに、追加 VizQL Server インスタンスをすぐに追加することができます。上記のバックグラウンダーの例で、ユーザーが朝になって戻ってくる前に、VizQL Server を一時的に削除して追加バックグラウンダーに対応してから、それを再追加したいと考えるかもしれません。
動的トポロジの変更を行う
動的トポロジの変更は、TSM Web UI またはコマンド ラインを使用して行うことができます。Web UI を使用するにはブラウザーで TSM にサインインし、[構成] タブで、更新するノードのバックグラウンダーまたは VizQL Server のインスタンス数を更新します。詳細については、ノードの構成を参照してください。TSM CLI を使用して変更を行うには、コマンド プロンプトで tsm topology set-process コマンドを実行します。詳細については、ノードのプロセス数を変更するを参照してください。
動的トポロジの変更による影響
VizQL Server またはバックグラウンダーの既存インスタンスを削除する動的トポロジの変更を行うと、インスタンスはすぐに削除されます。ユーザーおよび現在実行中のジョブに対し、以下の影響が及ぶ可能性があります。
バックグラウンダー — 現在実行中のすべてのジョブが終了します。Tableau Server の通常の再試行論理により、別のバックグラウンダー インスタンスを使用し、これらのジョブが再開始します。
VizQL Server - 現在アクティブなすべてのセッションが終了します。ユーザーにエラー メッセージが表示される場合があります。ブラウザーを更新すると、エラーがクリアされます。
ベスト プラクティス
本番環境での実装前に、使用する計画がある動的トポロジの変更をテストすることをお勧めします。これにより、ユーザー、スケジュールされた更新、サブスクリプションに及ぶ可能性のある影響を十分に理解し、動的トポロジによって得られる柔軟性を最も効率的に活用することができます。
動的トポロジの変更の自動化
動的トポロジの変更は自動化することができます。たとえば、抽出の更新の大半が夜間にスケジュールされており、ユーザーがサインインしていないためにサーバーに余分の容量があることがわかっている場合、使用効率が最も高くなるときはスクリプトまたは他の自動展開ツールを使用してバックグラウンダー インスタンスを追加し、その後、それを営業日の始業前に削除することができます。
プロセスのステータスを自動的に取得するには、tsm status -v
コマンドを使用してスクリプト内の出力を解析し ます。または、TSM REST API を使用してサーバー ステータスを取得することもできます。API は現在アルファ版です。詳細については、「サーバー ステータスの取得」(新しいウィンドウでリンクが開く)を参照してください。
node2 でバックグラウンダーの 4 つのインスタンスを設定するサンプル スクリプトは、次のようになります。
echo Adding/Removing Processes tsm topology set-process -pr backgrounder -n node2 -c 4 tsm pending-changes apply echo Done!