Tableau 서비스 관리자 포트

Windows 기반 TSM(Tableau 서비스 관리자) 및 Tableau Server의 구성 요소를 구성하는 프로세스 및 서비스는 다양한 포트를 사용하여 통신합니다. 기본적으로 이러한 포트의 대부분은 미리 정의된 포트 범위에서 동적으로 할당(매핑)됩니다. 포트 할당은 각 서비스 또는 프로세스가 설치될 때 수행됩니다. 다양한 방법으로 사용되는 포트를 제어할 수 있습니다.

프로세스 중 일부 하위 집합은 동적 포트 매핑을 사용하지 않고 고유하게 동작합니다. 자세한 내용은 아래에서 동적으로 매핑되지 않는 포트를 참조하십시오.

참고: 이 작업에는 TSM 명령줄을 사용해야 할 수 있는 단계가 포함되어 있습니다. TSM CLI를 사용하려면 설치의 노드 중 하나에서 관리자 권한으로 명령줄에 액세스하고 TSM 관리자 자격 증명을 사용하여 TSM 명령을 실행해야 합니다.

방화벽 요구 사항

Tableau Server를 설치할 컴퓨터에서 방화벽을 실행하는 경우 Tableau Server 트래픽에 대해 다음과 같은 기본 포트를 열어야 합니다. 443을 제외한 모든 포트 번호를 변경할 수 있습니다.

포트TCP/UDP사용 주체...설치 유형
전체

분산/고가용성

80TCP게이트웨이X 
443TCPSSL. Tableau Server가 SSL에 대해 구성된 경우 응용 프로그램 서버는 요청을 이 포트로 리디렉션합니다. 이 포트를 변경하지 마십시오.X 
8850TCPTableau 서비스 관리자.X 
8060TCPPostgreSQL 데이터베이스.X 
8061TCPPostgreSQL 백업 확인 포트X 
8000-9000TCPTableau 프로세스의 동적 매핑에 대해 기본적으로 예약된 포트 범위 X
27000-27009TCPTableau Server의 라이선스 서비스에 사용되는 포트 범위. 이 범위는 라이선스 서비스를 실행하는 노드에서 열어야 하며 다른 노드에서 액세스할 수 있어야 합니다. 기본적으로 라이선스 서비스는 초기 노드에서 실행됩니다.X 

포트 할당

TSM에서 포트 할당 또는 매핑에 사용할 수 있는 두 가지 접근 방식이 있습니다.

  • 동적 포트 할당. 기본 방식이며 관리자 개입이 가장 적습니다.
  • 수동 포트 할당. 이 옵션에서는 관리자가 각 포트를 개별적으로 할당해야 합니다.

포트 할당을 변경하고 로컬 방화벽을 실행하는 경우 로컬 방화벽 구성을 참조하십시오.

동적 포트 할당

동적 할당 프로세스에서 사용할 수 있는 포트 범위를 변경하여 사용되는 포트를 제어할 수 있습니다. 이렇게 하면 동적 포트 할당이 그대로 유지되지만 선택할 수 있는 포트가 제한됩니다. 동적 포트 할당을 사용해도 여전히 특정 프로세스에 대한 포트를 수동으로 할당하도록 선택할 수 있습니다. 이 접근 방식을 사용하면 특정 프로세스에 특정 포트를 할당하면서도 다른 포트는 동적으로 매핑되게 할 수 있습니다. 일부 개별적으로 할당되는 포트가 있는지 여부와 관계없이 동적 매핑을 사용하는 것이 가장 쉬운 방법이며 대부분의 고객 요구 사항을 충족합니다. 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 구성을 내보내는 경우 프로세스 설치 시에 할당된 포트만 보존됩니다.

동적 매핑의 사용 여부와 관계없이 특정 프로세스에 대해 개별 포트를 지정할 수 있습니다. 프로세스가 특정 포트를 사용해야 하거나 동적 매핑을 사용하지 않도록 설정한 경우 이 작업을 수행할 수 있습니다. 프로세스에 대한 포트는 설치 중에 또는 설치 후에 지정할 수 있습니다.

설치 중에 포트 구성

여기에 설명된 대로 설치 프로세스 중에 포트 할당을 구성하는 것이 좋습니다. 설치 후에 포트를 변경하려면 훨씬 많은 작업이 필요합니다.

설치 중에 포트를 구성하려면 포트 구성을 지정하는 json 파일을 만듭니다. 이 프로세스는 기본값과 다른 포트 범위를 정의하는 것과 비슷하지만 포트 범위를 정의하는 대신 특정 서비스 또는 프로세스에 대한 특정 포트를 지정합니다. 이렇게 하면 tsm settings export 명령을 사용하여 서버 구성 및 토폴로지 설정을 내보내도 포트 매핑이 보존되므로 특정 포트를 할당하려는 경우 이 방법이 가장 확실한 방법입니다.

설치 시 포트를 정의하려면 구성 파일에 정보를 추가하여 노드(workerN), 프로세스(servicename) 및 인스턴스 ID(instanceid)와 포트 유형(porttype) 및 사용할 포트를 지정합니다. 형식은 다음과 같습니다.

workerN.{servicename}_{instanceid}.{porttype}.port:X

다음을 참조하십시오.

  • workerN - 선택적 매개 변수이며 재매핑이 적용되는 노드를 식별합니다. 노드 번호는 0부터 시작합니다.
    서로 다른 노드에서 동일한 서비스에 대해 서로 다른 포트를 매핑해야 하는 경우가 아니라면 이 매개 변수를 포함하지 않는 것이 좋습니다. 이 매개 변수를 제외하면 초기 노드에서 서비스 포트를 매핑하거나 여러 노드에서 동일한 서비스 포트를 매핑할 수 있습니다.
  • servicename - 포트를 사용할 프로세스 또는 서비스의 이름입니다.
  • instanceid - 프로세스의 인스턴스입니다. 한 노드에서 프로세스의 여러 인스턴스를 구성하려는 경우 각 인스턴스에 대해 이 값을 증가시켜야 합니다. instanceid를 0부터 시작하여 프로세스의 각 인스턴스에 대해 1씩 증가시킵니다. 지정된 노드에 단일 인스턴스만 설치하는 서비스의 경우 이 매개 변수를 제외해야 합니다.
  • porttype - 주 포트를 설정하는 경우 이 옵션을 포함하지 마십시오.
  • port - 프로세스 또는 서비스가 사용해야 하는 포트입니다.

예를 들어 초기 노드에서 파일 저장소 프로세스의 첫 번째 인스턴스에 대한 포트를 8500으로 설정하려면 다음과 유사한 구성 파일 항목을 포함시킵니다.

"configKeys": {
"filestore_0.port: "8500"
}

위의 예에는 선택적 workerN 매개 변수가 포함되어 있지 않으므로 클러스터의 모든 노드에 대해 포트를 설정합니다. 또한 주 파일 저장소 포트를 설정하기 때문에 porttype 옵션을 제외합니다.

중요: 구성 파일을 사용하여 포트 변경을 지정하는 경우 --force-keys 매개 변수를 tsm settings import 명령에 포함해야 합니다.

설치 후에 포트 구성

Tableau Server를 설치한 후 포트를 변경해야 한다면 tsm topology set-ports 명령을 사용합니다. 이 방법을 사용하면 특정 프로세스를 설치한 후 해당 프로세스에 대한 포트를 지정할 수 있습니다. 하지만 다음과 같은 제한이 적용됩니다.

  • 각 노드에서 개별적으로 포트를 설정해야 합니다.
  • 개별 포트를 설정한 후 tsm restart를 실행해야 합니다.
  • tsm settings import를 사용하여 Tableau Server 구성을 가져와야 하는 경우 포트 할당이 보존되지 않습니다.
  • 포트 이름은 configKeys에 필요한 구문과는 다른 tsm 명령 구문을 사용합니다. 이 항목 끝에 있는 표에 구문 참조가 나와 있습니다.

예를 들어 초기 노드에서 파일 저장소의 두 번째 인스턴스를 설정하려면 포트 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를 다시 시작할 때까지 오류가 나타나지 않습니다. 다시 시작한 후 비동기 작업을 재구성하지 못했습니다. 일반 오류가 표시될 수 있습니다.

유효한 포트를 사용하여 잘못된 portname:type을 추가한 경우 잘못된 항목을 삭제할 수 없습니다. 포트를 업데이트하려면 사용하지 않은 포트를 해당 값에 다시 할당하여 포트를 다시 확보해야 합니다.

동적으로 매핑되지 않는 포트

Tableau Server 리포지토리는 동적으로 매핑되지 않는 두 포트를 사용합니다. 이 두 포트에는 기본값이 있으며 tsm configuration set 명령과 프로세스별 매개 변수를 사용하여 재정의할 수 있습니다.

포트 이름포트(기본값)설명
pgsql.port8060Tableau 리포지토리(PostgreSQL 데이터베이스)용 포트입니다.

이 포트를 재정의하려면 다음 명령을 사용하십시오.

tsm configuration set -k pgsql.port -v <port>

pgsql.verify_restore.port8061리포지토리 백업의 무결성을 확인하기 위한 포트입니다.

이 포트를 재정의하려면 다음 명령을 사용하십시오.

tsm configuration set -k pgsql.verify_restore.port -v <port>

이 두 포트는 동적 포트 매핑 시스템을 사용하지 않으므로 tsm topology list-ports 명령 출력에 표시되지 않습니다. 이 두 포트의 값을 확인하려면 tsm configuration get -k <config.value> 명령을 사용해야 합니다. 예를 들면 다음과 같습니다.

tsm configuration get -k pgsql.port

동적으로 매핑된 포트

다음 표에는 동적으로 매핑된 포트를 사용하는 프로세스 또는 서비스가 나와 있습니다.

포트 이름: json 파일 구문(configKeys)포트 이름: tsm CLI 구문 설명
activemqserver.portactivemqserver:primaryActiveMQ 서비스의 서비스 포트
activemqserver.openwire.portactivemqserver:openwireActiveMQ 서비스의 OpenWire 포트
appzookeeper_0.client.portappzookeeper:client조정 서비스 클라이언트 포트
appzookeeper_0.peer.portappzookeeper:peer조정 서비스 피어 포트
appzookeeper_0.leader.portappzookeeper:leader조정 서비스 리더 포트
backgrounder_0.portbackgrounder백그라운더 주 포트
backgrounder_0.debug.portbackgrounder:debug백그라운더 디버그 포트
backgrounder_0.jmx.portbackgrounder:jmx백그라운더 jmx 포트 
backgrounder_0.jmx.rmi.portbackgrounder:jmx.rmi백그라운더 jmx rmi 포트
backgrounder_0.recommendations.trainer.portbackgrounder:recommendations.trainer백그라운더 권장 포트
backuprestore.portbackuprestore백업/복원 서비스 포트
cacheserver_0.portcacheserver캐시 서버 포트
clustercontroller.status.portclustercontroller:status클러스터 컨트롤러 상태 포트
clustercontroller.storage.portclustercontroller:storage클러스터 컨트롤러 저장소 포트
databasemaintenance.portdatabasemaintenance데이터베이스 유지 관리 포트
dataserver_0.portdataserver데이터 서버 주 포트
dataserver_0.debug.portdataserver:debug데이터 서버 디버그 포트
dataserver_0.jmx.portdataserver:jmx데이터 서버 jmx 포트
dataserver_0.jmx.rmi.portdataserver:jmx.rmi데이터 서버 jmx rmi 포트
filestore.portfilestore파일 저장소 주 포트
filestore.status.portfilestore:status파일 저장소 상태 포트
gateway.portgateway게이트웨이 포트. 기본값은 80이며 사용할 수 없는 경우 8080입니다. 이 포트도 사용할 수 없는 경우 8000을 사용합니다. 동적 포트 할당 사용 여부와 관계없이 이 순서를 따릅니다. 이러한 포트 중 어떤 것도 사용할 수 없고 동적 매핑이 사용되는 경우 정의된 범위 내에서 사용 가능한 포트를 사용합니다. 게이트웨이 포트는 다중 노드 클러스터의 모든 노드에서 동일해야 하므로, 초기 노드에서 포트 80을 선택한 경우 이 포트가 모든 노드에서 사용되는 포트이며 다른 노드 중 하나에서 이 포트를 사용할 수 없으면 게이트웨이 포트 선택이 실패합니다.
hyper.porthyper데이터 엔진 주 포트
hyper.connection.porthyper:connection데이터 엔진 연결 포트
indexandsearchserver.portindexandsearchserver인덱스 및 검색 서버 주 포트
indexandsearchserver.transport.portindexandsearchserver:transport인덱스 및 검색 서버 전송 포트
licenseservice.vendor_daemon.portlicenseservice:vendor_daemon라이선스 서비스 공급업체 데몬 포트 분산 설치의 노드 간 라이선스 관련 통신에 사용됩니다.
samlservice.portsamlserviceSAML 서비스 포트
siteimportexport.portsiteimportexport사이트 가져오기/내보내기 포트
tabadmincontroller.porttabadmincontrollerTSM 컨트롤러 포트
tabadminagent.columbo.porttabadminagent:columbo관리 에이전트 서비스 검색 포트
tabadminagent.filetransfer.porttabadminagent:filetransferTSM 에이전트 파일 전송 포트
vizportal_0.authentication.portvizportal:authentication응용 프로그램 서버 인증 포트
vizportal_0.authorization.portvizportal:authorization응용 프로그램 서버 권한 부여 포트
vizportal_0.maintenance.portvizportal:.maintenance응용 프로그램 서버 유지 관리 포트
vizportal_0.microservice.extensions.portvizportal:.microservice:extensions응용 프로그램 서버 확장 프로그램 포트
vizportal_0.monolith_grpc.portvizporta:monolith_grpc응용 프로그램 서버 GRPC 포트
vizportal_0.publishing.portvizportal:publishing응용 프로그램 서버 게시 포트
vizportal_0.recommendations.portvizportal:recommendations응용 프로그램 서버 권장 포트
vizportal_0.portvizportal응용 프로그램 서버 주 포트
vizportal_0.debug.portvizportal:debug응용 프로그램 서버 디버그 포트
vizportal_0.jmx.portvizportal:jmx응용 프로그램 서버 jmx 포트
vizportal_0.jmx.rmi.portvizportal:jmx.rmi응용 프로그램 서버 jmx rmi 포트
vizqlserver_0.portvizqlserverVizQL 서버 주 포트
vizqlserver_0.debug.portvizqlserver:debugVizQL 서버 디버그 포트
vizqlserver_0.jmx.portvizqlserver:jmxVizQL 서버 jmx 포트
vizqlserver_0.jmx.rmi.portvizqlserver:jmx.rmiVizQL 서버 jmx rmi 포트

 

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