Déployer et gérer une API REST avec Azure - Cloud

EnrichVersion
Cloud
EnrichProdName
Talend Cloud
EnrichPlatform
Studio Talend
Talend API Designer
Talend API Tester
Talend Management Console
task
Création et développement
Création et développement > Test d'API

Déployer et gérer une API REST avec Azure

Après avoir conçu votre API dans Talend Cloud API Designer et créé votre service dans le Studio Talend, vous pouvez utiliser Azure pour l'équilibrage de charge et la gestion des API.

Ce document utilise le service DemoREST disponible dans le Studio Talend pour illustrer une implémentation de bout en bout. Ce document explique comment :
  • Créer des moteurs distants sur Azure Virtual Machines
  • Déployer un service en un cluster moteurs distants
  • Créer un équilibreur de charge sur Azure
  • Créer un service de gestion des API sur Azure

Pour plus d'informations concernant la conception d'une API et d'un service de données, consultez Guide de prise en main de Talend Cloud API Services Platform.

Créer des moteurs distants pour Azure

Vous pouvez utiliser le moteur distant Talend Cloud pour Azure offert sur la Place de marché Microsoft Azure pour créer une machine virtuelle avec un Talend Remote Engine. Pour plus d'instructions, consultez Guide de Talend Cloud Remote Engine pour Microsoft Azure .

Avant de commencer

  • Vous disposez des droits requis sur Microsoft Azure.
  • Vous disposez des droits requis sur Talend Cloud.

Procédure

  1. Dans Talend Cloud Management Console, allez sur la page Engines (moteurs) et créez vos deux moteurs distants.
    Vous pouvez les nommer DemoREST-RE1 et DemoREST-RE2 par exemple. Chaque moteur distant doit au moins avoir le profil d’exécution Microservice.
  2. Dans Azure, allez sur la place de marché et créez un moteur distant Talend Cloud pour Azure.
  3. Dans l'onglet Basics (Bases), sélectionnez votre souscription et créez un nouveau groupe de ressources appelé DemoREST-RG par exemple.
    Pour installer vos moteurs distants pour Azure avec ce processus, vous avez besoin d'un groupe de ressources séparé pour chacun des moteurs distants. Si vous souhaitez avoir toutes vos machines virtuelles dans le même groupe de ressources, vous devez créer les machines virtuelles puis installer un moteur distant sur chacune d'entre elles. Pour plus d'informations, consultez la documentation Azure relative aux machines virtuelles.
  4. Nommez votre machine virtuelle DemoREST-VM1 par exemple et configurez les paramètres d'authentification.

    Exemple

  5. Dans l'onglet Virtual Machine Settings (paramètres de la machine virtuelle), créez votre compte de stockage et adresse IP publique.
    L'adresse IP publique SKU doit correspondre à l'équilibreur de charge à utiliser. L'équilibreur de charge est configuré par défaut sur Basic (Basique). Sélectionnez la configuration Standard pour cet exemple.
  6. Configurez votre réseau virtuel.
    Vous pouvez créer un réseau virtuel en créant votre premier moteur distant et l'utiliser à nouveau pour un autre moteur distant.

    Exemple

  7. Dans l'onglet Remote Engine Settings (Paramètres du moteur distant), saisissez la clé pré-autorisée pour votre moteur distant DemoREST-RE1. Sélectionnez votre région.
  8. Répétez les étapes précédentes pour créer un autre moteur distant Talend Cloud pour Azure :
    1. Créez un nouveau groupe de ressources, DemoREST-RG2 par exemple.
    2. Nommez la machine virtuelle DemoREST-VM2 par exemple.
    3. Utilisez le même réseau virtuel DemoREST-VNet créé pour votre première machine virtuelle.
    4. Utilisez la clé pré-autorisée pour le moteur distant DemoREST-RE2.

Résultats

Les machines virtuelles sont créées et démarrées, chacune avec un de vos moteurs distants installé et appairé.

Créer une règle de port entrant

Créez une règle pour autoriser un accès extérieur à vos machines virtuelles.

Procédure

  1. Ouvrez la machine virtuelle DemoREST-VM1 et cliquez sur Networking (Mise en réseau).
  2. Pour créer une règle, cliquez sur Add inbound port rule (Ajouter une règle de port entrant).
  3. Configurez la règle.
    Dans cet exemple, la règle autorise le trafic depuis n'importe quelle source vers n'importe quelle destination. La règle est configurée comme suit :
    Paramètre Valeur
    Source Any
    Source port ranges (Plages de ports sources) *
    Destination Any
    Destination port ranges (Plages de ports de destination) *
    Protocol (Protocole) Any
    Action Allow
    Priority (Priorité) 1010
    Name (Nom) ExternalAccess
  4. Cliquez sur Add (Ajouter).
    La règle est ajoutée à la liste des règles de port entrant.
  5. Répétez les étapes précédentes pour créer la même règle dans DemoREST-VM2.

Déployer un microservice sur un cluster de moteurs distants

Créez un cluster de moteurs distants et importez un microservice Studio Talend pour le déployer.

Avant de commencer

  • Vous avez créé des moteurs distants.
  • Vous avez installé Studio Talend.

Pourquoi et quand exécuter cette tâche

Dans cet exemple, le Job est déployé en tant que microservice mais vous pouvez également le déployer en utilisant Talend Runtime. Pour cela, vous devez installer un instance de Talend Runtime sur chacune de vos machines virtuelles et sélectionner le type de build OSGi Bundle pour votre Job dans Studio Talend.

Créer un cluster de moteurs distants

Procédure

  1. Dans Talend Cloud Management Console, allez sur la page Engines (Moteurs) et cliquez sur ADD (AJOUTER) > Remote Engine cluster (Cluster de moteurs distants).
  2. Sélectionnez l'environnement et l'espace de travail correspondants.
  3. Saisissez un nom pour votre cluster, DemoREST-REC par exemple.
  4. Cliquez sur SAVE (SAUVEGARDER).
    Le cluster est créé. Vous pouvez y ajouter vos moteurs distants.
  5. Cliquez sur votre cluster de moteurs distants dans la page Engines (Moteurs) pour ouvrir le panneau Cluster details (Détails du cluster). Cliquez sur Engines (Moteurs).
  6. Cliquez sur l'icône représentant un crayon à la droite de Remote Engines (Moteurs distants).
  7. Sélectionnez les deux moteurs distants créés.

    Exemple

Résultats

Votre cluster de moteurs distants est créé. Vous pouvez l'utiliser pour déployer votre service.

Importer le projet démo ESB

Importez des Jobs, Routes et Services de démo dans le Studio Talend.

Pourquoi et quand exécuter cette tâche

Le Studio Talend est fourni avec plusieurs projets démo qui vous permettent de tester différents composants et fonctionnalités.

Procédure

  1. Dans la perspective Integration du Studio Talend, cliquez sur l'icône .
  2. Dans la boîte de dialogue qui s'ouvre, sélectionnez ESB Demos puis cliquez sur Finish.

Résultats

Le projet démo est importé dans le Repository. Vous pouvez utiliser les Jobs, les Routes et les Services pour découvrir plus de fonctionnalités de Talend Cloud API Services Platform.

Publier le microservice dans Talend Cloud

Avant de commencer

Votre Studio Talend est connecté à votre compte Talend Cloud.

Procédure

  1. Dans votre Repository (Référentiel), développez les nœuds Job Designs > Standard et ouvrez le Job Demo-REST.
  2. Ouvrez l'onglet Job et cliquez sur Deployment (Déploiement).
  3. Dans la liste déroulante Build Type (Type de build), sélectionnez Microservice for ESB (Microservice pour ESB).
  4. Sauvegardez le Job.
  5. Cliquez-droit sur le Job dans le Repository (Référentiel) et cliquez sur Publish to Cloud (Publier dans le Cloud).
  6. Sélectionnez votre espace de travail et cliquez sur Finish (Terminer).

Résultats

Un artefact et le brouillon de tâche sont créés dans Talend Cloud Management Console. Vous pouvez configurer et déployer la tâche.

Configurer et déployer la tâche

Procédure

  1. Dans Talend Cloud Management Console, allez sur la page Management (Gestion) et cliquez sur Tasks (Tâches) dans l'espace de travail.
  2. Ouvrez votre tâche DemoREST et cliquez sur EDIT (MODIFIER).
  3. Assurez-vous que les informations dans Artifacts (Artefacts) sont correctes et cliquez sur CONTINUE (CONTINUER).
  4. Dans la liste déroulante Runtime (Moteur d'exécution), sélectionnez votre cluster de moteur distants.
  5. Sélectionnez l'option Custom (Personnalisé) pour le port et saisissez 5066 dans le champ Port number (Numéro de port).
  6. Sélectionnez l'option Parallel (Parallèle) pour la stratégie de déploiement.
  7. Cliquez sur SAVE DRAFT (SAUVERGARDER LE BROUILLON).
  8. Assurez-vous que tous vos moteurs distants sont appairés et disponibles puis cliquez sur DEPLOY (DÉPLOYER).

Tester le microservice

Utilisez Talend Cloud API Tester pour tester votre microservice déployé.

Avant de commencer

Vous avez installé l'extension Talend Cloud API Tester pour Google Chrome. Pour plus d'informations, consultez le Guide d'utilisation de Talend Cloud API Tester.

Procédure

  1. Pour créer un nouveau projet, ouvrez Talend Cloud API Tester et cliquez sur le bouton Project (Projet) en bas à gauche du panneau.
  2. Saisissez un nom pour votre projet, DemoREST par exemple, puis cliquez sur Create (Créer).
  3. Cliquez sur Add an environment (Ajouter un environnement) en haut à droite de la fenêtre pour créer un environnement appelé DemoREST-VM1.
    Cela vous permettra de créer une variable d'environnement pour votre URL de base sans la modifier directement dans vos requêtes.
  4. Saisissez baseURL dans la colonne Name (Nom) et l'URL correspondante dans la colonne Value (Valeur).
    Dans cet exemple, saisissez http://<DemoREST-VM1>:5066/services et remplacez <DemoREST-VM1> par l'adresse IP publique associée à votre machine virtuelle.
  5. Facultatif : Créez un environnement pour DemoREST-VM2 :
    1. Cliquez sur Add an environment (Ajouter un environnement) et saisissez un nom.
    2. Cochez la case Copy variables from (Copier les variables depuis), puis choisissez DemoREST-VM1 dans la liste déroulante.
    3. Cliquez sur Create (Créer).
    4. Mettez à jour baseURL dans la colonne Value (Valeur) avec l'adresse IP correspondante.
  6. Cliquez sur Close (Fermer).
  7. Cliquez sur Add a request (Ajouter une requête) pour créer une requête nommée Get all customers. Ouvrez la requête et saisissez l'URL suivante : ${"baseURL"}/customers.
  8. Cliquez sur Save (Sauvegarder) puis Send (Envoyer).
    La liste des clients est retournée.