Accéder au contenu principal Passer au contenu complémentaire

Construire un Job en tant que Microservice (Spring-boot) pour ESB

Pourquoi et quand exécuter cette tâche

Dans la boîte de dialogue [Build Job], vous pouvez modifier le type de build afin de construire un Job de Services de données vers un Microservice ESB basé Spring-boot.
Note InformationsAvertissement : Seuls les Jobs comprenant un composant tRESTRequest peuvent être construits en tant que Spring-boot basé sur un Microservice ESB.

Procédure

  1. Cliquez sur dans la barre d'outils du Studio, ou sélectionnez File > Edit Project Properties dans la barre de menu pour ouvrir la boîte de dialogue Project Settings.
  2. Dans l'arborescence à gauche, sélectionnez Log4j pour afficher la vue correspondante.
  3. Personnalisez la configuration de Log4j selon vos besoins. Les instructions Log4j XML par défaut écrivent uniquement les logs de type WARN dans la console. Pour plus d'informations concernant les paramètres Log4j, consultez cette documentation (uniquement en anglais) (en anglais).
    Un exemple de configuration Log4j est présenté ci-dessous et fournit également un fichier tesb.log lorsque le microservice ESB est démarré. Notez que la configuration de Log4j est la même pour le Studio et le microservice ESB. Néanmoins, un fichier log4j.xml peut également être placé dans un dossier de configuration externe du microservice, lors de l'exécution, afin de fournir une configuration Log4j spécifique pour le déploiement en production.
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
        <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
            </layout>
        </appender>
        <appender name="rollingFile" class="org.apache.log4j.RollingFileAppender">
            <param name="file" value="tesb.log"/>
            <param name="MaxFileSize" value="1024KB"/>
            <param name="MaxBackupIndex" value="10"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
            </layout>
        </appender>
        <root>
            <priority value="info"/>
            <appender-ref ref="stdout"/>
            <appender-ref ref="rollingFile"/>
        </root>
    </log4j:configuration>
  4. Dans le composant tRESTRequest du Job, vous devez utiliser des URL d'endpoints relatives et non absolues. Lorsque le microservice est en cours d'exécution, un conteneur Tomcat embarqué, avec le port par défaut 8065 est démarré par Spring-boot. Les services REST s'exécutent également sur ce port. Si vous souhaitez écraser le port par défaut, utilisez l'option --server.port dans la commande ou configurez-la dans le fichier application.properties du dossier /config, dans le .jar du microservice.
    Si un ou plusieurs services d'infrastructure ESB sont utilisés, vous devez effectuer les étapes suivantes avant de construire le Job :
    • Si Service Activity Monitoring est activé, modifiez le fichier <Studio_Home>/esb/agent.properties afin de configurer l'agent de Service Activity Monitoring selon vos besoins. Pour plus d'informations concernant les propriétés de agent.properties, consultez la section relative à la configuration de l'agent de Service Activity Monitoring, dans le Guide Talend ESB Infrastructure Services Configuration Guide (en anglais).

    • Si le Service Locator est activé, modifiez le fichier <Studio_Home>/esb/locator.properties pour configurer le Service Locator selon vos besoins. Pour plus d'informations concernant les propriétés de locator.properties, consultez la section relative à la configuration du Service Locator, dans le Guide Talend ESB Infrastructure Services Configuration Guide (en anglais).

    • Si le Job est un fournisseur de service et que l'authentification par jeton utilisateur est activée, modifiez le fichier Studio_Home/esb/microservice/users.properties afin de spécifier les informations d'authentification de l'utilisateur ou de l'utilisatrice, en suivant le format <USERNAME>=<PASSWORD>. Par exemple, les paramètres suivants définissent deux utilisateurs ou utilisatrices :

      tadmin=tadmin
      tesb=tesb
    • Si l'authentification par jeton SAML et les autorisations sont activées, vous devez installer les artefacts d'entreprise ESB dans votre référentiel local Maven, à l'aide des commandes suivantes, dans une invite de commande :

      cd <TalendRuntimePath>/add-ons/maven-repo
      mvn clean package -s <Studio_Home>/configuration/maven_user_settings.xml
  5. Ouvrez le Job que vous souhaitez construire en tant que Microservice dans l'espace de modélisation graphique. Dans la vue Deployment de l'onglet Job, sélectionnez Microservice for ESB dans la liste Build Type. Sauvegardez le Job.
  6. Dans l'arborescence Repository, cliquez-droit sur le Job que vous voulez construire et sélectionnez Build Job pour ouvrir la boîte de dialogue Build Job.
  7. Dans le champ To archive file, cliquez sur le bouton Browse et parcourez jusqu'au répertoire dans lequel vous souhaitez sauvegardez votre Job construit.
  8. Dans la zone Job Version, sélectionnez le numéro de version du Job que vous souhaitez construire si vous en avez créé plus d'une version.
  9. Dans la zone Build Type, sélectionnez Microservice (Spring Boot) For ESB.
  10. Dans la zone Options :
    • Cochez la case Add maven script pour inclure le script Maven requis dans l'archive cible, qui est un fichier .zip, si vous souhaitez construire à nouveau le Job construit dans votre propre JAR avec Maven.

    • Cochez la case Only export the default context pour exporter uniquement le contexte par défaut utilisé dans le Job.

    • cochez la case Export as ZIP pour exporter la Route vers un fichier .zip, fournissant un dossier externe de configuration et démarrer les scripts afin de lancer le microservice avec le dossier de configuration externe pour Linux (.sh) et pour Windows (.bat). Si l'option n'est pas sélectionnée, le Job est exporté en tant que fichier .jar par défaut.

  11. Cliquez sur Finish pour valider vos modifications, terminer l'export et fermer la boîte de dialogue. Une fenêtre s'ouvre, vous indiquant que Maven doit être configuré avec une connexion à Internet pour construire le microservice ESB, car certaines bibliothèques doivent être téléchargées depuis le référentiel Maven distant. Le Studio Talend nécessite une connexion à Internet lorsque vous utilisez la fonctionnalité ESB de microservice. Le Studio Talend ne fournit pas de mode complètement hors connexion pour l'opération de construction d'un microservice ESB. Cliquez sur Yes pour passer Maven en mode en ligne.
    Si l'opération Finish vous conduit à une erreur, vous pouvez trouver plus d'informations relatives à cette erreur dans le fichier de log du Studio <Studio_Home>\workspace\.metadata\.log.

Résultats

Un fichier .jar ou .zip pour le Job est créé à l'emplacement défini. Vous pouvez l'exécuter indépendamment du Studio Talend en mode standalone. Pour plus d'informations concernant l'exécution de microservices, consultez Exécuter une Route de microservice (uniquement en anglais).

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !