Ports de Tableau Services Manager
Les processus et services qui constituent les composants de Tableau Services Manager (TSM) et Tableau Server
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.
Utilisation de ports éphémères
Si votre système d’exploitation est configuré pour utiliser des ports éphémères, votre trafic Tableau peut être acheminé via ceux-ci, même s’il est configuré comme décrit ci-dessous. L’opération a lieu au niveau du système d’exploitation et n’est pas quelque chose que vous pouvez configurer dans Tableau. Si vous souhaitez contrôler l’utilisation des ports, consultez la documentation de votre système d’exploitation pour savoir comment limiter l’utilisation des ports éphémères.
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 :
|
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 :
|
É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 |
---|---|---|
activemqserver.port | activemqserver:primary | Port de service du service ActiveMQ. |
activemqserver.openwire.port | activemqserver:openwire | Port openwire du service ActiveMQ. |
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. |
indexandsearchserver.port | indexandsearchserver | Port principal du serveur d’indexation et de recherche. |
indexandsearchserver.transport.port | indexandsearchserver:transport | Port de transport du serveur d’indexation et de recherche. |
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. |
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. |