Java-alkalmazás üzembe helyezése Open Liberty/WebSphere Liberty használatával egy Azure Red Hat OpenShift-fürtön

Ez az útmutató bemutatja, hogyan futtathatja Java, Java Enterprise kiadás, Jakarta Enterprise kiadás vagy MicroProfile-alkalmazását az Open Liberty/WebSphere Liberty futtatókörnyezetben. Az útmutató ezután bemutatja, hogyan helyezheti üzembe a tárolóalapú alkalmazást egy Azure Red Hat OpenShift 4-fürtön az Open Liberty Operátor használatával. Ez a cikk végigvezeti egy Liberty-alkalmazás előkészítésén, az alkalmazás Docker-rendszerképének elkészítésén és a tárolóalapú alkalmazás Azure Red Hat OpenShift 4-fürtön való futtatásán. Az Open Libertyről további információt az Open Liberty projekt oldalán talál. A WebSphere Liberty szolgáltatással kapcsolatos további információkért tekintse meg a WebSphere Liberty termékoldalát.

Ez a cikk részletes útmutató az Open/WebSphere Liberty Azure Red Hat OpenShift 4-fürtön való futtatásához. Az Azure Red Hat OpenShift 4-fürtre való áttérést felgyorsító automatizáltabb megoldásért tekintse meg az IBM WebSphere Liberty és az Open Liberty üzembe helyezését az Azure Red Hat OpenShiften.

Ez a cikk segítséget nyújt az üzembe helyezés gyors elvégzéséhez. Mielőtt éles környezetben járnál, érdemes megismerkedned a Tuning Liberty-et.

Fontos

Bár az Azure Red Hat OpenShiftet a Red Hat és a Microsoft közösen tervezi, üzemelteti és támogatja, hogy integrált támogatási élményt nyújtson, az Azure Red Hat OpenShiften futtatott szoftverekre, beleértve a jelen cikkben ismertetetteket, a saját támogatási és licencfeltételei vonatkoznak. Az Azure Red Hat OpenShift támogatásáról további információt az Azure Red Hat OpenShift 4 támogatási életciklusában talál. Az ebben a cikkben ismertetett szoftverek támogatásával kapcsolatos további információkért tekintse meg a szoftver fő lapjait a cikkben felsoroltak szerint.

Előfeltételek

Feljegyzés

Az Azure Red Hat OpenShift legalább 40 magot igényel egy OpenShift-fürt létrehozásához és futtatásához. Az új Azure-előfizetés alapértelmezett Azure-erőforráskvótája nem felel meg ennek a követelménynek. Ha növelni szeretné az erőforráskorlátot, olvassa el a Standard kvóta: Korlátok növelése virtuálisgép-sorozatok szerint című témakört. Vegye figyelembe, hogy az ingyenes próbaverziós előfizetés nem jogosult kvótanövelésre, mielőtt kvótanövelést kérne, frissítsen használatalapú fizetéses előfizetésre .

Az útmutató sikeres használatához kövesse az alábbi előfeltételeket.

  1. Készítsen elő egy helyi gépet Unix-szerű operációs rendszerrel (például Ubuntu, macOS).

  2. Telepítse a Java Standard kiadás 17-es vagy újabb verzióját (például Eclipse Open J9).

  3. Telepítse a Maven 3.5.0-s vagy újabb verzióját.

  4. Telepítse a Dockert az operációs rendszerhez.

  5. Telepítse az Azure CLI 2.0.75-ös vagy újabb verzióját.

  6. Ellenőrizze és telepítse envsubst , hogy nincs-e előre telepítve az operációs rendszerben.

  7. Klónozza a minta kódját a helyi rendszeren. A minta a GitHubon található.

  8. Kövesse az Azure Red Hat OpenShift 4-fürt létrehozása című témakör utasításait.

    Bár a "Get a Red Hat pull secret" (Red Hat lekérési titkos kód lekérése) lépés nem kötelezőként van megjelölve, ehhez a cikkhez szükséges. A lekéréses titkos kód lehetővé teszi, hogy az Azure Red Hat OpenShift-fürt megkeresse az Open Liberty Operátort.

    Ha memóriaigényes alkalmazásokat szeretne futtatni a fürtön, adja meg a feldolgozó csomópontok megfelelő virtuálisgép-méretét a --worker-vm-size paraméterrel. Például Standard_E4s_v3 az Elasticsearch operátor fürtre való telepítéséhez szükséges minimális virtuálisgép-méret. További információk:

  9. Csatlakozás egy Azure Red Hat OpenShift 4-fürtre való Csatlakozás lépéseit követve.

    • Mindenképpen kövesse az "OpenShift parancssori felület telepítése" című témakör lépéseit, mert a parancsot a oc jelen cikk későbbi részében használjuk.
    • Írja le a fürtkonzol URL-címét. Úgy kell kinéznie, mint https://console-openshift-console.apps.<random>.<region>.aroapp.io/.
    • Jegyezze fel a kubeadmin hitelesítő adatokat.
    • Mindenképpen kövesse az "Csatlakozás az OpenShift parancssori felület használatával" című témakörben leírt lépéseket a kubeadmin hitelesítő adatokkal.

Az Open Liberty OpenShift operátor telepítése

A fürt létrehozása és csatlakoztatása után telepítse az Open Liberty Operátort. Az Open Liberty Operátor fő kezdőoldala a GitHubon található.

  1. Jelentkezzen be az OpenShift webkonzolra a böngészőből a kubeadmin hitelesítő adatok használatával.

  2. Lépjen az Operátor operátorhubra>, és keressen rá az Open Liberty kifejezésre.

  3. A keresési eredmények közül válassza a Szabadság megnyitása lehetőséget.

  4. Válassza a Telepítés lehetőséget.

  5. A Telepítési operátor lapon ellenőrizze a frissítési csatorna 1.2-es verzióját, a fürt összes névterét (alapértelmezett) a telepítési módhoz, és az Automatikus frissítés jóváhagyását:

    Képernyőkép az Open Liberty Operátor operátor-előfizetésének létrehozásáról.

  6. Válassza a Telepítés lehetőséget, és várjon egy-két percet, amíg a telepítés befejeződik.

  7. Figyelje meg, hogy az Open Liberty operátor telepítése sikeresen megtörtént, és használatra kész. Ha nem, a folytatás előtt diagnosztizálja és oldja meg a problémát.

    Az Open Liberty-et megjelenítő telepített operátorok telepítve vannak.

OpenShift-névtér létrehozása a Java-alkalmazáshoz

Az alábbi lépéseket követve hozzon létre egy OpenShift-névteret az alkalmazással való használatra:

  1. Győződjön meg arról, hogy bejelentkezett az OpenShift-webkonzolra a böngészőből a kubeadmin hitelesítő adatok használatával.

  2. Lépjen Rendszergazda istration>Namespaces>Create Namespace (Névtér létrehozása) elemre.

  3. Adja meg a open-liberty-demo Nevet, és válassza a Létrehozás lehetőséget a következőhöz hasonlóan.

    Képernyőkép a névtér létrehozásáról.

Azure Database for MySQL létrehozása

Az alábbi lépésekkel beállíthat egy Azure Database for MySQL-t az alkalmazáshoz való használatra. Ha az alkalmazás nem igényel adatbázist, kihagyhatja ezt a szakaszt.

  1. Hozzon létre egy rugalmas Azure Database for MySQL-kiszolgálót a következő lépések végrehajtásával: Rövid útmutató: Az Azure Portal használatával hozzon létre egy Rugalmas Azure Database for MySQL-kiszolgálót. Térjen vissza ehhez a dokumentumhoz az adatbázis létrehozása után.

    Feljegyzés

    Az Alapszintű lépéseknél írja le a Kiszolgálónév.mysql.database.azure.com, Rendszergazda felhasználónév és Jelszó értékeket.

  2. Az adatbázis létrehozása után nyissa meg az adatbázis>hálózatkezelését.

    1. A Nyilvános hozzáférés csoportban győződjön meg arról, hogy az erőforrás nyilvános IP-címmel való nyilvános hozzáférésének engedélyezése az interneten keresztül történik.
    2. Válassza a Nyilvános hozzáférés engedélyezése bármely Azure-szolgáltatásból a kiszolgálóhoz lehetőséget.
    3. Győződjön meg arról, hogy az ügyfél IPv4-címe szerepel a tűzfalszabályok engedélyezési listáján.

    Képernyőkép a mysql-adatbázis hálózatkezelésének konfigurálásáról.

  3. Nyissa meg az adatbázist> Csatlakozás> Válassza ki Csatlakozás az alkalmazás>JDBC-ből. Írja le a portszámot az adatbázis-kiszolgáló címe után. A 3306 például a következő példában szereplő portszám.

    String url="jdbc:mysql://<Server name>.mysql.database.azure.com:3306/{your_database}?useSSL=true";myDbConn=DriverManager.getConnection(url, "<Server admin username>", "{your_password}");
    
  4. Nyissa meg az adatbázis>adatbázisait, válassza a> Hozzáadás lehetőséget. Adjon meg egy értéket a Név mezőben, majd a Mentés gombra kattintva hozzon létre egy új adatbázist. Ez az adatbázis sématípussal rendelkezik felhasználóként, és később használatos az alkalmazáshoz.

    Feljegyzés

    Írja le a létrehozott adatbázis nevét .

A Liberty alkalmazás előkészítése

Ebben az útmutatóban egy Java Enterprise kiadás 8-as alkalmazást használunk példaként. Az Open Liberty egy Java Enterprise kiadás 8 teljes profillal kompatibilis kiszolgáló, így könnyen futtathatja az alkalmazást. Open Liberty is Jakarta Enterprise kiadás 8 teljes profil kompatibilis.

Az alkalmazás futtatása az Open Libertyben

Az alkalmazás Open Liberty-en való futtatásához létre kell hoznia egy Open Liberty-kiszolgáló konfigurációs fájlját, hogy a Liberty Maven beépülő modul becsomagolni tudja az alkalmazást az üzembe helyezéshez. A Liberty Maven beépülő modul nem szükséges az alkalmazás OpenShiftben való üzembe helyezéséhez. Ebben a példában azonban az Open Liberty fejlesztői (fejlesztői) módjával használjuk. A fejlesztői mód lehetővé teszi az alkalmazás helyi futtatását. Ha többet szeretne megtudni a webalkalmazásról, olvassa el a liberty-maven-pluginWebalkalmazás létrehozása a Mavennel című témakört.

Az ebben a szakaszban leírt lépéseket követve készítse elő a mintaalkalmazást a jelen cikkben szereplő későbbi használatra. Ezek a lépések a Maven és a liberty-maven-plugin.

Az alkalmazás kivétele

Klónozza az útmutató mintakódját. A minta a GitHubon található.

git clone https://github.com/Azure-Samples/open-liberty-on-aro.git
cd open-liberty-on-aro
git checkout 20231026

Ha "leválasztott HEAD" állapotú üzenet jelenik meg, ezt az üzenetet nyugodtan figyelmen kívül hagyhatja. Ez csak azt jelenti, hogy kivett egy címkét.

Van néhány minta az adattárban. Open-liberty-on-aro/3-integration/connect-db/mysql-t használunk. Az alkalmazás fájlstruktúrája a következő:

open-liberty-on-aro/3-integration/connect-db/mysql
├─ src/main/
│  ├─ aro/
│  │  ├─ db-secret.yaml
│  │  ├─ openlibertyapplication.yaml
│  ├─ liberty/config/
│  │  ├─ server.xml
│  ├─ java/
│  ├─ resources/
│  ├─ webapp/
├─ Dockerfile
├─ Dockerfile-wlp
├─ pom.xml

A java, az erőforrások és a webalkalmazás könyvtárai tartalmazzák a mintaalkalmazás forráskódját. A kód deklarál és használ egy nevű jdbc/JavaEECafeDBadatforrást.

Az aro könyvtárban két üzembehelyezési fájlt helyeztünk el. db-secret.xml adatbázis-kapcsolati hitelesítő adatokkal rendelkező titkos kulcsok létrehozására szolgál. Az openlibertyapplication.yaml fájl az alkalmazás lemezképének üzembe helyezésére szolgál.

A gyökérkönyvtárban két Docker-fájlt helyeztünk el. A Dockerfile és a Dockerfile-wlp a helyi hibakereséshez, valamint az Open Liberty és a WebSphere Liberty használatával történő Azure Red Hat OpenShift-üzembe helyezés rendszerképének létrehozásához használatos.

A liberty/config könyvtárban a server.xml az Open Liberty és a WebSphere Liberty fürt adatbázis-kapcsolatának konfigurálására szolgál.

Projekt összeállítása

Most, hogy összegyűjtötte a szükséges tulajdonságokat, létrehozhatja az alkalmazást. A projekt POM-fájlja számos tulajdonságot olvas be a környezetből.

cd <path-to-your-repo>/open-liberty-on-aro/3-integration/connect-db/mysql

# The following variables are used for deployment file generation
export DB_SERVER_NAME=<Server name>.mysql.database.azure.com
export DB_PORT_NUMBER=3306
export DB_NAME=<Database name>
export DB_USER=<Server admin username>
export DB_PASSWORD=<Server admin password>
export NAMESPACE=open-liberty-demo

mvn clean install

Az alkalmazás helyi tesztelése

liberty:devc A parancs használatával helyileg futtathatja és teszteli a projektet, mielőtt bármilyen Azure-összetettséggel foglalkozna. További információkért liberty:devclásd a Liberty beépülő modul dokumentációját.

  1. Ha még nem tette meg, indítsa el a helyi Docker-környezetet. Az ehhez szükséges utasítások a gazdagép operációs rendszerétől függően változnak.

  2. Az alkalmazás liberty:devc indítása módban

    cd <path-to-your-repo>/open-liberty-on-aro/3-integration/connect-db/mysql
    
    # If you are running with Open Liberty
    mvn liberty:devc -DcontainerRunOpts="-e DB_SERVER_NAME=${DB_SERVER_NAME} -e DB_PORT_NUMBER=${DB_PORT_NUMBER} -e DB_NAME=${DB_NAME} -e DB_USER=${DB_USER} -e DB_PASSWORD=${DB_PASSWORD}" -Dcontainerfile=Dockerfile
    
    # If you are running with WebSphere Liberty
    mvn liberty:devc -DcontainerRunOpts="-e DB_SERVER_NAME=${DB_SERVER_NAME} -e DB_PORT_NUMBER=${DB_PORT_NUMBER} -e DB_NAME=${DB_NAME} -e DB_USER=${DB_USER} -e DB_PASSWORD=${DB_PASSWORD}" -Dcontainerfile=Dockerfile-wlp
    
  3. Ellenőrizze, hogy az alkalmazás a várt módon működik-e. Ha sikeres, a parancs kimenetében hasonló [INFO] [AUDIT] CWWKZ0003I: The application javaee-cafe updated in 1.930 seconds. üzenetnek kell megjelennie. Nyissa meg https://localhost:9443/ a böngészőben, és ellenőrizze, hogy az alkalmazás elérhető-e, és minden függvény működik-e.

  4. Nyomja le a Control+C billentyűt a üzemmód leállításához.liberty:devc

Az alkalmazás lemezképének előkészítése

A Liberty-alkalmazás Azure Red Hat OpenShift 4-fürtön való üzembe helyezéséhez és futtatásához tárolóba kell helyeznie az alkalmazást Docker-rendszerképként Open Liberty-tárolórendszerképek vagy WebSphere Liberty-tárolórendszerképek használatával.

Hajtsa végre az alábbi lépéseket az alkalmazás lemezképének létrehozásához:

Az alkalmazás létrehozása és leküldés a képstreambe

Mivel már sikeresen futtatta az alkalmazást a Liberty Docker-tárolóban, a rendszerképet távolról fogja létrehozni a fürtön az alábbi parancsok végrehajtásával.

  1. Győződjön meg arról, hogy már bejelentkezett az OpenShift parancssori felületére a kubeadmin hitelesítő adatok használatával.

  2. Azonosítsa a forráskönyvtárat és a Dockerfile-t.

    cd <path-to-your-repo>/open-liberty-on-aro/3-integration/connect-db/mysql
    
    # Fetch maven artifactId as image name, maven build version as image version
    export IMAGE_NAME=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.artifactId}' --non-recursive exec:exec)
    export IMAGE_VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)
    
    # If you are building with Open Liberty base image, the existing Dockerfile is ready for you
    
    # If you are building with WebSphere Liberty base image, uncomment and execute the following two commands to rename Dockerfile-wlp to Dockerfile
    # mv Dockerfile Dockerfile.backup
    # mv Dockerfile-wlp Dockerfile
    
  3. Projekt módosítása "open-liberty-demo" értékre

    oc project open-liberty-demo
    
  4. Képstream létrehozása.

    oc create imagestream ${IMAGE_NAME}
    
  5. Hozzon létre egy buildkonfigurációt, amely megadja a buildkimenet képstreamcímkéjét.

    oc new-build --name ${IMAGE_NAME}-config --binary --strategy docker --to ${IMAGE_NAME}:${IMAGE_VERSION}
    
  6. Indítsa el a buildet, hogy feltöltse a helyi tartalmat, a tárolót és a kimenetet a korábban megadott képstream címkére.

    oc start-build ${IMAGE_NAME}-config --from-dir . --follow
    

Alkalmazás üzembe helyezése az Azure Red Hat OpenShift 4-fürtön

Most már üzembe helyezheti a Liberty-mintaalkalmazást a korábban létrehozott Azure Red Hat OpenShift 4-fürtön az előfeltételek teljesítésekor.

Az alkalmazás üzembe helyezése a webkonzolról

Mivel a Liberty-alkalmazások kezelésére az Open Liberty Operátort használjuk, létre kell hoznunk a saját egyéni erőforrásdefiníciójának OpenLibertyApplicationegy példányát. Az operátor gondoskodik az üzembe helyezéshez szükséges OpenShift-erőforrások kezelésének minden aspektusáról.

  1. Jelentkezzen be az OpenShift webkonzolra a böngészőből a kubeadmin hitelesítő adatok használatával.

  2. Bontsa ki a Kezdőlapot, válassza ki a Projektek>open-liberty-demo lehetőséget.

  3. Keresse meg a telepített operátorokat>.

  4. A lap közepén válassza a Szabadság megnyitása lehetőséget.

  5. A megadott API-k közül válassza az OpenLibertyApplication lehetőséget. A felhasználói felületen található elemek navigációja a használt technológiák tényleges elszigetelési hierarchiáját tükrözi.

    Az Azure Red Hat OpenShift Java-elszigetelésének diagramja.

  6. Válassza az OpenLibertyApplication létrehozása lehetőséget.

  7. Válassza a YAML-nézetet a konfiguráláshoz.

  8. Cserélje le a létrehozott yaml-t a sajátjaira, amely a path-to-repo/3-integration/connect-db/mysql/target/openlibertyapplication.yaml címen található<.>

  9. Válassza a Létrehozás lehetőséget. A rendszer visszakerül az OpenLibertyApplications listájára.

  10. Keresse meg a számítási feladatok titkos kulcsait>.

  11. Válassza a LÉTREHOZÁS> a YAML-ből lehetőséget.

  12. Cserélje le a létrehozott yaml-t a sajátjaira, amely a path-to-repo/3-integration/connect-db/mysql/target/db-secret.yaml címen található<.>

  13. Válassza a Létrehozás lehetőséget. Visszakerül a Titkos adatok lapra.

  14. Keresse meg a telepített operátorokat>>: Open Liberty>OpenLibertyApplication.

  15. Válassza a javaee-café-mysql lehetőséget.

  16. A lap közepén válassza az Erőforrások lehetőséget.

  17. A táblázatban válassza a javaee-café-mysql hivatkozását az Útvonal típusával.

  18. A megnyíló lapon válassza a Hely alatti hivatkozást.

Megjelenik a böngészőben megnyitott alkalmazás kezdőlapja.

Az alkalmazás törlése a webkonzolról

Ha végzett az alkalmazással, az alábbi lépésekkel törölheti az alkalmazást az Open Shiftből.

  1. A bal oldali navigációs panelen bontsa ki az Operátorok bejegyzést.
  2. Válassza a Telepített operátorok lehetőséget.
  3. Válassza a Szabadság megnyitása lehetőséget.
  4. A lap közepén válassza az OpenLibertyApplication lehetőséget.
  5. Javaee-café-mysql esetén válassza a függőleges három pontot (három függőleges pont), majd az OpenLibertyApplication törlése lehetőséget.
  6. Az alkalmazás törléséhez válassza a Törlés lehetőséget.

Az alábbi lépéseket követve törölheti a titkos kódot az Open Shiftből.

  1. Keresse meg a számítási feladatok titkos kulcsait>.
  2. Válassza a db-secret-mysql lehetőséget.
  3. Válassza a Titkos kulcs törlése műveletek>lehetőséget.
  4. A titkos kód törléséhez válassza a Törlés lehetőséget.

Az erőforrások eltávolítása

Az Azure Red Hat OpenShift-fürt törlése az oktatóanyag lépéseit követve: Azure Red Hat OpenShift 4-fürt törlése

Következő lépések

Ebben az útmutatóban megtanulta, hogyan:

  • A Liberty alkalmazás előkészítése
  • Az alkalmazás lemezképének létrehozása
  • A tárolóalapú alkalmazás futtatása egy Azure Red Hat OpenShift 4-fürtön a grafikus felhasználói felület és a parancssori felület használatával

Az útmutatóban használt hivatkozásokból többet is megtudhat: