IBM WebSphere Liberty en Open Liberty implementeren in Azure Red Hat OpenShift

In dit artikel leest u hoe u snel IBM WebSphere Liberty en Open Liberty kunt opstaan in Azure Red Hat OpenShift (ARO) met behulp van Azure Portal.

In dit artikel wordt gebruikgemaakt van de Azure Marketplace-aanbieding voor Open/WebSphere Liberty om uw reis naar ARO te versnellen. De aanbieding richt automatisch verschillende resources in, waaronder een ARO-cluster met een ingebouwd OpenShift Container Registry (OCR), de Liberty Operators en eventueel een containerinstallatiekopie, waaronder Liberty en uw toepassing. Ga naar Azure Portal om de aanbieding te bekijken. Zie Een Java-toepassing implementeren met Open Liberty/WebSphere Liberty op een Azure Red Hat OpenShift-cluster als u liever handmatige stapsgewijze instructies voor het uitvoeren van Liberty op ARO gebruikt die niet gebruikmaakt van de automatisering die door de aanbieding is ingeschakeld.

Dit artikel is bedoeld om u snel te helpen bij de implementatie. Voordat u naar productie gaat, moet u Tuning Liberty verkennen.

Belangrijk

Hoewel ARO gezamenlijk wordt ontworpen, beheerd en ondersteund door Red Hat en Microsoft om een geïntegreerde ondersteuningservaring te bieden, is de software die u boven op ARO uitvoert, inclusief die in dit artikel wordt beschreven, onderworpen aan zijn eigen ondersteunings- en licentievoorwaarden. Zie ondersteuningslevenscyclus voor Azure Red Hat OpenShift 4 voor meer informatie over de ondersteuning van ARO. Zie de hoofdpagina's voor die software zoals vermeld in het artikel voor meer informatie over de ondersteuning van de software die in dit artikel wordt beschreven.

Notitie

Azure Red Hat OpenShift vereist minimaal 40 kernen om een OpenShift-cluster te maken en uit te voeren. Het standaardquotum voor Azure-resources voor een nieuw Azure-abonnement voldoet niet aan deze vereiste. Als u een verhoging van uw resourcelimiet wilt aanvragen, raadpleegt u de sectie Een verhoging aanvragen voor niet-aanpasbare quota in vCPU-quota van de VM-serie verhogen. Omdat het soort quotum waarvoor u een verhoging moet aanvragen , 'niet-aanpasbaar' is, moet u een ondersteuningsticket indienen. In de stappen in Aanvraag voor een verhoging van niet-aanpasbare quota ziet u precies hoe u het ticket kunt indienen met de juiste inhoud.

Het gratis proefabonnement komt niet in aanmerking voor een quotumverhoging. Voer een upgrade uit naar een abonnement met betalen per gebruik voordat u een quotumverhoging aanvraagt. Zie Uw gratis Azure-account of Azure for Students Starter-account upgraden voor meer informatie.

Vereisten

  • Een lokale computer waarop een Unix-achtig besturingssysteem is geïnstalleerd (bijvoorbeeld Ubuntu, macOS of Windows-subsysteem voor Linux).
  • De Azure CLI. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
  • Meld u aan bij de Azure CLI met behulp van de opdracht az login . Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij Azure CLI voor aanvullende aanmeldingsopties.
  • Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.
  • Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie. Voor dit artikel is ten minste versie 2.31.0 van Azure CLI vereist.

Notitie

U kunt deze richtlijnen ook uitvoeren vanuit De Azure Cloud Shell. Bij deze benadering zijn alle vereiste hulpprogramma's vooraf geïnstalleerd, met uitzondering van Docker.

Een Red Hat pull-geheim ophalen

Voor de Azure Marketplace-aanbieding die u in dit artikel gaat gebruiken, is een Red Hat-pull-geheim vereist. In deze sectie wordt beschreven hoe u een Red Hat-pull-geheim voor Azure Red Hat OpenShift krijgt. Voor meer informatie over wat een Red Hat-pull-geheim is en waarom u het nodig hebt, raadpleegt u de sectie Get a Red Hat pull secret in Tutorial: Create an Azure Red Hat OpenShift 4 cluster. Volg de stappen in deze sectie om het pull-geheim voor gebruik op te halen.

Gebruik uw Red Hat-account om u aan te melden bij de OpenShift-clusterbeheerportal door naar de Red Hat OpenShift Hybrid Cloud-console te gaan. Mogelijk moet u meer voorwaarden accepteren en uw account bijwerken, zoals wordt weergegeven in de volgende schermopname. Gebruik hetzelfde wachtwoord als bij het maken van het account.

Schermopname van de pagina Uw account bijwerken in Red Hat.

Nadat u zich hebt aangemeld, selecteert u OpenShift en vervolgens Downloads. Selecteer de vervolgkeuzelijst Alle categorieën en selecteer vervolgens Tokens. Selecteer onder Pull-geheim de optie Kopiëren of Downloaden om de waarde op te halen, zoals wordt weergegeven in de volgende schermopname.

Schermopname van de Red Hat-consoleportal met het pull-geheim.

De volgende inhoud is een voorbeeld dat is gekopieerd uit de Red Hat-consoleportal, waarbij de verificatiecodes zijn vervangen door xxxx...xxx.

{"auths":{"cloud.openshift.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"quay.io":{"auth":"xxx...xxx","email":"contoso-user@test.com"},"registry.connect.redhat.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"registry.redhat.io":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"}}}

Sla het geheim op in een bestand, zodat u het later kunt gebruiken.

Een Microsoft Entra-service-principal maken vanuit Azure Portal

Voor de Azure Marketplace-aanbieding die u in dit artikel gaat gebruiken, is een Microsoft Entra-service-principal vereist om uw Azure Red Hat OpenShift-cluster te implementeren. De aanbieding wijst de service-principal toe met de juiste bevoegdheden tijdens de implementatietijd, zonder dat er roltoewijzing nodig is. Als u een service-principal wilt gebruiken, slaat u deze sectie over en gaat u verder met de volgende sectie, waar u de aanbieding implementeert.

Gebruik de volgende stappen om een service-principal te implementeren en de toepassings-id (client) en het geheim ervan op te halen uit de Azure-portal. Zie Een service-principal maken en gebruiken voor het implementeren van een Azure Red Hat OpenShift-cluster voor meer informatie.

Notitie

U moet over voldoende machtigingen beschikken om een toepassing te registreren bij uw Microsoft Entra-tenant. Als u tegen een probleem aanloopt, controleert u de vereiste machtigingen om ervoor te zorgen dat uw account de identiteit kan maken. Zie de machtigingen die vereist zijn voor het registreren van een app-sectie van De portal voor het maken van een Microsoft Entra-toepassing en service-principal die toegang hebben tot resources voor meer informatie.

  1. Meld u via Azure Portal aan bij uw Azure-account.

  2. Selecteer Microsoft Entra ID.

  3. Selecteer App-registraties.

  4. Selecteer Nieuwe registratie.

  5. Noem de toepassing, bijvoorbeeld 'liberty-on-aro-app'. Kies een ondersteund accounttype, dat bepaalt wie de toepassing kan gebruiken. Nadat u de waarden hebt ingesteld, selecteert u Registreren, zoals wordt weergegeven in de volgende schermopname. Het duurt enkele seconden om de toepassing in te richten. Wacht tot de implementatie is voltooid voordat u doorgaat.

    Schermopname van Azure Portal met de pagina Een toepassing registreren.

  6. Sla de toepassings-id (client) op de overzichtspagina op, zoals wordt weergegeven in de volgende schermopname. Beweeg de muisaanwijzer over de waarde (aangegeven in de schermafbeelding) en selecteer het kopieerpictogram dat wordt weergegeven. De knopinfo zegt Kopiëren naar klembord. Zorg ervoor dat u de juiste waarde kopieert, omdat de andere waarden in die sectie ook kopieerpictogrammen hebben. Sla de toepassings-id op in een bestand, zodat u deze later kunt gebruiken.

    Schermopname van Azure Portal met de client-id van de service-principal.

  7. Maak een nieuw clientgeheim door de volgende stappen uit te voeren:

    1. Selecteer Certificaten en geheimen.
    2. Selecteer Clientgeheimen en vervolgens Nieuw clientgeheim.
    3. Geef een beschrijving op van het geheim en een duur. Wanneer u klaar bent, selecteert u Toevoegen.
    4. Nadat het clientgeheim is toegevoegd, wordt de waarde van het clientgeheim weergegeven. Kopieer deze waarde omdat u deze later niet meer kunt ophalen.

U hebt nu een Microsoft Entra-toepassing, service-principal en clientgeheim.

IBM WebSphere Liberty of Open Liberty implementeren in Azure Red Hat OpenShift

Met de stappen in deze sectie gaat u IBM WebSphere Liberty of Open Liberty implementeren in Azure Red Hat OpenShift.

In de volgende stappen ziet u hoe u de aanbieding kunt vinden en het deelvenster Basisbeginselen kunt invullen.

  1. Voer Liberty in de zoekbalk boven in Azure Portal in. Selecteer IN de automatisch voorgestelde zoekresultaten in de sectie Marketplace IBM Liberty op ARO, zoals wordt weergegeven in de volgende schermopname.

    Schermopname van Azure Portal met IBM WebSphere Liberty en Open Liberty in Azure Red Hat OpenShift in zoekresultaten.

    U kunt ook rechtstreeks naar de aanbieding gaan met deze portalkoppeling.

  2. Selecteer Maken op de pagina aanbieding.

  3. 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.

  4. De aanbieding moet worden geïmplementeerd 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 abc1228rg.

  5. Maak een omgevingsvariabele in de shell voor de naam van de resourcegroep.

    export RESOURCE_GROUP_NAME=<your-resource-group-name>
    
  6. Selecteer onder Exemplaardetails de regio voor de implementatie. Zie Regio's voor Red Hat OpenShift 4.x in Azure voor een lijst met Azure-regio's waarin OpenShift wordt uitgevoerd.

  7. Nadat u de regio hebt geselecteerd, selecteert u Volgende.

In de volgende stappen ziet u hoe u het ARO-deelvenster kunt invullen dat wordt weergegeven in de volgende schermopname:

Schermopname van Azure Portal met IBM WebSphere Liberty en Open Liberty in het deelvenster Azure Red Hat OpenShift ARO.

  1. Selecteer Ja onder Een nieuw cluster maken.

  2. Vul onder Geef informatie op voor het maken van een nieuw cluster voor Red Hat-pull-geheim het Red Hat-pull-geheim dat u hebt verkregen in de sectie Get a Red Hat pull secret . Gebruik dezelfde waarde voor Het geheim bevestigen.

  3. Vul de client-id van de service-principal in met de service-principaltoepassings-id (client) die u hebt verkregen in de sectie Een Microsoft Entra-service-principal maken in de sectie Azure Portal.

  4. Vul het clientgeheim van de service-principal in met het toepassingsgeheim van de service-principal die u hebt verkregen in de sectie Een Microsoft Entra-service-principal maken in de sectie Azure Portal. Gebruik dezelfde waarde voor Het geheim bevestigen.

  5. Nadat u de waarden hebt ingevuld, selecteert u Volgende.

In de volgende stappen ziet u hoe u het deelvenster Operator en toepassing invult in de volgende schermopname en hoe u de implementatie start.

Schermopname van Azure Portal met IBM WebSphere Liberty en Open Liberty in Azure Red Hat OpenShift Operator en het toepassingsvenster.

  1. Selecteer Ja onder IBM ondersteund?

    Notitie

    In deze quickstart wordt de door IBM ondersteunde WebSphere Liberty Operator geïmplementeerd, maar u kunt Nee selecteren om de Open Liberty Operator te implementeren.

  2. Laat u de standaardoptie Nee staan voor Het implementeren van een toepassing?.

    Notitie

    In deze quickstart wordt later handmatig een voorbeeldtoepassing geïmplementeerd, maar u kunt Desgewenst Ja selecteren voor Een toepassing implementeren?

  3. 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 .

  4. Selecteer Maken.

  5. Houd de voortgang van de implementatie op de implementatiepagina bij .

Afhankelijk van de netwerkomstandigheden en andere activiteiten in uw geselecteerde regio kan het tot 40 minuten duren voordat de implementatie is voltooid.

De functionaliteit van de implementatie controleren

In de stappen in deze sectie ziet u hoe u kunt controleren of de implementatie is voltooid.

Als u weg navigeert van de implementatiepagina wordt uitgevoerd , ziet u in de volgende stappen hoe u terug kunt gaan naar die pagina. Als u nog steeds op de pagina bent waarin wordt aangegeven dat uw implementatie is voltooid, kunt u doorgaan naar stap 5.

  1. Selecteer in de hoek van een portalpagina het hamburgermenu en selecteer vervolgens Resourcegroepen.

  2. Voer in het vak met het tekstfilter voor een veld de eerste paar tekens in van de resourcegroep die u eerder hebt gemaakt. Als u de aanbevolen conventie hebt gevolgd, voert u uw initialen in en selecteert u vervolgens de juiste resourcegroep.

  3. Selecteer Implementaties in het navigatiedeelvenster in de sectie Instellingen. U ziet een geordende lijst met de implementaties voor deze resourcegroep, met de meest recente eerst.

  4. Schuif naar het oudste item in deze lijst. Deze vermelding komt overeen met de implementatie die u in de vorige sectie hebt gestart. Selecteer de oudste implementatie, zoals wordt weergegeven in de volgende schermopname.

    Schermopname van Azure Portal met IBM WebSphere Liberty en Open Liberty in Azure Red Hat OpenShift-implementaties met de oudste implementatie gemarkeerd.

  5. Selecteer Uitvoer in het navigatiedeelvenster. Deze lijst bevat de uitvoerwaarden van de implementatie, die nuttige informatie bevat.

  6. Open de terminal en plak de waarde uit het veld cmdToGetKubeadminCredentials . U ziet het beheerdersaccount en de referenties voor het aanmelden bij de OpenShift-clusterconsoleportal. De volgende inhoud is een voorbeeld van een beheerdersaccount.

    az aro list-credentials --resource-group abc1228rg --name clusterf9e8b9
    {
      "kubeadminPassword": "xxxxx-xxxxx-xxxxx-xxxxx",
      "kubeadminUsername": "kubeadmin"
    }
    
  7. Plak de waarde uit het veld clusterConsoleUrl in een webbrowser met internetverbinding en druk op Enter. Vul de gebruikersnaam en het wachtwoord van de beheerder in en meld u aan.

  8. Controleer of de juiste Kubernetes-operator voor Liberty is geïnstalleerd. Selecteer in het navigatiedeelvenster Operators en vervolgens Geïnstalleerde operators, zoals wordt weergegeven in de volgende schermopname:

    Schermopname van de Consoleportal van het Red Hat OpenShift-cluster met de pagina Geïnstalleerde operators.

    Let op als u de WebSphere Liberty-operator of de Open Liberty-operator hebt geïnstalleerd. De operatorvariant komt overeen met wat u tijdens de implementatie hebt geselecteerd. Als u IBM Supported hebt geselecteerd, hebt u de WebSphere Liberty-operator. Anders hebt u de Open Liberty-operator. Deze informatie is belangrijk om te weten in latere stappen.

  9. Download en installeer de OpenShift CLI oc door de stappen in de zelfstudie De OpenShift CLI te installeren en ga vervolgens terug naar deze documentatie.

  10. Ga naar het deelvenster Uitvoer , kopieer de waarde uit het veld cmdToLoginWithKubeadmin en plak deze in de terminal. Voer de opdracht uit om u aan te melden bij de API-server van het OpenShift-cluster. Als het goed is, ziet u uitvoer die vergelijkbaar is met het volgende voorbeeld in de console:

    Login successful.
    
    You have access to 71 projects, the list has been suppressed. You can list all projects with 'oc projects'
    
    Using project "default".
    

Een Azure SQL-database maken

De volgende stappen helpen u bij het maken van een individuele Azure SQL Database-database voor gebruik met uw app:

  1. Maak een individuele database in Azure SQL Database door de stappen in quickstart te volgen: Een individuele Azure SQL Database-database maken, waarbij u zorgvuldig de verschillen noteert die in de volgende opmerking worden beschreven. Ga terug naar dit artikel nadat u de databaseserver hebt gemaakt en geconfigureerd.

    Notitie

    Noteer in de stap Basisinformatie de waarden voor resourcegroep, databasenaam,< servernaam.database.windows.net>, aanmelding van serverbeheerder en wachtwoord. De databaseresourcegroep wordt verderop in dit artikel genoemd<db-resource-group>.

    Stel in de netwerkstap Verbinding maken iviteitsmethode in op openbaar eindpunt, Sta Azure-services en -resources toegang tot deze server toe aan Ja en voeg het huidige IP-adres van de client toe aan Ja.

    Schermopname van Azure Portal met het tabblad Netwerken van de pagina SQL Database maken met de Verbinding maken iviteitsmethode en de instellingen voor firewallregels gemarkeerd.

  2. Maak een omgevingsvariabele in de shell voor de naam van de resourcegroep voor de database.

    export DB_RESOURCE_GROUP_NAME=<db-resource-group>
    

Nu u de database en het ARO-cluster hebt gemaakt, kunt u de ARO voorbereiden om uw WebSphere Liberty-toepassing te hosten.

De voorbeeldtoepassing configureren en implementeren

Volg de stappen in deze sectie om de voorbeeldtoepassing te implementeren in de Liberty Runtime. In deze stappen wordt Maven gebruikt.

De toepassing uitchecken

Kloon de voorbeeldcode voor deze handleiding met behulp van de volgende opdrachten. Het voorbeeld bevindt zich op GitHub.

git clone https://github.com/Azure-Samples/open-liberty-on-aro.git
cd open-liberty-on-aro
export BASE_DIR=$PWD
git checkout 20240223
cd 3-integration/connect-db/mssql

Als u een bericht ziet over 'losgekoppelde HEAD'-status, is dit bericht veilig te negeren. Het betekent alleen dat je een tag hebt uitgecheckt.

Er zijn enkele voorbeelden in de opslagplaats. We gebruiken 3-integratie/connect-db/mssql/. Dit is de bestandsstructuur van de toepassing:

mssql
├─ src/main/
│  ├─ aro/
│  │  ├─ db-secret.yaml
│  │  ├─ openlibertyapplication.yaml
│  │  ├─ webspherelibertyapplication.yaml
│  ├─ docker/
│  │  ├─ Dockerfile
│  │  ├─ Dockerfile-ol
│  ├─ liberty/config/
│  │  ├─ server.xml
│  ├─ java/
│  ├─ resources/
│  ├─ webapp/
├─ pom.xml

De directory's java, resources en web-app bevatten de broncode van de voorbeeldtoepassing. De code declareert en gebruikt een gegevensbron met de naam jdbc/JavaEECafeDB.

In de aro-map bevinden zich drie implementatiebestanden. db-secret.xml wordt gebruikt om Kubernetes Secrets te maken met DB-verbindingsreferenties. Het bestand webspherelibertyapplication.yaml wordt in deze quickstart gebruikt om de WebSphere Liberty-toepassing te implementeren. Gebruik het bestand openlibertyapplication.yaml om de Open Liberty-toepassing te implementeren als u Open Liberty Operator hebt geïmplementeerd in de sectie IBM WebSphere Liberty of Open Liberty implementeren in Azure Red Hat OpenShift.

In de docker-map zijn er twee bestanden om de toepassingsinstallatiekopieën te maken met Open Liberty of WebSphere Liberty. Deze bestanden zijn respectievelijk Dockerfile en Dockerfile-ol. In deze quickstart gebruikt u het bestand Dockerfile om de toepassingsinstallatiekopieën te bouwen met WebSphere Liberty. Gebruik op dezelfde manier het bestand Dockerfile-ol om de toepassingsinstallatiekopie te bouwen met Open Liberty als u Open Liberty Operator hebt geïmplementeerd in de sectie IBM WebSphere Liberty of Open Liberty implementeren in Azure Red Hat OpenShift.

In map liberty/config wordt het server.xml-bestand gebruikt voor het configureren van de DB-verbinding voor het Open Liberty- en WebSphere Liberty-cluster.

Het project bouwen

Nu u de benodigde eigenschappen hebt verzameld, kunt u de toepassing bouwen met behulp van de volgende opdrachten. Het POM-bestand voor het project leest veel variabelen uit de omgeving. Als onderdeel van de Maven-build worden deze variabelen gebruikt om waarden in te vullen in de YAML-bestanden in src/main/aro. U kunt iets soortgelijks doen voor uw toepassing buiten Maven als u wilt.

cd ${BASE_DIR}/3-integration/connect-db/mssql

# The following variables are used for deployment file generation into target.
export DB_SERVER_NAME=<server-name>.database.windows.net
export DB_NAME=<database-name>
export DB_USER=<server-admin-login>@<server-name>
export DB_PASSWORD=<server-admin-password>

mvn clean install

(Optioneel) Uw project lokaal testen

U kunt het project nu lokaal uitvoeren en testen voordat u in Azure implementeert met behulp van de volgende stappen. Voor het gemak gebruiken we de liberty-maven-plugin. Zie Een webtoepassing bouwen met Maven voor meer informatie over de liberty-maven-pluginwebtoepassing. Voor uw toepassing kunt u iets soortgelijks doen met behulp van een ander mechanisme, zoals uw lokale IDE. U kunt ook overwegen de liberty:devc optie te gebruiken die is bedoeld voor ontwikkeling met containers. Meer informatie vindt liberty:devc u in de Liberty docs.

  1. Start de toepassing met behulp van liberty:run, zoals wordt weergegeven in het volgende voorbeeld. liberty:run maakt ook gebruik van de omgevingsvariabelen die zijn gedefinieerd in de vorige sectie.

    cd ${BASE_DIR}/3-integration/connect-db/mssql
    mvn liberty:run
    
  2. Controleer of de toepassing werkt zoals verwacht. Als dit lukt, ziet u een bericht dat lijkt op [INFO] [AUDIT] CWWKZ0003I: The application javaee-cafe updated in 1.930 seconds. in de uitvoer van de opdracht. Ga naar http://localhost:9080/ of https://localhost:9443/ in uw browser en controleer of de toepassing toegankelijk is en of alle functies werken.

  3. Druk op Ctrl+C om te stoppen.

Gebruik vervolgens de volgende stappen om uw project te containeriseren met behulp van Docker en deze lokaal uit te voeren als een container voordat u implementeert in Azure:

  1. Voer de docker build opdracht uit om de installatiekopieën te bouwen.

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    docker buildx build --platform linux/amd64 -t javaee-cafe:v1 --pull --file=Dockerfile .
    
  2. Voer de installatiekopieën uit met behulp van de volgende opdracht. Houd er rekening mee dat we de eerder gedefinieerde omgevingsvariabelen gebruiken.

    docker run -it --rm -p 9080:9080 -p 9443:9443 \
        -e DB_SERVER_NAME=${DB_SERVER_NAME} \
        -e DB_NAME=${DB_NAME} \
        -e DB_USER=${DB_USER} \
        -e DB_PASSWORD=${DB_PASSWORD} \
        javaee-cafe:v1
    
  3. Zodra de container is gestart, gaat u naar http://localhost:9080/ of https://localhost:9443/ in uw browser om toegang te krijgen tot de toepassing.

  4. Druk op Ctrl+C om te stoppen.

Installatiekopieën bouwen en pushen naar de installatiekopieënstroom

Wanneer u tevreden bent over de status van de toepassing, bouwt u de installatiekopieën op afstand op het cluster met behulp van de volgende stappen.

  1. Gebruik de volgende opdrachten om de bronmap en het Dockerfile te identiteiten:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    
    # If you are deploying the application with WebSphere Liberty Operator, the existing Dockerfile is ready for you
    
    # If you are deploying the application with Open Liberty Operator, uncomment and execute the following two commands to rename Dockerfile-ol to Dockerfile
    # mv Dockerfile Dockerfile.backup
    # mv Dockerfile-ol Dockerfile
    
  2. Gebruik de volgende opdracht om een afbeeldingsstroom te maken:

    oc create imagestream javaee-cafe
    
  3. Gebruik de volgende opdracht om een buildconfiguratie te maken waarmee de installatiekopieënstroomtag van de build-uitvoer wordt opgegeven:

    oc new-build --name javaee-cafe-config --binary --strategy docker --to javaee-cafe:v1
    
  4. Gebruik de volgende opdracht om de build te starten om lokale inhoud, containerize en uitvoer te uploaden naar de tag voor de installatiekopieënstroom die eerder is opgegeven:

    oc start-build javaee-cafe-config --from-dir . --follow
    

De toepassing implementeren en testen

Gebruik de volgende stappen om de toepassing te implementeren en te testen:

  1. Gebruik de volgende opdracht om het DB-geheim toe te passen:

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    oc apply -f db-secret.yaml
    

    U ziet nu de uitvoer secret/db-secret-mssql created.

  2. Gebruik de volgende opdracht om het implementatiebestand toe te passen:

    oc apply -f webspherelibertyapplication.yaml
    
  3. Wacht totdat alle pods zijn gestart en worden uitgevoerd met behulp van de volgende opdracht:

    oc get pods -l app.kubernetes.io/name=javaee-cafe --watch
    

    U ziet uitvoer die vergelijkbaar is met het volgende voorbeeld om aan te geven dat alle pods worden uitgevoerd:

    NAME                          READY   STATUS    RESTARTS   AGE
    javaee-cafe-67cdc95bc-2j2gr   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-fgtt8   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-h47qm   1/1     Running   0          29s
    
  4. Gebruik de volgende stappen om de resultaten te controleren:

    1. Gebruik de volgende opdracht om de host op te halen van de routeresource die is geïmplementeerd met de toepassing:

      echo "route host: https://$(oc get route javaee-cafe --template='{{ .spec.host }}')"
      
    2. Kopieer de waarde van route host de uitvoer en open deze vervolgens in uw browser om de toepassing te testen. Als de webpagina niet correct wordt weergegeven, komt dat doordat de app nog steeds op de achtergrond wordt gestart. Wacht enkele minuten en probeer het opnieuw.

    3. Voeg een paar koffies toe en verwijder deze om de functionaliteit van de app en de databaseverbinding te controleren.

      Schermopname van de actieve app.

Resources opschonen

Om Azure-kosten te voorkomen, moet u overbodige resources opschonen. Wanneer het cluster niet meer nodig is, gebruikt u de opdracht az group delete om de resourcegroep, het ARO-cluster, Azure SQL Database en alle gerelateerde resources te verwijderen.

az group delete --name $RESOURCE_GROUP_NAME --yes --no-wait
az group delete --name $DB_RESOURCE_GROUP_NAME --yes --no-wait

Volgende stappen

Volg deze koppelingen voor meer informatie over het implementeren van de IBM WebSphere-serie in Azure: