Ports de Tableau Services Manager

Les processus et services qui constituent les composants de Tableau Services Manager (TSM) et Tableau Server sur Windows utilisent divers ports pour communiquer. Par défaut, la plupart de ces ports sont affectés (mappés) de manière dynamique depuis une plage prédéfinie de ports. Les affectations de ports sont effectuées pour chaque service ou processus lors de son installation. Vous pouvez contrôler les ports qui sont utilisés de diverses manières.

Un petit sous-ensemble de processus n'utilise pas le mappage de ports dynamique et se comporte de manière unique. Pour plus d'informations, consultez Ports qui ne sont pas mappés de manière dynamique ci-dessous.

Remarque : cette opération inclut des étapes que vous devrez peut-être effectuer avec la ligne de commande TSM. Pour utiliser l'interface en ligne de commande TSM, vous avez besoin d'un accès administrateur sur l'un des nœuds de votre installation et d'informations d'identification administrateur TSM pour exécuter des commandes TSM.

Configuration requise pour le pare-feu

Si vous exécutez un pare-feu sur l'ordinateur sur lequel vous installerez Tableau Server, vous devez ouvrir les ports par défaut suivants pour le trafic Tableau Server. Tous les numéros de port, à l'exception du port 443, peuvent être modifiés.

Port TCP/UDP Utilisé par ... TYPE D'INSTALLATION
Toutes installations

Distribué/Haute disponibilité

80 TCP Passerelle X  
443 TCP SSL. Lorsque Tableau Server est configuré pour SSL, le serveur d'applications redirige les demandes vers ce port. Ne modifiez pas ce port. X  
8850 TCP Tableau Services Manager. X  
8060 TCP Base de données PostgreSQL. X  
8061 TCP Port de vérification de la sauvegarde PostgreSQL X  
8000-9000 TCP Plage de ports réservée par défaut pour le mappage dynamique des processus Tableau   X
27000-27009 TCP Plage de ports utilisée par Tableau Server pour le service de licence. Cette plage doit être ouverte sur le nœud exécutant le service de licence et accessible à partir d’autres nœuds. Par défaut, le nœud initial exécute le service de licence. X  

Affectation des ports

Voici deux approches que vous pouvez utiliser pour l'affectation ou le mappage des ports dans TSM :

  • Affectation dynamique des ports. Il s'agit du paramètre par défaut qui nécessite le moins d'intervention de l'administrateur.
  • Affectation manuelle des ports. Cette option nécessite un administrateur pour affecter individuellement chaque port.

Si vous modifiez les affectations des ports et que vous exécutez un pare-feu local, consultez Configuration du pare-feu local.

Affectation dynamique des ports

Vous pouvez contrôler les ports utilisés en modifiant la plage de ports disponibles sur le processus d'affectation dynamique. De cette manière, l'affectation dynamique des ports est laissée en place, mais restreint le choix de ports. Avec l'affectation dynamique des ports en place, vous pouvez toujours choisir d'affecter des ports pour certains processus manuellement. Cette approche vous permet d'affecter des ports spécifiques à des processus spécifiques tout en conservant le mappage dynamique pour les autres. L'approche la plus facile consiste à utiliser le mappage dynamique, avec ou sans certains ports affectés individuellement, et devrait répondre aux besoins de la plupart des clients. Les ports affectés de manière dynamique sont conservés si vous exportez votre configuration Tableau Server.

Par défaut, les ports sont affectés pour chaque service ou processus à partir des ports disponibles entre 8000 et 9000. L'affectation a lieu lors de l'installation initiale des services sur un nœud. Après l'initialisation de Tableau Server, vous pouvez voir quels ports sont utilisés par quels services ou processus en exécutant cette commande :

tsm topology list-ports

Si vous possédez un cluster multinœud, la liste des ports sur tous les nœuds s'affiche.

Modification de la plage de ports

Pour les organisations ayant des exigences spécifiques pour les ports utilisés, la manière la plus facile de contrôler ce paramètre consiste à modifier la plage dans laquelle les ports sont sélectionnés de manière dynamique. Vous devez le faire au moment de l'installation, en spécifiant un port minimum et maximum pour la plage dans votre fichier de configuration.

Remarque : la taille minimum autorisée pour votre plage de ports dépend de l'installation de votre serveur et du nombre de services ou de processus que vous exécutez. Une meilleure pratique générale consiste à ne pas restreindre trop strictement la plage parce que l'affectation des ports est effectuée par sélection des ports aléatoires dans la plage. Si vous n'autorisez pas une plage suffisamment large, il se peut que la sélection ne trouve pas de port disponible.

Pour limiter la plage dans laquelle les ports disponibles sont choisis aux ports compris entre 8300 et 8600, votre fichier de configuration devrait inclure une entrée de ce type :

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

Blocage de ports spécifiques dans la plage

Depuis la version 2021.1.0, vous pouvez spécifier certains ports qui se trouvent dans la plage assignée de manière dynamique, mais qui ne doivent pas être utilisés par Tableau. Cette fonction est utile si vous avez d’autres logiciels sur vos ordinateurs Tableau Server qui s’appuient sur les ports dans la plage utilisée par Tableau.

Pour spécifier les ports dans la plage qui ne doivent pas être utilisés par TSM et Tableau Server, utilisez la clé de configuration ports.blocklist :

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

Par exemple :

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

Désactivation de l'affectation dynamique des ports

Si vous avez besoin de davantage contrôler l'affectation des ports que vous pouvez obtenir via une combinaison de restriction de la plage de ports et d'affectation individuelle des ports, vous pouvez désactiver le mappage dynamique de ports lors de la configuration initiale du serveur. La désactivation du mappage dynamique de ports exige que vous affectiez manuellement chaque port pour chaque processus. Nous vous déconseillons donc cette option, sauf si vous avez besoin de contrôler chaque affectation de port.

Si vous désactivez le mappage dynamique de ports, vous devez configurer le port pour chaque processus sur chaque nœud de votre installation.

Pour désactiver le mappage dynamique, votre fichier de configuration devrait inclure une entrée de ce type :

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

Important : lorsque vous désactivez l'affectation dynamique des ports, la plage des ports de service de licence n'est pas incluse. Cette plage (27000-27009) doit être ouverte sur le nœud exécutant le service de licence et être accessible depuis d'autres nœuds. Par défaut, le nœud initial exécute le service de licence.

Affectation manuelle des ports

Vous pouvez désactiver entièrement l'affectation automatique des ports et affecter un port pour chaque processus individuellement. Dans ce cas, vous devez affecter un port pour chaque processus sur chaque nœud. Vous pouvez affecter des ports soit dans un fichier de configuration, lors de l'installation initiale des processus, soit après l'installation, en utilisant une commande TSM. Seuls les ports affectés lors de l'installation du processus sont conservés si vous exportez votre configuration Tableau Server.

Vous pouvez spécifier des ports individuels pour des processus spécifiques, que le mappage dynamique soit ou non activé. Vous pouvez le faire si vous souhaitez qu'un processus utilise un port particulier ou si vous avez désactivé le mappage dynamique. Il existe deux manières de spécifier les ports pour les processus : pendant l'installation ou après l'installation.

Configuration des ports pendant l'installation

Nous vous recommandons de configurer l'affectation des ports pendant le processus d'installation comme décrit ici. Modifier les ports après l'installation demande beaucoup plus de travail.

Pour configurer les ports pendant l'installation, créez un fichier json qui spécifie la configuration de vos ports. Ce processus s'apparente à la définition d'une plage de ports non par défaut mais au lieu de cela, vous spécifiez un port particulier pour un service ou un processus spécifique. Si vous comptez affecter des ports spécifiques, cette approche est la plus robuste, parce que le mappage de ports est conservé si vous exportez les paramètres de configuration et de topologie du serveur à l'aide de la commande tsm settings export.

Pour définir les ports lors de l'installation, ajoutez des informations à votre fichier de configuration pour spécifier le nœud (workerN), le processus (servicename) et l'ID d'instance (instanceid), le type de port (porttype) et le port à utiliser. Le format se présente comme suit :

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

Où :

  • workerN  est un paramètre facultatif et identifie le nœud auquel le remappage s'applique. Les numéros de nœud commencent par zéro (0).
    Nous vous recommandons de ne pas inclure ce paramètre sauf si vous avez besoin de mapper différents ports pour le même service sur différents nœuds. Si vous laissez ce paramètre désactivé, vous pouvez mapper un port de service sur le nœud initial, ou mapper le même port de service sur plusieurs nœuds.
  • servicename est le nom du processus ou du service qui utilisera le port.
  • instanceid est l'instance du processus. Si vous envisagez de configurer plusieurs instances d'un processus sur un nœud, vous devrez augmenter cette valeur pour chaque instance. Démarrez la valeur instanceid à zéro (0) et incrémentez-la par un (1) pour chaque instance du processus. Pour les services qui n'installent qu'une seule instance sur un nœud donné, ce paramètre doit être laissé désactivé.
  • porttype Si vous définissez le port primaire, n'incluez pas cette option.
  • port est le port que le processus ou le service devrait utiliser.

Par exemple, pour configurer le port pour la première instance du processus de répertoire de fichier sur le nœud initial sur 8500, vous devriez inclure une entrée de fichier de configuration du type suivant :

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

L'exemple ci-dessus n'inclut pas le paramètre workerN facultatif et définit donc le port sur tous les nœuds du cluster. Il laisse également désactivée l'option porttype parce qu'elle configure le port filestore principal.

Important : lorsque vous spécifiez des changements de port dans un fichier de configuration, vous devez inclure le paramètre --force-keys avec la commande tsm settings import.

Configuration des ports après l'installation

Si vous avez besoin de modifier les ports après avoir installé Tableau Server, utilisez la commande tsm topology set-ports. Cette approche vous permet de spécifier un port pour un processus spécifique après l'installation de ce processus. Vous êtes limité par les restrictions suivantes :

  • Vous devez définir les ports individuellement, sur chaque nœud.
  • Après avoir configuré un port individuel, vous devez exécuter tsm restart.
  • Les affectations de port ne sont pas conservées si vous avez besoin d'importer une configuration Tableau Server à l'aide de la commande tsm settings import.
  • Les noms des ports utilisent une syntaxe pour les commandes tsm différente de celle requise pour configKeys. La table à la fin de cette rubrique fournit une référence de syntaxe.

Par exemple, pour qu'une seconde instance du répertoire de fichiers sur le nœud initial utilise le port 8500 :

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

L'exemple suivant montre comment utiliser les commandes abrégées pour définir les ports 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

Remarque : les entrées de port ne sont pas validées lorsque vous les entrez. De ce fait, si vous utilisez un port qui est déjà affecté, ou si vous saisissez incorrectement la syntaxe d'une commande, Tableau n'indique pas d'erreur jusqu'à ce que vous redémarriez. Après le redémarrage, vous pouvez voir une erreur générique, The reconfigure async job failed.

Si vous ajoutez un paramètre portname:type incorrect avec un port valide, vous ne pouvez pas supprimer l'entrée non valide. Pour mettre à jour le port, vous devez réaffecter un port non utilisé à cette valeur pour libérer à nouveau le port.

Ports qui ne sont pas mappés de manière dynamique

Le référentiel Tableau Server utilise deux ports qui ne sont pas mappés de manière dynamique. Chacun a un port par défaut que vous pouvez remplacer à l'aide de la commande tsm configuration set et un paramètre spécifique à un processus.

Noms des ports Port (par défaut) Description
pgsql.port 8060 Port pour le référentiel Tableau (base de données PostgreSQL).

Pour remplacer ce port :

tsm configuration set -k pgsql.port <port>

pgsql.verify_restore.port 8061 Port pour la vérification de l'intégrité d'une sauvegarde de référentiel.

Pour remplacer ce port :

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

Étant donné qu'ils n'utilisent pas le système de mappage dynamique des ports, ces ports ne s'affichent pas dans le résultat de la commande tsm topology list-ports. Pour voir la valeur de ceux dont vous avez besoin, utilisez la commande tsm configuration get -k <config.value>. Par exemple :

tsm configuration get -k pgsql.port

Ports mappés de manière dynamique

Ce tableau affiche la liste des processus ou des services qui utilisent les ports mappés de manière dynamique.

Noms des ports : syntaxe du fichier json (configKeys) Noms des ports : syntaxe de l'interface en ligne de commande tsm  Description
appzookeeper_0.client.port appzookeeper:client Port du client de service de coordination.
appzookeeper_0.peer.port appzookeeper:peer Port homologue du service de coordination.
appzookeeper_0.leader.port appzookeeper:leader Port leader du service de coordination.
backgrounder_0.port backgrounder Port principal du backgrounder.
backgrounder_0.debug.port backgrounder:debug Port de débogage du backgrounder.
backgrounder_0.jmx.port backgrounder:jmx Port jmx du backgrounder. 
backgrounder_0.jmx.rmi.port backgrounder:jmx.rmi Port jmx rmi du backgrounder.
backgrounder_0.recommendations.trainer.port backgrounder:recommendations.trainer Port de recommandations du backgrounder.
backuprestore.port backuprestore Port du service de sauvegarde/restauration.
cacheserver_0.port cacheserver Port du serveur de cache.
clustercontroller.status.port clustercontroller:status Port d'état du contrôleur de cluster.
clustercontroller.storage.port clustercontroller:storage Port de stockage du contrôleur de cluster.
databasemaintenance.port databasemaintenance Port de maintenance de la base de données.
dataserver_0.port dataserver Port principal du serveur de données.
dataserver_0.debug.port dataserver:debug Port de débogage du serveur de données.
dataserver_0.jmx.port dataserver:jmx Port jmx du serveur de données.
dataserver_0.jmx.rmi.port dataserver:jmx.rmi Port jmx rmi du serveur de données.
filestore.port filestore Port principal du répertoire de fichiers.
filestore.status.port filestore:status Port d'état du répertoire de fichiers.
gateway.port gateway Port de passerelle. Le port par défaut est 80, et s'il n'est pas disponible, 8080. S'il n'est pas non plus disponible, il tente 8000. Cette séquence est suivie, que l'affectation dynamique des ports. soit activée ou non. Si aucun de ces ports n'est disponible et que le mappage dynamique est activé, il utilise un port disponible dans la plage spécifiée. Le port de passerelle doit être le même sur tous les nœuds d'un cluster multinœud. Ainsi, si le port 80 est sélectionné sur le nœud initial, ce port sera également utilisé sur tous les nœuds. S'il n'est pas disponible sur l'un des autres nœuds, la sélection de port de passerelle échouera.
hyper.port hyper Port principal du moteur de données.
hyper.connection.port hyper:connection Port de connexion du moteur de données.
licenseservice.vendor_daemon.port licenseservice:vendor_daemon Port daemon du fournisseur de service de licences. Utilisé pour les communications concernant les licences entre les nœuds d'une installation distribuée.
samlservice.port samlservice Port du service SAML.
searchserver.port searchserver Port principal du serveur de recherche.
searchserver.debug.port searchserver:debug Port de débogage du serveur de recherche.
searchserver.jmx.port searchserver:jmx Port jmx du serveur de recherche.
searchserver.jmx.rmi.port searchserver:jmx:rmi Port jmx rmi du serveur de recherche.
searchserver.startup.port searchserver:startup Port de démarrage du serveur de recherche.
siteimportexport.port siteimportexport Port d'importation/exportation de site.
tabadmincontroller.port tabadmincontroller Port du contrôleur TSM.
tabadminagent.columbo.port tabadminagent:colombo Port de découverte du service d'Agent d'administration
tabadminagent.filetransfer.port tabadminagent:filetransfer Port de transfert de fichier de l'agent TSM.
vizportal_0.authentication.port vizportal:authentication Port d'authentification du serveur d'applications.
vizportal_0.authorization.port vizportal:authorization Port d'autorisation du serveur d'applications.
vizportal_0.maintenance.port vizportal:.maintenance Port de maintenance du serveur d'applications.
vizportal_0.microservice.extensions.port vizportal:.microservice:extensions Port d'extensions du serveur d'applications.
vizportal_0.monolith_grpc.port vizporta:monolith_grpc Port GRPC du serveur d'applications.
vizportal_0.publishing.port vizportal:publishing Port de publication du serveur d'applications.
vizportal_0.recommendations.port vizportal:recommendations Port de recommandations du serveur d'applications.
vizportal_0.port vizportal Port principal du serveur d'applications.
vizportal_0.debug.port vizportal:debug Port de débogage du serveur d'applications.
vizportal_0.jmx.port vizportal:jmx Port jmx du serveur d'applications.
vizportal_0.jmx.rmi.port vizportal:jmx.rmi Port jmx rmi du serveur d'applications.
vizqlserver_0.port vizqlserver Port principal de VizQL Server.
vizqlserver_0.debug.port vizqlserver:debug Port de débogage de VizQL Server.
vizqlserver_0.jmx.port vizqlserver:jmx Port jmx de VizQL Server.
vizqlserver_0.jmx.rmi.port vizqlserver:jmx.rmi Port jmx rmi de VizQL Server.

 

Autres articles de cette section

Merci de vos commentaires !