Utiliser l’accélérateur d’application VMware Tanzu avec le plan Azure Spring Apps Entreprise

Remarque

Azure Spring Apps est le nouveau nom du service Azure Spring Cloud. Bien que le service ait un nouveau nom, vous verrez l’ancien nom à divers endroits pendant un certain temps, car nous travaillons à mettre à jour les ressources telles que les captures d’écran, les vidéos et les diagrammes.

Cet article s’applique à :❌ De base/Standard ✔️ Entreprise

Cet article vous explique comment utiliser Application Accelerator for VMware Tanzu (App Accelerator) avec le plan Azure Spring Apps Entreprise pour démarrer le développement de vos applications de manière détectable et reproductible.

App Accelerator vous aide à démarrer le développement de vos applications et leur déploiement de manière détectable et reproductible. Vous pouvez utiliser App Accelerator pour créer des projets basés sur des projets d’accélérateur publiés. Pour plus d’informations, consultez Application Accelerator for VMware Tanzu (Application Accelerator pour VMware Tanzu) dans la documentation VMware.

Prérequis

  • Un abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

  • Comprendre et respecter les exigences répertoriées dans la section Exigences du plan Entreprise dans la Place de marché Azure.

  • Azure CLI avec l’extension Azure Spring Apps. Utilisez la commande suivante pour supprimer les versions précédentes et installer la dernière extension. Si vous avez déjà installé l’extension spring-cloud, désinstallez-la pour éviter les incompatibilités de configuration et de version.

    az extension remove --name spring
    az extension add --name spring
    az extension remove --name spring-cloud
    
  • Pour utiliser App Accelerator dans VS Code, vous devez également respecter les prérequis suivants :

Activer App Accelerator

Vous pouvez activer App Accelerator lorsque vous approvisionnez une instance de plan Azure Spring Apps Entreprise. Si vous disposez déjà d’une ressource de plan Azure Spring Apps Entreprise, consultez la section Gérer App Accelerator dans une instance de plan Entreprise existante pour l’activer.

Vous pouvez activer App Accelerator à l’aide du Portail Azure ou d’Azure CLI.

Effectuez les étapes suivantes pour activer App Accelerator à l’aide du Portail Azure :

  1. Ouvrez le portail Azure.

  2. Sous l’onglet Informations de base, sélectionnez Niveau Entreprise dans la section Tarification et spécifiez les informations requises. Sélectionnez ensuite Suivant : Paramètres de VMware Tanzu.

  3. Sous l’onglet Paramètres de VMware Tanzu, sélectionnez Activer l’accélérateur d’application.

    Capture d’écran du Portail Azure montrant l’onglet Paramètres de VMware Tanzu, avec mise en évidence de la case à cocher Activer l’accélérateur d’application.

  4. Spécifiez d’autres paramètres, puis sélectionnez Vérifier et créer.

  5. Sous l’onglet Vérifier et créer, assurez-vous que les options Activer l’accélérateur d’application et Activer le portail des outils de développement sont définies sur Oui. Sélectionnez Créer pour créer l’instance de plan Entreprise.

Monitorer App Accelerator

Application Accelerator vous permet de générer de nouveaux projets à partir de fichiers dans des dépôts Git. Le tableau suivant décrit les composants d’Application Accelerator :

Nom du composant Nombre d’instances Processeur virtuel par instance Mémoire par instance Description
accelerator-server 2 0,4 cœur 0,5 Gi Sert l’API utilisée par le portail Dev Tools pour répertorier les accélérateurs et options disponibles.
accelerator-engine 1 1 cœur 3Gi Traite les valeurs et fichiers d’entrée (extraits d’un instantané d’un dépôt Git) et applique des transformations dynamiques pour générer des projets.
accelerator-controller 1 0,2 cœur 0,25 Gi Rapproche les ressources Application Accelerator.
source-controller 1 0,2 cœur 0,25 Gi Inscrit un contrôleur pour rapprocher les ressources ImageRepositories et MavenArtifacts utilisées par Application Accelerator.
flux-source-controller 1 0,2 cœur 0,25 Gi Inscrit un contrôleur pour rapprocher les ressources GithubRepository utilisées par Application Accelerator. Prend en charge la gestion des sources de dépôt Git pour Application Accelerator.

Vous pouvez voir les instances en cours d’exécution et l’utilisation des ressources de tous les composants à l’aide du Portail Azure et d’Azure CLI.

Vous pouvez afficher l’état d’Application Accelerator dans le Portail Azure, dans la page Outils de développement, comme le montre la capture d’écran suivante :

Capture d’écran du Portail Azure montrant la page Outils de développement.

Configurer Dev Tools pour accéder à Application Accelerator

Pour accéder à Application Accelerator, vous devez configurer Tanzu Dev Tools. Pour plus d’informations, consultez Configurer Tanzu Dev Tools dans le plan Azure Spring Apps Entreprise.

Utiliser Application Accelerator pour démarrer vos nouveaux projets

Pour utiliser Application Accelerator pour démarrer vos nouveaux projets, vous devez obtenir les autorisations nécessaires pour gérer des accélérateurs. Vous pouvez ensuite gérer des accélérateurs prédéfinis ou vos propres accélérateurs.

Obtenir les autorisations nécessaires pour gérer des accélérateurs

La gestion de vos accélérateurs nécessite les autorisations suivantes :

  • Lecture : Obtenir un accélérateur prédéfini Azure Spring Apps
  • Autre : Désactiver un accélérateur prédéfini Azure Spring Apps
  • Autre : Activer un accélérateur prédéfini Azure Spring Apps
  • Écriture : Créer ou mettre à jour un accélérateur personnalisé Microsoft Azure Spring Apps
  • Lecture : Obtenir un accélérateur personnalisé Azure Spring Apps

Pour plus d’informations, consultez le guide pratique pour utiliser des autorisations dans Azure Spring Apps.

Gérer les accélérateurs prédéfinis

Vous pouvez commencer avec plusieurs accélérateurs prédéfinis pour démarrer vos nouveaux projets. Vous pouvez désactiver ou activer les accélérateurs intégrés selon vos préférences.

Vous pouvez gérer les accélérateurs prédéfinis à l’aide du Portail Azure ou d’Azure CLI.

Vous pouvez afficher les accélérateurs intégrés dans le Portail Azure sous l’onglet Accélérateurs, comme le montre la capture d’écran suivante :

Capture d’écran du Portail Azure montrant les accélérateurs intégrés sous l’onglet Accélérateurs, avec mise en évidence du bouton Désactiver l’accélérateur.

Gérer vos propres accélérateurs

En plus des accélérateurs prédéfinis, vous pouvez créer vos propres accélérateurs. Vous pouvez utiliser n’importe quel dépôt Git dans Azure Devops, GitHub, GitLab ou BitBucket.

Effectuez les étapes suivantes pour créer et gérer vos propres accélérateurs :

Tout d’abord, créez un fichier nommé accelerator.yaml dans le répertoire racine de votre dépôt Git.

Vous pouvez utiliser le fichier accelerator.yaml pour déclarer les options d’entrée que les utilisateurs remplissent à l’aide d’un formulaire dans l’interface utilisateur. Ces valeurs d’option contrôlent le traitement effectué par le moteur de modèle avant qu’il ne retourne les fichiers de sortie compressés. Si vous n’incluez pas de fichier accelerator.yaml, le dépôt fonctionne toujours en tant qu’accélérateur, mais les fichiers sont passés sans modification aux utilisateurs. Pour plus d’informations, consultez Création d’un fichier accelerator.yaml.

Ensuite, publiez le nouvel accélérateur.

Après avoir créé votre fichier accelerator.yaml, vous pouvez créer votre accélérateur. Vous pouvez ensuite le voir dans le Portail Azure ou dans la page Application Accelerator du portail Dev Tools. Vous pouvez publier le nouvel accélérateur à l’aide du Portail Azure ou d’Azure CLI.

Pour créer votre propre accélérateur, ouvrez la section Accélérateurs, puis sélectionnez Ajouter un accélérateur dans la section Accélérateurs personnalisés.

Capture d’écran du Portail Azure montrant l’onglet Accélérateurs de la page Outils de développement, avec mise en évidence du bouton Ajouter un accélérateur.

Le tableau suivant décrit les champs d’accélérateur personnalisables.

Portail INTERFACE DE LIGNE DE COMMANDE Description Obligatoire ou facultatif
Nom name Nom unique de l’accélérateur. Une fois le nom créé, vous ne pouvez pas le modifier. Requis
Description display-name Description plus longue de l’accélérateur. Facultatif
URL de l’icône icon-url URL d’une image représentant l’accélérateur dans l’interface utilisateur. Facultatif
Balises accelerator-tags Tableau de chaînes définissant les attributs de l’accélérateur pouvant être utilisés dans le cadre d’une recherche dans l’interface utilisateur. Facultatif
URL Git git-url URL du dépôt Git source de l’accélérateur. L’URL peut être une adresse HTTP/S ou SSH. La syntaxe scp-like n’est pas prise en charge pour les adresses SSH (par exemple, user@example.com:repository.git). Le format d’URL valide est ssh://user@example.com:22/repository.git. Requis
Intervalle Git git-interval-in-seconds Intervalle auquel vérifier les mises à jour du dépôt. S’il n’est pas spécifié, l’intervalle est défini par défaut sur 10 minutes. Il existe également un intervalle d’actualisation, actuellement de 10 secondes, au terme duquel les accélérateurs apparaissent dans l’interface utilisateur. Un délai de 10 secondes peut donc s’écouler avant que les modifications ne soient reflétées dans l’interface utilisateur. Facultatif
Branche Git git-branch Branche Git pour basculer entre les branches et monitorer les modifications. Vous devez spécifier uniquement la branche Git, la validation Git ou la balise Git. Facultatif
Validation Git git-commit SHA de validation Git pour basculer entre les branches. Vous devez spécifier uniquement la branche Git, la validation Git ou la balise Git. Facultatif
Balise Git git-tag Balise de validation Git pour basculer entre les branches. Vous devez spécifier uniquement la branche Git, la validation Git ou la balise Git. Facultatif
Sous-chemin d’accès Git git-sub-path Chemin d’accès du dossier à l’intérieur du dépôt Git à considérer comme la racine de l’accélérateur ou du fragment. Facultatif
Type d’authentification N/A Type d’authentification du dépôt source de l’accélérateur. Le type peut être Public, Basic auth ou SSH. Requis
Nom d’utilisateur username Nom d’utilisateur permettant d’accéder au dépôt source de l’accélérateur dont le type d’authentification est Basic auth. Obligatoire lorsque le type d’authentification est Basic auth.
Mot de passe / Jeton d’accès personnel password Mot de passe permettant d’accéder au dépôt source de l’accélérateur dont le type d’authentification est Basic auth. Obligatoire lorsque le type d’authentification est Basic auth.
Private key private-key Clé privée permettant d’accéder au dépôt source de l’accélérateur dont le type d’authentification est SSH. Seule une clé privée OpenSSH est prise en charge. Obligatoire lorsque le type d’authentification est SSH.
Clé d’hôte host-key Clé d’hôte permettant d’accéder au dépôt source de l’accélérateur dont le type d’authentification est SSH. Obligatoire lorsque le type d’authentification est SSH.
Algorithme de clé d’hôte host-key-algorithm Algorithme de clé d’hôte permettant d’accéder au dépôt source de l’accélérateur dont le type d’authentification est SSH. Peut être ecdsa-sha2-nistp256 ou ssh-rsa. Obligatoire lorsque le type d’authentification est SSH.
Nom du certificat d’autorité de certification ca-cert-name Nom du certificat d’autorité de certification permettant d’accéder au dépôt source de l’accélérateur avec un certificat auto-signé dont le type d’authentification est Public ou Basic auth. Obligatoire lorsqu’un certificat auto-signé est utilisé pour l’URL du dépôt Git.
Type type Type d’accélérateur personnalisé. Le type peut être Accelerator ou Fragment. La valeur par défaut est Accelerator. Facultatif

Pour voir tous les accélérateurs publiés, consultez la section Accélérateurs d’application de la page Outils de développement. Sélectionnez l’URL de l’accélérateur d’application pour voir les accélérateurs publiés dans le portail Dev Tools :

Capture d’écran du Portail Azure montrant la page Outils de développement, avec mise en évidence de l’URL de l’accélérateur d’application.

Pour voir l’accélérateur qui vient d’être publié, actualisez le portail Dev Tools.

Capture d’écran de la page Application Accelerators de VMware Tanzu Dev Tools for Azure Spring Apps.

Remarque

L’actualisation du catalogue et l’ajout d’une entrée pour votre nouvel accélérateur peuvent prendre quelques secondes. L’intervalle d’actualisation est configuré sur git-interval quand vous créez l’accélérateur. La mise à jour du portail Dev Tools après la modification de l’accélérateur prend également du temps. La meilleure pratique consiste à modifier git-interval pour accélérer la vérification après l’application des modifications au dépôt Git.

Référencer un fragment dans vos propres accélérateurs

À mesure que de nouveaux accélérateurs sont ajoutés, l’écriture et la maintenance des accélérateurs peuvent devenir répétitives et verbeuses. Certaines personnes créent des projets en copiant des projets existants et en les modifiant, mais ce processus peut être fastidieux et source d’erreurs. Pour faciliter la création et la maintenance des accélérateurs, Application Accelerator prend en charge une fonctionnalité nommée Composition qui permet de réutiliser des parties d’un accélérateur, appelées fragments.

Effectuez les étapes suivantes pour référencer un fragment dans votre accélérateur :

  1. Publiez le nouvel accélérateur de type Fragment à l’aide du Portail Azure ou d’Azure CLI.

    Pour créer un accélérateur composé de fragments, ouvrez la section Accélérateurs, sélectionnez Ajouter un accélérateur dans la section Accélérateurs personnalisés, puis sélectionnez Fragment.

    Capture d’écran du Portail Azure montrant les accélérateurs personnalisés de type « Fragment ».

  2. Modifiez le fichier accelerator.yaml dans votre projet d’accélérateur. Utilisez l’instruction imports dans la section accelerator et l’instruction InvokeFragment dans la section engine pour référencer le fragment dans l’accélérateur, comme indiqué dans l’exemple suivant :

    accelerator:
        ...
      # options for the UI
      options:
        ...
      imports:
      - name: <fragment-accelerator-name>
      ...
    
    engine:
      chain:
        ...
      - merge:
        - include: [ "**" ]
        - type: InvokeFragment
          reference: <fragment-accelerator-name>
    
  3. Synchronisez la modification avec le portail Dev Tools.

    Pour refléter plus rapidement les modifications dans le portail Dev Tools, vous pouvez fournir une valeur pour le champ Intervalle Git de votre accélérateur personnalisé. La valeur Intervalle Git indique la fréquence à laquelle le système recherche les mises à jour dans le dépôt Git.

  4. Synchronisez la modification avec votre accélérateur personnalisé sur le Portail Azure à l’aide du Portail Azure ou d’Azure CLI.

    La liste suivante présente les deux façons dont vous pouvez synchroniser les modifications :

    • Créer ou mettre à jour votre accélérateur personnalisé.
    • Ouvrir la section Accélérateurs, puis sélectionner Synchroniser le certificat.

Pour plus d’informations, consultez Use fragments in Application Accelerator (Utiliser des fragments dans Application Accelerator) dans la documentation VMware.

Utiliser des accélérateurs pour démarrer un nouveau projet

Effectuez les étapes suivantes pour démarrer un nouveau projet à l’aide d’accélérateurs :

  1. Dans la page Outils de développement, sélectionnez l’URL de l’accélérateur d’application pour ouvrir le portail Dev Tools.

    Capture d’écran du Portail Azure montrant la page Outils de développement, avec mise en évidence de l’URL de l’accélérateur d’application.

  2. Dans le portail Dev Tools, sélectionnez un accélérateur.

  3. Spécifiez les options d’entrée dans la section Configure accelerator (Configurer l’accélérateur) de la page Generate Accelerators (Générer des accélérateurs).

    Capture d’écran de la page Generate Accelerators (Générer des accélérateurs) de VMware Tanzu Dev Tools for Azure Spring Apps montrant la section Configure accelerator (Configurer l’accélérateur).

  4. Sélectionnez EXPLORE FILE (Explorer le fichier) pour afficher la structure du projet et le code source.

    Capture d’écran du volet Explore project (Explorer le projet) de VMware Tanzu Dev Tools for Azure Spring Apps.

  5. Sélectionnez Review and generate (Vérifier et générer) pour passer en revue les paramètres spécifiés, puis Generate accelerator (Générer l’accélérateur).

    Capture d’écran de la page Generate Accelerators (Générer des accélérateurs) de VMware Tanzu Dev Tools for Azure Spring Apps montrant la section Review and generate (Vérifier et générer).

  6. Vous pouvez ensuite afficher ou télécharger le projet en tant que fichier zip.

    Capture d’écran de VMware Tanzu Dev Tools for Azure Spring Apps montrant le volet Task Activity (Activité des tâches).

Configurer des accélérateurs avec un certificat auto-signé

Lorsque vous configurez un dépôt Git privé et activez HTTPS avec un certificat auto-signé, vous devez configurer le nom du certificat d’autorité de certification sur l’accélérateur pour vérifier le certificat client de l’accélérateur auprès du dépôt Git.

Effectuez les étapes suivantes pour configurer des accélérateurs avec un certificat auto-signé :

  1. Importez les certificats dans Azure Spring Apps. Pour plus d'informations, consultez la certification Importer un certificats de Utiliser des certificats TLS/SSL dans votre application dans Azure Spring Apps.
  2. Configurez le certificat pour l’accélérateur à l’aide du Portail Azure ou d’Azure CLI.

Pour configurer un certificat pour un accélérateur, ouvrez la section Accélérateurs, puis sélectionnez Ajouter un accélérateur dans la section Accélérateurs personnalisés. Sélectionnez ensuite le certificat dans la liste déroulante.

Capture d’écran du Portail Azure montrant le volet Ajouter un accélérateur.

Effectuer une rotation des certificats

À mesure que les certificats expirent, vous devez effectuer une rotation des certificats dans Spring Cloud Gateway en procédant comme suit :

  1. Générez de nouveaux certificats à partir d’une autorité de certification approuvée.
  2. Importez les certificats dans Azure Spring Apps. Pour plus d'informations, consultez la certification Importer un certificats de Utiliser des certificats TLS/SSL dans votre application dans Azure Spring Apps.
  3. Synchronisez les certificats à l’aide du Portail Azure ou d’Azure CLI.

Les accélérateurs n’utilisent pas automatiquement le dernier certificat. Vous devez synchroniser un ou tous les certificats à l’aide du Portail Azure ou d’Azure CLI.

Pour synchroniser les certificats pour tous les accélérateurs, ouvrez la section Accélérateurs, puis sélectionnez Synchroniser le certificat, comme le montre la capture d’écran suivante :

Capture d’écran du Portail Azure montrant le volet Accélérateurs personnalisés, avec mise en évidence du bouton Synchroniser le certificat.

Pour synchroniser un certificat pour un seul accélérateur, ouvrez la section Accélérateurs, puis sélectionnez Synchroniser le certificat dans le menu contextuel d’un accélérateur, comme le montre la capture d’écran suivante :

Capture d’écran du Portail Azure montrant le volet Accélérateurs personnalisés, avec mise en évidence de l’option de menu contextuel Synchroniser le certificat.

Gérer App Accelerator dans une instance de plan Entreprise existante

Vous pouvez activer App Accelerator sous une instance de plan Azure Spring Apps Entreprise existante à l’aide du Portail Azure ou d’Azure CLI.

Si un point de terminaison public Dev Tools a déjà été exposé, vous pouvez activer App Accelerator, puis appuyer sur Ctrl+F5 pour désactiver le cache du navigateur et l’afficher dans le portail Dev Tools.

Effectuez les étapes suivantes pour activer App Accelerator sous une instance de plan Azure Spring Apps Entreprise existante à l’aide du Portail Azure :

  1. Accédez à votre ressource de service, puis sélectionnez Outils de développement.

  2. Sélectionnez Gérer les outils.

  3. Sélectionnez Activer l’accélérateur d’application, puis Appliquer.

    Capture d’écran du Portail Azure montrant la page Gérer les outils, avec mise en évidence de l’option Activer l’accélérateur d’application.

Vous pouvez voir si App Accelerator est activé ou désactivé dans la page Outils de développement.

Utiliser App Accelerator dans VS Code

Vous pouvez démarrer votre projet à partir de n’importe quel accélérateur d’App Accelerator dans une instance de service de plan Azure Spring Apps Entreprise, directement dans VS Code.

Afficher la liste des accélérateurs d’application

Effectuez les étapes suivantes pour afficher la liste des accélérateurs d’application dans une instance de service de plan Azure Spring Apps Entreprise :

  1. Dans Visual Studio Code, ouvrez l’extension Azure Spring Apps, puis connectez-vous à votre compte Azure.

  2. Développez l’instance de service souhaitée et cliquez avec le bouton droit pour sélectionner l’instance de service.

  3. Dans le menu, sélectionnez Open Application Accelerator (Ouvrir un accélérateur d’application) pour ouvrir la liste des accélérateurs d’application. Le système vous invite à installer l’extension Visual Studio Code Tanzu Application Accelerator si cela n’est pas déjà fait.

    Capture d’écran de l’extension VS Code montrant l’option Open Application Accelerator (Ouvrir un accélérateur d’application) pour une instance de service.

  4. Sélectionnez n’importe quel accélérateur pour démarrer votre projet.

    Capture d’écran de VS Code montrant la liste des extensions App Accelerator.

Remarque

Lorsque vous utilisez l’extension, si vous rencontrez des problèmes que vous ne pouvez pas résoudre, déconnectez-vous de votre compte à partir de l’extension.

Résoudre les problèmes liés à App Accelerator

Si vous essayez d’ouvrir App Accelerator pour une instance de service qui n’a pas activé App Accelerator ou qui n’a pas exposé un point de terminaison public, le message d’erreur suivant s’affiche : Application Accelerator of Spring Apps <instance-name> is not enabled or publically accessible.

Effectuez les étapes suivantes pour activer App Accelerator et exposer des points de terminaison publics. Pour plus d’informations, consultez la section Gérer App Accelerator dans une instance de plan Entreprise existante.

  1. Si vous avez activé l’authentification unique dans le portail Dev Tools, le message suivant s’affiche lorsque vous accédez à l’extension : The extension 'Tanzu App Accelerator' wants to sign in using VMware Tanzu. Pour plus d’informations, consultez la section Configurer le portail Dev Tools de l’article Configurer Tanzu Dev Tools dans le plan Azure Spring Apps Entreprise.

  2. Sélectionnez Autoriser, Ouvrir, puis à nouveau Ouvrir pour ouvrir la liste des extensions VS Code.

    Capture d’écran de VS Code montrant la liste des extensions App Accelerator.

Parfois, vous pouvez obtenir un message d’erreur similaire à l’exemple suivant : AADSTS50011: The redirect URI 'vscode://VMware.tanzu-app-accelerator' specified in the request does not match the redirect URIs configured for the application 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'. Make sure the redirect URI sent in the request matches one added to your application in the Azure portal. Navigate to https://aka.ms/redirectUriMismatchError to learn more about how to fix this.

Pour résoudre ce problème, ajoutez l’URI de redirection vscode://VMware.tanzu-app-accelerator au fournisseur d’identité (IdP) approprié. Dans Microsoft Entra ID, accédez au menu Authentication et ajoutez des URI de redirection vers des applications mobiles et de bureau dans les configurations de la plateforme.

Étapes suivantes