DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»Java Zone»Déployer une application Java à l’aide de Helm, partie 1
    Java Zone

    Déployer une application Java à l’aide de Helm, partie 1

    octobre 21, 2021
    Déployer une application Java à l'aide de Helm, partie 1
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    Pour déployer des applications Java d’entreprise avec des serveurs Red Hat JBoss Enterprise Application Platform (EAP) sur Red Hat OpenShift, les développeurs ont généralement besoin d’apprendre à utiliser des modèles OpenShift ou des opérateurs pour spécifier les ressources Kubernetes et OpenShift telles que la configuration de build, le déploiement, le volume, l’environnement variables et image de l’application. Cet article, le premier d’une série en deux parties, explique un moyen plus simple de déployer une application Java d’entreprise sur OpenShift à l’aide de graphiques Helm et comment connecter l’application à une base de données PostgreSQL.

    Helm : Simplifier le déploiement d’applications sur Kubernetes

    Les pratiques de déploiement ne sont pas familières aux développeurs d’applications car la définition des ressources est traditionnellement déterminée par l’équipe d’exploitation informatique. Lorsqu’ils entrent rapidement dans l’ère DevOps, les développeurs doivent assumer davantage de responsabilités pour définir les ressources appropriées en alignement avec les microservices cloud.

    Pour résoudre ces problèmes pour les développeurs, Helm a été conçu pour simplifier le déploiement d’applications sur Kubernetes. Helm est un gestionnaire de packages logiciels similaire au gestionnaire de packages DNF de Fedora et au gestionnaire de packages Windows. Les gestionnaires de packages permettent aux développeurs d’installer des outils logiciels et de les maintenir (par exemple, mise à niveau, suppression et correctif) rapidement à l’aide d’une interface de ligne de commande ou d’une interface utilisateur graphique (GUI).

    Les développeurs peuvent installer une collection particulière de fichiers représentant les ressources Kubernetes à l’aide d’un graphique Helm. Lorsque la carte est installée, elle est gérée par une version. Le développeur peut supprimer ou mettre à niveau la version à la demande pour apporter des modifications au déploiement de l’application.

    OpenShift prend également en charge un graphique Helm pour déployer des applications avec plusieurs environnements d’exécution, y compris JBoss EAP. Les développeurs peuvent sélectionner et installer une charte Helm du point de vue des développeurs d’OpenShift. Ils peuvent ensuite mettre à niveau, restaurer et désinstaller une charte Helm (version) existante pendant le cycle de vie de l’application.

    À la fin de cet article, vous disposerez d’une application Java d’entreprise traditionnelle s’exécutant sur des serveurs JBoss EAP en cluster qui se connectent à une base de données PostgreSQL à l’aide du graphique Helm JBoss EAP, comme illustré à la Figure 1.

    Noter: Les graphiques Helm pour JBoss EAP 7.4 sont une fonctionnalité d’aperçu technologique sur OpenShift 4.8, la prise en charge est donc limitée lorsque vous utilisez ces fonctionnalités dans des environnements de production.

    Processus de développement d'applications utilisant JBoss EAP et PostgreSQLFigure 1. Processus de développement d’applications utilisant JBoss EAP et une base de données.

    Installation d’une charte Helm JBoss EAP

    Accédez à la console développeur dans OpenShift et accédez à la vue Topologie. Créer un nouveau projet nommé eap-helm-demo en cliquant sur le Ajouter au projet icône en haut à gauche et en entrant EAP dans le champ de recherche. Sélectionnez ensuite le Eap74 v1.1.0 Diagramme de barre et clic Installer Helm Chart, comme le montre la figure 2.

    Ajout de la charte Helm JBoss EAP 7.4Figure 2. Ajout du graphique Helm JBoss EAP 7.4.

    Définissez maintenant une version, une image et un déploiement spécifiques, par exemple l’application principale Todo. Basculez vers le Vue YAML pour ajouter des configurations de génération et de déploiement Source-to-Image (S2I), comme illustré à la Figure 3.

    Ajout des configurations S2IFigure 3. Ajout des configurations S2I.

    JBoss EAP 7.4 fournit un pack de fonctionnalités Galleon pour ajouter des sources de données, un découpage de contenu et des spécifications MicroProfile pour les applications Java d’entreprise. Trois packs de fonctionnalités (cloud-server, postgresql-datasource, et ejb) sont installés pendant l’exécution de la compilation S2I. L’extrait suivant montre comment vous pouvez définir le mode S2I avec un pack de fonctionnalités galeon pour une source de données PostgreSQL dans la section de construction, ainsi que comment définir les serveurs en cluster (avec trois réplicas) dans la section de déploiement :

    build:
      mode: s2i
      s2i:
        featurePacks:
          - org.jboss.eap:eap-datasources-galleon-pack:7.4.0.GA-redhat-00003
        galleonLayers: cloud-server,postgresql-datasource,ejb
      env:
        - name: ARTIFACT_DIR
          value: todo-backend/target
     deploy:
      replicas: 3

    Copier l’extrait

    Clique le Installer après avoir ajouté la configuration personnalisée au fichier YAML. Vous pouvez trouver l’intégralité de la configuration YAML dans le référentiel principal de Todo.

    Noter: Vous verrez probablement un ErrImagePull ou ImagePullBackOff message dans les ressources, comme illustré à la Figure 4. Pas de soucis : votre application JBoss EAP 7.4 se construit avec succès, mais votre déploiement rapportera ErrImagePull et ImagePullBackOff jusqu’à ce que la construction soit terminée.

    ErrImagePull pendant le déploiementFigure 4. ErrImagePull pendant le déploiement.

    Déployer une base de données PostgreSQL

    Déployons maintenant une nouvelle base de données PostgreSQL pour communiquer avec les serveurs JBoss EAP. Cliquez avec le bouton droit sur la vue Topologie, puis sélectionnez Base de données dans le menu contextuel. Ensuite, entrez postgres dans le champ de recherche et cliquez sur le PostgreSQL (éphémère) modèle, comme le montre la figure 5.

    Création d'une base de données PostgreSQL depuis la console OpenShiftFigure 5. Création d’une base de données PostgreSQL à partir de la console OpenShift.

    Cliquez sur Modèle d’instanciation et remplissez les champs suivants, comme illustré à la figure 6, en laissant les autres champs à leurs valeurs par défaut.

    • Nom du service de base de données: todos-db
    • Nom d’utilisateur de connexion PostgreSQL: todos-db
    • Mot de passe de connexion PostgreSQL: todos-db
    • Nom de la base de données PostgreSQL: todos-db

    Puis clique Créer, comme le montre la figure 6.

    Valeurs clés dans le modèle PostgreSQLFigure 6. Configuration de PostgreSQL dans l’écran « Instantiate Template ».

    Une fois la construction de l’application terminée, votre image est automatiquement déployée, comme illustré à la Figure 7. Créez un connecteur entre le pod JBoss EAP et le pod PostgreSQL via la fonction glisser-déposer dans la vue Topologie.

    Construction et déploiement réussis pour l'application JBoss EAP et PostgreSQLFigure 7. Construction et déploiement réussis de votre application JBoss EAP et de votre base de données PostgreSQL.

    Lorsque vous cliquez Ouvrir le lien, une nouvelle page Web s’ouvre automatiquement. Copiez l’URL de la route pour l’étape suivante.

    Test de l’application Java d’entreprise

    Une fois le déploiement terminé, visitez votre application frontale Todo en ouvrant une nouvelle fenêtre dans un navigateur Web et en collant l’URL de la route que vous avez copiée à l’étape précédente. Cliquez ensuite sur le aller bouton illustré à la figure 8.

    Toutes les interfaces graphiques frontalesFigure 8. Interface utilisateur graphique frontale de Todo.

    Vous devriez maintenant pouvoir ajouter, mettre à jour et supprimer des éléments dans la liste des tâches, comme illustré à la figure 9.

    Liste de choses à faireFigure 9. Liste de tâches.

    Et après

    Cet article a montré comment déployer des applications Java d’entreprise traditionnelles dans le cloud sur Red Hat OpenShift à l’aide d’une charte Helm. Le graphique Helm de JBoss EAP permet aux développeurs Java de spécifier l’environnement d’exécution de l’application sur JBoss EAP en termes de stratégie de construction, de référentiel source, de packs de fonctionnalités galeon et de réplication de serveur (clustering). Les procédures présentées dans cet article sont beaucoup plus simples pour les développeurs que d’utiliser des modèles OpenShift ou des opérateurs Kubernetes.

    Le prochain article de cette série vous explique comment faire de cette application un fichier JAR amorçable à l’aide de JBoss EAP Extension Pack (XP) avec un graphique Helm.

    Ressources additionnelles:

    S’abonner à bit.ly/danielohtv pour apprendre le développement d’applications cloud natives avec Kubernetes. Cet article est à l’origine publié par moi-même ici.

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.