Porte di Tableau Services Manager

I processi e i servizi che costituiscono i componenti di Tableau Services Manager (TSM) e Tableau Server su Linux usano varie porte per comunicare. Per impostazione predefinita, la maggior parte di esse è assegnata (mappata) dinamicamente all’interno di un intervallo predefinito di porte. Le assegnazioni delle porte vengono effettuate per ogni servizio o processo al momento dell’installazione. È possibile controllare le porte utilizzate in diversi modi.

Un piccolo sottoinsieme di processi non utilizza il mapping dinamico delle porte, comportandosi in modo univoco. Per maggiori informazioni, consulta la sezione sottostante Porte non mappate dinamicamente.

Nota: questa operazione include i passaggi che potrebbe essere necessario eseguire utilizzando la riga di comando TSM.

Uso di porte temporanee

Se il tuo sistema operativo è configurato per l’uso di porte temporanee, il traffico di Tableau potrebbe essere instradato attraverso queste porte, anche se configurato come descritto di seguito. Questo avviene a livello del sistema operativo e non può essere configurato dall’utente in Tableau. Se desideri controllare l’utilizzo delle porte, consulta la documentazione del tuo sistema operativo per informazioni su come limitare l’utilizzo delle porte temporanee.

Requisiti del firewall

Se esegui un firewall nel computer in cui desideri installare Tableau Server, dovrai aprire le porte predefinite seguenti per il traffico di Tableau Server. È possibile modificare tutti i numeri di porta a eccezione della 443.

PortaTCP/UDPUtilizzata da ...TIPO DI INSTALLAZIONE
Tutti

Distribuita/Alta disponibilità

80TCPGatewayX 
443TCPSSL. Quando Tableau Server è configurato per SSL, il server applicazioni reindirizza le richieste a questa porta. Non modificare questa porta.X 
8850TCPTableau Services Manager.X 
8060TCPDatabase PostgreSQL.X 
8061TCPPorta di verifica del backup PostgreSQLX 
8000-9000TCPIntervallo di porte riservate per impostazione predefinita per il mapping dinamico dei processi Tableau X
27000-27009TCPIntervallo di porte utilizzate da Tableau Server per il servizio licenze. Questo intervallo deve essere aperto nel nodo che esegue il servizio licenze e accessibile da altri nodi. Per impostazione predefinita, il nodo iniziale esegue il servizio licenze.X 

Vedi Configurare il firewall locale.

Assegnazione della porta

Per l’assegnazione della porta o il mapping in TSM sono disponibili due approcci:

  • Assegnazione dinamica della porta. Questo è il valore predefinito e richiede un intervento minimo da parte dell’amministratore.
  • Assegnazione manuale della porta. Questa opzione richiede un amministratore per assegnare singolarmente ciascuna porta.

Se modifichi le assegnazioni delle porte ed esegui un firewall locale, consulta Configurazione del firewall locale.

Assegnazione dinamica della porta

È possibile controllare quali porte vengono utilizzate cambiando l’intervallo di porte disponibili per il processo di assegnazione dinamica. In questo modo rimane l’assegnazione dinamica delle porte, ma limita le porte che possono essere selezionate. Con l’assegnazione dinamica delle porte, è comunque possibile scegliere di assegnarle manualmente per determinati processi. Questo approccio consente di assegnare porte specifiche a determinati processi, lasciando mappare le altre in modo dinamico. Utilizzando il mapping dinamico, la presenza o l’assenza di alcune porte assegnate singolarmente costituisce l’approccio più semplice e dovrebbe soddisfare i requisiti della maggior parte dei clienti. Le porte assegnate dinamicamente vengono mantenute in caso di esportazione della configurazione di Tableau Server.

Per impostazione predefinita, le porte vengono assegnate per ogni servizio o processo sulla base di quelle disponibili tra 8000 e 9000. Questa assegnazione viene eseguita quando i servizi sono installati per la prima volta su un nodo. Dopo l’inizializzazione di Tableau Server, è possibile vedere quali porte vengono utilizzate dai servizi o dai processi eseguendo questo comando:

tsm topology list-ports

Se disponi di un cluster a nodo multiplo, vengono elencate le porte in tutti i nodi.

Modifica dell’intervallo delle porte

Per le organizzazioni che hanno requisiti specifici per le porte utilizzate, il modo più semplice per controllarli è modificare l’intervallo da cui vengono selezionate dinamicamente le porte. È necessario eseguire questa operazione al momento dell’installazione, specificando nel file di configurazione una porta minima e una massima per l’intervallo.

Nota: la dimensione minima consentita dell’intervallo di porte dipende dall’installazione del server e dal numero di servizi o processi in esecuzione. Come procedura consigliata generale, non dovresti limitare l’intervallo perché l’assegnazione viene eseguita selezionando porte casuali all’interno dell’intervallo e se non consentirai un intervallo sufficientemente ampio, la selezione potrebbe non trovare una porta disponibile.

Per limitare l’intervallo dal quale vengono selezionate le porte a quelle comprese tra 8300 e 8600, il tuo file di configurazione includerà una voce simile alla seguente:

"configKeys": {
"ports.range.min": "8300", "ports.range.max": "8600"
}

Blocco di porte specifiche all’interno dell’intervallo

A partire dalla versione 2021.1.0, puoi specificare alcune porte incluse nell’intervallo assegnato dinamicamente ma che non devono essere utilizzate da Tableau. Questo è utile se nei computer Tableau Server è presente altro software che si basa sulle porte comprese nell’intervallo utilizzato da Tableau.

Per specificare le porte comprese nell’intervallo che non devono essere utilizzate da TSM e Tableau Server, utilizza la chiave di configurazione ports.blocklist:

tsm configuration set -k ports.blocklist -v <port>[,<port>,<port>]

Ad esempio:

tsm configuration set -k ports.blocklist -v 8000,8088, 8090

Disabilitare l’assegnazione dinamica delle porte

Se è necessario un maggiore controllo dell’assegnazione delle porte, ottenibile mediante una combinazione di limitazione dell’intervallo di porte e di assegnazione singola delle porte, puoi disattivare il mapping dinamico delle porte in corrispondenza della configurazione iniziale del server. La disabilitazione del mapping dinamico della porta richiede che tu assegni manualmente ogni porta per ciascun processo, pertanto non consigliamo di eseguire questa operazione a meno che non sia necessario controllare ogni singola assegnazione di porta.

Se disabiliti il mapping dinamico delle porte, è necessario configurare la porta per ogni processo in ogni nodo dell’installazione.

Per disabilitare il mapping dinamico, il file di configurazione dovrebbe includere una voce simile alla seguente:

"configKeys": {
"service.port_remapping.enabled": false
}

Importante: quando disabiliti l’assegnazione dinamica delle porte, l’intervallo di porte del servizio licenze non è incluso. Questo intervallo (27000-27009) deve essere aperto nel nodo che esegue il servizio licenze e accessibile da altri nodi. Per impostazione predefinita, il nodo iniziale esegue il servizio licenze.

Assegnazione manuale della porta

È possibile disattivare del tutto l’assegnazione automatica delle porte e assegnare una porta per ogni processo singolarmente. In tal caso, è necessario assegnare una porta per ogni processo in ogni nodo. È possibile assegnare le porte in un file di configurazione alla prima installazione dei processi o dopo, utilizzando un comando TSM. Solo le porte assegnate al momento dell’installazione del processo vengono mantenute in caso di esportazione della configurazione di Tableau Server.

È possibile specificare singole porte per processi specifici, indipendentemente dal fatto che sia abilitato o meno il mapping dinamico. Questa operazione può essere eseguita se desideri che un processo utilizzi una determinata porta o se hai disabilitato il mapping dinamico. Esistono due modi per specificare le porte per i processi, durante l’installazione o dopo di essa.

Configurazione delle porte durante l’installazione

È consigliabile configurare l’assegnazione delle porte durante il processo di installazione come descritto di seguito. La modifica delle porte dopo l’installazione è un processo molto più gravoso.

Per configurare le porte durante l’installazione, crea un file json che specifichi la configurazione della porta. Questo processo è simile alla definizione di un intervallo di porte non predefinito, ma è possibile specificare una determinata porta per un servizio o un processo specifico. Se intendi assegnare porte specifiche, questo approccio è il modo più solido per farlo, poiché il mapping delle porte viene mantenuto se esporti le impostazioni della configurazione del server e della topologia tramite il comando tsm settings export.

Per definire le porte all’installazione, aggiungi informazioni al file di configurazione per specificare il nodo (workerN), il processo (servicename), l’ID di istanza (instanceid), il tipo di porta (porttype) e la porta da utilizzare. Il formato sarà simile al seguente:

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

Dove:

  • workerN è un parametro facoltativo e identifica il nodo per il quale si applica il remapping. I numeri dei nodi iniziano con zero (0).
    È consigliabile non includere questo parametro, a meno che non sia necessario mappare porte diverse per lo stesso servizio in nodi differenti. Se disattivi questo parametro, puoi mappare una porta di servizio nel nodo iniziale oppure mappare la stessa porta di servizio su più nodi.
  • servicename è il nome del processo o del servizio che utilizzerà la porta.
  • instanceid è l’istanza del processo. Se prevedi di configurare più istanze di un processo in un nodo, è necessario incrementare questo valore per ogni istanza. Fai partire instanceid da zero (0) e incrementa il valore di uno (1) per ogni istanza del processo. Per i servizi che installano una sola istanza in un determinato nodo, questa deve essere lasciata disattivata.
  • porttype Se imposti la porta primaria, non includere questa opzione.
  • port è la porta che il processo o il servizio utilizzerà.

Ad esempio, per impostare su 8500 la porta per la prima istanza del processo di archivio file nel nodo iniziale, è necessario includere un file di configurazione simile al seguente:

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

L’esempio precedente non include il parametro facoltativo workerN, quindi imposta la porta su tutti i nodi del cluster. Consente inoltre di lasciare disattivata l’opzione porttype perché imposta la porta filestore principale.

Importante: quando specifichi le modifiche alle porte con un file di configurazione, è necessario includere il parametro --force-keys con il comando tsm settings import.

Configurare le porte dopo l’installazione

Se è necessario modificare le porte dopo aver installato Tableau Server, utilizza il comando tsm topology set-ports. Questo approccio consente di specificare una porta per un processo specifico dopo che questo è stato installato. Sei limitato da queste restrizioni:

  • È necessario impostare le porte singolarmente su ciascun nodo.
  • Dopo aver impostato una singola porta, devi eseguire tsm restart.
  • Le assegnazioni delle porte non vengono conservate se è necessario importare una configurazione di Tableau Server utilizzando tsm settings import.
  • I nomi delle porte utilizzano una sintassi diversa per i comandi tsm rispetto a quella necessaria per configKeys. La tabella alla fine di questo argomento fornisce un riferimento alla sintassi.

Ad esempio, per impostare la seconda istanza dell’archivio file nel nodo iniziale affinché utilizzi la porta 8500:

tsm topology set-ports --node-name node1 --port-name filestore --port-value 8500 --instance 2

L’esempio seguente mostra come usare i comandi a sintassi abbreviata per impostare le porte 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

Nota: le voci della porta non sono convalidate quando vengono immesse. Pertanto, se utilizzi una porta già assegnata o se digiti in modo errato la sintassi per un comando, Tableau non genererà errori fino al riavvio. Dopo il riavvio, potrebbe venire visualizzato un errore generico, Processo asincrono di riconfigurazione non riuscito.

Se si aggiunge un portname:type non corretto con una porta valida, non è possibile eliminare la voce errata. Per aggiornare la porta, è necessario riassegnare a quel valore una porta non utilizzata per liberare di nuovo la porta.

Porte non mappate dinamicamente

Il repository di Tableau Server utilizza due porte non mappate dinamicamente. Queste singole porte possono essere sostituite utilizzando il comando tsm configuration set e un parametro specifico del processo.

Nomi delle portePorta (predefinita)Descrizione
pgsql.port8060Porta per il repository di Tableau (database PostgreSQL).

Per ignorare questa porta:

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

pgsql.verify_restore.port8061Porta per verificare l’integrità di un backup del repository.

per ignorare questa porta:

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

Poiché queste porte non utilizzano il sistema di mapping dinamico delle porte, non vengono visualizzate nell’output del comando tsm topology list-ports. Per visualizzare il valore di questi elementi è necessario utilizzare il comando tsm configuration get -k <config.value>. Ad esempio:

tsm configuration get -k pgsql.port

Controllare il remapping delle porte con initialize-tsm

Le assegnazioni delle porte vengono eseguite durante l’installazione dei servizi. Ciò significa che, per eseguire il mapping manuale delle porte per i processi specifici di TSM, è necessario assegnare le porte quando esegui lo script initialize-tsm. Lo script include opzioni per specificare le porte per i singoli servizi TSM, nonché opzioni per la definizione dei valori minimi e massimi dell’intervallo di porte utilizzato con il mapping dinamico: Inoltre, puoi disabilitare il mapping dinamico.

Nella tabella seguente sono elencate le opzioni per le porte durante l’esecuzione dello script initialize-tsm.

Tabella: opzioni di porta dello script initialize-tsm
Opzione scriptParametroDescrizione
-i<port>Imposta la porta client del servizio di coordinamento.
-e<port>Imposta la porta peer del servizio di coordinamento.
-m<port>Imposta la porta leader del servizio di coordinamento.
-n<port>Imposta la porta di trasferimento file dell’agente TSM.
-o<port>Imposta la porta del controller TSM.
-l<min-port>Imposta la parte inferiore dell’intervallo di porte utilizzato per le porte mappate dinamicamente.
-r<max-port>Imposta la parte superiore dell’intervallo di porte utilizzato per le porte mappate dinamicamente.
--disable-port-remapping Disabilita il mapping dinamico delle porte. Se esegui questa operazione, è necessario assegnare le porte per ogni servizio o processo utilizzato da TSM e Tableau Server. Per maggiori informazioni, consulta l’argomento in alto relativo all’Assegnazione manuale della porta.

Porte mappate dinamicamente

In questa tabella sono elencati i processi o i servizi che utilizzano le porte mappate dinamicamente.

Nomi di porta: sintassi per il file json (configKeys)Nomi di porta: sintassi per l’interfaccia della riga di comando di tsm Descrizione
activemqserver.portactivemqserver:primaryPorta service del servizio ActiveMQ.
activemqserver.openwire.portactivemqserver:openwirePorta openwire del servizio ActiveMQ.
appzookeeper_0.client.portappzookeeper:clientPorta del servizio di coordinamento.
appzookeeper_0.peer.portappzookeeper:peerPorta peer del servizio di coordinamento.
appzookeeper_0.leader.portappzookeeper:leaderPorta leader del Servizio di coordinamento.
backgrounder_0.portGestione componenti in backgroundPorta primaria di Gestione componenti in background.
backgrounder_0.debug.portbackgrounder:debugPorta di debug di Gestione componenti in background.
backgrounder_0.jmx.portbackgrounder:jmxPorta jmx di Gestione componenti in background. 
backgrounder_0.jmx.rmi.portbackgrounder:jmx.rmiPorta rmi jmx del componente in background.
backgrounder_0.recommendations.trainer.portbackgrounder:recommendations.trainerPorta dei suggerimenti del componente in background.
backuprestore.portbackuprestorePorta del servizio Backup/ripristino.
cacheserver_0.portcacheserverPorta di Cache Server.
clustercontroller.status.portclustercontroller:statusPorta dello stato di Controller di cluster.
clustercontroller.storage.portclustercontroller:archiviazionePorta di archiviazione di Controller cluster.
databasemaintenance.portdatabasemaintenancePorta di manutenzione del database.
dataserver_0.portdataserverPorta primaria di Data Server.
dataserver_0.debug.portdataserver:debugPorta di debug di Data Server.
dataserver_0.jmx.portdataserver:jmxPorta jmx di Data Server.
dataserver_0.jmx.rmi.portdataserver:jmx.rmiPorta rmi jmx di Data Server.
filestore.portfilestorePorta primaria dell’archivio file.
filestore.status.portfilestore:statusPorta di stato dell’archivio file.
gateway.portgatewayPorta gateway. Il valore predefinito corrisponde a 80 e, se non disponibile, a 8080. Se non è disponibile, verrà tentato 8000. Questa sequenza è seguita dal fatto che l’assegnazione delle porte dinamica sia abilitata o meno. Se nessuna di queste porte è disponibile e il mapping dinamico è abilitato, viene scelta una porta disponibile all’interno dell’intervallo definito. La porta del gateway deve essere uguale in tutti i nodi di un cluster a più nodi, pertanto se la porta 80 è selezionata nel nodo iniziale questa verrà utilizzata in tutti i nodi e se non è disponibile in uno degli altri nodi, la selezione delle porte del gateway avrà esito negativo.
hyper.porthyperPorta primaria del motore dati.
hyper.connection.porthyper:connectionPorta di collegamento del motore dati.
indexandsearchserver.portindexandsearchserverPorta primaria del server di indicizzazione e ricerca.
indexandsearchserver.transport.portindexandsearchserver:transportPorta del trasporto del server di indicizzazione e ricerca.
licenseservice.vendor_daemon.portlicenseservice:vendor_daemonPorta del daemon del fornitore di servizi di licenza. Utilizzato per le comunicazioni relative alla gestione di licenze tra nodi in un’installazione multi-nodo.
samlservice.portsamlservicePorta di servizio SAML.
siteimportexport.portsiteimportexportPorta di importazione/esportazione del sito.
tabadmincontroller.porttabadmincontrollerPorta del controller TSM.
tabadminagent.columbo.porttabadminagent:columboPorta di scoperta del servizio dell’agente di amministrazione
tabadminagent.filetransfer.porttabadminagent:filetransferPorta di trasferimento file dell’agente TSM.
vizportal_0.authentication.portvizportal:authenticationPorta di autenticazione di Server applicazioni.
vizportal_0.authorization.portvizportal:authorizationPorta di autorizzazione di Server applicazioni.
vizportal_0.maintenance.portvizportal:.maintenancePorta di manutenzione di Server applicazioni.
vizportal_0.microservice.extensions.portvizportal:.microservice:extensionsPorta delle estensioni di Server applicazioni.
vizportal_0.monolith_grpc.portvizporta:monolith_grpcPorta GRPC di Server applicazioni.
vizportal_0.publishing.portvizportal:publishingPorta di pubblicazione di Server applicazioni.
vizportal_0.recommendations.portvizportal:recommendationsPorta di suggerimenti di Server applicazioni.
vizportal_0.portvizportalPorta primaria di Server applicazioni.
vizportal_0.debug.portvizportal:debugPorta di debug di Server applicazioni.
vizportal_0.jmx.portvizportal:jmxPorta jmx di Server applicazioni.
vizportal_0.jmx.rmi.portvizportal:jmx.rmiPorta rmi jmx di Server applicazioni.
vizqlserver_0.portvizqlserverPorta primaria di Server VizQL.
vizqlserver_0.debug.portvizqlserver:debugPorta di debug di Server VizQL.
vizqlserver_0.jmx.portvizqlserver:jmxPorta jmx di Server VizQL.
vizqlserver_0.jmx.rmi.portvizqlserver:jmx.rmiPorta rmi jmx di Server VizQL.

 

Grazie per il tuo feedback.Il tuo feedback è stato inviato. Grazie!