Configuration de Talend Data Preparation

Talend ESB Guide d'installation pour Linux

EnrichVersion
6.4
EnrichProdName
Talend ESB
task
Installation et mise à niveau

Cette section contient des informations sur les étapes de configuration obligatoires suite à l'installation, et également sur la manière de sécuriser les connections de Talend Data Preparation et de configurer les logs de l'application.

Configuring Talend Data Preparation after installation

Suite à l'installation de Talend Data Preparation et avant de passer à son utilisation, effectuez les étapes suivantes de configuration :

  1. Ouvrez le fichier <Data_Preparation_Path>/config/application.properties afin de modifier les propriétés suivantes de Talend Data Preparation :

    Note

    Le mot de passe est crypté au lancement de votre instance de Talend Data Preparation.

    Champ

    Action

    tac.url

    Saisissez l'URL vers votre Talend Administration Center suivi d'un caractère /.

    public.ip

    Saisissez l'URL que vous souhaitez utiliser pour accéder à Talend Data Preparation.

    server.port

    Saisissez le port que vous souhaitez utiliser pour l'interface utilisateur de Talend Data Preparation.

    iam.ip

    Saisissez l'URL vers votre instance Talend Identity and Access Management.

    tac.user-name

    Saisissez le nom d'utilisateur de votre utilisateur de Data Preparation dans Talend Administration Center.

    tac.password

    Saisissez le mot de passe de votre utilisateur de Data Preparation dans Talend Administration Center.

    security.oauth2.client.clientId

    Saisissez l'identifiant du client OIDC que vous avez généré pour Talend Identity and Access Management.

    security.oauth2.client.clientSecret

    Saisissez le mot de passe OIDC que vous avez généré pour Talend Identity and Access Management.

    tac.password

    Assurez-vous que e port de Talend Identity and Access Management est correct.
  2. Changez les champs suivants avec vos paramètres MongoDB :

    Champ

    Description

    mongodb.host

    Nom d'hôte de votre instance de MongoDB.

    mongodb.port

    Numéro de port de votre instance de MongoDB.

    mongodb.database

    Nom de la base de données à laquelle Talend Data Preparation est connecté, dataprep par défaut.

    mongodb.user

    Nom d'utilisateur utilisé pour vous connecter à la base de données.

    mongodb.password

    Mot de passe utilisé pour vous connecter à la base de données.

  3. Pour activer l'interaction entre Talend Data Preparation et le service Components Catalog, changez la ligne suivante en utilisant votre nom d'hôte et numéro de port pour le serveur Components Catalog :

    tcomp.server.url=http://<tcomp_host>:<tcomp_port>/tcomp

  4. Pour configurer l'accès à Talend Dictionary Service, changez les lignes suivantes :

    Field

    Description

    spring.cloud.stream.kafka.binder.brokers

    Saisissez le nom d'hôte correspondant à votre broker Kafka.

    spring.cloud.stream.kafka.binder.defaultBrokerPort

    Saisissez le numéro de port correspondant à votre broker Kafka.

    spring.cloud.stream.kafka.binder.zkNodes

    Saisissez le nom d'hôte correspondant à votre nœud Zookeeper.

    spring.cloud.stream.kafka.binder.defaultZkPort

    Saisissez le numéro de port correspondant à votre nœud Zookeeper.

  5. Pour activer l'utilisation du Streams Runner pour Talend Data Preparation, saisissez true comme valeur pour la propriété streams.enable.

  6. Pour configurer l'accès au Streams Runner, changez les lignes suivante :

    Field

    Description

    streams.flow.runner.url

    Saisissez l'URL pour accéder au Streams Runner. La syntaxe de l'URL est la suivante : http://<local_machine_IP>:<Big_data_preparation_port>/streams-run/v1

    streams.kerberos.principal

    Saisissez votre principal Kerberos.

    streams.kerberos.keytab_path

    Saisissez le chemin vers votre fichier keytab Kerberos.

    streams.hdfs.server.url

    Vous pouvez choisir de définir une URL par défaut à afficher dans les champs Path, en import et en export, lorsque vous travaillez avec des jeux de données provenant d'HDFS dans Talend Data Preparation.

    Le fichier <Data_Preparation_Path>/config/tuning.properties contient d'autres paramètres, permettant une configuration plus avancée. Assurez-vous que les paramètres contenus dans ce fichier correspondent au dimensionnement de votre cluster.

  7. Exécutez le fichier start.sh afin de démarrer votre instance de Talend Data Preparation.

Configuration d'une connexion HTTPS pour Talend Data Preparation

Pour établir une connexion HTTPS sécurisée entre les différents services, ainsi qu'avec le serveur MongoDB, éditez le fichier application.properties.

Il n'est cependant pas possible d'établir une connexion sécurisée pour MongoDB si vous avez choisi d'utiliser l'instance de MongoDB intégrée lors de l'installation.

Si vous souhaitez sécuriser les connexions de MongoDB en utilisant SSL, MongoDB Enterprise Server doit être manuellement installé sur votre machine. Pour plus d'informations, consultez https://docs.mongodb.com/v3.2/security/ (en anglais).

  1. Ouvrez le fichier <Data_Preparation_Path>/config/application.properties.

  2. Pour définir le chemin et le mot de passe du certificat pour le serveur Data Preparation, modifiez les lignes suivantes :

    # server TLS setup
    tls.key-store=/path/to/key-store.jks
    tls.key-store-password=key-store_password
  3. Pour définir le chemin et le mot de passe de l'autorité de certification qui émet le certificat du serveur, modifiez les lignes suivantes :

    tls.trust-store=/path/to/trust-store.jks
    tls.trust-store-password=trust-store_password
  4. Pour assouplir le contrôle de sécurité entre le nom courant du certificat et son URL, modifiez les lignes suivantes :

    # false to disable hostname verification
    tls.verify-hostname=false
  5. Pour définir le chemin et le mot de passe de l'autorité de certification qui émet le certificat du serveur MongoDB, modifiez les lignes suivantes :

    mongodb.ssl=true
    mongodb.ssl.trust-store=/path/to/trus-store.jks
    mongodb.ssl.trust-store-password=trust-store-password
  6. Dans le fichier application.properties, modifiez les URL des services actuellement au format http, vers le format https.

    dataset.service.url=https://${public.ip}:${server.port}
    transformation.service.url=https://${public.ip}:${server.port}
    preparation.service.url=https://${public.ip}:${server.port}

Talend Data Preparation supporte uniquement le format Java Key Store (.jks) pour stocker les clés et certificats.

Configuration de Talend Data Preparation pour une instance de Talend Administration Center en HTTPS

Pour que Talend Data Preparation puisse se connecter à une instance de Talend Administration Center ouverte en https, Talend Data Preparation doit faire confiance au certificat de Talend Administration Center.

  1. Récupérez le certificat de Talend Administration Center, ou bien son Autorité de Certification et ajoutez-le à un nouveau fichier .jks ou un fichier existant, en utilisant la commande suivante :

    keytool -import -trustcacerts -alias <cert-alias> -file <tac_certificate.crt> -keystore <truststore.jks>

  2. Dans le fichier <Data_Preparation_Path>/config/application.properties, ajoutez les propriétés suivantes pour configurer le truststore :

    tls.trust-store=/path/to/<truststore.jks>
    tls.trust-store-password=<trust-store_password>
    
    false to disable hostname verification
    tls.verify-hostname=false
  3. Redémarrez Talend Data Preparation.

Utiliser le composant tDataprepRun avec une connexion HTTPS

Pour faire fonctionner le composant tDataprepRun lorsque Talend Data Preparation est connecté en https, effectuez la configuration suivante :

  1. Récupérez le certificat de Talend Data Preparation, ou bien son Autorité de Certification et ajoutez-le à un nouveau fichier .jks ou un fichier existant, en utilisant la commande suivante :

    keytool -import -trustcacerts -alias <cert-alias> -file <dp_certificate.crt> -keystore <truststore.jks>

  2. Pour que le Studio fasse confiance au certificat de Talend Data Preparation, modifiez le fichier .ini utilisé pour démarrer le Studio :

    -Djavax.net.ssl.trustStore=/path/to/<trust-store.jks>
    -Djavax.net.ssl.trustStorePassword=<trust-store password>
  3. Au moment de créer votre Job dans le Studio, connectez un composant tSetKeystore au composant qui sert de source de données à l'aide d'un lien OnSubjobOk, pour que le Job fasse confiance au certificat de Talend Data Preparation.

    Pour plus d'informations sur la configuration du composant tSetKeystore, consultez le Guide de Référence des Composants Talend.

    Pour plus d'informations sur l'utilisation du composant tDataprepRun et sur l'opérationnalisation d'une recette dans un Job Talend Job, consultez Talend Help Center (https://help.talend.com).

Créer un live dataset avec un connexion HTTPS

Pour faire fonctionner un live dataset lorsque Talend Data Preparation est connecté en https, effectuez la configuration suivante :

  1. Récupérez le certificat de Talend Data Preparation, ou bien son Autorité de Certification et ajoutez-le à un nouveau fichier .jks ou un fichier existant, en utilisant la commande suivante :

    keytool -import -trustcacerts -alias <cert-alias> -file <dp_certificate.crt> -keystore <truststore.jks>

  2. Au moment de créer votre Job dans le Studio, connectez un composant tSetKeystore au composant qui sert de source de données à l'aide d'un lien OnSubjobOk, pour que le Job fasse confiance au certificat de Talend Data Preparation.

    Pour plus d'informations sur la configuration du composant tSetKeystore, consultez le Guide de Référence des Composants Talend.

    Pour plus d'informations sur la création d'un live dataset, consultez Talend Help Center (https://help.talend.com).

Configuration d'une connexion HTTPS entre Talend Data Preparation, Streams Runner et Spark Job Server

Sécuriser la connection entre Talend Data Preparation, Streams Runner et Spark Job Server nécessite d'éditer leurs fichiers de configuration respectifs.

Toute configuration concernant la sécurité dans le fichier de configuration de Streams Runner doit être effectuée à la fin du fichier, dans la section Append située après la section Include, pour ne pas risquer d'être écrasée.

La première étape consistera à configurer Spark Job Server en tant que service en HTTPS. Vous devrez ensuite activer la communication SSL entre Streams Runner et Spark Job Server configuré en HTTPS. Vous devrez ensuite configurer Streams Runner en tant que service en HTTPS. Enfin, il vous faudra activer la communication SSL entre Talend Data Preparation et Streams Runner configuré en HTTPS.

Prérequis:

  • Talend Data Preparation est configuré en tant que service en HTTPS. Pour plus d'information, consultez Configuration d'une connexion HTTPS pour Talend Data Preparation.

  • Vous avez généré un certificat pour Talend Data Preparation, que vous avez ajouté au truststore de votre navigateur Web.

  • Spark Job Server et Streams Runner sont installés et démarrés.

  1. Pour sécuriser Spark Job Server en tant que service en HTTPS, ouvrez le fichier de configuration <Spark_Job_Server_installation_path>/settings.sh.

  2. Saisissez on comme valeur pour le paramètre security_ssl_enabled.

  3. Modifiez les valeurs des paramètres security_path_to_keystore et security_keystore_password pour saisir le chemin et le mot de passe du fichier keystore qui contient le certificat de Spark Job Server.

    security_ssl_enabled=on
    # DO NOT CHANGE
    # SECURITY PATH TO KEYSTORE
    # Required : No
    # Env variable : SECURITY_PATH_TO_KEYSTORE
    security_path_to_keystore=<path_to_keystore>
    # DO NOT CHANGE
    # SECURITY KEYSTORE PASSWORD
    # Required : No
    # Env variable : SECURITY_KEYSTORE_PASSWORD
    security_keystore_password=<password>

    Après avoir redémarré le service, Spark Job Server fonctionnera en HTTPS.

  4. Pour activer la communication SSL entre Streams Runner et Spark Job Server configuré en HTTPS, vous pouvez au choix :

    • Utiliser la variable d'environnement JOBSERVER_TRANSPORT_PROTOCOL avec la commande suivante : export JOBSERVER_TRANSPORT_PROTOCOL=https.

    • Editer le fichier de configuration <Streams_Runner_installation_path>/conf/application.conf pour saisir https comme valeur pour le paramètre app.svc.jobserver.protocol.

    Utiliser la variable d'environnement écrasera la configuration faite dans le fichier application.conf.

  5. Pour ajouter le certificat de Spark Job Server, ou bien son Autorité de Certification au truststore de Streams Runner, ajoutez les lignes suivantes au fichier <Streams_Runner_installation_path>/conf/application.conf, selon le format utilisé par votre truststore.

    • Pour les fichiers .pem :

        play.ws.ssl {
          trustManager = {
            stores = [
              { type = "PEM", path = "/path/to/pem_file" }
            ]
          }
        }
    • Pour les fichiers .jks :

        play.ws.ssl {
          trustManager = {
            stores = [
              { type="JKS", path="/path/to/truststore", password="<password>"}
            ]
          }
        }

    Pour plus d'information, consultez la documentation de Play.

  6. Pour sécuriser Streams Runner en tant que service en HTTPS, éditez les lignes suivantes du fichier <Streams_Runner_installation_path>/conf/application.conf pour saisir le chemin et mot de passe de son certificat :

    play.server.https.keyStore.path = <path_to_keystore>
    play.server.https.keyStore.password = <password>
  7. Editez les deux lignes suivantes pour définir le port HTTPS et désactiver le port HTTP :

    https.port=9443
    http.port=disabled

    9443 est la valeur de port par défaut pour la connexion HTTPS.

    Avertissement

    Toute configuration du paramètre play.server.http.port=<port> entrera en conflit avec la configuration du paramètre http.port=disabled et le port sera désactivé.

    Après avoir redémarré le service, Streams Runner fonctionnera en HTTPS.

  8. Pour activer la communication SSL entre Talend Data Preparation et Streams Runner configuré en HTTPS, récupérez le certificat de Streams Runner, ou bien son Autorité de Certification, et ajoutez le au truststore de Talend Data Preparation en utilisant la commande suivante :

    keytool -import -trustcacerts -alias <cert-alias> -file <streams_runner_certificate.crt> -keystore <truststore.jks>

  9. Dans le fichier <Data_Preparation_Path>/config/application.properties, ajoutez les propriétés suivantes pour définir le truststore :

    tls.trust-store=/path/to/<truststore.jks>
    tls.trust-store-password=<trust-store_password>
    
    false to disable hostname verification
    tls.verify-hostname=false
  10. Redémarrez Talend Data Preparation.

Votre instance de Talend Data Preparation configurée en HTTPS peux maintenant communiquer avec Streams Runner et Spark Job Server, fonctionnants également avec une connexion HTTPS.

Configuration d'une connexion HTTPS avec Talend Identity and Access Management

Sécuriser la connexion entre Talend Data Preparation et Talend Identity and Access Management nécessite d'éditer leurs fichiers de configuration respectifs.

Vous devrez tout d'abord configurer Talend Identity and Access Management en tant que service en HTTPS. Ensuite, vous allez activer la communication SSL entre Talend Data Preparation et Talend Identity and Access Management configuré en HTTPS.

Prérequis:

  • Talend Data Preparation est configuré en tant que service en HTTPS. Pour plus d'information, consultez Configuration d'une connexion HTTPS pour Talend Data Preparation.

  • Talend Identity and Access Management est configuré en tant que service en HTTPS. Pour plus d'information, consultez Sécuriser les connexions pour Talend Identity and Access Management.

  • Vous avez généré un certificat pour Talend Data Preparation et Talend Identity and Access Management, que vous avez ajouté au truststore de votre navigateur Web.

  1. Pour activer la communication SSL entre Talend Data Preparation et Talend Identity and Access Management configuré en HTTPS, récupérez le certificat de Talend Identity and Access Management, ou bien son Autorité de Certification, et ajoutez-le au truststore de Talend Data Preparation en utilisant la commande suivante :

    keytool -import -trustcacerts -alias <cert-alias> -file <IAM_certificate.crt> -keystore <truststore.jks>

  2. Dans le fichier <Data_Preparation_Path>/config/application.properties, ajoutez les propriétés suivantes pour configurer le truststore :

    tls.trust-store=/path/to/<truststore.jks>
    tls.trust-store-password=<trust-store_password>
    
    false to disable hostname verification
    tls.verify-hostname=false
  3. Redémarrez les services.

Votre instance de Talend Data Preparation configurée en HTTPS peux maintenant communiquer avec Talend Identity and Access Management, également configuré en HTTPS.

Configurer les logs de Talend Data Preparation

Les logs de Talend Data Preparation vous permettent d'analyser et de déboguer l'activité de Talend Data Preparation.

Les logs de Talend Data Preparation sont enregistrés dans <Data_Preparation_Path>/data/logs/app.log.

Pour configurer les logs, éditez le fichier <Data_Preparation_Path>/config/log4j2.xml :