Partie 3 - Préparer le déploiement de Tableau Server en entreprise
La Partie 3 décrit les exigences de préparation de votre infrastructure pour déployer l’architecture de référence Tableau Server. Avant de commencer, nous vous recommandons de consulter Partie 2 - Comprendre l’architecture de référence du déploiement de Tableau Server.
Outre la description des exigences, cette rubrique fournit un exemple de mise en œuvre de l’architecture de référence dans un environnement AWS. Le reste de ce guide s’appuie sur l’exemple d’architecture de référence AWS démarré dans cette rubrique.
L’un des principes fondamentaux de l’architecture de référence est la standardisation avec les meilleures pratiques de sécurité des centres de données. Plus précisément, l’architecture est conçue pour séparer les services en sous-réseaux de réseau protégés. La communication entre les sous-réseaux est limitée à un protocole et à un trafic de port spécifiques.
Le schéma suivant illustre la conception du sous-réseau de l’architecture de référence pour un déploiement sur site ou un déploiement en nuage géré par le client. Pour un exemple de déploiement dans le nuage, consultez la section ci-dessous, Exemple : Configurer des sous-réseaux et des groupes de sécurité dans AWS.
Sous-réseaux
Créez trois sous-réseaux :
- Un niveau Web
- Un niveau Application
- Un sous-réseau de données.
Règles de pare-feu/groupe de sécurité
Les onglets ci-dessous décrivent les règles de pare-feu pour chaque niveau du centre de données. Pour les règles de groupe de sécurité spécifiques à AWS, consultez la section plus loin dans cette rubrique.
Le niveau Web est un sous-réseau DMZ public qui gérera les demandes HTTPS entrantes et transmettra les demandes au niveau Application. Cette conception fournit une couche de défense contre les logiciels malveillants susceptibles de cibler votre entreprise. Le niveau Web bloque l’accès au niveau application/données.
Trafic | Type | Protocole | Plage de ports | Source |
---|---|---|---|---|
Entrant | SSH | TCP | 22 | Sous-réseau bastion (pour les déploiements dans le nuage) |
Entrant | HTTP | TCP | 80 | Internet (0.0.0.0/0) |
Entrant | HTTPS | TCP | 443 | Internet (0.0.0.0/0) |
Sortant | Tout le trafic | Tout | Tout |
Le sous-réseau Application est l’endroit où réside le déploiement de Tableau Server. Le sous-réseau Application comprend les serveurs d’applications Tableau (Nœud 1 et Nœud 2). Les serveurs d’applications Tableau traitent les demandes des utilisateurs envoyées aux serveurs de données et exécutent la logique métier principale.
Le sous-réseau Application comprend également les serveurs de données Tableau (Nœud 3 et Nœud 4).
Tout le trafic client vers le niveau Application est authentifié au niveau Web. L’accès administratif au sous-réseau Application est authentifié et acheminé via l’hôte bastion.
Trafic | Type | Protocole | Plage de ports | Source |
---|---|---|---|---|
Entrant | SSH | TCP | 22 | Sous-réseau bastion (pour les déploiements dans le nuage) |
Entrant | HTTPS | TCP | 443 | Sous-réseau de niveau Web |
Sortant | Tout le trafic | Tout | Tout |
Le sous-réseau de données est l’endroit où réside le serveur de base de données PostgreSQL externe.
Trafic | Type | Protocole | Plage de ports | Source |
---|---|---|---|---|
Entrant | SSH | TCP | 22 | Sous-réseau bastion (pour les déploiements dans le nuage) |
Entrant | PostgreSQL | TCP | 5432 | Sous-réseau de niveau Application |
Sortant | Tout le trafic | Tout | Tout |
La plupart des équipes de sécurité d’entreprise n’autorisent pas la communication directe entre le système d’administration sur site et les nœuds déployés dans le nuage. Au lieu de cela, tout le trafic SSH administratif vers les nœuds de nuage est transmis par proxy via un hôte bastion (également appelé « serveur de saut »). Pour les déploiements dans le nuage, nous recommandons une connexion hôte proxy bastion à toutes les ressources de l’architecture de référence. Il s’agit d’une configuration facultative pour les environnements sur site.
L’hôte bastion authentifie l’accès administratif et autorise uniquement le trafic via le protocole SSH.
Trafic | Type | Protocole | Plage de ports | Source | Destination |
---|---|---|---|---|---|
Entrant | SSH | TCP | 22 | Adresse IP de l’ordinateur administrateur | |
Sortant | SSH | TCP | 22 | Sous-réseau de niveau Web | |
Sortant | SSH | TCP | 22 | Sous-réseau de niveau Application |
Exemple : Configurer des sous-réseaux et des groupes de sécurité dans AWS
Cette section fournit des procédures détaillées de création et de configuration de l’environnement VPC et réseau pour le déploiement de l’architecture de référence Tableau Server dans AWS.
Les diapositives ci-dessous montrent l’architecture de référence en quatre couches. Au fur et à mesure que vous progressez dans les diapositives, les éléments des composants sont superposés sur la carte de topologie :
- Topologie de sous-réseau VPC et instances EC2 : un hôte bastion, deux serveurs proxy inverses, quatre serveurs Tableau et au moins un serveur PostgreSQL.
- Flux de protocole et connectivité Internet. Tout le trafic entrant est géré via la passerelle Internet AWS. Le trafic vers Internet est acheminé via le NAT.
- Zones de disponibilité. Le proxy, Tableau Server ainsi que les hôtes PostgreSQL sont déployés uniformément sur les deux zones de disponibilité,
- Groupes de sécurité. Quatre groupes de sécurité (Public, Privé, Données et Bastion) protègent chaque niveau au niveau du protocole.
Zones de disponibilité AWS et haute disponibilité
L’architecture de référence telle que présentée dans ce guide spécifie un déploiement qui assure la disponibilité via la redondance en cas de défaillance d’un hôte unique. Cependant, dans le cas d’AWS où l’architecture de référence est déployée sur deux zones de disponibilité, la disponibilité est compromise dans le cas très rare où une zone de disponibilité échoue.
Configuration de VPC
Cette section décrit comment :
- Installer et configurer le VPC
- Configurer la connectivité Internet
- Configurer les sous-réseaux
- Créer et configurer des groupes de sécurité
Configurer VPC
La procédure décrite dans cette section correspond à l’interface utilisateur de l’expérience VPC « classique ». Vous pouvez basculer l’interface utilisateur pour afficher la vue classique en désactivant la nouvelle expérience VPC dans le coin supérieur gauche du tableau de bord AWS VPC.
Exécutez l’assistant VPC pour créer des sous-réseaux privés et publics par défaut ainsi qu’un routage et une liste ACL réseau par défaut.
- Avant de configurer un VPC, vous devez créer une adresse IP Elastic. Créez une allocation en utilisant toutes les valeurs par défaut.
- Exécutez l’assistant VPC > « VPC avec des sous-réseaux publics et privés »
- Acceptez toutes les valeurs par défaut. À l’exception des éléments suivants :
- Entrez un nom de VPC.
- Spécifiez l’ID d’allocation d’adresses IP Elastic.
- Spécifiez les masques CIDR suivants :
- CIDR IPv4 du sous-réseau public : 10.0.1.0/24. Renommez ce sous-réseau en
Public-a
. - CIDR IPv4 du sous-réseau privé : 10.0.30.0/24. Renommez ce sous-réseau en
Private-a
.
- CIDR IPv4 du sous-réseau public : 10.0.1.0/24. Renommez ce sous-réseau en
- Zone de disponibilité : pour les deux sous-réseaux, sélectionnez l’option a pour la région dans laquelle vous vous trouvez.
Remarque : pour les besoins de cet exemple, nous utilisons a et b pour distinguer les zones de disponibilité dans un centre de données AWS donné. Dans AWS, les noms des zones de disponibilité peuvent ne pas correspondre aux exemples présentés ici. Par exemple, certaines zones de disponibilité incluent des zones c et d dans un centre de données.
- Cliquez sur Créer un VPC.
- Une fois le VPC créé, créez les sous-réseaux
Public-b
,Private-b
,Data
etBastion
. Pour créer un sous-réseau, cliquez sur Sous-réseaux > Créer un sous-réseau.Public-b
: pour la zone de disponibilité, sélectionnez l’option b pour la région dans laquelle vous vous trouvez. Bloc CIDR : 10.0.2.0/24Private-b
: pour la zone de disponibilité, sélectionnez l’option b pour la région dans laquelle vous vous trouvez. Bloc CIDR : 10.0.31.0/24Data
: pour la zone de disponibilité, sélectionnez la zone a pour la région dans laquelle vous vous trouvez. Bloc CIDR : 10.0.50.0/24. Facultatif : Si vous prévoyez de répliquer la base de données externe sur un groupement PostgreSQL, créez un sous-réseau Data-b dans la zone de disponibilité b avec un bloc CIDR de 10.0.51.0/24.Bastion
: sélectionnez une des deux zones comme zone de disponibilité. Bloc CIDR : 10.0.0.0/24
- Une fois les sous-réseaux créés, modifiez les tables de routage sur les sous-réseaux Public et Bastion de manière à utiliser la table de routage configurée pour la passerelle Internet associée (IGW). Modifiez également les sous-réseaux Privé et Données de manière à utiliser la table de routage configurée pour le traducteur d’adresses réseau (NAT).
- Pour déterminer quelle table de routage est configurée avec l’IGW ou le NAT, cliquez sur Tables de routage dans le tableau de bord AWS. Cliquez sur l’un des deux liens de la table de routage pour ouvrir la page de propriétés. Examinez la valeur cible dans Routes > Destination > 0.0.0.0/0. La valeur cible différencie le type de route et commencera par la chaîne
igw-
ounat-
. - Pour mettre à jour les tables de routage, VPC > Sous-réseaux > [subnet_name] > Table de routage > Modifier l’association de table de routage.
- Pour déterminer quelle table de routage est configurée avec l’IGW ou le NAT, cliquez sur Tables de routage dans le tableau de bord AWS. Cliquez sur l’un des deux liens de la table de routage pour ouvrir la page de propriétés. Examinez la valeur cible dans Routes > Destination > 0.0.0.0/0. La valeur cible différencie le type de route et commencera par la chaîne
Configurer les groupes de sécurité
L’assistant VPC crée un seul groupe de sécurité que vous n’utiliserez pas. Créez les groupes de sécurité suivants (Groupes de sécurité > Créer un groupe de sécurité). Les hôtes EC2 seront installés dans ces groupes sur deux zones de disponibilité, comme montré dans le diagramme de diapositives ci-dessus.
- Créez un nouveau groupe de sécurité : Privé. C’est là que les 4 nœuds de Tableau Server seront installés. À un stade ultérieur du processus d’installation, le groupe de sécurité Privé sera associé aux sous-réseaux 10.0.30.0/24 et 10.0.31.0/24.
- Créez un nouveau groupe de sécurité : Public. C’est là que les serveurs proxy seront installés. À un stade ultérieur du processus d’installation, le groupe de sécurité Public sera associé aux sous-réseaux 10.0.1.0/24 et 10.0.2.0/24.
- Créez un nouveau groupe de sécurité : Données. C’est là que le référentiel externe Tableau PostgreSQL sera installé. À un stade ultérieur du processus d’installation, le groupe de sécurité Données sera associé au sous-réseau 10.0.50.0/24 (et éventuellement 10.0.51.0/24).
- Créez un nouveau groupe de sécurité : Bastion. C’est là que vous installerez l’hôte bastion. À un stade ultérieur du processus d’installation, le groupe de sécurité Bastion sera associé aux sous-réseaux et 10.0.0.0/24.
Spécifier les règles de trafic entrant et sortant
Dans AWS, les groupes de sécurité sont analogues à des pare-feu dans un environnement local. Vous devez spécifier le type de trafic (par exemple, http, https, etc.), le protocole (TCP ou UDP) et les ports ou la plage de ports (par exemple 80, 443, etc.) qui sont autorisés à entrer dans le groupe de sécurité et/ou à en sortir. Pour chaque protocole, vous devez également spécifier la destination ou le trafic source.
Règles du groupe de sécurité Public
Règles de trafic entrant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Source |
HTTP | TCP | 80 | 0.0.0.0/0 |
HTTPS | TCP | 443 | 0.0.0.0/0 |
SSH | TCP | 22 | Groupe de sécurité Bastion |
Règles de trafic sortant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Destination |
Tout le trafic | Tout | Tout | 0.0.0.0/0 |
Règles du groupe de sécurité Privé
Le groupe de sécurité Privé inclut une règle entrante pour autoriser le trafic HTTP à partir du groupe de sécurité Public. Autorisez le trafic HTTP uniquement pendant le processus de déploiement pour vérifier la connectivité. Nous vous recommandons de supprimer la règle HTTP entrante une fois que vous avez terminé de déployer le proxy inverse et de configurer SSL sur Tableau.
Règles de trafic entrant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Source |
HTTP | TCP | 80 | Groupe de sécurité Public |
HTTPS | TCP | 443 | Groupe de sécurité Public |
PostgreSQL | TCP | 5432 | Groupe de sécurité Données |
SSH | TCP | 22 | Groupe de sécurité Bastion |
Tout le trafic | Tout | Tout | Groupe de sécurité Privé |
Règles de trafic sortant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Destination |
Tout le trafic | Tout | Tout | 0.0.0.0/0 |
PostgreSQL | TCP | 5432 | Groupe de sécurité Données |
SSH | TCP | 22 | Groupe de sécurité Bastion |
Règles du groupe de sécurité Données
Règles de trafic entrant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Source |
PostgreSQL | TCP | 5432 | Groupe de sécurité Privé |
SSH | TCP | 22 | Groupe de sécurité Bastion |
Règles de trafic sortant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Destination |
Tout le trafic | Tout | Tout | 0.0.0.0/0 |
PostgreSQL | TCP | 5432 | Groupe de sécurité Privé |
SSH | TCP | 22 | Groupe de sécurité Bastion |
Règles du groupe de sécurité de l’hôte Bastion
Règles de trafic entrant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Source |
SSH | TCP | 22 | Adresse IP et masque réseau de l’ordinateur que vous utiliserez pour vous connecter à AWS (ordinateur administrateur). |
SSH | TCP | 22 | Groupe de sécurité Privé |
SSH | TCP | 22 | Groupe de sécurité Public |
Règles de trafic sortant | |||
---|---|---|---|
Type | Protocole | Plage de ports | Destination |
SSH | TCP | 22 | Adresse IP et masque réseau de l’ordinateur que vous utiliserez pour vous connecter à AWS (ordinateur administrateur). |
SSH | TCP | 22 | Groupe de sécurité Privé |
SSH | TCP | 22 | Groupe de sécurité Public |
SSH | TCP | 22 | Groupe de sécurité Données |
HTTPS | TCP | 443 | 0.0.0.0/0 (Facultatif : créez cette règle si vous devez accéder à Internet pour télécharger le logiciel de support sur l’hôte bastion) |
Activer l’attribution automatique de l’adresse IP publique
Vous obtenez ainsi une adresse IP pour vous connecter aux serveurs proxy et à l’hôte bastion.
Pour les sous-réseaux Public et Bastion :
- Sélectionnez le sous-réseau
- Dans le menu Actions, sélectionnez « Modify auto-assign IP settings » (Modifier les paramètres IP d’attribution automatique).
- Cliquez sur « Enable auto-assign public IPv4 addresses » (Activer l’attribution automatique d’adresses IPv4 publiques).
- Cliquez sur Enregistrer.
Équilibreur de charge
Remarque : si vous effectuez l’installation dans AWS et suivez l’exemple de déploiement de ce guide, vous devez installer et configurer l’équilibreur de charge AWS plus tard dans le processus de déploiement, comme décrit dans la Partie 5 - Configuration du niveau Web.
Pour les déploiements sur site, collaborez avec vos administrateurs réseau pour déployer des équilibreurs de charge afin de prendre en charge le niveau Web de l’architecture de référence :
- Un équilibreur de charge d’application Web qui accepte les requêtes HTTPS des clients Tableau et communique avec les serveurs proxy inverses.
- Serveur proxy inverse :
- Nous recommandons un minimum de deux serveurs proxy pour la redondance et pour gérer la charge client.
- Reçoit le trafic HTTPS de l’équilibreur de charge.
- Prend en charge la session persistante vers l’hôte Tableau.
- Configurez le proxy pour l’équilibrage de charge à tour de rôle sur chaque Tableau Server exécutant le processus de passerelle.
- Gère les demandes d’authentification du fournisseur d’identités externe.
- Proxy de transfert : Tableau Server a besoin d’un accès à Internet pour les licences et les fonctionnalités de carte. En fonction de votre environnement de proxy de transfert, vous devrez peut-être configurer des listes fiables de proxy de transfert pour les URL de service Tableau. Voir Communication avec Internet (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).
Configurer les ordinateurs hôtes
Matériel minimal recommandé
Les recommandations suivantes sont basées sur nos tests de données réelles dans l’architecture de référence.
Serveurs d’applications :
- Processeur : 8 cœurs physiques (16 vCPU),
- RAM : 128 Go (16 Go par cœur physique)
- Espace disque : 100 Go
Serveurs de données :
- Processeur : 8 cœurs physiques (16 vCPU),
- RAM : 128 Go (16 Go par cœur physique)
- Espace disque : 1 To. Si votre déploiement utilise un stockage externe pour le stockage de fichiers Tableau, vous devrez calculer l’espace disque approprié. Consultez Installer Tableau Server avec un stockage de fichiers externe (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).
Serveurs proxy
- Processeur : 2 cœurs physiques (4 vCPU),
- RAM : 8 Go (4 Go par cœur physique)
- Espace disque : 100 Go
Base de données du référentiel externe
- Processeur : 8 cœurs physiques (16 vCPU),
- RAM : 128 Go (16 Go par cœur physique)
- L’espace disque requis dépend de la charge de vos données et de son impact sur la sauvegarde. Consultez la section Processus de sauvegarde et de restauration dans la rubrique Espace disque requis (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).
Structure du répertoire
L’architecture de référence recommande d’installer le package Tableau Server et les données dans des emplacements autres que ceux par défaut :
- Installez le package sur:
/app/tableau_server
: créez ce chemin de répertoire avant d’installer le package Tableau Server, puis spécifiez ce chemin lors de l’installation. - Installez les données Tableau sur:
/data/tableau_data
. Ne créez pas ce répertoire avant d’installer Tableau Server. Au lieu de cela, vous devez spécifier le chemin lors de l’installation, puis le programme d’installation de Tableau créera et autorisera le chemin de manière appropriée.
Consultez Exécuter le paquet d’installation et initialiser TSM pour les détails de mise en œuvre.
Exemple : Installer et préparer les ordinateurs hôtes dans AWS
Cette section explique comment installer les hôtes EC2 pour chaque type de serveur dans l’architecture de référence Tableau Server.
L’architecture de référence nécessite huit hôtes :
- Quatre instances pour Tableau Server.
- Deux instances pour serveurs proxy (Apache).
- Une instance pour l’hôte bastion.
- Une ou deux instances de base de données EC2 PostgreSQL
Détails de l’instance hôte
Installez les ordinateurs hôtes selon les détails ci-dessous.
Tableau Server
- Amazon Linux 2
- Type d’instance : m5a.8xlarge
- ID du groupe de sécurité : Privé
- Stockage : EBS, 150 Gio, type de volume gp2. Si votre déploiement utilise un stockage externe pour le stockage de fichiers Tableau, vous devrez calculer l’espace disque approprié. Consultez Installer Tableau Server avec un stockage de fichiers externe (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).
- Réseau : installez deux hôtes EC2 dans chaque sous-réseau privé (10.0.30.0/24 et 10.0.31.0/24).
- Copiez la dernière version de maintenance du package RPM Tableau Server 2021.2 (ou version ultérieure) depuis la page Téléchargements Tableau(Le lien s’ouvre dans une nouvelle fenêtre) vers chaque hôte Tableau.
Hôte Bastion
- Amazon Linux 2
- Type d’instance : t3.micro
- ID du groupe de sécurité : Bastion
- Stockage : EBS, 50 Gio, type de volume gp2
- Réseau : sous-réseau Bastion 10.0.0.0/24
Passerelle indépendante Tableau Server
- Amazon Linux 2
- Type d’instance : t3.xlarge
- ID du groupe de sécurité : Public
- Stockage : EBS, 100 Gio, type de volume gp2
- Réseau : installez une instance EC2 dans chaque sous-réseau public (10.0.1.0/24 et 10.0.2.0/24)
Hôte PostgreSQL EC2
- Amazon Linux 2
- Type d’instance : r5.4xlarge
- ID du groupe de sécurité : Données
- Espace de stockage : l’espace disque requis dépend de la charge de vos données et de son impact sur la sauvegarde. Consultez la section Processus de sauvegarde et de restauration dans la rubrique Espace disque requis (Linux(Le lien s’ouvre dans une nouvelle fenêtre)).
- Réseau : sous-réseau de données 10.0.50.0/24. (Si vous répliquez PostgreSQL dans un groupement HA, installez le deuxième hôte dans le sous-réseau 10.0.51.0/24)
Vérification : connectivité VPC
Après avoir installé les ordinateurs hôtes, vérifiez la configuration du réseau. Vérifiez la connectivité entre les hôtes en vous connectant avec SSH depuis l’hôte du groupe de sécurité Bastion aux hôtes de chaque sous-réseau.
Exemple : connexion à l’hôte bastion dans AWS
Configurez votre ordinateur administrateur pour ssh-agent. Cela vous permet de vous connecter aux hôtes dans AWS sans placer votre fichier de clé privée sur une instance EC2.
Pour configurer ssh-agent sur un Mac, exécutez la commande suivante :
ssh-add -K myPrivateKey.pem
ou pour le dernier système d’exploitation Mac,ssh-add --apple-use-keychain myPrivateKey.pem
Pour Windows, consultez la rubrique Se connecter en toute sécurité aux instances Linux s’exécutant dans un VPC Amazon privé(Le lien s’ouvre dans une nouvelle fenêtre).
Connectez-vous à l’hôte bastion en exécutant la commande suivante :
ssh -A ec2-user@<public-IP>
Vous pouvez ensuite vous connecter à d’autres hôtes sur le VPC à partir de l’hôte bastion, en utilisant l’adresse IP privée, par exemple :
ssh -A ec2-user@10.0.1.93