Quickstart: Een JBoss EAP-cluster implementeren op virtuele Azure-machines (VM's)
In dit artikel leest u hoe u snel een JBoss Enterprise Application Platform-cluster (EAP) implementeert op virtuele Azure-machines (VM's) met behulp van Azure Portal.
In dit artikel wordt gebruikgemaakt van de Azure Marketplace-aanbieding voor JBoss EAP-cluster om uw reis naar Azure-VM's te versnellen. De aanbieding richt automatisch een aantal resources in, waaronder RHEL-VM's (Azure Red Hat Enterprise Linux), JBoss EAP-exemplaren op elke VM, Red Hat-build van OpenJDK op elke VM, een JBoss EAP-beheerconsole en optioneel een Azure-app Gateway-exemplaar. Als u de aanbieding wilt zien, gaat u naar de oplossing JBoss EAP-cluster op RHEL-VM's met behulp van Azure Portal.
Als u liever handmatige stapsgewijze instructies voor het installeren van Red Hat JBoss EAP-cluster op Azure-VM's die niet gebruikmaken van de automatisering die is ingeschakeld door de Azure Marketplace-aanbieding, raadpleegt u zelfstudie: Red Hat JBoss EAP handmatig installeren op virtuele Azure-machines.
Als u feedback wilt geven of nauw wilt samenwerken aan uw migratiescenario's met het technische team dat JBoss EAP in Azure-oplossingen ontwikkelt, vult u deze korte enquête in over de migratie van JBoss EAP en neemt u uw contactgegevens op. Het team van programmamanagers, architecten en technici neemt onmiddellijk contact met u op om nauwe samenwerking te initiëren.
Vereisten
- Een Azure-abonnement. Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
- Zorg ervoor dat de Azure-identiteit die u gebruikt om u aan te melden de rol Inzender of Eigenaar heeft in het huidige abonnement. Zie Wat is op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC)voor een overzicht van Azure-rollen?
- Een Java Development Kit (JDK), versie 17. In deze handleiding raden we de Red Hat Build van OpenJDK aan. Zorg ervoor dat uw
JAVA_HOME
omgevingsvariabele juist is ingesteld in de shells waarin u de opdrachten uitvoert. - Git. Gebruik
git --version
dit om te testen ofgit
het werkt. Deze zelfstudie is getest met versie 2.34.1. - Maven. Gebruik
mvn -version
dit om te testen ofmvn
het werkt. Deze zelfstudie is getest met versie 3.8.6.
Notitie
De Azure Marketplace-aanbieding die u in dit artikel gaat gebruiken, bevat ondersteuning voor Red Hat Satellite voor licentiebeheer. Het gebruik van Red Hat Satellite valt buiten het bereik van deze quickstart. Zie Red Hat Satellite voor een overzicht van Red Hat Satellite. Zie het Red Hat Cloud Access-programma voor meer informatie over het verplaatsen van uw Red Hat JBoss EAP- en Red Hat Enterprise Linux-abonnementen naar Azure.
Een flexibele Azure Database for PostgreSQL-server instellen
Met de stappen in deze sectie gaat u een flexibele Azure Database for PostgreSQL-server implementeren, die u gebruikt voor het configureren van de databaseverbinding tijdens het instellen van een JBoss EAP-cluster in de volgende sectie.
Gebruik eerst de volgende opdracht om enkele omgevingsvariabelen in te stellen.
export RG_NAME=<db-resource-group-name>
export SERVER_NAME=<database-server-name>
export ADMIN_PASSWORD=<postgresql-admin-password>
Vervang de tijdelijke aanduidingen door de volgende waarden, die in het artikel worden gebruikt:
<db-resource-group-name>
: De naam van de resourcegroep die moet worden gebruikt voor de flexibele PostgreSQL-server,ejb040323postgresrg
bijvoorbeeld.<database-server-name>
: De naam van uw PostgreSQL-server, die uniek moet zijn in Azure,ejb040323postgresqlserver
bijvoorbeeld.<postgresql-admin-password>
: het wachtwoord van uw PostgreSQL-server. Dit wachtwoord moet ten minste acht tekens en maximaal 128 tekens bevatten. De tekens moeten uit drie van de volgende categorieën bestaan: Nederlandse hoofdletters, Nederlandse kleine letters, cijfers (0-9) en niet-phanumerische tekens (!, $, #, %, enzovoort).
Gebruik vervolgens de volgende stappen om een flexibele Azure Database for PostgreSQL-server te maken:
Gebruik de volgende opdracht om een flexibele Azure Database for PostgreSQL-server te maken:
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
Gebruik de volgende opdracht om de host van de PostgreSQL-server op te halen:
export DB_HOST=$(az postgres flexible-server show \ --resource-group ${RG_NAME} \ --name ${SERVER_NAME} \ --query "fullyQualifiedDomainName" \ --output tsv)
Gebruik de volgende opdracht om de JDBC-verbindings-URL (Java Database Connectivity) van de PostgreSQL-server op te halen:
echo jdbc:postgresql://${DB_HOST}:5432/testdb
Noteer de uitvoer, die u gebruikt als de gegevensbron verbindingsreeks van de PostgreSQL-server verderop in dit artikel.
Een JBoss EAP-cluster implementeren op Azure-VM's
Met de stappen in deze sectie gaat u een JBoss EAP-cluster implementeren op Azure-VM's.
Gebruik de volgende stappen om het JBoss EAP-cluster te vinden op de azure-VM-aanbieding:
Meld u aan bij Azure Portal door naar https://aka.ms/publicportal.
Voer in de zoekbalk boven in Azure Portal JBoss EAP in. Selecteer in de zoekresultaten in de sectie Marketplace JBoss EAP-cluster op VM's.
Zorg ervoor dat PAYG is geselecteerd in de vervolgkeuzelijst.
U kunt ook rechtstreeks naar het JBoss EAP-cluster op azure-VM's gaan. In dit geval is het juiste plan al voor u geselecteerd.
In beide gevallen implementeert deze aanbieding een JBoss EAP-cluster op Azure-VM's door uw Red Hat-abonnement op implementatietijd op te geven. De aanbieding voert het cluster uit op Red Hat Enterprise Linux met behulp van een betalingsconfiguratie voor betalen per gebruik voor de basis-VM's.
In de volgende stappen ziet u hoe u het deelvenster Basisbeginselen invult in de volgende schermafbeelding.
- Selecteer Maken op de pagina aanbieding.
- Controleer in het deelvenster Basisbeginselen of de waarde die wordt weergegeven in het veld Abonnement hetzelfde is als de rollen die worden vermeld in de sectie Vereisten.
- U moet de aanbieding implementeren in een lege resourcegroep. Selecteer in het veld Resourcegroep nieuwe maken en vul een waarde in voor de resourcegroep. Omdat resourcegroepen uniek moeten zijn binnen een abonnement, kiest u een unieke naam. Een eenvoudige manier om unieke namen te hebben, is door een combinatie van uw initialen, de datum van vandaag en een bepaalde id te gebruiken. Bijvoorbeeld ejb040323jbosseapcluster.
- Selecteer onder Exemplaardetails de regio voor de implementatie.
- Laat de standaard-VM-grootte staan voor de grootte van virtuele machines.
- Laat de standaardoptie OpenJDK 17 staan voor JDK-versie.
- Laat de standaardwaarde jbossuser voor gebruikersnaam staan.
- Laat de standaardoptie Wachtwoord voor verificatietype staan.
- Geef een wachtwoord op voor wachtwoord. Gebruik dezelfde waarde voor het bevestigen van het wachtwoord.
- Gebruik 3 voor het aantal virtuele machines om te maken.
- Laat onder Optionele basisconfiguratie de standaardoptie Ja voor Standaardinstellingen accepteren staan voor optionele configuratie.
- Schuif naar de onderkant van het deelvenster Basisbeginselen en bekijk de nuttige koppelingen voor problemen met rapporten, krijg hulp en deel feedback.
- Selecteer Volgende: JBoss EAP-instellingen.
In de volgende stappen ziet u hoe u het deelvenster JBoss EAP-instellingen invult dat wordt weergegeven in de volgende schermopname.
- Laat de standaardoptie Beheerd domein staan voor het gebruik van een beheerd domein of zelfstandige hosts om een cluster te vormen.
- Laat de standaardwaarde jbossadmin staan voor de gebruikersnaam van JBoss EAP-beheerder.
- Geef een JBoss EAP-wachtwoord op voor JBoss EAP-wachtwoord. Gebruik dezelfde waarde voor het bevestigen van het wachtwoord. Sla de waarde op voor later gebruik.
- Laat de standaardoptie Nee staan om verbinding te maken met een bestaande Red Hat Satellite Server?.
- Selecteer Volgende: Azure-toepassing Gateway.
In de volgende stappen ziet u hoe u het deelvenster Azure-toepassing Gateway invult in de volgende schermopname.
Selecteer Ja voor verbinding maken met Azure-toepassing Gateway?.
Selecteer Volgende: Netwerken.
In dit deelvenster kunt u het virtuele netwerk en subnet aanpassen waarin het JBoss EAP-cluster wordt geïmplementeerd. Zie Een virtueel netwerk maken, wijzigen of verwijderen voor meer informatie over virtuele netwerken. Accepteer de standaardwaarden in dit deelvenster.
Selecteer Volgende: Database.
In de volgende stappen ziet u hoe u het deelvenster Database invult in de volgende schermopname en hoe u de implementatie start.
- Selecteer Ja voor verbinding maken met database?.
- Selecteer PostgreSQL voor databasetype Kiezen.
- Vul java:jboss/datasources/JavaEECafeDB in voor de JNDI-naam.
- Geef de URL van de JDBC-verbinding op van de PostgreSQL-server, die u eerder hebt opgeslagen, voor gegevensbron verbindingsreeks (jdbc:postgresql://<host>:<port>/<database>).
- Vul testuser in voor de gebruikersnaam van de database.
- Geef de waarde op voor de tijdelijke aanduiding
<postgresql-admin-password>
, die u eerder hebt opgegeven, voor databasewachtwoord. Gebruik dezelfde waarde voor het bevestigen van het wachtwoord. - Selecteer Controleren + maken. Zorg ervoor dat het groene bericht Validatie geslaagd bovenaan wordt weergegeven. Als het bericht niet wordt weergegeven, lost u validatieproblemen op en selecteert u Controleren en opnieuw maken .
- Selecteer Maken.
- Houd de voortgang van de implementatie op de implementatiepagina bij .
Afhankelijk van de netwerkomstandigheden en andere activiteiten in uw geselecteerde regio kan het tot 35 minuten duren voordat de implementatie is voltooid. Daarna ziet u de tekst die uw implementatie is voltooid op de implementatiepagina.
De functionaliteit van de implementatie controleren
Gebruik de volgende stappen om de functionaliteit van de implementatie voor een JBoss EAP-cluster op Azure-VM's te controleren vanuit de Red Hat JBoss Enterprise Application Platform-beheerconsole :
Selecteer Uitvoer op de implementatiepagina.
Selecteer het kopieerpictogram naast adminConsole.
Plak de URL in een webbrowser met internetverbinding en druk op Enter. U ziet nu het vertrouwde aanmeldingsscherm van de Red Hat JBoss Enterprise Application Platform-beheerconsole , zoals wordt weergegeven in de volgende schermopname.
Vul jbossadmin in voor de gebruikersnaam van de JBoss EAP-beheerder geef de waarde op voor het JBoss EAP-wachtwoord dat u eerder hebt opgegeven voor wachtwoord en selecteer vervolgens Aanmelden.
U ziet nu de vertrouwde welkomstpagina van de Red Hat JBoss Enterprise Application Platform-beheerconsole , zoals wordt weergegeven in de volgende schermopname.
Selecteer het tabblad Runtime . Selecteer Topologie in het navigatiedeelvenster. U ziet dat het cluster één domeincontrollermaster en twee werkknooppunten bevat, zoals wordt weergegeven in de volgende schermopname:
Selecteer het tabblad Configuratie. Selecteer in het navigatiedeelvenster Profielen>ha>Datasources & Drivers>Datasources. U ziet dat de datasource dataSource-postgresql wordt weergegeven, zoals wordt weergegeven in de volgende schermopname:
Laat de beheerconsole geopend. In de volgende sectie gebruikt u deze om een voorbeeld-app te implementeren in het JBoss EAP-cluster.
De app implementeren in het JBoss EAP-cluster
Gebruik de volgende stappen om de Java EE Cafe-voorbeeldtoepassing te implementeren in het Red Hat JBoss EAP-cluster:
Gebruik de volgende stappen om het Java EE Cafe-voorbeeld te bouwen. Bij deze stappen wordt ervan uitgegaan dat u een lokale omgeving hebt waarop Git en Maven zijn geïnstalleerd:
Gebruik de volgende opdracht om de broncode van GitHub te klonen en bekijk de tag die overeenkomt met deze versie van het artikel:
git clone https://github.com/Azure/rhel-jboss-templates.git --branch 20240904 --single-branch
Als u een foutbericht met de tekst
You are in 'detached HEAD' state
ziet, kunt u het veilig negeren.Gebruik de volgende opdracht om de broncode te bouwen:
mvn clean install --file rhel-jboss-templates/eap-coffee-app/pom.xml
Met deze opdracht maakt u het bestand rhel-jboss-templates/eap-coffee-app/target/javaee-café.war. U uploadt dit bestand in de volgende stap.
Gebruik de volgende stappen in de Red Hat JBoss Enterprise Application Platform-beheerconsole om de javaee-café.war te uploaden naar de Content Repository.
Selecteer op het tabblad Implementaties van de Red Hat JBoss EAP-beheerconsole de optie Inhoudsopslagplaats in het navigatiedeelvenster.
Selecteer Toevoegen en selecteer Vervolgens Inhoud uploaden.
Gebruik de browserbestandkiezer om het bestand javaee-café.war te selecteren.
Selecteer Volgende.
Accepteer de standaardwaarden op het volgende scherm en selecteer Voltooien.
Selecteer Inhoud weergeven.
Gebruik de volgende stappen om een toepassing in het
main-server-group
volgende te implementeren:Selecteer in Content Repository javaee-café.war.
Open de vervolgkeuzelijst en selecteer Implementeren.
Selecteer main-server-group als de servergroep voor het implementeren van javaee-café.war.
Selecteer Implementeren om de implementatie te starten. Als het goed is, ziet u een melding die lijkt op de volgende schermopname:
U bent nu klaar met het implementeren van de Java EE-toepassing. Gebruik de volgende stappen om toegang te krijgen tot de toepassing en alle instellingen te valideren:
Gebruik de volgende opdracht om het openbare IP-adres van de Azure-toepassing-gateway op te halen. Vervang de tijdelijke aanduiding
<resource-group-name>
door de naam van de resourcegroep waar het JBoss EAP-cluster is geïmplementeerd.az network public-ip show \ --resource-group <resource-group-name> \ --name gwip \ --query '[ipAddress]' \ --output tsv
Kopieer de uitvoer. Dit is het openbare IP-adres van de Azure-toepassing Gateway geïmplementeerd.
Open een webbrowser met internetverbinding.
Navigeer naar de toepassing met de URL
http://<gateway-public-ip-address>/javaee-cafe
. Vervang de tijdelijke aanduiding<gateway-public-ip-address>
door het openbare IP-adres van de Azure-toepassing Gateway die u eerder hebt gekopieerd.Probeer koffie toe te voegen en te verwijderen.
Resources opschonen
Om Azure-kosten te voorkomen, moet u overbodige resources opschonen. Wanneer u het JBoss EAP-cluster niet meer nodig hebt dat is geïmplementeerd op Azure-VM's, verwijdert u de registratie van de JBoss EAP-servers en verwijdert u de Azure-resources.
Voer de volgende opdracht uit om de registratie van de JBoss EAP-servers en VM's van Red Hat-abonnementsbeheer ongedaan te maken. Vervang de tijdelijke aanduiding <resource-group-name>
door de naam van de resourcegroep waar het JBoss EAP-cluster is geïmplementeerd.
# 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"
Voer de volgende opdrachten uit om de twee resourcegroepen te verwijderen waarin het JBoss EAP-cluster en de flexibele Azure Database for PostgreSQL-server worden geïmplementeerd. Vervang de tijdelijke aanduiding <resource-group-name>
door de naam van de resourcegroep waar het JBoss EAP-cluster is geïmplementeerd. Zorg ervoor dat de omgevingsvariabele $RG_NAME
is ingesteld met de naam van de resourcegroep waar de flexibele PostgreSQL-server is geïmplementeerd.
az group delete --name <resource-group-name> --yes --no-wait
az group delete --name $RG_NAME --yes --no-wait
Volgende stappen
Meer informatie over uw opties voor het implementeren van JBoss EAP in Azure: