Talend Data Preparation en mode cluster

Talend Data Services Platform Guide d'installation pour Windows

EnrichVersion
6.3
EnrichProdName
Talend Data Services Platform
task
Installation et mise à niveau

Vous pouvez installer plusieurs instances de Talend Data Preparation en mode cluster si vous souhaitez tirer parti de la haute disponibilité et d'une meilleure évolutivité au sein de votre produit.

Le clustering est le processus de regroupement de systèmes physiques similaires pour assurer un niveau de continuité opérationnelle et minimiser le risque de temps d'arrêt non planifié, en particulier grâce aux fonctionnalités de répartition de charge et de failover.

Cette documentation fournit les procédures de configuration d'un cluster pour Talend Data Preparation et, de manière facultative, Talend Dictionary Service.

Architecture de Talend Data Preparation en mode cluster

Le diagramme suivant illustre l'architecture derrière Talend Data Preparation et Talend Dictionary Service lors d'une configuration en mode cluster.

Cette architecture se compose de plusieurs blocs fonctionnels :

  • Un répartiteur de charge (Load Balancer), distribuant la charge de travail des différents utilisateurs accédant en même temps à l'application Web Talend Data Preparation et au serveur de Talend Dictionary Service.

  • Les instances de Talend Data Preparation, connectées par un système de fichiers en réseau (Network File System) ou tout dossier partagé accessibles par toutes les instances de Talend Data Preparation.

  • Les instances de Talend Dictionary Service que vous pouvez installer de manière facultative si vous souhaitez ajouter, supprimer ou modifier les types sémantiques utilisés dans Talend Data Preparation.

  • Un bloc contenant les différents composants nécessaires pour que Talend Data Preparation et Talend Dictionary Service fonctionnent, à savoir différentes instances de MongoDB pour le stockage, Kafka et Zookeeper pour le messaging et une instance de Talend Administration Center pour gérer les autorisations.

Installation de Talend Data Preparation en mode cluster

Pour installer Talend Data Preparation en mode cluster, vous devez effectuer des modifications dans le fichier de configuration <Data_Preparation_Path>/config/application.properties.

Pour effectuer cette installation, vous devez installer et configurer autant d'instances de Talend Data Preparation et ses dépendances que nécessaire.

Prérequis :

  • Vous avez configuré un Load Balancer pour chaque module, à savoir Talend Data Preparation et, de manière facultative, Talend Dictionary Service.

  • Vous avez configuré MongoDB en mode cluster. Pour plus d'informations, consultez la documentation de MongoDB (en anglais).

  • Vous avez configuré Kafka et Zookeeper en mode cluster. Pour plus d'informations, consultez la documentation de Zookeeper et la documentation de Kafka documentation (en anglais).

  1. Installez une première instance de Talend Data Preparation.

    Pour plus d'informations concernant la procédure d'installation de Talend Data Preparation, consultez Installation et configuration de Talend Data Preparation.

  2. Dans le fichier <Data_Preparation_Path>/config/application.properties, modifiez la propriété mongodb.host pour spécifier les hôtes et ports des différentes instances de MongoDB.

    Utilisez la syntaxe suivante :

    spring.data.mongodb.host=<host1>:<port1>,<host2>:<port2>,…,<hostN>

    Les hôtes et ports des différentes URL doivent être concaténés, excepté le dernier hôte, qui héritera de la valeur de la propriété mongodb.port. Par exemple :

    mongodb.host=mongorep-mongodb-replica-1.mongorep-mongodb-replica.default.svc.cluster.local:27017,
    mongorep-mongodb-replica-0.mongorep-mongodb-replica.default.svc.cluster.local:27017,
    mongorep-mongodb-replica-2.mongorep-mongodb-replica.default.svc.cluster.local:27017,
    mongorep-mongodb-replica-3.mongorep-mongodb-replica.default.svc.cluster.local
    mongodb.port=27017
  3. Modifiez les propriétés service.cache.file.location et dataset.content.store.file.location afin de spécifier l'emplacement de votre Network File System, ou dossier partagé devant être accessible par toutes les instances de Talend Data Preparation. Par exemple :

    service.cache.file.location=sharedContent/
    dataset.content.store.file.location=sharedContent/store/datasets/content/

  4. Si vous souhaitez utiliser Talend Data Preparation avec Talend Dictionary Service pour ajouter, modifier ou supprimer des types sémantiques, modifiez les propriétés spécifiant les hôtes et les ports des instances de Kafka et Zookeeper.

    De la même manière que pour les URL de MongoDB, les hôtes et ports de Kafka et Zookeeper doivent être concaténés, sauf le dernier port, hérité des propriétés dédiées.

    spring.cloud.stream.kafka.binder.brokers=host1:9092,host2:9092,host3
    spring.cloud.stream.kafka.binder.zkNodes=host1:2181,host2:2181,host3
    spring.cloud.stream.kafka.binder.defaultBrokerPort=9092
    spring.cloud.stream.kafka.binder.defaultZkPort=2181
  5. Pour augmenter la durée de la session et réduire les risques de déconnexions inattendues, ajoutez les lignes suivantes :

    security.token.renew-after=600
    security.token.invalid-after=3600
  6. Répétez ces étapes d'installation et de configuration pour chaque instance de Talend Data Preparation que vous souhaitez installer.

Les différentes instances de Talend Data Preparation ont été installées et configurées pour fonctionner en mode cluster.

Installation de Talend Dictionary Service en mode cluster

Vous pouvez installer Talend Dictionary Service, de manière facultative en mode cluster, pour ajouter, supprimer ou modifier les types sémantiques utilisés sur les données dans Talend Data Stewardship.

Pour installer Talend Dictionary Service en mode cluster, vous devez modifier le fichier de configuration <Tomcat>/conf/data-quality.properties.

Pour effectuer cette installation, vous devez installer et configurer autant d'instances de Talend Dictionary Service et de ses dépendances que nécessaire.

Prérequis :

  1. Installez une première instance de Talend Dictionary Service.

    Pour plus d'informations concernant la procédure d'installation, consultez Installation et configuration de Talend Dictionary Service .

  2. Dans le fichier <Tomcat>/conf/data-quality.properties, modifiez la propriété mongodb.host pour spécifier les hôtes et les ports des différentes instances de MongoDB.

    Use the following syntax:

    mongodb.host=<host1>:<port1>,<host2>:<port2>,…,<hostN>

    Les hôtes et ports des différentes URL doivent être concaténés, sauf le dernier hôte, qui va hériter de la valeur de la propriété mongodb.port. Par exemple :

    mongodb.host=mongorep-mongodb-replica-1.mongorep-mongodbreplica.
    default.svc.cluster.local:27017,
    mongorep-mongodb-replica-0.mongorep-mongodbreplica.
    default.svc.cluster.local:27017,
    mongorep-mongodb-replica-2.mongorep-mongodbreplica.
    default.svc.cluster.local:27017,
    mongorep-mongodb-replica-3.mongorep-mongodbreplica.
    default.svc.cluster.local
    mongodb.port=27017
  3. Modifiez les propriétés spécifiant les hôtes et les ports des instances de Kafka et Zookeeper.

    De la même manière que pour les URL de MongoDB, les hôtes et ports Kafka et Zookeeper doivent être concaténés, sauf pour le dernier port, hérité des propriétés dédiées.

    spring.cloud.stream.kafka.binder.brokers=host1:9092,host2:9092,host3
    spring.cloud.stream.kafka.binder.zkNodes=host1:2181,host2:2181,host3
    spring.cloud.stream.kafka.binder.defaultBrokerPort=9092
    spring.cloud.stream.kafka.binder.defaultZkPort=2181
  4. Répétez ces procédures d'installation et de configuration pour chaque instance de Talend Dictionary Service à installer.

Vous avez installé plusieurs instances de Talend Dictionary Service et configuré chacune d'entre elles pour fonctionner en mode cluster.

Limitation de Talend Data Preparation en mode cluster

Lorsque Talend Data Preparation est installé en mode cluster, des déconnexions inattendues de l'interface peuvent survenir occasionnellement, même si le risque est minime. Consultez le ticket Jira : https://jira.talendforge.org/browse/TDP-3699 (en anglais).