Tableau Server 的自動安裝

您可以使用社群支援的(連結在新視窗開啟) Python 指令碼 SilentInstaller.py 來自動完成 Tableau Server 的新安裝。您可以下載並按原樣使用該指令碼,或者針對自己的特定需求進行修改。

使用自動安裝程式的好處

  • 只需一個命令便可安裝、設定和執行 Tableau Server 的工作執行個體。

  • SilentInstaller.py 指令碼可在沒有使用者輸入的情況下執行,因此適合於自動化操作。

  • 組態設定一次即可用於所有安裝,使此過程變得可重複。

何時不使用自動安裝程式

  • 如果是第一次安裝 Tableau Server,我們建議您在進行自動流程之前手動測試安裝。阻止安裝的任何問題都能透過對話模式更輕鬆地解決。解決這些問題之後,您可以使用 SilentInstaller.py 指令碼執行 Tableau Server 的自動安裝。

  • 如果您在測試或嘗試新的設定參數(例如驗證方法),我們建議您先手動執行安裝。Tableau 服務管理員 (TSM) 會驗證設定實體,並拒絕無效的設定參數。確定了正確的參數之後,您就可以使用自動安裝程式。

  • 如果無法或不想在密碼檔案中輸入密碼,使用自動安裝程式可能不適合於您。

開始之前

檢視安裝之前...,確保您已在滿足 Tableau Server 作業系統需求和最低硬體要求的電腦上安裝了 Microsoft Windows Server。

附註:如果在生產環境中安裝 Tableau Server,請檢視最低硬體推薦設定。推薦設定表示您應為 Tableau Server 的生產安裝使用的最低硬體設定。

為了執行自動安裝,您可使用 SilentInstaller.py 指令碼,該指令碼依賴於 Tableau Server 安裝套裝程式作為輸入。在開始之前,我們建議您下載以下套裝程式:

  1. 下載 Python 3.5(連結在新視窗開啟) 或更高版本,並將其安裝在要在其中安裝 Tableau Server 的電腦上。

  2. 下載 SilentInstaller.py 指令碼和 Tableau Server 安裝套裝程式:

    1. GitHub(連結在新視窗開啟) 下載 SilentInstaller.py 指令碼,以及 config.template.json、 registration.template.json、secrets.template.json 和三個產生啟動範本(bootstrap.template.json、 topologyBootstrap.template.json 和 workerBootstrap.template.json)。

    2. Tableau Server 產品下載(連結在新視窗開啟)頁面選取並下載適當的 Tableau Server 安裝程式套件。您選取的安裝套裝程式取決於要使用的 Microsoft Windows Server 版本。

  3. 將套裝程式和範本複製到將在其中安裝 Tableau Server 的電腦上的一個位置,或複製到可從該電腦存取的位置。

如何使用 SilentInstaller.py 指令碼

SilentInstaller.py 指令碼將安裝 Tableau Server 安裝套裝程式、建立目錄、設定執行 Tableau Server 所需的使用權限,並啟動 Tableau 服務管理員 (TSM) 安裝程式。TSM 安裝程式完成後,SilentInstaller.py 指令碼將執行 tsm 命令來安裝、設定和啟動 Tableau Server。預設情況下,SilentInstaller.py 指令碼將在安裝過程中啟用試用授權。如果有實際產品金鑰,您可以在命令列上提供該產品金鑰,也可以在執行 SilentInstaller.py 指令碼後啟用產品金鑰。自動安裝程式中的大多數命令列選項與 tsm initialize 命令使用的選項相同。

可在三種模式下執行 SilentInstaller.py 指令碼:安裝初始節點、安裝附加節點,以及更新叢集拓撲。為分散式叢集執行安裝時,您將使用用於在初始節點上安裝初始節點的選項來執行 SilentInstaller.py。您將使用用於在每個附加節點上安裝附加節點的選項來執行 SilentInstaller.py。最後,您將使用用於在初始節點上更新叢集拓撲的選項來執行 SilentInstaller.py

SilentInstaller.py 指令碼的目的是無需使用者交互即可執行,因此您必須將所有參數輸入到傳遞至 SilentInstaller.py 指令碼的所需引數中。或者,您也可以將所需的引數放在產生啟動檔案中。您可以使用提供的設定、註冊和密碼檔案範本

使用以下步驟來執行無訊息安裝:

步驟 1:安裝自動安裝程式

  1. 以具有管理員存取權限的使用者身分登入到電腦。

  2. 下載並安裝 SilentInstaller.py 指令碼、範本和產生啟動檔案。

步驟 2:建立檔案以提供執行自動安裝所需的其他設定資訊

由於 SilentInstaller.py 指令碼的目的是無需使用者交互即可執行,因此您必須提供以下附加資訊:

  1. 將範本 config.template.jsonregistration.template.jsonsecrets.template.json 複製到另一個目錄,比如您的主目錄。我們不建議直接編輯範本檔案。

  2. 編輯 config.template.json 檔案並提供初始節點組態設定。您必須為 Tableau Server 電腦提供識別身分存放區設定。根據您的網路需求,您可能還需要提供閘道設定。快取選項設定為盡可能長時間快取和重用資料。預設情況下安裝了範例工作簿。範本包括了最少的所需資訊,因此可以將範本作為一個出發點。有關組態設定的詳情,請參閱設定初始節點設定

  3. 編輯 registration.template.json 檔案並提供註冊 Tableau Server 所需的資訊。有關詳情,請參閱啟用並註冊 Tableau Server

  4. 編輯 secrets.template.json 檔案並提供 TSM 管理員和 Tableau Server 管理員帳戶的使用者名和密碼。

    • TSM 管理員帳戶使用者應是執行指令碼的 Windows 管理員使用者。

    • Tableau Server 管理員帳戶是安裝程式建立的初始帳戶,用於管理 Tableau Server

步驟 3:執行自動安裝

  1. 以具有管理員存取權限的使用者身分登入到電腦。

    安裝初始節點

    SilentInstaller.py 指令碼執行適當的命令來安裝、啟用授權、設定以及啟用 Tableau 服務管理員。執行 SilentInstaller.py -hSilentInstaller.py install –h 可檢視選項及其預設值的完整清單。

    安裝初始節點:

    在初始節點上的 Python 提示字元處,鍵入:

    SilentInstaller.py install --secretsFile secrets.json --configFile myconfig.json --registrationFile registration.json TableauServer-64bit-<version>.exe

    或者:

    SilentInstaller.py --bootstrapFile <bootstrap file path>

    指令碼選項

    說明

    必要的開關 

    --configFile <file path>

    伺服器組態 JSON 檔案的相對或絕對路徑。

    --secretsFile <file path>

    密碼檔案的相對或絕對路徑,該檔案描述用於向 Tableau 服務管理員 (TSM) 進行驗證的 Windows 帳戶的認證,以及 Tableau Server 初始管理員使用者的使用者名/密碼。密碼檔案還包括要用於啟用 Tableau Server 的產品金鑰。預設情況下,密碼檔案範本包含試用版授權。

    附註:在密碼檔案中提供密碼是可選的。但是,如果在密碼檔案中找不到密碼,系統將在安裝期間提示您提供密碼。

    自動安裝套裝程式包括密碼檔案的範本。

    --registrationFile <file path>

    伺服器登錄檔案的相對或絕對路徑,該檔案包含 Tableau Server 註冊資訊。

    自動安裝套裝程式包括登錄檔案的範本。

    <installer executable file path>

    Tableau 服務管理員 (TSM) 安裝程式的相對或絕對路徑。

    可選開關 

    --installDir <file path>

    Tableau Server 安裝目錄。如果不提供路徑,則會使用預設目錄 C:\Program Files\Tableau\Tableau Server

    --dataDir <file path>

    Tableau Server 軟體設定和資料的儲存位置。如果不提供路徑,則為設定和資料檔案使用預設目錄 C:\ProgramData\Tableau

    --installerLog <file path>

    在其中寫入安裝程式記錄檔案的現有目錄。如果您不提供路徑,則會將記錄檔案寫入 TEMP 目錄。

    --controllerPort <port number>

    Tableau 服務管理員 (TSM) 控制器應在其上執行的埠。

    --coordinationserviceClientPort <port number>

    ZooKeeper 用戶端埠。

    --coordinationservicePeerPort <port number>

    ZooKeeper 對等埠。

    --coordinationserviceLeaderPort <port number>

    ZooKeeper 負責人埠。

    --start

    伺服器是否應在安裝程式完成後啟動。

    安裝附加節點

    SilentInstaller.py 指令碼執行適當的命令在附加節點上安裝 Tableau 服務管理員 (TSM)。執行 SilentInstaller.py installWorker –h 可檢視選項及其預設值的完整清單。

    安裝附加節點:

    在每個附加節點上的 Python 提示符處,鍵入:

    SilentInstaller.py workerInstall --secretsFile secrets.json --nodeConfigurationFile nodeConfiguration.json TableauServer-64bit-<version>.exe

    選項

    說明

    --secretsFile <file path>

    必要。密碼檔案的相對或絕對路徑,該檔案描述用於向 Tableau 服務管理員 (TSM) 進行驗證的 Windows 帳戶的認證,以及 Tableau Server 初始管理員使用者的使用者名/密碼。密碼檔案還包括要用於啟用 Tableau Server 的產品金鑰。預設情況下,密碼檔案範本包含試用版授權。

    附註:在密碼檔案中提供密碼是可選的。但是,如果在密碼檔案中找不到密碼,系統將在安裝期間提示您提供密碼。

    自動安裝套裝程式包括密碼檔案的範本。

    --nodeConfigurationFile <file path>

    必要。用於安裝附加節點的節點組態檔的路徑。

    (installer executable) <file path>

    必要。指令碼的最後一個參數只是 Tableau 服務管理員安裝程式的絕對或相對路徑,該安裝程式透過常用管道(例如從 Tableau 網站下載)獲得。此指令碼僅支援用於 Tableau 服務管理員。

    --installDir <file path>

    可選。Tableau Server 安裝目錄。如果為空白,則會使用預設目錄 C:\Program Files\Tableau\Tableau Server

    --dataDir <file path>

    可選。Tableau Server 軟體設定和資料的儲存位置。如果為空白,則為設定和資料檔案使用預設目錄 C:\ProgramData\Tableau

    --installerLog <file path>

    可選。在其中寫入安裝程式記錄檔案的現有目錄。如果為空白,則會將記錄檔案寫入使用者的 TEMP 目錄。

    附註:使用 SilentInstaller.py 安裝第一個節點後,會自動儲存節點組態檔。您可以在指令碼的工作目錄下找到該檔案。

    更新叢集拓撲

    SilentInstaller.py 指令碼執行適當的命令,根據需要為 Tableau 服務管理員 (TSM) 更新叢集拓撲。執行 SilentInstaller.py updateTopology –h 可檢視選項及其預設值的完整清單。

    更新叢集拓撲:

    在初始節點上的 Python 提示字元處,鍵入:

    SilentInstaller.py updateTopology --secretsFile secrets.json --configFile myconfig.json

    選項

    說明

    --secretsFile <file path>

    必要。密碼檔案的相對或絕對路徑,該檔案描述用於向 Tableau 服務管理員 (TSM) 進行驗證的 Windows 帳戶的認證,以及 Tableau Server 初始管理員使用者的使用者名/密碼。密碼檔案還包括要用於啟用 Tableau Server 的產品金鑰。預設情況下,密碼檔案範本包含試用版授權。

    附註:在密碼檔案中提供密碼是可選的。但是,如果在密碼檔案中找不到密碼,系統將在安裝期間提示您提供密碼。

    自動安裝套裝程式包括密碼檔案的範本。

    --configFile <file path>

    必要。伺服器拓撲檔案的相對或絕對路徑,該檔案描述要更新的 Tableau Server 拓撲。只會應用檔案的 topologyVersion 部分,其他設定將被忽略。

設定、註冊和密碼檔案範本

您可以使用以下範例範本向 SilentInstaller.py 指令碼傳遞資料。

密碼檔案範本範例

{
    "local_admin_user":"",
    "local_admin_pass":"",
    "content_admin_user":"",
    "content_admin_pass":"",
    "product_keys":["trial"]
}

local_admin_user 是用於向 Tableau 服務管理器進行驗證的 Windows 帳戶。

content_admin_user 是初始管理使用者,該使用者充當與建立和管理使用者、網站等相關的所有 Tableau Server 操作的超級使用者。

在安裝附加節點或更新叢集拓撲時,將會忽略這些憑據,因為安裝初始節點時已經建立了初始管理員使用者。

product_keys 是用於啟用 Tableau 服務管理員的金鑰。如果指定了多個金鑰,則會依次對金鑰進行啟用。對於非安裝模式,將會忽略這些金鑰,因為授權已經啟用。

伺服器組態檔範本範例

{
"configEntities":{
    "runAsUser":{
        "_type":"runAsUserType",
        "name":"NT AUTHORITY\\NetworkService"
    },
    "gatewaySettings":{
        "_type":"gatewaySettingsType",
        "port":80,
        "firewallOpeningEnabled":true,
        "sslRedirectEnabled":true,
        "publicHost":"****replace me****",
        "publicPort":80,
        "sslEnabled":false,
        "sslPort":443
    },
    "identityStore":{
        "_type":"identityStoreType",
        "type":"local",
        "domain":"****Domain Name Here****",
        "nickname":"****Domain Nickname Here****"
    }
},
"topologyVersion":{
    "nodes":{
        "****insert nodeId (lowercase) here****": {
            "services": {
                "filestore": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "tabadmincontroller": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "clientfileservice": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "dataserver": {
                    "instances":[
                        {
                        "instanceId":"0"
                        },
                        {
                        "instanceId":"1"
                        }
                    ]
                },
                "cacheserver": {
                    "instances":[
                        {
                        "instanceId":"0"
                        },
                        {
                        "instanceId":"1"
                        }
                    ]
                },
                "vizqlserver": {
                    "instances":[
                        {
                        "instanceId":"0"
                        },
                        {
                        "instanceId":"1"
                        }
                    ]
                },
                "backgrounder": {
                    "instances":[
                        {
                        "instanceId":"0"
                        },
                        {
                        "instanceId":"1"
                        }
                    ]
                },
                "appzookeeper": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "pgsql": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "dataengine": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "licenseservice": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "searchserver": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "clustercontroller": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "tabsvc": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "vizportal": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "tabadminagent": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "clientfileservice": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                },
                "gateway": {
                    "instances":[
                        {
                        "instanceId":"0"
                        }
                    ]
                }
            }
        }
    }
}
}
			

伺服器登錄檔案範本範例

{
    "first_name" : "Andrew",
    "last_name" : "Smith",
    "phone" : "311-555-2368",
    "email" : "andrew.smith@mycompany.com",
    "company" : "My Company",
    "industry" : "Finance",
    "company_employees" : "500",			
    "department" : "Engineering",
    "title" : "Senior Manager",
    "city" : "Kirkland",
    "state" : "WA",
    "zip" : "98034",
    "country" : "United States",
    "opt_in" : "true",
    "eula" : "true"
}

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