Övning – Få åtkomst till JBoss EAP-administrationsverktyg och programloggar
I den här övningen får du åtkomst till JBoss-administrationsverktygen och strömmar programloggarna.
Ställ in miljövariabler
I den här övningen behöver du vissa miljövariabler från tidigare övningar. Om du använder samma Bash-fönster bör dessa variabler fortfarande finnas. Om variablerna inte längre är tillgängliga använder du följande kommandon för att återskapa dem. Se till att ersätta <platshållarna ...> med dina egna värden och använd samma värden som du använde tidigare.
export RESOURCE_GROUP_NAME=<resource-group>
export WEB_APP_NAME=<app-name>
Skapa en TCP-tunnel
Om du vill komma åt fjärrservern skapar du en TCP-tunnel mellan fjärrservern och den lokala datorn med hjälp av följande kommando:
az webapp create-remote-connection \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name ${WEB_APP_NAME}
Utdata innehåller TCP-tunnelportnummer, användarnamn och lösenord. Se till att spara den här informationen åt sidan för senare användning.
Logga in med hjälp av SSH och TCP-tunneln
Om du vill logga in på servern med hjälp av SSH och en TCP-tunnel använder du följande steg:
Öppna en ny kommandoterminal.
Logga in på servern med hjälp av följande kommandon. Ersätt
<port-number>platshållaren med det portnummer som du hämtade i föregående avsnitt.export PORT_NUMBER=<port-number> ssh root@127.0.0.1 -L 9990:localhost:9990 -p $PORT_NUMBERTips
Om du vill komma åt JBoss EAP-administratörswebbkonsolen anger du alternativet
-L 9990:localhost:9990. Öppna sedan JBoss-webbkonsolen påhttp://localhost:9990/console. Om du inte behöver logga in på JBoss-webbkonsolen kan du ta bort alternativet-L.Följande utdata är typiska:
ssh root@127.0.0.1 -L 9990:localhost:9990 -p 65171 root@127.0.0.1's password: Last login: Tue Feb 25 07:44:49 2025 from 169.254.129.2 _|_| _| _| _|_|_|_| _| _| _| _|_| _|_| _|_|_|_| _| _| _| _|_| _|_|_|_| _| _| _| _| _| _| _| _| _| _|_|_|_| _|_|_| _| _|_|_| J A V A O N A P P S E R V I C E Documentation: https://aka.ms/appservice **NOTE**: No files or system changes outside of /home will persist beyond your application's current session. /home is your application's persistent storage and is shared across all the server instances.
Kör JBoss CLI-verktyget
När du har loggat in på fjärrservern kan du köra CLI-verktyget JBoss EAP-administratör, /opt/eap/bin/jboss-cli.sh, med hjälp av följande steg:
Anslut till JBoss EAP med hjälp av följande kommando:
/opt/eap/bin/jboss-cli.sh --connectFöljande utdata är typiska:
OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.När du har anslutit till JBoss EAP-servern använder du följande kommando i JBoss-prompten för att hämta JBoss-serverinformationen:
product-infoFöljande utdata är typiska:
{ "outcome" => "success", "result" => [{"summary" => { "host-name" => "jakartaee-aaaabbbb", "instance-identifier" => "aaaaaaaa-1111-bbbb-2222-cccccccccccc", "product-name" => "JBoss EAP", "product-version" => "8.0 Update 4.1", "product-community-identifier" => "Product", "product-home" => "/opt/eap", "standalone-or-domain-identifier" => "STANDALONE_SERVER", "host-operating-system" => "Ubuntu 22.04.5 LTS", "host-cpu" => { "host-cpu-arch" => "amd64", "host-core-count" => 2 }, "jvm" => { "name" => "OpenJDK 64-Bit Server VM", "java-version" => "17", "jvm-version" => "17.0.13", "jvm-vendor" => "Microsoft", "java-home" => "/usr/lib/jvm/msopenjdk-17-amd64" } }}] }Använd följande kommando för att visa en lista över alla distribuerade program:
ls deploymentFöljande utdata är typiska:
ROOT.warTesta databasanslutningen med hjälp av följande kommando:
/subsystem=datasources/data-source="JPAWorldDataSourceDS":test-connection-in-poolFöljande utdata är typiska:
{ "outcome" => "success", "result" => [true] }Avsluta JBoss EAP CLI med hjälp av följande kommando:
exit
Få åtkomst till JBoss EAP-administratörswebbkonsolen
Gå sedan till JBoss-administratörswebbkonsolen med hjälp av följande steg:
Skapa en administratörsanvändare och ett lösenord för autentisering med hjälp av följande kommando:
/opt/eap/bin/add-user.sh -u admin -p admin -r ManagementRealmFöljande utdata är typiska:
Picked up JAVA_TOOL_OPTIONS: -Xmx5480M -Djava.net.preferIPv4Stack=true Updated user 'admin' to file '/opt/eap/standalone/configuration/mgmt-users.properties' Updated user 'admin' to file '/opt/eap/domain/configuration/mgmt-users.properties'Få åtkomst till webbkonsolen från en webbläsare i din lokala miljö med hjälp av
http://127.0.0.1:9990/console.I dialogrutan autentisering loggar du in med det tidigare skapade användarnamnet och lösenordet.
När du har loggat in på webbkonsolen visas följande skärm:
Bekräfta att du har skapat datakällan genom att väljaKonfigurationsundersystem>>Datakällor och Drivrutiner>Datakällor.
Du kan också bekräfta RESTful-slutpunkterna för ditt program genom att välja Runtime><your-system>>JAX-RS><your-application>.
Varning
Om du kommer åt fjärrservern direkt via JBoss CLI-kommandot eller webbkonsolen och lägger till eller uppdaterar en konfiguration rensas konfigurationen och tas bort när Azure App Service-instansen har startats om. Om du vill spara konfigurationen använder du ett startskript, till exempel det createMySQLDataSource.sh skript som användes i en tidigare enhet.
Öppna en loggström
Få åtkomst till loggarna med hjälp av följande kommando:
az webapp log tail \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name ${WEB_APP_NAME}
Följande utdata är typiska:
2025-02-25T06:58:11.5107300Z Waiting for main process to exit. GLOBAL_PID_MAIN=123
2025-02-25T06:58:11.5109525Z Waiting for GLOBAL_PID_MAIN == 123
2025-02-25T06:58:12.7891598Z 2025-02-25 06:58:12,786 WARN  [org.apache.activemq.artemis.core.server.impl.FileLockNodeManager] (Thread-2 (ActiveMQ-scheduled-threads)) Lost the lock according to the monitor, notifying listeners
2025-02-25T06:58:14.3783443Z 2025-02-25 06:58:14,377 INFO  [org.jboss.as.jpa] (MSC service thread 1-2) WFLYJPA0002: Read persistence.xml for JPAWorldDatasourcePU
2025-02-25T06:58:14.7548991Z 2025-02-25 06:58:14,752 INFO  [org.jipijapa] (MSC service thread 1-3) JIPIORMV6020260: Second level cache enabled for ROOT.war#JPAWorldDatasourcePU
2025-02-25T06:58:14.7971763Z 2025-02-25 06:58:14,796 WARN  [org.apache.activemq.artemis.core.server.impl.FileLockNodeManager] (Thread-2 (ActiveMQ-scheduled-threads)) Lost the lock according to the monitor, notifying listeners
2025-02-25T06:58:14.9371057Z 2025-02-25 06:58:14,924 INFO  [org.jboss.weld.deployer] (MSC service thread 1-4) WFLYWELD0003: Processing weld deployment ROOT.war
2025-02-25T06:58:15.2875956Z 2025-02-25 06:58:15,280 INFO  [org.hibernate.validator.internal.util.Version] (MSC service thread 1-4) HV000001: Hibernate Validator 8.0.1.Final-redhat-00001
2025-02-25T06:58:16.0075988Z 2025-02-25 06:58:16,003 INFO  [org.infinispan.CONTAINER] (ServerService Thread Pool -- 78) ISPN000556: Starting user marshaller 'org.wildfly.clustering.infinispan.marshalling.jboss.JBossMarshaller'
2025-02-25T06:58:16.0534913Z 2025-02-25 06:58:16,048 INFO  [org.jipijapa] (MSC service thread 1-1) JIPIORMV6020260: Second level cache enabled for ROOT.war#JPAWorldDatasourcePU
2025-02-25T06:58:16.1970192Z 2025-02-25 06:58:16,192 INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-1) WFLYJCA0005: Deploying non-JDBC-compliant driver class com.mysql.cj.jdbc.Driver (version 9.2)
2025-02-25T06:58:16.2695781Z 2025-02-25 06:58:16,265 INFO  [org.jboss.weld.Version] (MSC service thread 1-1) WELD-000900: 5.1.2 (redhat)
2025-02-25T06:58:16.4228682Z 2025-02-25 06:58:16,421 INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-3) WFLYJCA0018: Started Driver service with driver-name = ROOT.war_com.mysql.cj.jdbc.Driver_9_2
2025-02-25T06:58:16.4261069Z 2025-02-25 06:58:16,425 INFO  [org.jboss.as.connector.subsystems.datasources.AbstractDataSourceService$AS7DataSourceDeployer] (MSC service thread 1-3) IJ020018: Enabling <validate-on-match> for java:jboss/datasources/JPAWorldDataSource
2025-02-25T06:58:16.4349571Z 2025-02-25 06:58:16,428 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-3) WFLYJCA0001: Bound data source [java:jboss/datasources/JPAWorldDataSource]
2025-02-25T06:58:16.7892296Z 2025-02-25 06:58:16,787 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 78) WFLYJPA0010: Starting Persistence Unit (phase 1 of 2) Service 'ROOT.war#JPAWorldDatasourcePU'
2025-02-25T06:58:16.8070373Z 2025-02-25 06:58:16,805 INFO  [org.hibernate.jpa.internal.util.LogHelper] (ServerService Thread Pool -- 78) HHH000204: Processing PersistenceUnitInfo [name: JPAWorldDatasourcePU]
Övningssammanfattning
I den här lektionen har du lärt dig hur du konfigurerar och distribuerar ett Jakarta EE 10-program till JBoss EAP i Azure App Service. Sedan använde du ett DataSource-objekt för att ansluta MySQL till JBoss EAP i ett startskript.
Du har också lärt dig hur du kommer åt fjärrservern från både CLI och det grafiska användargränssnittet (GUI) med hjälp av en TCP-tunnel. Slutligen kom du åt loggfilen från en lokal dator.