자동화된 Tableau Server 설치

커뮤니티 지원(링크가 새 창에서 열림) Python 스크립트인 SilentInstaller.py를 사용하여 새 Tableau Server 설치를 자동화할 수 있습니다. 스크립트를 다운로드하고 작성된 대로 사용하거나 특정 요구 사항에 맞게 수정할 수 있습니다.

자동화된 설치 프로그램 사용의 이점

  • 단일 명령을 사용하여 Tableau Server를 설치 및 구성하고 작동하는 인스턴스를 얻을 수 있습니다.

  • SilentInstaller.py 스크립트는 사용자 입력 없이 실행할 수 있으므로 자동화에 적합합니다.

  • 구성은 한 번 설정하여 모든 설치에 사용할 수 있는 반복 가능한 프로세스입니다.

자동화된 설치 프로그램을 사용하지 말아야 하는 경우

  • Tableau Server를 처음 설치하는 경우 프로세스를 자동화하기 전에 설치를 수동으로 테스트하는 것이 좋습니다. 설치를 막는 모든 문제는 대화형으로 쉽게 해결할 수 있습니다. 이러한 문제를 해결한 후 SilentInstaller.py 스크립트를 사용하여 Tableau Server의 자동 설치를 수행 할 수 있습니다.

  • 인증 방법과 같은 새로운 구성 매개 변수를 테스트하거나 시도하는 경우 먼저 설치를 수동으로 실행하는 것이 좋습니다. TSM(Tableau 서비스 관리자)은 구성 엔터티의 유효성을 확인하고 유효하지 않은 구성 매개 변수를 거부합니다. 올바른 매개 변수를 확인한 후 자동화된 설치 프로그램을 사용할 수 있습니다.

  • secrets 파일에 암호를 입력할 수 없거나 입력하고 싶지 않은 경우 자동화된 설치 프로그램을 사용하는 것이 적절하지 않을 수 있습니다.

시작하기 전에

설치 전 수행할 작업...을 검토하여 Tableau Server의 운영 체제 요구 사항 및 최소 하드웨어 요구 사항을 충족하는 컴퓨터에 Microsoft Windows Server를 설치했는지 확인합니다.

참고: 프로덕션 환경에 Tableau Server를 설치하는 경우 최소 하드웨어 권장 사항을 검토하십시오. 권장 사항은 Tableau Server를 프로덕션 환경에 설치하려는 경우 사용해야 하는 최소 하드웨어 구성을 나타냅니다.

자동화된 설치를 수행하려면 Tableau Server 설치 패키지를 입력으로 사용하는 SilentInstaller.py 스크립트를 사용합니다. 시작하기 전에 다음과 같은 패키지를 다운로드하는 것이 좋습니다.

  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를 실행하는 데 필요한 사용 권한을 설정하고, TSM(Tableau 서비스 관리자) 설정을 시작합니다. 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.json, registration.template.jsonsecrets.template.json 템플릿을 사용자 홈 디렉터리와 같은 다른 디렉터리에 복사합니다. 템플릿 파일을 직접 편집하는 것은 권장하지 않습니다.

  2. config.template.json 파일을 편집하여 초기 노드 구성 설정을 제공합니다. Tableau Server 컴퓨터의 ID 저장소 설정을 제공해야 합니다. 네트워크 요구 사항에 따라, 게이트웨이 설정을 제공해야 할 수도 있습니다. 캐싱 옵션은 데이터를 가능한 한 오랫동안 데이터를 캐시하여 다시 사용하도록 설정됩니다. 샘플 통합 문서는 기본적으로 설치됩니다. 템플릿에는 필요한 최소한의 정보가 포함되어 있으므로 시작 위치로 사용할 수 있습니다. 설정 구성에 대한 자세한 내용은 초기 노드 설정 구성을 참조하십시오.

  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 <파일 경로>

    서버 구성 JSON 파일의 상대 또는 절대 경로입니다.

    --secretsFile <파일 경로>

    TSM(Tableau Services Manager)에 인증하는 Windows 계정의 자격 증명과 Tableau Server 초기 관리자의 사용자 이름/암호를 설명하는 암호 파일의 상대 또는 절대 경로입니다. 암호 파일에는 Tableau Server를 활성화하는 데 사용할 제품 키도 포함됩니다. 기본적으로 암호 파일 템플릿에는 평가판 라이선스가 포함되어 있습니다.

    참고: 암호 파일에 암호를 제공하는 것은 선택 사항입니다. 하지만 암호 파일에서 암호를 찾을 수 없으면 설치 중에 암호를 제공하라는 메시지가 나타납니다.

    자동화된 설치 프로그램 패키지에는 암호 파일에 대한 템플릿이 포함되어 있습니다.

    --registrationFile <파일 경로>

    Tableau Server 등록 정보를 포함하는 서버 등록 파일의 상대 또는 절대 경로입니다.

    자동화된 설치 프로그램 패키지에는 등록 파일에 대한 템플릿이 포함되어 있습니다.

    <설치 프로그램 실행 파일 경로>

    TSM(Tableau 서비스 관리자) 설치 프로그램의 상대 또는 절대 경로입니다.

    선택적 스위치 

    --installDir <파일 경로>

    Tableau Server 설치 디렉터리입니다. 경로를 제공하지 않으면 기본 디렉터리인 C:\Program Files\Tableau\Tableau Server가 사용됩니다.

    --dataDir <파일 경로>

    Tableau Server 소프트웨어 구성 및 데이터가 저장되는 위치입니다. 경로를 제공하지 않으면 기본 디렉터리인 C:\ProgramData\Tableau가 구성 및 데이터 파일에 사용됩니다.

    --installerLog <파일 경로>

    설치 프로그램의 로그 파일이 작성되는 기존 디렉터리입니다. 경로를 제공하지 않으면 로그 파일은 사용자의 TEMP 디렉터리에 작성됩니다.

    --controllerPort <포트 번호>

    TSM(Tableau Services Manager) 컨트롤러가 실행되어야 하는 포트입니다.

    --coordinationserviceClientPort <포트 번호>

    ZooKeeper 클라이언트 포트입니다.

    --coordinationservicePeerPort <포트 번호>

    ZooKeeper 피어 포트입니다.

    --coordinationserviceLeaderPort <포트 번호>

    The ZooKeeper 리더 포트입니다.

    --start

    설치가 완료되면 서버를 시작할지 여부입니다.

    추가 노드 설치

    SilentInstaller.py 스크립트는 적절한 명령을 실행하여 추가 노드에 TSM(Tableau 서비스 관리자)을 설치합니다. 전체 옵션 목록과 해당 기본값을 보려면 SilentInstaller.py installWorker –h 명령을 실행하십시오.

    추가 노드를 설치하려면

    각 추가 노드에서 Python 프롬프트를 열고 다음을 입력합니다.

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

    옵션

    설명

    --secretsFile <파일 경로>

    필수 항목입니다. TSM(Tableau Services Manager)에 인증하는 Windows 계정의 자격 증명과 Tableau Server 초기 관리자의 사용자 이름/암호를 설명하는 암호 파일의 상대 또는 절대 경로입니다. 암호 파일에는 Tableau Server를 활성화하는 데 사용할 제품 키도 포함됩니다. 기본적으로 암호 파일 템플릿에는 평가판 라이선스가 포함되어 있습니다.

    참고: 암호 파일에 암호를 제공하는 것은 선택 사항입니다. 하지만 암호 파일에서 암호를 찾을 수 없으면 설치 중에 암호를 제공하라는 메시지가 나타납니다.

    자동화된 설치 프로그램 패키지에는 암호 파일에 대한 템플릿이 포함되어 있습니다.

    --nodeConfigurationFile <파일 경로>

    필수 항목입니다. 추가 노드를 설치하기 위한 노드 구성 파일의 경로입니다.

    (설치 프로그램 실행 파일) < 파일 경로>

    필수 항목입니다. 스크립트의 마지막 인수는 Tableau 웹 사이트의 다운로드와 같은 일반적인 채널을 통해 얻은 Tableau 서비스 관리자 설치 프로그램 실행 파일의 절대 또는 상대 경로입니다. 이 스크립트는 Tableau 서비스 관리자에 사용할 경우에만 지원됩니다.

    --installDir <파일 경로>

    선택 사항입니다. Tableau Server 설치 디렉터리입니다. 이 옵션이 비어 있으면 기본 디렉터리인 C:\Program Files\Tableau\Tableau Server가 사용됩니다.

    --dataDir <파일 경로>

    선택 사항입니다. Tableau Server 소프트웨어 구성 및 데이터가 저장되는 위치입니다. 이 옵션이 비어 있으면 기본 디렉터리인 C:\ProgramData\Tableau가 구성 및 데이터 파일에 사용됩니다.

    --installerLog <파일 경로>

    선택 사항입니다. 설치 프로그램의 로그 파일이 작성되는 기존 디렉터리입니다. 이 옵션이 비어 있으면 로그 파일이 사용자의 TEMP 디렉터리에 작성됩니다.

    참고: 노드 구성 파일은 SilentInstaller.py 스크립트를 사용하여 첫 번째 노드를 설치하면 자동으로 저장됩니다. 이 구성 파일은 스크립트의 작업 디렉터리 아래에서 찾을 수 있습니다.

    클러스터 토폴로지 업데이트

    SilentInstaller.py 스크립트는 적절한 명령을 실행하여 TSM(Tableau 서비스 관리자)에 필요한 대로 클러스터 토폴로지를 업데이트합니다. 전체 옵션 목록과 해당 기본값을 보려면 SilentInstaller.py updateTopology –h 명령을 실행하십시오.

    클러스터 토폴로지를 업데이트하려면

    초기 노드에서 Python 프롬프트를 열고 다음을 입력합니다.

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

    옵션

    설명

    --secretsFile <파일 경로>

    필수 항목입니다. TSM(Tableau Services Manager)에 인증하는 Windows 계정의 자격 증명과 Tableau Server 초기 관리자의 사용자 이름/암호를 설명하는 암호 파일의 상대 또는 절대 경로입니다. 암호 파일에는 Tableau Server를 활성화하는 데 사용할 제품 키도 포함됩니다. 기본적으로 암호 파일 템플릿에는 평가판 라이선스가 포함되어 있습니다.

    참고: 암호 파일에 암호를 제공하는 것은 선택 사항입니다. 하지만 암호 파일에서 암호를 찾을 수 없으면 설치 중에 암호를 제공하라는 메시지가 나타납니다.

    자동화된 설치 프로그램 패키지에는 암호 파일에 대한 템플릿이 포함되어 있습니다.

    --configFile <파일 경로>

    필수 항목입니다. 업데이트할 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"
}

피드백을 제공해 주셔서 감사합니다!귀하의 피드백이 제출되었습니다. 감사합니다!