Démarrage rapide : Déployer un cluster JBoss EAP sur des machines virtuelles Azure à l’aide du Portail Azure

Cet article explique comment déployer rapidement un cluster JBoss EAP sur des machines virtuelles Azure à l’aide du Portail Azure.

Cet article utilise l’offre Place de marché Azure pour le cluster JBoss EAP pour accélérer votre parcours vers des machines virtuelles Azure. L’offre provisionne automatiquement un certain nombre de ressources, notamment les machines virtuelles Azure Red Hat Enterprise Linux (RHEL), les instances JBoss EAP sur chaque machine virtuelle, la build Red Hat d’OpenJDK sur chaque machine virtuelle, un console de gestion JBoss EAP et éventuellement une instance Azure App Gateway. Pour voir l’offre, visitez le Portail Azure. Si vous préférez des instructions pas à pas manuelles pour installer un cluster Red Hat JBoss EAP sur des machines virtuelles Azure qui n’utilisent pas l’automatisation activée par l’offre, consultez tutoriel : Installer Red Hat JBoss EAP sur Azure Machines Virtuelles manuellement.

Prérequis

  • Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
  • Vérifiez que l’identité Azure que vous utilisez pour vous connecter a le rôle Contributeur ou le rôle Propriétaire dans l’abonnement actuel. Pour connaître les rôles Azure, consultez Qu’est-ce que le contrôle d’accès en fonction du rôle Azure (RBAC Azure) ?
  • Vérifiez que vous disposez des licences Red Hat nécessaires. Vous devez disposer d’un compte Red Hat avec le droit RHSM (Red Hat Subscription Management) pour JBoss EAP. Ce droit permet au Portail Azure d’installer la version JBoss EAP testée et certifiée de Red Hat.

    Remarque

    Si vous n’avez pas de droit EAP, vous pouvez vous inscrire à un abonnement développeur gratuit via l’abonnement Red Hat Developer pour les particuliers. Notez les détails du compte, que vous utilisez comme nom d’utilisateur RHSM et mot de passe RHSM dans la section suivante.

  • Une fois que vous êtes inscrit, vous trouverez les informations d’identification nécessaires (ID de pool) en procédant comme suit. Vous utilisez également les ID de pool comme ID de pool RHSM avec le droit EAP plus loin dans cet article.
    1. Connectez-vous à votre compte Red Hat.

    2. La première fois que vous vous connectez, vous êtes invité à terminer votre profil. Veillez à sélectionner Personnel pour le type de compte, comme illustré dans la capture d’écran suivante.

      Screenshot of the Red Hat profile Update Your Account page.

    3. Sous l’onglet dans lequel vous êtes connecté, ouvrez l’abonnement Red Hat Developer pour les particuliers. Ce lien vous permet d’accéder à tous les abonnements de votre compte pour la référence SKU appropriée.

    4. Sélectionnez le premier abonnement dans la table Tous les abonnements achetés.

    5. Copiez et notez la valeur suivante des pools principaux à partir des ID de pool.

  • JDK Java, version 11. Dans ce guide, nous vous recommandons la build Red Hat d’OpenJDK. Vérifiez que votre JAVA_HOME variable d’environnement est correctement définie dans les interpréteurs de commandes dans lesquels vous exécutez les commandes.
  • Git. Permet git --version de tester si git cela fonctionne. Ce tutoriel a été testé avec la version 2.34.1.
  • Maven. Permet mvn -version de tester si mvn cela fonctionne. Ce tutoriel a été testé avec la version 3.8.6.

Remarque

L’offre Place de marché Azure que vous allez utiliser dans cet article inclut la prise en charge de Red Hat Satellite pour la gestion des licences. L’utilisation de Red Hat Satellite dépasse le cadre de ce guide de démarrage rapide. Pour obtenir une vue d’ensemble de Red Hat Satellite, consultez Red Hat Satellite. Pour en savoir plus sur le déplacement de vos abonnements Red Hat JBoss EAP et Red Hat Enterprise Linux vers Azure, consultez le programme Red Hat Cloud Access.

Configurer un serveur flexible Azure Database pour PostgreSQL

Les étapes décrites dans cette section vous permettent de déployer un serveur flexible Azure Database pour PostgreSQL, que vous utilisez pour configurer la connexion de base de données lors de la configuration d’un cluster JBoss EAP dans la section suivante.

Tout d’abord, utilisez la commande suivante pour configurer certaines variables d’environnement.

export RG_NAME=<db-resource-group-name>
export SERVER_NAME=<database-server-name>
export ADMIN_PASSWORD=<postgresql-admin-password>

Remplacez les espaces réservés par les valeurs suivantes, qui sont utilisées dans l’article :

  • <db-resource-group-name>: nom du groupe de ressources à utiliser pour le serveur flexible PostgreSQL , par exemple ejb040323postgresrg.
  • <database-server-name>: nom de votre serveur PostgreSQL, qui doit être unique sur Azure , par exemple ejb040323postgresqlserver.
  • <postgresql-admin-password>: mot de passe de votre serveur PostgreSQL. Ce mot de passe doit comporter au moins 8 caractères et au plus 128 caractères. Il doit contenir des caractères de trois des catégories suivantes : Lettres majuscules, lettres minuscules, chiffres (0-9) et caractères non alphanumériques (comme !, $, #, %, etc.).

Ensuite, procédez comme suit pour créer un serveur flexible Azure Database pour PostgreSQL :

  1. Utilisez la commande suivante pour créer un serveur flexible Azure Database pour PostgreSQL :

    az postgres flexible-server create \
        --resource-group ${RG_NAME} \
        --name ${SERVER_NAME} \
        --database-name testdb \
        --public-access 0.0.0.0  \
        --admin-user testuser \
        --admin-password ${ADMIN_PASSWORD} \
        --yes
    
  2. Utilisez la commande suivante pour obtenir l’hôte du serveur PostgreSQL :

    export DB_HOST=$(az postgres flexible-server show \
        --resource-group ${RG_NAME} \
        --name ${SERVER_NAME} \
        --query "fullyQualifiedDomainName" \
        --output tsv)
    
  3. Utilisez la commande suivante pour obtenir l’URL de connexion JDBC du serveur PostgreSQL :

    echo jdbc:postgresql://${DB_HOST}:5432/testdb
    

    Notez la sortie que vous utilisez comme source de données chaîne de connexion du serveur PostgreSQL plus loin dans cet article.

Déployer un cluster JBoss EAP sur des machines virtuelles Azure

Les étapes décrites dans cette section vous permettent de déployer un cluster JBoss EAP sur des machines virtuelles Azure.

Pour rechercher l’offre JBoss EAP sur les machines virtuelles Azure, procédez comme suit :

  1. Connectez-vous au Portail Azure en visitant https://aka.ms/publicportal.

  2. Dans la barre de recherche en haut du portail Azure, saisissez JBoss EAP. Dans les résultats de la recherche, dans la section Place de marché , sélectionnez Cluster JBoss EAP sur les machines virtuelles.

    Screenshot of the Azure portal showing JBoss EAP Server on Azure VM in the search results.

  3. Dans le menu déroulant, vérifiez que PAYG est sélectionné.

Vous pouvez également accéder directement au cluster JBoss EAP sur les machines virtuelles . Dans ce cas, le plan approprié est déjà sélectionné pour vous.

Dans les deux cas, cette offre déploie un cluster JBoss EAP sur des machines virtuelles Azure en fournissant votre abonnement Red Hat au moment du déploiement. L’offre exécute le cluster sur Red Hat Enterprise Linux à l’aide d’une configuration de paiement à l’utilisation pour les machines virtuelles de base.

Les étapes suivantes vous montrent comment remplir le volet De base présenté dans la capture d’écran suivante.

Screenshot of the Azure portal showing the JBoss EAP Cluster on VMs Basics pane.

  1. Sur la page de l’offre, sélectionnez Créer.
  2. Dans le volet Informations de base, vérifiez que la valeur affichée dans le champ Abonnement est la même que celle qui contient les rôles répertoriés dans la section « Prérequis ».
  3. Vous devez déployer l’offre dans un groupe de ressources vide. Dans le champ Groupe de ressources, sélectionnez Créer nouveau et indiquez une valeur pour le groupe de ressources. Étant donné que les groupes de ressources doivent être uniques au sein d’un abonnement, choisissez un nom unique. Un moyen simple d’avoir des noms uniques consiste à utiliser une combinaison de vos initiales, de la date d’aujourd’hui et de certains identificateurs. Par exemple, ejb040323jbosseapcluster.
  4. Sous Détails de l’instance, sélectionnez la région pour le déploiement.
  5. Conservez la taille de machine virtuelle par défaut pour la taille de la machine virtuelle.
  6. Laissez l’option par défaut OpenJDK 17 pour la version JDK.
  7. Conservez la valeur par défaut jbossuser pour le nom d’utilisateur.
  8. Laissez l’option par défaut Mot de passe pour le type d’authentification.
  9. Indiquez un mot de passe pour le mot de passe. Utilisez la même valeur pour confirmer le mot de passe.
  10. Utilisez 3 pour le nombre de machines virtuelles à créer.
  11. Sous Configuration de base facultative, laissez l’option Par défaut Oui pour Accepter les valeurs par défaut pour la configuration facultative.
  12. Faites défiler vers le bas du volet Informations de base et notez les liens utiles pour les problèmes de rapport, obtenez de l’aide et partagez vos commentaires.
  13. Sélectionnez Suivant : JBoss EAP Paramètres.

Les étapes suivantes vous montrent comment remplir le volet Paramètres JBoss EAP illustré dans la capture d’écran suivante.

Screenshot of the Azure portal showing the JBoss EAP Cluster on VMs JBoss EAP Settings pane.

  1. Conservez l’option par défaut Domaine managé pour utiliser un domaine managé ou des hôtes autonomes pour former un cluster.
  2. Laissez la valeur par défaut jbossadmin pour JBoss EAP Administration nom d’utilisateur.
  3. Fournissez un mot de passe JBoss EAP pour le mot de passe JBoss EAP. Utilisez la même valeur pour confirmer le mot de passe. Notez la valeur pour une utilisation ultérieure.
  4. Laissez l’option par défaut Non pour Connecter à un serveur Red Hat Satellite existant ?.
  5. Indiquez votre nom d’utilisateur RHSM pour le nom d’utilisateur RHSM. La valeur est la même que celle qui a été préparée dans la section conditions préalables.
  6. Indiquez votre mot de passe RHSM pour le mot de passe RHSM. Utilisez la même valeur pour confirmer le mot de passe. La valeur est la même que celle qui a été préparée dans la section conditions préalables.
  7. Fournissez votre ID de pool RHSM pour l’ID de pool RHSM avec le droit EAP. La valeur est la même que celle qui a été préparée dans la section conditions préalables.
  8. Sélectionnez Suivant : Azure Application Gateway.

Les étapes suivantes vous montrent comment remplir le volet Azure Application Gateway illustré dans la capture d’écran suivante.

Screenshot of the Azure portal showing the JBoss EAP Cluster on VMs Azure Application Gateway pane.

  1. Sélectionnez Oui pour Connecter vers Azure Application Gateway ?.

  2. Sélectionnez Suivant : Réseau.

    Ce volet vous permet de personnaliser le réseau virtuel et le sous-réseau dans lesquels le cluster JBoss EAP se déploie. Cette personnalisation est utile dans les situations où l’espace CIDR est régi. Pour plus d’informations sur les réseaux virtuels, consultez Créer, modifier ou supprimer un réseau virtuel. Acceptez les valeurs par défaut dans ce volet.

  3. Sélectionnez Suivant : Base de données.

Les étapes suivantes vous montrent comment remplir le volet Base de données présenté dans la capture d’écran suivante et démarrer le déploiement.

Screenshot of the Azure portal showing the JBoss EAP Cluster on VMs Database pane.

  1. Sélectionnez Oui pour Connecter à la base de données ?.
  2. Sélectionnez PostgreSQL pour choisir le type de base de données.
  3. Renseignez java :jboss/datasources/JavaEECafeDB pour le nom JNDI.
  4. Fournissez l’URL de connexion JDBC du serveur PostgreSQL que vous avez enregistré précédemment pour la source de données chaîne de connexion (jdbc :postgresql ://<host> :<port>/<database>).
  5. Renseignez testuser pour le nom d’utilisateur de la base de données.
  6. Indiquez la valeur de l’espace réservé <postgresql-admin-password>que vous avez spécifié précédemment pour le mot de passe de base de données. Utilisez la même valeur pour confirmer le mot de passe.
  7. Sélectionnez Revoir + créer. Vérifiez que le message vert Validation réussie apparaît en haut. Si le message n’apparaît pas, corrigez les problèmes de validation, puis sélectionnez Vérifier + recréer .
  8. Sélectionnez Créer.
  9. Suivez la progression du déploiement sur la page Déploiement en cours.

Selon les conditions réseau et d’autres activités dans la région sélectionnée, le déploiement peut durer jusqu’à 35 minutes. Après cela, le texte de votre déploiement doit s’afficher sur la page de déploiement.

Vérifier la fonctionnalité du déploiement

Procédez comme suit pour vérifier les fonctionnalités du déploiement d’un cluster JBoss EAP sur des machines virtuelles Azure à partir de la plateforme d’applications d’entreprise Red Hat JBoss console de gestion :

  1. Dans la page de déploiement, sélectionnez Sorties.

  2. Sélectionnez l’icône de copie en regard de adminConsole.

    Screenshot of the Azure portal showing the deployment outputs with the adminConsole URL highlighted.

  3. Collez l’URL dans un navigateur web connecté à Internet, puis appuyez sur Entrée. Vous devez voir l’écran de connexion red Hat JBoss Enterprise Application Platform familier console de gestion, comme illustré dans la capture d’écran suivante.

    Screenshot of the JBoss EAP management console sign-in screen.

  4. Renseignez jbossadmin pour JBoss EAP Administration nom d’utilisateur Indiquez la valeur du mot de passe JBoss EAP que vous avez spécifié avant pour mot de passe, puis sélectionnez Se connecter.

  5. Vous devez voir la page d’accueil red Hat JBoss Enterprise Application Platform familière console de gestion comme illustré dans la capture d’écran suivante.

    Screenshot of JBoss EAP management console welcome page.

  6. Sélectionnez l’onglet Runtime . Dans le volet de navigation, sélectionnez Topologie. Vous devez voir que le cluster contient un contrôleur de domaine maître et deux nœuds Worker, comme illustré dans la capture d’écran suivante :

    Screenshot of the JBoss EAP management console Runtime topology.

  7. Sélectionnez l’onglet Configuration. Dans le volet de navigation, sélectionnez Profils>ha>Datasources &Drivers>Datasources. Vous devez voir que la source de données dataSource-postgresql est répertoriée, comme illustré dans la capture d’écran suivante :

    Screenshot of the JBoss EAP management console Configuration tab with Datasources selected.

Laissez le console de gestion ouvert. Vous l’utilisez pour déployer un exemple d’application sur le cluster JBoss EAP dans la section suivante.

Déployer l’application sur le cluster JBoss EAP

Procédez comme suit pour déployer l’exemple d’application Java EE Cafe sur le cluster Red Hat JBoss EAP :

  1. Utilisez les étapes suivantes pour générer l’exemple Java EE Cafe. Ces étapes supposent que vous disposez d’un environnement local avec Git et Maven installés :

    1. Utilisez la commande suivante pour cloner le code source à partir de GitHub et case activée la balise correspondant à cette version de l’article :

      git clone https://github.com/Azure/rhel-jboss-templates.git --branch 20230418 --single-branch
      

      Si vous voyez un message d’erreur avec le texte You are in 'detached HEAD' state, vous pouvez l’ignorer en toute sécurité.

    2. Utilisez la commande suivante pour générer le code source :

      mvn clean install --file rhel-jboss-templates/eap-coffee-app/pom.xml
      

      Cette commande crée le fichier rhel-jboss-templates/eap-coffee-app/target/javaee-café.war. Vous allez charger ce fichier à l’étape suivante.

  2. Suivez les étapes suivantes dans red Hat JBoss Enterprise Application Platform console de gestion pour charger le fichier javaee-café.war dans le référentiel de contenu.

    1. Sous l’onglet Déploiements du console de gestion Red Hat JBoss EAP, sélectionnez Référentiel de contenu dans le volet de navigation.

    2. Sélectionnez Ajouter , puis charger du contenu.

      Screenshot of the JBoss EAP management console Deployments tab with Upload Content menu item highlighted.

    3. Utilisez le sélecteur de fichier de navigateur pour sélectionner le fichier javaee-café.war .

    4. Cliquez sur Suivant.

    5. Acceptez les valeurs par défaut sur l’écran suivant, puis sélectionnez Terminer.

    6. Sélectionnez Afficher le contenu.

  3. Procédez comme suit pour déployer une application sur :main-server-group

    1. Dans le référentiel de contenu, sélectionnez javaee-café.war.

    2. Ouvrez le menu déroulant, puis sélectionnez Déployer.

    3. Sélectionnez le groupe principal-serveur comme groupe de serveurs pour le déploiement de javaee-café.war.

    4. Sélectionnez Déployer pour démarrer le déploiement. Vous devez voir une notification similaire à la capture d’écran suivante :

      Screenshot of the notice of successful deployment.

Vous avez maintenant terminé le déploiement de l’application Java EE. Procédez comme suit pour accéder à l’application et valider tous les paramètres :

  1. Utilisez la commande suivante pour obtenir l’adresse IP publique d’Azure Application Gateway. Remplacez l’espace réservé <resource-group-name> par le nom du groupe de ressources où le cluster JBoss EAP est déployé.

    az network public-ip show \
        --resource-group <resource-group-name> \
        --name gwip \
        --query '[ipAddress]' \
        --output tsv
    
  2. Copiez la sortie, qui est l’adresse IP publique du déploiement d’Azure Application Gateway.

  3. Ouvrez un navigateur web connecté à Internet.

  4. Accédez à l’application avec l’URL http://<gateway-public-ip-address>/javaee-cafe. Remplacez l’espace réservé <gateway-public-ip-address> par l’adresse IP publique d’Azure Application Gateway que vous avez copiée précédemment.

  5. Essayez d’ajouter et de supprimer des cafés.

Nettoyer les ressources

Pour éviter des frais Azure, vous devez nettoyer les ressources non nécessaires. Quand vous n’avez plus besoin du cluster JBoss EAP déployé sur des machines virtuelles Azure, annulez l’inscription des serveurs JBoss EAP et supprimez les ressources Azure.

Exécutez la commande suivante pour annuler l’inscription des serveurs JBoss EAP et des machines virtuelles à partir de la gestion des abonnements Red Hat. Remplacez l’espace réservé <resource-group-name> par le nom du groupe de ressources où le cluster JBoss EAP est déployé.

# Unregister domain controller
az vm run-command invoke \
    --resource-group <resource-group-name> \
    --name jbosseapVm-adminVM \
    --command-id RunShellScript \
    --scripts "sudo subscription-manager unregister"

# Unregister host controllers
az vm run-command invoke \
    --resource-group <resource-group-name> \
    --name jbosseapVm1 \
    --command-id RunShellScript \
    --scripts "sudo subscription-manager unregister"
az vm run-command invoke \
    --resource-group <resource-group-name> \
    --name jbosseapVm1 \
    --command-id RunShellScript \
    --scripts "sudo subscription-manager unregister"

Exécutez les commandes suivantes pour supprimer les deux groupes de ressources où le cluster JBoss EAP et le serveur flexible Azure Database pour PostgreSQL sont déployés. Remplacez l’espace réservé <resource-group-name> par le nom du groupe de ressources où le cluster JBoss EAP est déployé. Vérifiez que la variable $RG_NAME d’environnement est définie avec le nom du groupe de ressources où le serveur flexible PostgreSQL est déployé.

az group delete --name <resource-group-name> --yes --no-wait
az group delete --name $RG_NAME --yes --no-wait

Étapes suivantes

Pour en savoir plus sur le déploiement de JBoss EAP sur Azure, consultez les liens suivants :