ナレッジベース

TSM コマンド実行時のエラー "'https://servername:8850' の TSM コントローラーに接続できません"


発行: 28 Nov 2018
最終修正日: 29 Feb 2024

問題

TSM コマンドの実行中に、次のエラーが発生します。 

Could not connect to TSM Controller at 'https://servername:8850' ('https://servername:8850' で TSM コントローラーに接続できませんでした)

いくつかの基本的な検証手順を実行して、この TSM 証明書の有効期限が原因かどうか、および他に考えられる原因がないかどうかを確認できます。

ステップ 1:
次のコマンド (Linux の例) を実行して、Tableau Server ポータルは正常に動作しているが TSM WebUI にはアクセスできないことを確認します。
# sudo su -l tableau
# systemctl status tabadmincontroller_0 
これらのコマンドを実行すると、サービスはアクティブで実行中だが、まだ TSM に接続できないと表示されます。

ステップ 2:

ポート 8850 に Telnet を実行して、ポートが動作していることを確認します。
# telnet localhost 8850
Trying ::1... (試行中 ::1...)
Connected to localhost. (localhost に接続しました。)
Escape character is '^]'. (エスケープ文字は '^]' です。)

証明書が無効な場合、~/.tableau/tsm/tsm.log に次のエラー メッセージが記録されます。
 
2019-03-15 15:09:57 main : ERROR com.tableausoftware.tabadmin.ServerApi - Exception sending request (要求の送信中の例外)
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://localhost.localdomain:8850/api/0.5/login": ("https://..." に対する POST 要求で I/O エラーが発生しました)
sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: (PKIX パス検証に失敗しました)
validity check failed; nested exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: (有効性チェックに失敗しました。ネストされた例外は ... です)
PKIX path validation failed: java.security.cert.CertPathValidatorException: validity check failed (PKIX パス検証に失敗しました: ...: 有効性チェックに失敗しました)
TSM ログに、上記のエラー メッセージのサフィックスとして「validity check failed. (検証チェックに失敗しました。)」ではなく「timestamp check failed (タイムスタンプのチェックに失敗しました)」と表示されます。
       

環境

  • Tableau Server 

解決策

TSM では、インストール時に生成される自己署名 SSL 証明書を使用します。  以前のバージョンでは、新しい SSL 証明書を再生成するために、Tableau Server の完全再インストールが必要でした。  現在のバージョンでは、tabadmincontroller の再インストールを実行すると、新しい証明書を生成できます。 

現在のリリースでは、TSM に --trust-admin-controller-cert というフラグと upgrade-tsm スクリプトが追加されています。  この解決策を実行するには、同じバージョン ファミリーをインストールする必要があります。  たとえば、Tableau Server 2021.4.1 を使用している場合、Tableau Server 2021.4.1 以降をインストールする必要があります。

オプション 1
コマンド ラインから TSM にアクセスできず、新しいフラグを持つ現在のバージョンに古いバージョンからアップグレードしようとしている場合は、次の手順を実行します。

次のように --trust-admin-controller-cert フラグを使用して、そのバージョンの TSM にアクセスします。 

/opt/tableau/tableau_server/packages/bin.<version_code>/tsm stop
--trust-admin-controller-cert

ここで、<version code> は、新しくインストールされた Tableau Server バージョンのリリース ページで確認できる Tableau Server のビルド バージョン番号になります。

たとえば、tsm data-access repository-access enable --repository-username readonly --repository-password <PASSWORD> --trust-admin-controller-cert を試してみてください。
(注: リモート コンピューターからの TSM CLI 接続の場合、TSM 管理コントローラーを実行している Tableau Server への初回接続時に、Tableau インストールの CA 証明書を信頼するように求められます。CA 証明書を信頼することを選択できます。その場合、証明書の有効期限 (既定では 3 年) が切れるまで、そのコンピューターで改めて信頼を求められることはありません。または、--trust-admin-controller-cert フラグを指定して TSM コマンドを実行し、1 回限りの信頼で接続することもできます。)

オプション 2
現在サポートされているバージョンで tabadmincontroller の再インストールを実行し、次のようにして新しい証明書を生成できます。

  1. 管理者としてコマンド プロンプトを開きます (コマンド プロンプトを右クリックして [管理者として実行] を選択します)。
  2. "tsm stop --trust-admin-controller-cert" を実行して、コマンド プロンプトから Tableau Server を停止します。
  3. C:\ProgramData\Tableau\Tableau Server\data\tabsvc\services\tabadmincontroller_<version> にアクセスします。(注: これは既定のパスです。既定以外のパスにインストールされている場合、パスが異なる可能性があります)。
  4. "uninstall.cmd" を実行します。(終了コード 0 は成功したことを意味します)
  5. "Install.cmd" を実行します。 (終了コード 0 は成功したことを意味します)
  6. Tableau コンピューターを再起動します。
  7. TSM Web UI または TSM Start を使用して Tableau Server を起動します。
オプション 3
Tableau Online のヘルプにある、使用しているオペレーティング システム別の指示に従って Tableau Server をアップグレードします。upgrade-tsm スクリプトを実行するときは --trust-admin-controller-cert フラグを使用します。

 

 

原因

Tableau Server の以前のバージョンでは、1 年後に期限が切れる TSM コントローラーの証明書を使用していました。  現在は、証明書は最大 3 年間有効で、アップグレード時に新しい証明書がインストールされます。

詳細情報

お使いの TSM コントローラーの SSL 証明書の有効期限を確認するには、Tableau Server を実行しているコンピューターの端末に次のコマンドを入力します (Linux での手順)。

 #openssl s_client -connect servername:8850
 # echo | openssl s_client -connect servername:8850  2>/dev/null | openssl x509 -noout -dates




 
この記事で問題は解決しましたか?