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 :
- Générer au même moment un exécutable Talend pour chacune de ces phases.
- Utiliser un unique exécutable 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 ?
Nos consultants certifiés Talend dont aussi formateurs et peuvent vous accompagner. Découvrez notre formation Talend Open Studio.
Des conseils dans la mise en production de Talend, les consultants certifiés Talend de Next Decision sont là ! alors Contactez-nous !