復原協調服務自訂憑證

版本:在版本 2026.3.0 中新增。

從 Tableau Server 版本 2026.3.0 開始,伺服器管理員可以選擇將 Tableau Server 使用的自我簽署憑證取代為自訂憑證。若您已將 Tableau Server 設定為使用自訂憑證,之後協調服務發生問題(例如因憑證到期、金鑰不符,或客戶提供的憑證鏈結已無法通過驗證),您需要採取特殊動作來解決問題,而無需全新安裝 Tableau Server 並還原現有備份。有關使用自訂憑證進行內部服務通訊的詳細資訊,請參閱為 Tableau Server 設定內部自訂憑證。

使用每個節點的 recover-coordination-service-cert 工具,直接在磁碟上取代協調服務 (ZooKeeper) mTLS 憑證和金鑰資料。必須在每個節點上套用相同的伺服器和用戶端憑證/金鑰組。

必要條件

  • 必須在現有的 Tableau Server 節點上,以 root 或無特殊權限的 Tableau 執行身分使用者身分執行工具。

  • 請準備好一個伺服器憑證/金鑰組和一個用戶端憑證/金鑰組。支援可選的鏈結檔案和加密金鑰的複雜密碼。

復原自訂憑證

  1. 若您還沒有憑證,請在單一節點上產生一次全新的自我簽署配對,並將相同的檔案複製到每個節點。此配對應鏡像 TSM 內部產生的內容(EC P-256、自我簽署、CN=*):

    openssl req -x509 -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -days 1825 -nodes -subj "/CN=*" -keyout server.key -out server.crt

    openssl req -x509 -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -days 1825 -nodes -subj "/CN=*" -keyout client.key -out client.crt

    若要產生複雜密碼加密的金鑰,請省略 -nodes。OpenSSL 會提示輸入複雜密碼,然後您可以使用相符的 --server-passphrase 或 --client-passphrase 選項來傳遞。

  2. 在第一個節點上執行復原工具。從託管協調服務的節點開始,以便重新形成仲裁:

    recover-coordination-service-cert --server-cert server.crt --server-key server.key --client-cert client.crt --client-key client.key [--server-chain <file.crt>] [--client-chain <file.crt>] [--server-passphrase <passphrase>] [--client-passphrase <passphrase>]

    工具會在停止任何服務之前預先驗證輸入:確認憑證可剖析為 X.509、提供的任何複雜密碼皆能解密金鑰,且提供的任何鏈結中的第一個憑證為分葉的簽發者。然後,它會停止本機服務,修補每個服務的設定和金鑰儲存區,並重新啟動控制平面(首先是 ZooKeeper,接著是管理代理程式,然後是剩餘部分)。

  3. 使用相同的憑證和金鑰檔案,在每個剩餘節點上執行完全相同的命令。先復原託管協調服務的節點,然後復原任何剩餘節點。工具在每個節點上執行後,叢集才會復原,任何仍持有舊金鑰儲存區的節點都不會重新加入。

    附註:在此階段,tsm status 會顯示商業服務處於錯誤狀態。這是預期行為。工具會修補服務,但會讓服務保持停止狀態。下一個步驟中的 set 命令會啟動它們。

  4. 每個節點都完成後,從控制器或初始節點執行下列 set 命令一次,將協調服務已保存的設定與磁碟上目前的內容同步:

    tsm security coordination-service-internal-cert set --server-cert server.crt --server-key server.key --client-cert client.crt --client-key client.key [--server-chain <file.crt>] [--client-chain <file.crt>] [--server-passphrase <passphrase>] [--client-passphrase <passphrase>]

    復原工具會為您列印此命令,並預先填入您傳遞的路徑。它會提醒您重新新增複雜密碼選項,但絕不會回應複雜密碼值。此命令的相同憑證短路機制會同步設定,並讓整個叢集(包含已停止的商業服務)恢復運作,從而清除錯誤狀態。

疑難排解: 每次執行都會將結構化記錄檔寫入 ${TABLEAU_SERVER_DATA_DIR}/logs/app-recover-coordination-service-cert.log。

附註:在 Windows 上,同等的包裝函式 recover-coordination-service-cert.cmd 採用相同的選項,行為也相同。

感謝您的意見反應!已成功提交您的意見回饋。謝謝!