Exécuter une Route de microservice - 6.3

Talend Real-time Big Data Platform Studio Guide utilisateur

EnrichVersion
6.3
EnrichProdName
Talend Real-Time Big Data Platform
task
Création et développement
Qualité et préparation de données
EnrichPlatform
Studio Talend

Cette section vous présente comment exécuter une Route construite en tant que microservice basé Spring-boot.

Pour exécuter une Route exportée en tant que fichier .jar, procédez comme suit, dans une invite de commande :

  1. Modifiez le répertoire où le fichier .jar microservice est situé.

  2. Saisissez la commande suivante. Pour plus d'informations concernant les propriétés de Spring Boot, consultez le site http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html (en anglais). Notez que toutes les propriétés listées dans la page Web ne sont pas applicables au microservice ESB. Elles dépendent d'abord des fonctionnalités de Talend, mais également des Routes que vous construisez.

    java -jar <ArchiveFileName> --<SpringBootProperty>

    Par exemple, la commande suivante exécute un microservice nommé demoRoute.0.1.jar à l'aide d'une propriété d'environnement configurée dans le fichier Prod, où Prod est également le nom du contexte Talend. Ce paramètre doit être spécifié pour passer des propriétés de contexte à d'autres.

    java -jar demoRoute.0.1.jar --spring.config.name=Prod

Par défaut, lorsque vous exécutez la Route de microservice, elle appelle les fichiers de configuration du dossier /config dans le .jar du microservice. À l'aide de la propriété spring.config.location, vous pouvez passer à un dossier de configuration externe dans lequel se situent les fichiers de configuration. Par exemple, la commande suivante exécute le microservice nommé demoRoute.0.1.jar, à l'aide des fichiers de configuration dans le dossier config, dans le répertoire où le .jar du microservice est situé.

java -jar demoRoute.0.1.jar --spring.config.location=./config

Pour exécuter une Route exportée en tant que fichier .zip, procédez comme suit :

  1. Extrayez le fichier .zip dans le répertoire de votre choix.

  2. Allez dans le dossier <RouteName> contenant le dossier externe config, le fichier du microservice .jar et les scripts de démarrage afin de démarrer le microservice pour Linux (.sh) et Windows (.bat).

  3. Modifiez les fichiers de configuration dans le dossier config selon vos besoins et exécutez le fichier .sh sous Linux ou .bat sous Windows, pour démarrer le microservice avec les configurations externes.

Si la Route contient un composant cCXF ou cCXFRS et si un ou plusieurs des services d'infrastructure ESB sont utilisés, vous devez effectuer les étapes suivantes avant d'exécuter la Route de microservice :

  • Si Service Activity Monitoring est activé, démarrez le serveur de Service Activity Monitoring dans un conteneur du Runtime avant d'exécuter la Route. Pour plus d'informations, consultez la section associée dans le Guide Infrastructure Services Configuration Guide (en anglais).

  • Si le Service Locator est activé, démarrez son serveur dans un conteneur du Runtime avant d'exécuter la Route. Pour plus d'informations, consultez la section associée dans le Guide Infrastructure Services Configuration Guide (en anglais).

  • Si une Route est un fournisseur de Service et que l'authentification avec HTTP Basic est activée, spécifiez l'identifiant et le mot de passe de l'utilisateur lors de l'exécution de la Route de microservice :

    java -jar <ArchiveFileName>.jar --security.user.name=<USERNAME> -- security.user.password=<PASSWORD>
  • Si l'authentification par jeton SAML est activée, vous devez démarrer le service STS dans un conteneur du Runtime avant d'exécuter la Route. Pour plus d'informations, consultez la section associée dans le Guide Infrastructure Services Configuration Guide (en anglais).

  • Si l'authentification par jeton SAML et les autorisations sont activées, avant d'exécuter la Route, vous devez :

    • installer et démarrer le Service Talend Identity Management et créer les utilisateurs et rôles. Pour plus d'informations, consultez la section associée dans le Guide d'installation Talend et dans le Guide Infrastructure Services Configuration Guide (en anglais).

    • démarrer le service STS dans un conteneur du Runtime. Pour plus d'informations, consultez la section associée dans le Guide Infrastructure Services Configuration Guide (en anglais).

    • démarrer le service d'autorisations dans un conteneur du Runtime. Pour plus d'informations, consultez la section associée dans le Guide Infrastructure Services Configuration Guide (en anglais).

    • démarrer Talend Administration Center et configurer la politique XACML dans la page Authorization. Pour plus d'informations, consultez la section associée, dans le Guide utilisateur de Talend Administration Center.

  • Si le Service Registry est utilisé, vous devez :

    • démarrer le service d'infrastructure associé, selon la politique WS-Policy utilisée. Pour plus d'informations, consultez la section associée dans le Guide Infrastructure Services Configuration Guide (en anglais).

    • démarrer Talend Administration Center et ajouter le WSDL du service, ainsi que la politique WS-Policy dans le Service Registry, à partir de la page Service Registry. Pour plus d'informations, consultez la section associée dans le Guide utilisateur de Talend Administration Center.

Pour plus d'informations concernant le composant cCXF ou cCXFRS, consultez le Guide de référence des Composants Mediation de Talend ESB.

Pour plus d'informations concernant la construction d'une Route vers un microservice ESB, consultez Construire une Route vers un microservice ESB basé Spring-boot.

Exécuter une Route de microservice en utilisant une configuration Log4j externe

Cette section vous montre comment exécuter une Route de microservice en utilisant une configuration Log4j externe.

Le microservice est construit à partir d'une simple Route contenant un composant cTimer et un composant cLog.

Le composant cTimer va déclencher cinq fois l'échange de messages.

Le composant cLog va enregistrer les échanges de messages. Le niveau de log est configuré sur WARN, qui est la configuration par défaut du Studio.

Lorsque la Route est exécutée dans le Studio, le résultat suivant s'affiche dans la console.

Après avoir construit la Route de microservice (fichier .jar), vous pouvez l'exécuter dans une fenêtre d'invite de commande :

  • Pour exécuter le microservice avec la configuration par défaut, utilisez la commande suivante :

    java -jar demo_0.1.jar

    Les logs de messages suivants s'affichent, de manière identique au résultat d'exécution du Studio.

  • Pour exécuter le microservice avec une configuration Log4j personnalisée, vous pouvez utiliser la propriété spring.config.location pour appeler le fichier personnalisé log4j.xml contenu dans un dossier de configuration externe. Un exemple de configuration Log4j contenu dans le dossier config du répertoire jar du microservice s'affiche ci-dessous pour fournir un fichier tesb.log lorsque le microservice démarre.

    <?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>

    Pour utiliser cette configuration, exécutez la commande suivante :

    java -jar demo_0.1.jar --spring.config.location=./config

    Vous pouvez également utiliser la propriété logging.config pour appeler le fichier de configuration Log4j :

    java -jar demo_0.1.jar --logging.config=./config/log4j.xml

    Les logs de messages suivants s'affichent et sont écrits dans le fichier tesb.log du répertoire dans lequel est situé le fichier jar du microservice.

    Le fichier tesb.log est créé :