Téléphone Next Decision02.34.09.31.70

Contact Next Decisioncontact@nextdecision.fr

Youtube facebook twitter
Instagram viadeo linkedin

Talend - Stratégie de mise en production

Le déploiement, la mise en production d'un projet Talend, est un processus critique, contenant souvent une distinction entre :

  • Phase de recette/test.
  • Mise en production.

Problématiques de la mise en production de Talend

Pour un projet Talend, le résultat des développements sera présenté comme un exécutable indépendant. Afin d'éviter d'obtenir des comportements différents entre la phase de recette et de mise en production, nous avons deux solutions :

  1. Générer au même moment un exécutable Talend pour chacune de ces phases.
  2. Utiliser un unique exécutable Talend.

Mise en production de Talend

Solution 1 : compilation Talend par environnement

La première solution, bien que viable, présente un inconvénient considérable : La multiplication des éléments générés.

Ici, nous considérons seulement deux phases pour le déploiement d'un projet. Elles peuvent être bien plus nombreuses.

Créer autant d'environnements d'exécution que nous aurons d'étapes lors du déploiement.
Cette option consiste à créer autant d'association variable/valeur que d'environnement dans le projet.

Apports :

  • Le passage d'un environnement à un autre dans l'outil de développement est aisé.
  • L'environnement d'exécution apparait dans les logs générés

Contraintes :

  • Le paramétrage est contenu dans le projet; chaque changement impliquera un redéploiement de l'exécutable.
  • La configuration ne peut pas être partagée entre plusieurs projets.

Toutefois, cette solution reste éligible pour notre problématique : utiliser un même exécutable pour les différentes phases de déploiement.
Pour cela, il nous suffira de changer le nom de l'environnement d'exécution dans le script du projet (--context='nom de l'environnement').

Solution 2 : compilation Talend unique

La deuxième solution permet la gestion d'un nombre indéfini d'environnements.
Pour parvenir à ce type d'exécutables, nous devons prendre en compte la gestion des environnements d'exécution dans nos projets.

Externaliser la configuration des projets.
Cette option consiste à mettre en place un référentiel de paramétrage des projets.
Ces référentiels sont souvent stockés dans des fichiers ou bases de données.

Apports :

  • La configuration de l'environnement peut être partagée à tous les projets.
  • Un changement de configuration est réalisé sans redéploiement des projets; ce qui nous évite un nouveau processus de déploiement du projet.
  • Le nom des variables de contexte des différents projets doivent être standardisés.

Contraintes :

  • Le nom de l'environnement d'exécution n'apparait pas dans les logs générés ; l'emplacement de stockage pourra vous indiquer l'environnement utilisé.
  • Il ne sera pas possible d'utiliser les environnements de recette et production avec l'outil de développement.

Cette solution répond à notre problématique.
Sa mise en place peut être faite de deux manières :

  • Dans le cas d'environnements séparés, un chemin identique peut contenir le référentiel de paramétrage des projets.
  • Dans le cas d'un unique environnement d'exécution (un seul serveur d'exécution) pour les différentes phases, nous pouvons utiliser un chemin relatif.
    • Le déplacement d'un exécutable dans un répertoire Recette ou Production changera automatiquement la configuration utilisée lors de son exécution.

Conclusion sur la mise en production Talend

Afin de définir la solution qui vous correspond le mieux, vous devez répondre aux questions suivantes :

  • De combien d'environnements d'exécution ai-je besoin ?
  • Est-ce que mon paramétrage peut être contenu dans mes projets ?
  • Dois-je exécuter mes projets dans un autre environnement que celui de développement ?

Retour au Wiki

Des conseils dans la mise en production de Talend, les consultants certifiés Talend de Next Decision sont là ! alors Contactez-nous !

Laissez-nous vos coordonnées et nous vous rappellerons sous 24 heures.

Les adresses
Next Decision