Partie 4 - Installer et configurer Tableau Server

La section Tableau du déploiement comprend un cluster de serveurs Tableau à 4 nœuds au niveau Application ainsi qu’un référentiel Tableau s’exécutant sur un déploiement de base de données actif-passif au niveau Données.

Cette rubrique décrit comment terminer l’installation et la configuration du déploiement de base de Tableau Server. La procédure ici se poursuit avec l’exemple d’architecture de référence AWS et Linux.

Les exemples Linux tout au long des procédures d’installation montrent des commandes pour les distributions de type RHEL. Plus précisément, les commandes présentées ici ont été développées avec la distribution Amazon Linux 2. Si vous exécutez la distribution Ubuntu, modifiez les commandes en conséquence.

Avant de commencer

Vous devez préparer et valider votre environnement comme décrit dans la Partie 3 - Préparer le déploiement de Tableau Server en entreprise.

Installer, configurer PostgreSQL et créer une sauvegarde tar

Cette instance PostgreSQL héberge le référentiel externe pour le déploiement de Tableau Server. Vous devez installer et configurer PostgreSQL avant d’installer Tableau.

Vous pouvez exécuter PostgreSQL sur Amazon RDS ou sur une instance EC2. Pour plus d’informations sur les différences entre exécuter le référentiel sur une instance RDS plutôt que sur une instance EC2, consultez Référentiel externe Tableau Server (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).

À titre d’exemple, la procédure ci-dessous montre comment installer et configurer Postgres sur une instance Amazon EC2. L’exemple montré ici est une installation et une configuration génériques pour PostgreSQL dans l’architecture de référence. Votre DBA doit optimiser votre déploiement PostgreSQL en fonction de la taille de vos données et de vos besoins de performances.

Exigences : notez que vous devez exécuter PostgreSQL 1.6 et que vous devez installer le module uuid-ossp.

Versions de PostgreSQL

Vous devez installer des versions majeures compatibles de PostgreSQL pour le référentiel externe Tableau Server. De plus, les versions mineures doivent également répondre aux exigences minimales.

Versions de Tableau ServerVersions minimum compatibles avec PostgreSQL
2021.2.3 - 2021.2.8

2021.3.0 - 2021.3.7

2021.4.0 - 2021.4.3

12.6
2021.2.10 - 2021.2.14

2021.3.8 - 2021.3.13

2021.4.4 - 2021.4.8

12.8
2021.2.15 - 2021.2.16

2021.3.14 - 2021.3.15

2021.4.9 - 2021.4.10

12.10
2021.2.17 - 2021.2.18

2021.3.16 - 2021.3.17

2021.4.11 - 2021.4.12

12.11
2021.3.26

2021.4.23

12.15
2022.1.013.3
2022.1.1 - 2022.1.313.4
2022.1.4 - 2022.1.613.6
2022.1.7 - 2022.1.16

2022.3.0 - 2022.3.7

2023.1.0 - 2023.1.4

13.7
2022.1.17 - 2022.1.19

2022.3.8 - 2022.3.19

2023.1.5 - 2023.1.15

2023.3.0 - 2023.3.8

13.11
2022.3.20 - 2022.3.x

2023.1.16 - 2023.1.x

2023.3.9 - 2023.3.x

13.14
2024.0 - 2024.x15.6

Installer PostgreSQL

Cet exemple de procédure d’installation décrit comment installer PostgreSQL version 13.6.

Connectez-vous à l’hôte EC2 que vous avez créé dans la partie précédente.

  1. Exécutez la mise à jour pour appliquer les derniers correctifs au système d’exploitation Linux :

    sudo yum update

  2. Créez et modifiez le fichier pgdg.repo dans le chemin d’accès /etc/yum.repos.d/. Remplissez le fichier avec les informations de configuration suivantes :

    [pgdg13]
    name=PostgreSQL 13 for RHEL/CentOS 7 - x86_64
    baseurl=https://download.postgresql.org/pub/repos/yum/13/redhat/rhel-7-x86_64
    enabled=1
    gpgcheck=0

  3. Installez Postgres 13.6 :

    sudo yum install postgresql13-server-13.6-1PGDG.rhel7.x86_64

  4. Installez le module uuid-ossp :

    sudo yum install postgresql13-contrib-13.6-1PGDG.rhel7.x86_64

  5. Initialisez Postgres :

    sudo /usr/pgsql-13/bin/postgresql-13-setup initdb

Configurer Postgres

Terminez l’installation de base en configurant Postgres :

  1. Mettez à jour le fichier de configuration pg_hba, /var/lib/pgsql/13/data/pg_hba.conf, avec les deux entrées suivantes. Chaque entrée doit inclure le masque des sous-réseaux sur lesquels vos serveurs Tableau Server s’exécuteront : 

    host all all 10.0.30.0/24 password

    host all all 10.0.31.0/24 password

  2. Mettez à jour le fichier PostgreSQL, /var/lib/pgsql/13/data/postgresql.conf, en ajoutant cette ligne :

    listen_addresses = '*'

  3. Configurez de manière à démarrer Postgres au redémarrage :

    sudo systemctl enable --now postgresql-13

  4. Définissez le mot de passe du super-utilisateur :

    sudo su - postgres 

    psql -c "alter user postgres with password 'StrongPassword'"

    Remarque : définissez un mot de passe fort. N’utilisez pas 'StrongPassword' comme indiqué dans l’exemple ici.

    exit

  5. Redémarrez Postgres :

    sudo systemctl restart postgresql-13

Effectuer une sauvegarde tar PostgreSQL de l’Étape 1

Créez une sauvegarde tar de la configuration PostgreSQL. La création d’un instantané tar de la configuration actuelle vous fera gagner du temps si vous rencontrez des échecs lors de la poursuite du déploiement.

Nous appellerons cela la sauvegarde « Étape 1 ».

Sur l’hôte PostgreSQL :

  1. Arrêtez l’instance de base de données Postgres :

    sudo systemctl stop postgresql-13

  2. Exécutez les commandes suivantes pour créer la sauvegarde tar :

    sudo su
    cd /var/lib/pgsql
    tar -cvf step1.13.bkp.tar 13
    exit
  3. Démarrez la base de données Postgres :

    sudo systemctl start postgresql-13

Restaurez l’Étape 1

Avant l’installation

Si vous déployez Tableau selon l’exemple d’implémentation AWS/Linux décrit dans ce guide, vous pourrez peut-être exécuter le script d’installation automatisée TabDeploy4EDG. Le script TabDeploy4EDG automatise l’exemple d’installation du déploiement Tableau à quatre nœuds qui est décrit dans les procédures qui suivent. Consultez Annexe - Boîte à outils du déploiement AWS.

Installer le nœud initial de Tableau Server

Cette procédure décrit comment installer le nœud initial de Tableau Server tel que défini par l’architecture de référence. A l’exception de l’installation du package et de l’initialisation de TSM, la procédure décrite ici utilise la ligne de commande TSM chaque fois que cela est possible. Outre son indépendance par rapport aux plates-formes, l’utilisation de l’interface en ligne de commande TSM permet une installation plus transparente dans des environnements virtualisés et administrés à distance.

Exécuter le package d’installation et initialiser TSM

Connectez-vous au serveur hôte du Nœud 1.

  1. Exécutez la mise à jour pour appliquer les derniers correctifs au système d’exploitation Linux :

    sudo yum update

  2. Copiez le package d’installation de la page Téléchargements de Tableau(Le lien s’ouvre dans une nouvelle fenêtre) sur l’ordinateur hôte qui exécutera Tableau Server.

    Par exemple, sur un ordinateur fonctionnant sur un système d’exploitation Linux de type RHEL, exécutez

    wget https://downloads.tableau.com/esdalt/2022<version>/tableau-server-<version>.rpm

    <version> correspond au numéro de version.

  3. Téléchargez et installez les dépendances :

    sudo yum deplist tableau-server-<version>.rpm | awk '/provider:/ {print $2}' | sort -u | xargs sudo yum -y install

  4. Créez le chemin d’accès /app/tableau_server dans le répertoire racine :

    sudo mkdir -p /app/tableau_server

  5. Exécutez le programme d’installation et spécifiez le chemin d’installation /app/tableau_server. Par exemple, sur un système d’exploitation Linux de type RHEL, exécutez :

    sudo rpm -i --prefix /app/tableau_server tableau-server-<version>.x86_64.rpm

  6. Passez au répertoire /app/tableau_server/packages/scripts.<version_code>/ et exécutez le script initialize-tsm qui s’y trouve :

    sudo ./initialize-tsm -d /data/tableau_data --accepteula

  7. Une fois l’initialisation terminée, quittez l’interpréteur de commandes :

    exit

Activer et enregistrer Tableau Server

  1. Connectez-vous au serveur hôte du Nœud 1.

  2. Fournissez la ou les clés produit Tableau Server à cette étape. Exécutez la commande suivante pour chaque clé produit que vous avez achetée :

    tsm licenses activate -k <product key>

  3. Créez un fichier d’enregistrement json au format indiqué ici :

    {
    "zip" : "97403",
    "country" : "USA",
    "city" : "Springfield",
    "last_name" : "Simpson",
    "industry" : "Energy",
    "eula" : "yes",
    "title" : "Safety Inspection Engineer",
    "company_employees" : "100",
    "phone" : "5558675309",
    "company" : "Example",
    "state" : "OR",
    "opt_in" : "true",					
    "department" : "Engineering",
    "first_name" : "Homer",
    "email" : "homer@example.com"
    }	
  4. Après avoir enregistré les modifications apportées au fichier, transmettez-le avec l’option --file pour enregistrer Tableau Server :

    tsm register --file path_to_registration_file.json

Configurer le magasin d’identités

Remarque : si votre déploiement utilise un stockage externe pour le magasin de fichiers Tableau, vous devrez activer le répertoire de fichiers externe avant de configurer le magasin d’identités. Consultez Installer Tableau Server avec un répertoire de fichiers externe (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).

L’architecture de référence par défaut utilise un magasin d’identités local. Configurez l’hôte initial avec le magasin d’identités local en transmettant le fichier config.json avec la commande tsm settings import.

Importez le fichier config.json en fonction de votre système d’exploitation :

Le fichier config.json est inclus dans le chemin scripts.<version> du répertoire (par exemple scripts.20204.21.0217.1203) et est formaté pour configurer le magasin d’identités.

Exécutez la commande suivante pour importer le fichier config.json :

tsm settings import -f /app/tableau_server/packages/scripts.<version_code>/config.json

Configurer Postgres externe

  1. Créez un fichier json de base de données externe avec les paramètres de configuration suivants :

    {
    "flavor":"generic",
    "masterUsername":"postgres",
    "host":"<instance ip address>",
    "port":5432
    }
  2. Après avoir enregistré les modifications apportées au fichier, transmettez le fichier avec la commande suivante :

    tsm topology external-services repository enable -f <filename>.json --no-ssl

    Vous serez invité à saisir le mot de passe du nom d’utilisateur principal Postgres.

    L’option --no-ssl configure Tableau de manière à utiliser SSL/TLS uniquement lorsque le serveur Postgres est configuré pour SSL/TLS. Si Postgres n’est pas configuré pour SSL/TLS, la connexion n’est pas chiffrée. La Partie 6 - Configuration après l’installation décrit comment activer SSL/TLS pour la connexion Postgres une fois que vous avez terminé la première phase de déploiement.

  3. Appliquez les modifications.

    Exécutez cette commande pour appliquer les modifications et redémarrez Tableau Server :

    tsm pending-changes apply

  4. Supprimez le fichier de configuration que vous avez utilisé à l’Étape 1.

Terminer l’installation du Nœud 1

  1. Une fois Tableau Server installé, vous devez initialiser le serveur.

    Exécutez la commande suivante :

    tsm initialize --start-server --request-timeout 1800

  2. Une fois l’initialisation terminée, vous devez créer un compte d’administrateur Tableau Server.

    À la différence du compte d’ordinateur que vous utilisez pour installer et gérer les composants du système d’exploitation TSM, le compte administrateur Tableau Server est un compte d’application utilisé pour créer des utilisateurs, des projets et des sites Tableau Server. L’administrateur Tableau Server applique également des autorisations aux ressources Tableau. Exécutez la commande suivante pour créer le compte administrateur initial. Dans l’exemple suivant, l’utilisateur est appelé tableau-admin :

    tabcmd initialuser --server http://localhost --username "tableau-admin"

    Tabcmd vous demandera de définir un mot de passe pour cet utilisateur.

Vérification : Configuration du Nœud 1

  1. Exécutez la commande suivante pour vérifier que les services TSM sont en cours d’exécution :

    tsm status -v

    Tableau doit renvoyer les éléments suivants :

    external: 
    Status: RUNNING
    'Tableau Server Repository 0' is running (Active Repository).
    node1: localhost
    Status: RUNNING
    'Tableau Server Gateway 0' is running.
    'Tableau Server Application Server 0' is running.
    'Tableau Server Interactive Microservice Container 0' is running.
    'MessageBus Microservice 0' is running.
    'Relationship Query Microservice 0' is running.
    'Tableau Server VizQL Server 0' is running. 
    ...

    Tous les services seront répertoriés.

  2. Exécutez la commande suivante pour vérifier que le site administratif de Tableau est en cours d’exécution :

    curl localhost

    Les premières lignes devraient afficher Vizportal html, dans ce style :

    <!DOCTYPE html>
    <html xmlns:ng="" xmlns:tb="">
    <head ng-csp>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="initial-scale=1, maximum-scale=2, width=device-width, height=device-height, viewport-fit=cover">
    <meta name="format-detection" content="telephone=no">
    <meta name="vizportal-config ...

Effectuer des sauvegardes tar de l’Étape 2

Après avoir vérifié l’installation initiale, effectuez deux sauvegardes tar :

  • PostgreSQL
  • Nœud initial de Tableau (Nœud 1)

Dans la plupart des cas, vous pouvez récupérer votre installation du nœud initial en restaurant ces fichiers tar. La restauration des fichiers tar est beaucoup plus rapide que la réinstallation et la réinitialisation du nœud initial.

Créer des fichiers tar de l’Étape 2
Restaurer l’Étape 2

Installer Tableau Server sur les nœuds restants

Pour poursuivre le déploiement, copiez le programme d’installation de Tableau sur chaque nœud.

Présentation de la configuration des nœuds

Les exemples Linux tout au long des procédures d’installation montrent des commandes pour les distributions de type RHEL. Si vous exécutez la distribution Ubuntu, modifiez les commandes en conséquence.

  1. Exécutez la mise à jour pour appliquer les derniers correctifs au système d’exploitation Linux :

    sudo yum update

  2. Téléchargez et installez les dépendances :

    sudo yum deplist tableau-server-<version>.rpm | awk '/provider:/ {print $2}' | sort -u | xargs sudo yum -y install

  3. Créez le chemin d’accès /app/tableau_server dans le répertoire racine :

    sudo mkdir -p /app/tableau_server

  4. Exécutez le programme d’installation et spécifiez le chemin d’installation /app/tableau_server. Par exemple, sur un système d’exploitation Linux de type RHEL, exécutez :

    sudo rpm -i --prefix /app/tableau_server tableau-server-<version>.x86_64.rpm

Générer, copier et utiliser le fichier d’amorçage pour initialiser TSM

La procédure suivante décrit comment générer, copier et utiliser un fichier d’amorçage lors de l’initialisation de TSM sur un autre nœud. Dans cet exemple, le fichier d’amorçage est appelé boot.json.

Dans cet exemple, les ordinateurs hôtes s’exécutent dans AWS, où les hôtes EC2 exécutent Amazon Linux 2.

  1. Connectez-vous au nœud initial (Nœud 1) et exécutez la commande suivante :

    tsm topology nodes get-bootstrap-file --file boot.json

  2. Copiez le fichier d’amorçage sur le Nœud 2.

    scp boot.json ec2-user@10.0.31.83:/home/ec2-user/

  3. Connectez-vous au Nœud 2 et basculez vers le répertoire des scripts de Tableau Server :

    cd /app/tableau_server/packages/scripts.<version_number>

  4. Exécutez la commande initialize-tsm et référencez le fichier bootstrap :

    sudo ./initialize-tsm -d /data/tableau_data -b /home/ec2-user/boot.json --accepteula

  5. Une fois que la commande initialize-tsm a été exécutée, supprimez boot.json, puis quittez la session ou déconnectez-vous.

Configurer les processus

Vous devez configurer le cluster Tableau Server sur le nœud où le contrôleur d’administration Tableau Server (contrôleur TSM) s’exécute. Le contrôleur TSM s’exécute sur le nœud initial.

Configurer le Nœud 2

  1. Après avoir initialisé TSM à l’aide du fichier bootstrap sur le Nœud 2, connectez-vous au nœud initial.
  2. Sur le nœud initial (node1), exécutez les commandes suivantes pour configurer les processus sur le Nœud 2 :

    tsm topology set-process -n node2 -pr clustercontroller -c 1
    tsm topology set-process -n node2 -pr gateway -c 1
    tsm topology set-process -n node2 -pr vizportal -c 1
    tsm topology set-process -n node2 -pr vizqlserver -c 2
    tsm topology set-process -n node2 -pr cacheserver -c 2
    tsm topology set-process -n node2 -pr searchserver -c 1
    tsm topology set-process -n node2 -pr dataserver -c 2
    tsm topology set-process -n node2 -pr clientfileservice -c 1
    tsm topology set-process -n node2 -pr tdsservice -c 1
    tsm topology set-process -n node2 -pr collections -c 1
    tsm topology set-process -n node2 -pr contentexploration -c 1

    Si vous installez la version 2022.1 ou une version ultérieure, ajoutez également le serveur d’indexation et de recherche :

    tsm topology set-process -n node2 -pr indexandsearchserver -c 1

    Si vous installez la version 2023.3 ou une version ultérieure, incluez uniquement le serveur d’indexation et de recherche. N’ajoutez pas le service Rechercher et parcourir (searchserver)

  3. Vérifiez la configuration avant de l’appliquer. Exécutez la commande suivante :

    tsm pending-changes list

  4. Après avoir vérifié que vos modifications sont dans la liste en attente (la liste en attente comprendra également d’autres services), appliquez les modifications :

    tsm pending-changes apply

    Vous devez redémarrer après une modification. La configuration et le redémarrage prendront un certain temps.

  5. Vérifiez la configuration du Nœud 2. Exécutez la commande suivante :

    tsm status -v

Configurer le Nœud 3

Initialisez TSM à l’aide du processus d’amorçage sur le Nœud 3, puis exécutez les commandes tsm topology set-process ci-dessous.

Un avertissement du service de coordination s’affiche chaque fois que vous définissez un processus. Vous pouvez ignorer cet avertissement lorsque vous définissez les processus.

  1. Après avoir initialisé TSM à l’aide du fichier bootstrap sur le Nœud 3, connectez-vous au nœud initial (node1) et exécutez les commandes suivantes pour configurer les processus :

    tsm topology set-process -n node3 -pr clustercontroller -c 1
    tsm topology set-process -n node3 -pr clientfileservice -c 1
    tsm topology set-process -n node3 -pr backgrounder -c 4
    tsm topology set-process -n node3 -pr filestore -c 1

    Si vous installez la version 2022.1 ou une version ultérieure, ajoutez également le serveur d’indexation et de recherche :

    tsm topology set-process -n node3 -pr indexandsearchserver -c 1
  2. Vérifiez la configuration avant de l’appliquer. Exécutez la commande suivante :

    tsm pending-changes list

  3. Après avoir vérifié que vos modifications sont dans la liste en attente (la liste en attente comprendra d’autres services qui sont configurés automatiquement), appliquez les modifications :

    tsm pending-changes apply --ignore-warnings

    Vous devez redémarrer après une modification. La configuration et le redémarrage prendront un certain temps.

  4. Vérifiez la configuration en exécutant la commande suivante :

    tsm status -v

Déployer l’ensemble de service de coordination sur les Nœuds 1 à 3

Pour le déploiement à quatre nœuds de l’architecture de référence standard, exécutez la procédure suivante :

  1. Exécutez les commandes suivantes sur le Nœud 1 :

    tsm stop
    tsm topology deploy-coordination-service -n node1,node2,node3

    Le processus comprend un redémarrage de TSM, ce qui demandera un certain temps.

  2. Une fois le service de coordination déployé, démarrez TSM :

    tsm start

Effectuer des sauvegardes tar de l’Étape 3

Après avoir vérifié l’installation, effectuez quatre sauvegardes tar :

  • PostgreSQL
  • Nœud initial de Tableau (Nœud 1)
  • Tableau Nœud 2
  • Tableau Nœud 3
Créer des fichiers tar de l’Étape 3
Restaurer l’Étape 3

Configurer le Nœud 4

Le processus de configuration du Nœud 4 est le même que celui du Nœud 3.

Définissez les mêmes processus que ceux définis pour le Nœud 3, en exécutant le même ensemble de commandes que celui indiqué ci-dessus, mais en spécifiant node4 dans les commandes au lieu de node3.

Comme pour la vérification du Nœud 3, vérifiez la configuration du Nœud 4 en exécutant tsm status -v.

Avant de continuer, attendez que le processus Répertoire de fichiers sur le Nœud 4 ait terminé la synchronisation. L’état du service Répertoire de fichiers renvoie is synchronizing jusqu’à ce qu’il ait terminé. Lorsque l’état du service Répertoire de fichiers renvoie is running, vous pouvez continuer.

Configuration et vérification du processus final

La dernière étape du processus de configuration consiste à supprimer les processus redondants du Nœud 1.

  1. Connectez-vous au nœud initial (node1 ).

  2. Désactivez le répertoire de fichiers sur le Nœud 1. Cela entraînera un avertissement concernant la suppression du répertoire de fichiers d’un contrôleur colocalisé. Vous pouvez ignorer l’avertissement. Exécutez la commande suivante :

    tsm topology filestore decommission -n node1

  3. Lorsque le répertoire de fichiers est mis hors service, exécutez la commande suivante pour supprimer le processus d’arrière-plan du Nœud 1 :

    tsm topology set-process -n node1 -pr backgrounder -c 0

  4. Vérifiez la configuration avant de l’appliquer. Exécutez la commande suivante :

    tsm pending-changes list

  5. Après avoir vérifié que vos modifications figurent dans la liste en attente, appliquez les modifications :

    tsm pending-changes apply

    Vous devez redémarrer après une modification. La configuration et le redémarrage prendront un certain temps.

  6. Vérifiez la configuration :

    tsm status -v.

    Avant de continuer, attendez que le processus Répertoire de fichiers sur le Nœud 4 ait terminé la synchronisation. L’état du service Répertoire de fichiers renvoie is synchronizing jusqu’à ce qu’il ait terminé. Lorsque l’état du service Répertoire de fichiers renvoie is running, vous pouvez continuer.

Effectuer une sauvegarde

Une restauration complète de Tableau Server nécessite un portefeuille de sauvegardes comprenant trois composants :

  • Un fichier de sauvegarde du référentiel et des données de répertoire de fichiers. Ce fichier est généré par la commande tsm maintenance backup.
  • Un fichier d’exportation de topologie et de configuration. Ce fichier est généré par la commande tsm settings export.
  • Certificat d’authentification, clé et fichiers keytab.

Pour une description complète du processus de sauvegarde et de restauration, consultez cette rubrique de Tableau Server : Effectuer une sauvegarde et une restauration complètes de Tableau Server (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).

À ce stade de votre déploiement, tous les fichiers et ressources pertinents requis pour une restauration complète sont inclus avec l’exécution des commandes tsm maintenance backup et tsm settings export.

  1. Exécutez la commande suivante pour exporter les paramètres de configuration et de topologie vers un fichier appelé ts_settings_backup.json.

    tsm settings export -f ts_settings_backup.json

  2. Exécutez la commande suivante pour créer une sauvegarde du référentiel et des données du répertoire de fichiers dans un fichier nommé ts_backup-<yyyy-mm-dd>.tsbak. Ignorez l’avertissement indiquant que le répertoire de fichiers n’est pas sur le nœud de contrôleur.

    tsm maintenance backup -f ts_backup -d --skip-compression

    Emplacement du fichier de sauvegarde :

    /data/tableau_data/data/tabsvc/files/backups/

  3. Copiez les deux fichiers et enregistrez-les sur une ressource de stockage différente qui n’est pas partagée par votre déploiement Tableau Server.