Tableau サービス マネージャーのポート
Tableau サービス マネージャー (TSM) および Tableau Server
プロセスの小規模なサブセットは動的ポート マッピングを使用せず、独自に動作します。詳細については、後述の動的マッピングされないポートを参照してください。
注: この操作には、TSM コマンド ラインを使用して実行する必要のある手順が含まれています。
エフェメラル ポートの使用
オペレーティング システムがエフェメラル ポートを使用するように設定されている場合、以下に説明するように設定されている場合でも、Tableau トラフィックがこれらのポートを経由してルーティングされる可能性があります。これは OS レベルで発生するものであり、Tableau で設定できるものではありません。ポートの使用を制御する場合は、エフェメラル ポートの使用を制限する方法についてオペレーティング システムのドキュメントを参照してください。
ファイアウォールの要件
Tableau Server をインストールするコンピューターでファイアウォールを実行している場合は、Tableau Server トラフィック用に次の既定のポートを開く必要があります。443 を除くすべてのポート番号を変更できます。
ポート | TCP/UDP | 使用... | インストールのタイプ | |
---|---|---|---|---|
すべて | 分散/高可用性 | |||
80 | TCP | ゲートウェイ | X | |
443 | TCP | SSL。Tableau Server で SSL を構成している場合、アプリケーション サーバーはこのポートに要求をリダイレクトします。このポートは変更しないでください。 | X | |
8850 | TCP | Tableau Services Manager。 | X | |
8060 | TCP | PostgreSQL データベース。 | X | |
8061 | TCP | PostgreSQL バックアップ検証ポート | X | |
8000-9000 | TCP | Tableau プロセスの動的マッピング用に既定で予約されているポートの範囲 | X | |
27000-27009 | TCP | Tableau Server がライセンス サービスで使用するポートの範囲。この範囲は、ライセンス サービスを実行しているノードで開いている必要があり、また他のノードからアクセス可能である必要があります。既定では、最初のノードはライセンス サービスを実行します。 | X |
ポートの割り当て
TSM でのポート割り当てまたはマッピングに使用できる 2 通りのアプローチがあります。
- 動的ポート割り当て。これは既定で、管理者で必要な介入は最小限です。
- 手動ポート割り当て。このオプションでは、管理者が個別に各ポートを割り当てる必要があります。
ポート割り当てを変更し、ローカル ファイアウォールを実行している場合、ローカル ファイアウォール構成を参照してください。
動的ポート割り当て
動的割り当てプロセスに使用可能なポート範囲を変更することで、どのポートが使用されるかを制御できます。これを実行すると動的ポート割り当てはそのまま保持されますが、選択できるポートは制限されます。動的ポート割り当てを保持したままでも、引き続き、特定のプロセスに手動でポートを割り当てることができます。このアプローチによって、特定のポートを特定のプロセスに割り当て、その他は動的にマッピングされるようにしておくことができます。一部の個別に割り当てられるポートの有無に関係なく、動的マッピングの使用が最も簡単なアプローチで、大半のお客様の要件が満たされます。動的に割り当てられたポートは、Tableau Server 構成をエクスポートした場合も、保持されます。
既定では、8000 ~ 9000 の使用可能なポートの中から各サービスまたはプロセスに割り当てられます。この割り当ては、ノード上でのサービスの初回インストール時に実行されます。Tableau Server が初期化された後、次のコマンドを実行することで、どのサービスまたはプロセスがどのポートを使用しているか確認できます。
tsm topology list-ports
マルチノード クラスタがある場合は、すべてのノードのポートがリストされます。
ポート範囲の変更
使用されるポートについて特定の要件がある組織の場合、これを制御する最も簡単な方法は、ポートが動的に選択されるポート範囲を変更することです。構成ファイルで範囲として最小ポートと最大ポートを指定し、インストール時に実行する必要があります。
注: ポート範囲の最小許容サイズは、サーバーのインストールと実行されているサービスまたはプロセスの数によって異なります。一般的なベスト プラクティスとして、ポート割り当ては範囲内でランダムにポートを選択して実行されるため、過度に狭い範囲に制限しないようにしてください。十分な大きさの範囲を許可しないと、選択時に使用可能なポートを見つけられない場合があります。
使用可能なポートを選択する範囲を 8300 から 8600 までの間に制限するには、構成ファイルに次のようなエントリを含めます。
"configKeys": {
"ports.range.min": "8300", "ports.range.max": "8600"
}
範囲内の特定のポートをブロックする
バージョン 2021.1.0 以降では、動的に割り当てられた範囲内にある特定のポートを指定することができますが、Tableau では使用しないでください。これは、Tableau が使用している範囲内のポートに依存する Tableau Server コンピューター上に他のソフトウェアがある場合に役に立ちます。
TSM および Tableau Server で使用しないポートを指定するには、次の構成キー ports.blocklist
を使用します。
tsm configuration set -k ports.blocklist -v <port>[,<port>,<port>]
例:
tsm configuration set -k ports.blocklist -v 8000,8088, 8090
動的ポート割り当ての無効化
ポート範囲の制限と個別のポート割り当てを組み合わせて得られる制御レベルより、さらに厳密にポート割り当てを制御する必要がある場合は、初期サーバー構成時に、動的ポート マッピングを無効にします。動的ポート マッピングを無効にすると各プロセスの各ポートを手動で割り当てる必要があるため、単一のポート割り当てをそれぞれ制御する必要がある場合を除き、これはお勧めしません。
動的ポート マッピングを無効にした場合は、インストールの各ノードで、各プロセスのポートを構成する必要があります。
動的マッピングを無効にするには、構成ファイルに次のようなエントリを含めます。
"configKeys": {
"service.port_remapping.enabled": false
}
重要: 動的ポート割り当てを無効にした場合、ライセンス サービスのポート範囲は含まれません。この範囲 (27000 ~ 27009) は、ライセンス サービスを実行しているノードに開放し、他のノードからアクセスできる必要があります。既定では、最初のノードはライセンス サービスを実行します。
手動ポート割り当て
自動ポート割り当てを完全に無効化し、各プロセスのポートを個別に割り当てることができます。これを実行すると、すべてのノードで各プロセスのポートを割り当てる必要があります。プロセスの初回インストール時は構成ファイルで、またはインストール後は TSM コマンドを使用して、ポートを割り当てることができます。Tableau Server 構成をエクスポートした場合は、プロセスのインストール時に割り当てられたポートのみが保持されます。
動的マッピングが有効かどうかに関係なく、特定のプロセスに個別のポートを指定することができます。プロセスで特定のポートを使用する必要がある場合、または動的マッピングを無効にした場合に、これを実行する必要が生じることがあります。プロセスのポートを指定する方法は 2 つあります。インストール時とインストール後です。
インストール時のポートの構成
ここで説明するように、ポート割り当ての構成はインストール プロセスの際に行うことをお勧めします。インストール後にポート変更を行うのは、はるかに多くの労力が必要となります。
インストール時にポートを構成するには、お使いのポート構成を指定する json ファイルを作成します。このプロセスは、既定以外のポート範囲を定義することに似ていますが、代わりに、特定のサービスまたはプロセスに特定のポートを指定します。特定のポートを割り当てようとしている場合は、このアプローチがそれを実行するための最も確実な方法です。tsm settings export
コマンドを使用してサーバー構成やトポロジ設定をエクスポートしても、ポート マッピングが保持されるからです。
インストール時にポートを定義するには、構成ファイルに情報を追加してノード (workerN
)、プロセス (servicename
) 、インスタンス ID (instanceid
)、ポートのタイプ (porttype
)、使用するポートを指定します。形式は次のようになります。
workerN.{servicename}_{instanceid}.{porttype}.port:X
説明:
workerN
はオプションのパラメーターで、再マッピングが適用されるノードを特定します。ノード番号は 0 から始まります。
異なるノード上の同じサービスに異なるポートをマッピングする必要がないかぎり、このパラメーターを含めないことをお勧めします。このパラメーターをオフにしておくと、初期ノードにサービス ポートをマッピングしたり、複数ノードに同じサービス ポートをマッピングしたりすることができます。servicename
は、ポートを使用するプロセスまたはサービスの名前です。instanceid
は、プロセスのインスタンスです。1 つのノード上で 1 つのプロセスの複数のインスタンスを設定しようとしている場合は、インスタンスごとにこの値を増分する必要があります。instanceid はゼロ (0) で始まり、プロセスのインスタンスごとに 1 ずつ増分します。対象のノード上に単一のインスタンスのみがインストールされているサービスの場合は、これをオフにしておく必要があります。porttype
プライマリ ポートを設定している場合は、このオプションを含めないでください。port
は、プロセスまたはサービスが使用するポートです。
たとえば、最初のノードでファイル ストア プロセスの 1 番目のインスタンスのポートを 8500 に設定するには、次のようなエントリを構成ファイル エントリに含めます。
"configKeys": {
"filestore_0.port: "8500"
}
上記の例には、オプションの workerN パラメーターが含まれていないため、クラスタ内のすべてのノードにポートが設定されます。また、プライマリ ファイルストア ポートを設定しているため、porttype オプションはオフのままです。
重要: 構成ファイルでポートの変更を指定する場合は、tsm settings import
コマンドに --force-keys
パラメーターを含める必要があります。
インストール後のポートの構成
Tableau Server のインストール後にポートの変更が必要な場合、tsm topology set-ports
コマンドを使用します。このアプローチによって、プロセスがインストールされた後に、特定のプロセスのポートを指定できます。次の制限事項による制約があります。
- ノードごとにポートを個別に設定する必要がある。
- 個々のポートを設定後に
tsm restart
を実行する必要がある。 tsm settings import
を使用して Tableau Server 構成をインポートする必要がある場合、ポート割り当ては保持されない。- ポート名が configKeys で必要な構文とは異なる構文を tsm コマンドで使用する。このトピックの最後にある表には、構文の参照が記載されています。
たとえば、最初のノードでファイル ストアの 2 番目のインスタンスがポート 8500 を使用するように設定するには、次のようにします。
tsm topology set-ports --node-name node1 --port-name filestore --port-value 8500 --instance 2
以下の例は、JMX ポートを設定するために簡略化されたコマンドを使用する方法を示しています。
tsm topology set-ports -n node1 --port-name vizqlserver:jmx.rmi -pv 9403 -i 1
tsm topology set-ports -n node1 --port-name vizqlserver:jmx -pv 9404 -i 2
注: ポートの入力時には、これの検証は行われません。このため、既に割り当て済みのポートを使用する場合や、コマンドの構文に入力ミスがある場合、再起動を行うまでは Tableau にエラーは表示されません。再起動後、The reconfigure async job failed. (非同期ジョブの再構成に失敗しました。) という一般的なエラーが表示される場合があります。
有効なポートで誤った portname:type
を追加すると、誤った入力を削除できません。ポートを更新するには、その値に未使用のポートを再割り当てし、再度ポートを解放する必要があります。
動的マッピングされないポート
Tableau Server リポジトリは、動的マッピングされない 2 つのポートを使用します。これらにはそれぞれ、tsm configuration set
コマンドと process-specific パラメーターを使用して上書きできる既定のポートがあります。
ポート名 | ポート (既定) | 説明 |
---|---|---|
pgsql.port | 8060 | Tableau リポジトリ (PostgreSQL データベース) のポート。 このポートを上書きするには:
|
pgsql.verify_restore.port | 8061 | リポジトリ バックアップの整合性を検証するためのポート。 このポートを上書きするには:
|
これらのポートは動的ポート マッピング システムを使用しないため、tsm topology list-ports
コマンドの出力には表示されません。これらの値を確認するには、tsm configuration get -k <config.value>
コマンドを使用する必要があります。例は次のとおりです。
tsm configuration get -k pgsql.port
initialize-tsm によるポート リマッピングの制御
ポート割り当ては、サービスのインストール時に行われます。つまり、TSM 固有のプロセスに手動でポートをマッピングするには、initialize-tsm スクリプトの実行時にポートを割り当てる必要があります。スクリプトには、個々の TSM サービスのポートを指定するオプション、動的マッピングで使用されるポート範囲の下限と上限を定義するオプション、および動的マッピングを無効にできるオプションが含まれています。
以下の表は、initialize-tsm スクリプトを実行する際のポートのオプションをリストしています。
スクリプトのオプション | パラメーター | 説明 |
---|---|---|
-i | <port> | 調整サービス クライアント ポートを設定します。 |
-e | <port> | 調整サービス ピア ポートを設定します。 |
-m | <port> | 調整サービス リーダー ポートを設定します。 |
-n | <port> | TSM エージェント ファイル転送ポートを設定します。 |
-o | <port> | TSM コントローラー ポートを設定します。 |
-l | <min-port> | ポートを動的マッピングするために使用されるポート範囲の下限を設定します。 |
-r | <max-port> | ポートを動的マッピングするために使用されるポート範囲の上限を設定します。 |
--disable-port-remapping | 動的ポート マッピングを無効にします。これを実行する場合は、TSM および Tableau Server によって使用されるすべてのサービスまたはプロセスにポートを割り当てる必要があります。詳細については、前述の手動ポート割り当てを参照してください。 |
動的マッピングされたポート
この表は、動的マッピングされたポートを使用するプロセスまたはサービスをリストしています。
ポート名: json ファイルの構文 (configKeys) | ポート名: tsm CLI の構文 | 説明 |
---|---|---|
activemqserver.port | activemqserver:primary | ActiveMQ Service サービス ポート。 |
activemqserver.openwire.port | activemqserver:openwire | ActiveMQ サービス オープンワイヤー ポート。 |
appzookeeper_0.client.port | appzookeeper:client | 調整サービス クライアント ポート。 |
appzookeeper_0.peer.port | appzookeeper:peer | 調整サービス ピア ポート。 |
appzookeeper_0.leader.port | appzookeeper:leader | 調整サービス リーダー ポート。 |
backgrounder_0.port | backgrounder | バックグラウンダー プライマリ ポート。 |
backgrounder_0.debug.port | backgrounder:debug | バックグラウンダー デバッグ ポート。 |
backgrounder_0.jmx.port | backgrounder:jmx | バックグラウンダー JMX ポート。 |
backgrounder_0.jmx.rmi.port | backgrounder:jmx.rmi | バックグラウンダー JMX RMI ポート。 |
backgrounder_0.recommendations.trainer.port | backgrounder:recommendations.trainer | バックグラウンダー推奨ポート。 |
backuprestore.port | backuprestore | バックアップ/復元サービス ポート。 |
cacheserver_0.port | cacheserver | キャッシュ サーバー ポート |
clustercontroller.status.port | clustercontroller:status | クラスタ コントローラー ステータス ポート。 |
clustercontroller.storage.port | clustercontroller:storage | クラスタ コントローラー ストレージ ポート。 |
databasemaintenance.port | databasemaintenance | データベース メンテナンス ポート。 |
dataserver_0.port | dataserver | データ サーバー プライマリ ポート。 |
dataserver_0.debug.port | dataserver:debug | データ サーバー デバッグ ポート。 |
dataserver_0.jmx.port | dataserver:jmx | データ サーバー JMX ポート。 |
dataserver_0.jmx.rmi.port | dataserver:jmx.rmi | データ サーバー JMX RMI ポート。 |
filestore.port | filestore | ファイル ストア プライマリ ポート。 |
filestore.status.port | filestore:status | ファイル ストア ステータス ポート。 |
gateway.port | gateway | ゲートウェイ ポート。この既定は 80 ですが、80 が使用できない場合は 8080 になります。8080 が使用できない場合は、8000 が試行されます。動的ポート割り当てが有効かどうかに関係なく、そのシーケンスに従います。それらのポートがどれも使用できず、動的マッピングが有効な場合は、定義された範囲内で使用可能なポートが選択されます。ゲートウェイ ポートはマルチノード クラスタ内のすべてのノードで同一である必要があるため、最初のノードでポート 80 が選択された場合は、これがすべてのノードで使用されるポートとなり、他のノードのいずれかでポート 80 が使用できない場合は、ゲートウェイ ポートの選択は失敗します。 |
hyper.port | hyper | データ エンジン プライマリ ポート。 |
hyper.connection.port | hyper:connection | データ エンジン接続ポート。 |
indexandsearchserver.port | indexandsearchserver | インデックスおよび検索サーバーのプライマリ ポート。 |
indexandsearchserver.transport.port | indexandsearchserver:transport | インデックスおよび検索サーバーのトランスポート ポート。 |
licenseservice.vendor_daemon.port | licenseservice:vendor_daemon | ライセンス サービス ベンダー デーモン ポート。マルチノード インストールでノード間のライセンス関連の通信に使用されます。 |
samlservice.port | samlservice | SAML サービス ポート。 |
siteimportexport.port | siteimportexport | サイト インポート/エクスポート ポート。 |
tabadmincontroller.port | tabadmincontroller | TSM コントローラー ポート。 |
tabadminagent.columbo.port | tabadminagent:columbo | 管理エージェント サービス検出ポート。 |
tabadminagent.filetransfer.port | tabadminagent:filetransfer | TSM エージェント ファイル転送ポート。 |
vizportal_0.authentication.port | vizportal:authentication | アプリケーション サーバー認証ポート。 |
vizportal_0.authorization.port | vizportal:authorization | アプリケーション サーバー認可ポート。 |
vizportal_0.maintenance.port | vizportal:.maintenance | アプリケーション サーバー メンテナンス ポート。 |
vizportal_0.microservice.extensions.port | vizportal:.microservice:extensions | アプリケーション サーバー拡張ポート。 |
vizportal_0.monolith_grpc.port | vizporta:monolith_grpc | アプリケーション サーバー GRPC ポート。 |
vizportal_0.publishing.port | vizportal:publishing | アプリケーション サーバー パブリッシュ ポート。 |
vizportal_0.recommendations.port | vizportal:recommendations | アプリケーション サーバー推奨ポート。 |
vizportal_0.port | vizportal | アプリケーション サーバー プライマリ ポート。 |
vizportal_0.debug.port | vizportal:debug | アプリケーション サーバー デバッグ ポート。 |
vizportal_0.jmx.port | vizportal:jmx | アプリケーション サーバー JMX ポート。 |
vizportal_0.jmx.rmi.port | vizportal:jmx.rmi | アプリケーション サーバー JMX RMI ポート。 |
vizqlserver_0.port | vizqlserver | VizQL Server プライマリ ポート。 |
vizqlserver_0.debug.port | vizqlserver:debug | VizQL Server デバッグ ポート。 |
vizqlserver_0.jmx.port | vizqlserver:jmx | VizQL Server JMX ポート。 |
vizqlserver_0.jmx.rmi.port | vizqlserver:jmx.rmi | VizQL Server JMX RMI ポート。 |