Java-alkalmazás üzembe helyezése a WebLogic Serverrel egy Azure Kubernetes Service-fürtön

Ez a cikk bemutatja, hogyan:

  • Futtassa Java, Java Enterprise kiadás vagy Jakarta Enterprise kiadás az Oracle WebLogic Serveren (WLS).
  • WLS-fürt felállása az Azure Marketplace-ajánlattal.
  • Hozza létre az alkalmazás Docker-rendszerképét, hogy kiegészítő rendszerképként szolgáljon a WebLogic Deploy Tooling (WDT) modellek és alkalmazások biztosításához.
  • Helyezze üzembe a tárolóalapú alkalmazást a meglévő WLS-fürtben az AKS-en a Microsoft Azure SQL-hez való kapcsolattal.

Ez a cikk a WLS-hez készült Azure Marketplace-ajánlatot használja az AKS-be való utazás felgyorsításához. Az ajánlat automatikusan kiépít több Azure-erőforrást, köztük a következő erőforrásokat:

  • Azure Container Registry-példány
  • AKS-fürt
  • Egy Azure-alkalmazás Átjáró bejövőforgalom-vezérlő (AGIC) példánya
  • A WebLogic operátor
  • Tárolórendszerkép, beleértve a WebLogic-futtatókörnyezetet
  • WLS-fürt alkalmazás nélkül

Ez a cikk ezután lépésről lépésre bemutatja a kiegészítő rendszerképek készítését egy meglévő WLS-fürt frissítéséhez. A segédrendszerkép alkalmazás- és WDT-modelleket biztosít.

A teljes automatizálás érdekében kiválaszthatja az alkalmazást, és konfigurálhatja az adatforrás-kapcsolatot az Azure Portalról az ajánlat üzembe helyezése előtt. Az ajánlat megtekintéséhez látogasson el az Azure Portalra.

A WebLogic-kiszolgáló Azure Kubernetes Service-en való beállításával kapcsolatos részletes útmutatásért tekintse meg az Oracle hivatalos dokumentációját az Azure Kubernetes Service-ben.

Előfeltételek

  • Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
  • Győződjön meg arról, hogy a jelen cikk végrehajtásához használt Azure-identitás tulajdonosi szerepkört kap az aktuális előfizetésben, vagy a közreműködői és felhasználói hozzáférés Rendszergazda istrator szerepköröket az aktuális előfizetésben. Az Azure-szerepkörök áttekintéséért lásd : Mi az Azure szerepköralapú hozzáférés-vezérlése (Azure RBAC)? A WLS által az AKS-en megkövetelt konkrét szerepkörökkel kapcsolatos részletekért lásd az Azure beépített szerepköreit.
  • Rendelkezik egy Oracle egyszeri bejelentkezési (SSO) fiók hitelesítő adataival. A létrehozásról az Oracle-fiók létrehozása című témakörben olvashat.
  • Fogadja el a WLS licencfeltételeit.
    • Nyissa meg az Oracle Container Registryt , és jelentkezzen be.
    • Ha támogatási jogosultsága van, válassza a Köztes szoftver lehetőséget, majd keresse meg és válassza ki a weblogic_cpu.
    • Ha nem rendelkezik az Oracle támogatási jogosultságával, válassza a Middleware lehetőséget, majd keresse meg és válassza ki a weblogicot.

      Feljegyzés

      Éles környezetbe való kezdés előtt szerezze be a támogatási jogosultságot az Oracle-től. Ennek elmulasztása nem biztonságos képek futtatását eredményezi, amelyek nincsenek javítva a kritikus biztonsági hibák miatt. Az Oracle kritikus javításfrissítéseiről további információt a Kritikus javítások Frissítések, a Biztonsági riasztások és az Oracle közleményei című témakörben talál.

    • Fogadja el a licencszerződést.
  • Helyi gép előkészítése Unix-szerű operációs rendszerrel (például Ubuntu, Azure Linux, macOS, Linuxos Windows-alrendszer).
    • Azure parancssori felület (CLI). Annak tesztelésére használható az --version , hogy az az működik-e. Ezt a dokumentumot a 2.55.1-es verzióval teszteltük.
    • Docker. Ezt a dokumentumot a Docker 20.10.7-es verziójával teszteltük. Annak tesztelésére használható docker info , hogy a Docker Daemon fut-e.
    • kubectl. Annak tesztelésére használható kubectl version , hogy a kubectl működik-e. Ezt a dokumentumot az 1.21.2-es verzióval teszteltük.
    • A futtatni kívánt WLS verziójával kompatibilis Java JDK. A cikk arra utasítja, hogy telepítse a WLS JDK 11-et használó verzióját. Az Azure az OpenJDK Microsoft Buildjének használatát javasolja. Győződjön meg arról, hogy a JAVA_HOME környezeti változó megfelelően van beállítva azokban a rendszerhéjakban, amelyekben a parancsokat futtatja.
    • Maven 3.5.0 vagy újabb.
    • Győződjön meg arról, hogy telepítve van a zip/unzip segédprogram. Annak tesztelésére használható zip/unzip -v , hogy működik-e zip/unzip .
  • A cikkben szereplő összes lépés, kivéve a Dockert, az Azure Cloud Shellben is végrehajtható. További információ az Azure Cloud Shellről: Mi az az Azure Cloud Shell?

WLS üzembe helyezése az AKS-en

Az ebben a szakaszban ismertetett lépések a WLS AKS-en való lehető legegyszerűbb üzembe helyezését irányítja. Az AKS-en futó WLS az Azure-integrációk széles és mély választékát kínálja. További információkért tekintse meg az Oracle WebLogic Server Azure Kubernetes Service-en való futtatásának megoldásait?

Az alábbi lépések bemutatják, hogyan keresheti meg a WLS-t az AKS-ajánlatban, és hogyan töltheti ki az Alapismeretek panelt.

  1. Az Azure Portal tetején található keresősávon adja meg a weblogic kifejezést. Az automatikusan javasolt keresési eredmények között a Marketplace szakaszban válassza a WebLogic-kiszolgálót az AKS-en.

    Képernyőkép az Azure Portalról, amelyen a WLS látható a keresési eredmények között.

    Az AKS-ajánlatban közvetlenül is megnyithatja a WebLogic-kiszolgálót.

  2. Az ajánlat lapon válassza a Létrehozás lehetőséget.

  3. Az Alapszintű beállítások panelen győződjön meg arról, hogy az Előfizetés mezőben látható érték megegyezik az Azure-ban bejelentkezett értékkel. Győződjön meg arról, hogy az előfeltételek szakaszban felsorolt szerepkörök szerepelnek.

    Képernyőkép az Azure Portalról, amelyen a WebLogic Server látható az AKS-en.

  4. Az ajánlatot üres erőforráscsoportban kell üzembe helyeznie. Az Erőforráscsoport mezőben válassza az Új létrehozása lehetőséget, majd adja meg az erőforráscsoport értékét. Mivel az erőforráscsoportoknak egyedinek kell lenniük egy előfizetésen belül, válasszon egy egyedi nevet. Az egyedi nevek egyszerű módja, ha a monogram, a mai dátum és valamilyen azonosító kombinációját használják – például ejb0723wls.

  5. A Példány részletei csoportban válassza ki az üzembe helyezéshez szükséges régiót. Azoknak az Azure-régióknak a listáját, ahol az AKS elérhető, tekintse meg az AKS-régiók rendelkezésre állását.

  6. A WebLogic hitelesítő adatai területen hagyja meg a Felhasználónév a WebLogic Rendszergazda istrator alapértelmezett értékét.

  7. wlsAksCluster2022 Adja meg a WebLogic-Rendszergazda istrator jelszavát. Használja ugyanazt az értéket a WebLogic-modell titkosítási mezőinek megerősítéséhez és jelszavához.

  8. Görgessen az Alapismeretek panel aljára, és figyelje meg a dokumentáció, a közösségi támogatás és a problémák jelentésének hasznos hivatkozásait.

  9. Válassza a Tovább lehetőséget.

Az alábbi lépések bemutatják, hogyan indíthatja el az üzembe helyezési folyamatot.

  1. Görgessen az Oracle egyszeri bejelentkezési (SSO) fiók megadása című szakaszhoz. Adja meg oracle SSO-hitelesítő adatait az előfeltételekből.

    Képernyőkép az Azure Portalról, amelyen a konfigurált egyszeri bejelentkezés panel látható.

  2. A továbblépés előtt kövesse az információs mezőben szereplő lépéseket, és el kell fogadnia az Oracle Standard feltételeket és korlátozásokat.

  3. Attól függően, hogy az Oracle SSO-fiók rendelkezik-e Oracle-támogatási jogosultságtal, válassza ki a WebLogic Server-rendszerképek típusának megfelelő beállítást. Ha a fiók rendelkezik támogatási jogosultságokkal, válassza a Patched WebLogic Server Images lehetőséget. Ellenkező esetben válassza az Általános WebLogic Server-rendszerképek lehetőséget.

  4. Hagyja meg az értéket a WebLogic-kiszolgáló kívánt kombinációjának kiválasztásában az alapértelmezett értéken. A WLS, A JDK és az operációs rendszer verziójához számos választási lehetőség közül választhat.

  5. Az Alkalmazás szakaszban, az Alkalmazás üzembe helyezése mellett válassza a Nem lehetőséget.

Az alábbi lépések lehetővé teszik, hogy a WLS felügyeleti konzol és a mintaalkalmazás egy beépített Application Gateway bemeneti bővítményrel legyen elérhetővé téve a nyilvános internetnek. További információ: Mi az Application Gateway bejövőforgalom-vezérlője?

Képernyőkép az Azure Portalról, amely a lehető legegyszerűbb terheléselosztó-konfigurációt mutatja az Oracle WebLogic-kiszolgáló létrehozása az Azure Kubernetes Service-en lapon.

  1. A Tovább gombra kattintva megtekintheti a TLS/SSL panelt.

  2. A Tovább gombra kattintva megtekintheti a Terheléselosztás panelt.

  3. A terheléselosztási beállítások mellett válassza az Application Gateway bejövőforgalom-vezérlője lehetőséget.

  4. Az Application Gateway bejövőforgalom-vezérlőjében minden előre kitöltött mezőnek meg kell jelennie a virtuális hálózat és az alhálózat alapértelmezett értékeivel. Hagyja meg az alapértelmezett értékeket.

  5. A Rendszergazda istration Console bejövő forgalmának létrehozásához válassza az Igen lehetőséget.

    Képernyőkép az Azure Portalról, amely az Application Gateway bejövőforgalom-vezérlő konfigurációját mutatja az Oracle WebLogic-kiszolgáló létrehozása az Azure Kubernetes Service-en lapon.

  6. Hagyja meg a többi mező alapértelmezett értékeit.

  7. Válassza az Áttekintés + létrehozás lehetőséget. Győződjön meg arról, hogy az ellenőrzés nem hiúsul meg. Ha nem sikerül, javítsa ki az érvényesítési problémákat, majd válassza a Véleményezés + létrehozás lehetőséget.

  8. Válassza a Létrehozás lehetőséget.

  9. Az üzembe helyezés előrehaladásának nyomon követése az Üzembe helyezés folyamatban van lapon.

A kiválasztott régió hálózati feltételeitől és egyéb tevékenységeitől függően az üzembe helyezés akár 50 percet is igénybe vehet.

Várakozás közben elvégezheti az Azure SQL Database létrehozása című szakasz lépéseit. Térjen vissza erre a szakaszra, amikor befejezte az adatbázis létrehozását.

Az üzembe helyezés kimenetének vizsgálata

Az ebben a szakaszban ismertetett lépésekkel ellenőrizheti, hogy az üzembe helyezés sikeres volt-e.

Ha az Üzembe helyezés folyamatban van lapról navigált, az alábbi lépések bemutatják, hogyan léphet vissza az adott lapra. Ha továbbra is azon a lapon van, amelyen az üzembe helyezés befejeződött, ugorjon az 5. lépésre a következő képernyőkép után.

  1. Az Azure Portal bármely oldalának sarkában válassza a hamburger menüt, és válassza az Erőforráscsoportok lehetőséget.

  2. Írja be a korábban létrehozott erőforráscsoport első néhány karakterét a szövegszűrővel ellátott mezőbe. Ha követte az ajánlott konvenciót, írja be a monogramját, majd válassza ki a megfelelő erőforráscsoportot.

  3. A navigációs panel Gépház szakaszában válassza a Központi telepítések lehetőséget. Ekkor megjelenik az erőforráscsoportba tartozó központi telepítések rendezett listája, a legutóbbival.

  4. Görgessen a lista legrégebbi bejegyzéséhez. Ez a bejegyzés az előző szakaszban elindított üzembe helyezésnek felel meg. Válassza ki a legrégebbi üzembe helyezést az alábbi képernyőképen látható módon.

    Képernyőkép az Azure Portalról, amelyen az erőforráscsoport üzembe helyezéseinek listája látható.

  5. A navigációs ablakban válassza a Kimenetek lehetőséget. Ez a lista az üzembe helyezés kimeneti értékeit jeleníti meg. A kimenetek hasznos információkat tartalmaznak.

  6. Az adminConsoleExternalUrl érték az AKS-fürt WLS felügyeleti konzoljára mutató, teljes mértékben minősített, nyilvános internetre mutató hivatkozás. A vágólapra mutató hivatkozás másolásához válassza a mezőérték melletti másolás ikont. Mentse ezt az értéket későbbre.

  7. A clusterExternalUrl érték a teljes mértékben minősített, nyilvános internetes látható hivatkozás a WLS-ben ezen az AKS-fürtön üzembe helyezett mintaalkalmazásra. A vágólapra mutató hivatkozás másolásához válassza a mezőérték melletti másolás ikont. Mentse ezt az értéket későbbre.

  8. A shellCmdtoOutputWlsImageModelYaml értéke a tárolólemezképbe épített WDT-modell base64-sztringje. Mentse ezt az értéket későbbre.

  9. A shellCmdtoOutputWlsImageProperties értéke a tárolólemezképbe épített WDT-modelltulajdonságok base64 sztringje. Mentse ezt az értéket későbbre.

  10. A shellCmdto Csatlakozás Aks érték az Azure CLI-parancs, amely ehhez az AKS-fürthöz csatlakozik. Ez lehetővé teszi a kubectl fürt felügyeletét.

A kimenetekben szereplő többi érték meghaladja a jelen cikk hatókörét, de részletes ismertetést a WebLogic on AKS felhasználói útmutatójában talál.

Azure SQL Database-adatbázis létrehozása

Ha önálló Azure SQL Database-adatbázist szeretne létrehozni az alkalmazással való használatra, kövesse a gyorsútmutató lépéseit : Egyetlen adatbázis létrehozása az Azure SQL Database-ben. Figyelje meg a következő különbségeket:

  • Az Alapszintű lépéseknél írja le az erőforráscsoport, az adatbázis neve, <a kiszolgálónév.database.windows.net>, a kiszolgálói rendszergazdai bejelentkezés és a jelszó értékeit. Ez a cikk az adatbázis erőforráscsoport-értékére <db-resource-group> hivatkozik.

  • A hálózatkezelési lépésben állítsa a Csatlakozás ivity metódust nyilvános végpontra, állítsa az Azure-szolgáltatások és -erőforrások számára a kiszolgáló igen értékre való elérését, és állítsa az Aktuális ügyfél IP-címének hozzáadása igen értékre.

    Képernyőkép az Azure Portalról, amelyen az SQL Database létrehozása lap Hálózatkezelés lapja látható a Csatlakozás ivity metódussal és a tűzfalszabályok beállításaival kiemelve.

Feljegyzés

Az adatbázishoz kiválasztott kiszolgáló nélküli számítási szint pénzt takarít meg azáltal, hogy inaktív időszakokban alvó állapotba helyezi az adatbázist. A mintaalkalmazás sikertelen lesz, ha az adatbázis alvó állapotban van az alkalmazás indításakor.

Ha az adatbázist felébresztésre szeretné kényszeríteni, a lekérdezésszerkesztővel futtathat lekérdezést. Kövesse az adatbázis lekérdezésének lépéseit. Íme egy példa lekérdezés: SELECT * FROM COFFEE;.

  1. Hozzon létre egy sémát a mintaalkalmazáshoz. A Lekérdezésszerkesztő panel megnyitásához kövesse az adatbázis lekérdezését. Írja be és futtassa az alábbi lekérdezést:

    CREATE TABLE COFFEE (ID NUMERIC(19) NOT NULL, NAME VARCHAR(255) NULL, PRICE FLOAT(32) NULL, PRIMARY KEY (ID));
    CREATE TABLE SEQUENCE (SEQ_NAME VARCHAR(50) NOT NULL, SEQ_COUNT NUMERIC(28) NULL, PRIMARY KEY (SEQ_NAME));
    INSERT INTO SEQUENCE VALUES ('SEQ_GEN',0);
    

    Sikeres futtatás után látnia kell, hogy a Lekérdezés sikeres volt: Érintett sorok: 0. Ha nem látja ezt az üzenetet, a folytatás előtt hárítsa el és oldja meg a problémát.

Létrejön az adatbázis, a táblák, az AKS-fürt és a WLS-fürt. Ha szeretné, megnyithat egy böngészőt, és navigálhat az adminConsoleExternalUrl címére. Jelentkezzen be az AKS-telepítés WLS-ben megadott értékeivel.

Folytathatja az AKS előkészítését a WebLogic-alkalmazás üzemeltetésére.

A mintaalkalmazás konfigurálása és üzembe helyezése

Az ajánlat a képen látható modellen keresztül helyezi üzembe a WLS-fürtöt. A WLS-fürt jelenleg nincs üzembe helyezve.

Ez a szakasz egy mintaalkalmazás segédrendszerkép használatával történő üzembe helyezésével frissíti a WLS-fürtöt.

Az alkalmazás kivétele

Ebben a szakaszban klónozza az útmutató mintakódját. A minta a GitHubon található a weblogic-on-azure adattárban, a javaee/weblogic-café/ mappában. Itt találja az alkalmazás fájlstruktúráját.

weblogic-cafe
├── pom.xml
└── src
    └── main
        ├── java
        │   └── cafe
        │       ├── model
        │       │   ├── CafeRepository.java
        │       │   └── entity
        │       │       └── Coffee.java
        │       └── web
        │           ├── rest
        │           │   └── CafeResource.java
        │           └── view
        │               └── Cafe.java
        ├── resources
        │   ├── META-INF
        │   │   └── persistence.xml
        │   └── cafe
        │       └── web
        │           ├── messages.properties
        │           └── messages_es.properties
        └── webapp
            ├── WEB-INF
            │   ├── beans.xml
            │   ├── faces-config.xml
            │   └── web.xml
            ├── index.xhtml
            └── resources
                └── components
                    └── inputPrice.xhtml

Az adattár klónozásához használja az alábbi parancsokat:

cd <parent-directory-to-check-out-sample-code>
export BASE_DIR=$PWD
git clone --single-branch https://github.com/microsoft/weblogic-on-azure.git --branch 20240201 $BASE_DIR/weblogic-on-azure

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.

A javaee/weblogic-café/:

mvn clean package --file $BASE_DIR/weblogic-on-azure/javaee/weblogic-cafe/pom.xml

A csomagot sikeresen létre kell hozni, és a következő helyen kell elhelyezni: $BA Standard kiadás_DIR/weblogic-on-azure/javaee/weblogic-café/target/weblogic-café.war. Ha nem látja a csomagot, a folytatás előtt elhárítania és meg kell oldania a problémát.

Segédrendszerkép létrehozása a Docker használatával

Az ebben a szakaszban ismertetett lépések bemutatják, hogyan hozhat létre segédrendszerképet. Ez a kép a következő összetevőket tartalmazza:

  • A modell képmodellfájlokban
  • Az Ön alkalmazása
  • A JDBC-illesztő archív fájlja
  • A WebLogic Deploy Tooling telepítése

A kiegészítő rendszerkép egy Docker-tároló lemezképe, amely az alkalmazást és a konfigurációt tartalmazza. A WebLogic Kubernetes-operátor egyesíti a kiegészítő rendszerképet a domain.spec.image WebLogic-kiszolgálót, JDK-t és operációs rendszert tartalmazó AKS-fürtben. A kiegészítő rendszerképekről további információt az Oracle dokumentációjában található Kiegészítő rendszerképek című témakörben talál.

Ez a szakasz egy Linux-terminált igényel, amelyen telepítve van az Azure CLI és a Kubectl.

A rendszerkép létrehozásához kövesse az alábbi lépéseket:

  1. A következő parancsokkal hozzon létre egy könyvtárat a modellek és az alkalmazás szakaszához:

    mkdir -p ${BASE_DIR}/mystaging/models
    cd ${BASE_DIR}/mystaging/models
    
  2. Másolja ki az üzembehelyezési kimenetekből mentett shellCmdtoOutputWlsImageModelYaml értéket, illessze be a Bash ablakba, és futtassa a parancsot. A parancsnak a következő példához hasonlóan kell kinéznie:

    echo -e IyBDb3B5cmlna...Cgo= | base64 -d > model.yaml
    

    Ez a parancs létrehoz egy ${BA Standard kiadás_DIR}/mystaging/models/model.yaml fájlt az alábbi példához hasonló tartalommal:

    # Copyright (c) 2020, 2021, Oracle and/or its affiliates.
    # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
    
    # Based on ./kubernetes/samples/scripts/create-weblogic-domain/model-in-image/model-images/model-in-image__WLS-v1/model.10.yaml
    # in https://github.com/oracle/weblogic-kubernetes-operator.
    
    domainInfo:
      AdminUserName: "@@SECRET:__weblogic-credentials__:username@@"
      AdminPassword: "@@SECRET:__weblogic-credentials__:password@@"
      ServerStartMode: "prod"
    
    topology:
      Name: "@@ENV:CUSTOM_DOMAIN_NAME@@"
      ProductionModeEnabled: true
      AdminServerName: "admin-server"
      Cluster:
        "cluster-1":
          DynamicServers:
            ServerTemplate: "cluster-1-template"
            ServerNamePrefix: "@@ENV:MANAGED_SERVER_PREFIX@@"
            DynamicClusterSize: "@@PROP:CLUSTER_SIZE@@"
            MaxDynamicClusterSize: "@@PROP:CLUSTER_SIZE@@"
            MinDynamicClusterSize: "0"
            CalculatedListenPorts: false
      Server:
        "admin-server":
          ListenPort: 7001
      ServerTemplate:
        "cluster-1-template":
          Cluster: "cluster-1"
          ListenPort: 8001
      SecurityConfiguration:
        NodeManagerUsername: "@@SECRET:__weblogic-credentials__:username@@"
        NodeManagerPasswordEncrypted: "@@SECRET:__weblogic-credentials__:password@@"
    
    resources:
      SelfTuning:
        MinThreadsConstraint:
          SampleMinThreads:
            Target: "cluster-1"
            Count: 1
        MaxThreadsConstraint:
          SampleMaxThreads:
            Target: "cluster-1"
            Count: 10
        WorkManager:
          SampleWM:
            Target: "cluster-1"
            MinThreadsConstraint: "SampleMinThreads"
            MaxThreadsConstraint: "SampleMaxThreads"
    
  3. Hasonló módon másolja ki a shellCmdtoOutputWlsImageProperties értékét, illessze be a Bash ablakba, és futtassa a parancsot. A parancsnak a következő példához hasonlóan kell kinéznie:

    echo -e IyBDb3B5cml...pFPTUK | base64 -d > model.properties
    

    Ez a parancs létrehoz egy ${BA Standard kiadás_DIR}/mystaging/models/model.properties fájlt az alábbi példához hasonló tartalommal:

    # Copyright (c) 2021, Oracle Corporation and/or its affiliates.
    # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
    
    # Based on ./kubernetes/samples/scripts/create-weblogic-domain/model-in-image/model-images/model-in-image__WLS-v1/model.10.properties
    # in https://github.com/oracle/weblogic-kubernetes-operator.
    
    CLUSTER_SIZE=5
    
  4. Az alkalmazásmodell-fájl létrehozásához kövesse az alábbi lépéseket.

    1. A weblogic-café.war másolásához és a wlsdeploy/alkalmazásokba való mentéséhez használja az alábbi parancsokat:

      mkdir -p ${BASE_DIR}/mystaging/models/wlsdeploy/applications
      cp $BASE_DIR/weblogic-on-azure/javaee/weblogic-cafe/target/weblogic-cafe.war ${BASE_DIR}/mystaging/models/wlsdeploy/applications/weblogic-cafe.war
      
    2. Az alábbi parancsokkal hozza létre az alkalmazásmodell-fájlt a megjelenített tartalommal. Mentse a modellfájlt a ${BA Standard kiadás_DIR}/mystaging/models/appmodel.yaml fájlba.

      cat <<EOF >appmodel.yaml
      appDeployments:
        Application:
          weblogic-cafe:
            SourcePath: 'wlsdeploy/applications/weblogic-cafe.war'
            ModuleType: ear
            Target: 'cluster-1'
      EOF
      
  5. A következő parancsokkal töltse le és telepítse a Microsoft SQL Server JDBC-illesztőt a wlsdeploy/externalJDBCLibraries fájlba:

    export DRIVER_VERSION="10.2.1.jre8"
    export MSSQL_DRIVER_URL="https://repo.maven.apache.org/maven2/com/microsoft/sqlserver/mssql-jdbc/${DRIVER_VERSION}/mssql-jdbc-${DRIVER_VERSION}.jar"
    
    mkdir ${BASE_DIR}/mystaging/models/wlsdeploy/externalJDBCLibraries
    curl -m 120 -fL ${MSSQL_DRIVER_URL} -o ${BASE_DIR}/mystaging/models/wlsdeploy/externalJDBCLibraries/mssql-jdbc-${DRIVER_VERSION}.jar
    
  6. Ezután az alábbi parancsokkal hozza létre az adatbázis-kapcsolatmodell-fájlt a megjelenített tartalommal. Mentse a modellfájlt a ${BA Standard kiadás_DIR}/mystaging/models/dbmodel.yaml fájlba. A modell helyőrzőket (titkos sqlserver-secretkód) használ az adatbázis felhasználónévhez, jelszóhoz és URL-címhez. Győződjön meg arról, hogy a következő mezők helyesen vannak beállítva. Az alábbi modell az erőforrás nevét adja meg a következővel jdbc/WebLogicCafeDB: .

    Elem neve Mező Érték
    JNDI-név resources.JDBCSystemResource.<resource-name>.JdbcResource.JDBCDataSourceParams.JNDIName jdbc/WebLogicCafeDB
    Illesztőprogram neve resources.JDBCSystemResource.<resource-name>.JDBCDriverParams.DriverName com.microsoft.sqlserver.jdbc.SQLServerDriver
    Adatbázis URL-címe resources.JDBCSystemResource.<resource-name>.JDBCDriverParams.URL @@SECRET:sqlserver-secret:url@@
    Adatbázis jelszava resources.JDBCSystemResource.<resource-name>.JDBCDriverParams.PasswordEncrypted @@SECRET:sqlserver-secret:password@@
    Adatbázis felhasználóneve resources.JDBCSystemResource.<resource-name>.JDBCDriverParams.Properties.user.Value '@@SECRET:sqlserver-secret:user@@'
    cat <<EOF >dbmodel.yaml
    resources:
      JDBCSystemResource:
        jdbc/WebLogicCafeDB:
          Target: 'cluster-1'
          JdbcResource:
            JDBCDataSourceParams:
              JNDIName: [
                jdbc/WebLogicCafeDB
              ]
              GlobalTransactionsProtocol: None
            JDBCDriverParams:
              DriverName: com.microsoft.sqlserver.jdbc.SQLServerDriver
              URL: '@@SECRET:sqlserver-secret:url@@'
              PasswordEncrypted: '@@SECRET:sqlserver-secret:password@@'
              Properties:
                user:
                  Value: '@@SECRET:sqlserver-secret:user@@'
            JDBCConnectionPoolParams:
              TestTableName: SQL SELECT 1
              TestConnectionsOnReserve: true
    EOF
    
  7. Az alábbi parancsokkal hozzon létre egy alkalmazásarchívumfájlt, majd távolítsa el a wlsdeploy mappát, amelyre már nincs szüksége:

    cd ${BASE_DIR}/mystaging/models
    zip -r archive.zip wlsdeploy
    
    rm -f -r wlsdeploy
    
  8. Az alábbi parancsokkal töltse le és telepítse a WebLogic Deploy Tooling (WDT) eszközt az előkészítési könyvtárban, és távolítsa el a UNIX-környezetekben nem használt weblogic-deploy/bin/*.cmd fájlokat:

    cd ${BASE_DIR}/mystaging
    curl -m 120 -fL https://github.com/oracle/weblogic-deploy-tooling/releases/latest/download/weblogic-deploy.zip -o weblogic-deploy.zip
    
    unzip weblogic-deploy.zip -d .
    rm ./weblogic-deploy/bin/*.cmd
    
  9. A WDT-telepítő eltávolításához használja a következő parancsot:

    rm weblogic-deploy.zip
    
  10. A következő parancsokkal hozhat létre egy kiegészítő rendszerképet a Docker használatával:

    cd ${BASE_DIR}/mystaging
    cat <<EOF >Dockerfile
    FROM busybox
    ARG AUXILIARY_IMAGE_PATH=/auxiliary
    ARG USER=oracle
    ARG USERID=1000
    ARG GROUP=root
    ENV AUXILIARY_IMAGE_PATH=\${AUXILIARY_IMAGE_PATH}
    RUN adduser -D -u \${USERID} -G \$GROUP \$USER
    # ARG expansion in COPY command's --chown is available in docker version 19.03.1+.
    # For older docker versions, change the Dockerfile to use separate COPY and 'RUN chown' commands.
    COPY --chown=\$USER:\$GROUP ./ \${AUXILIARY_IMAGE_PATH}/
    USER \$USER
    EOF
    
  11. Futtassa a parancsot a docker buildx build ${BA Standard kiadás_DIR}/mystaging/Dockerfile használatával, az alábbi példában látható módon:

    cd ${BASE_DIR}/mystaging
    docker buildx build --platform linux/amd64 --build-arg AUXILIARY_IMAGE_PATH=/auxiliary --tag model-in-image:WLS-v1 .
    

    A rendszerkép sikeres létrehozásakor a kimenet az alábbi példához hasonlóan néz ki:

    [+] Building 12.0s (8/8) FINISHED                                   docker:default
    => [internal] load build definition from Dockerfile                          0.8s
    => => transferring dockerfile: 473B                                          0.0s
    => [internal] load .dockerignore                                             1.1s
    => => transferring context: 2B                                               0.0s
    => [internal] load metadata for docker.io/library/busybox:latest             5.0s
    => [1/3] FROM docker.io/library/busybox@sha256:6d9ac9237a84afe1516540f40a0f  0.0s
    => [internal] load build context                                             0.3s
    => => transferring context: 21.89kB                                          0.0s
    => CACHED [2/3] RUN adduser -D -u 1000 -G root oracle                        0.0s
    => [3/3] COPY --chown=oracle:root ./ /auxiliary/                             1.5s
    => exporting to image                                                        1.3s
    => => exporting layers                                                       1.0s
    => => writing image sha256:2477d502a19dcc0e841630ea567f50d7084782499fe3032a  0.1s
    => => naming to docker.io/library/model-in-image:WLS-v1                      0.2s
    
  12. Ha sikeresen létrehozta a lemezképet, akkor a helyi gép Docker-adattárában kell lennie. A rendszerkép létrehozását az alábbi paranccsal ellenőrizheti:

    docker images model-in-image:WLS-v1
    

    Ennek a parancsnak az alábbi példához hasonló kimenetet kell létrehoznia:

    REPOSITORY       TAG       IMAGE ID       CREATED       SIZE
    model-in-image   WLS-v1    76abc1afdcc6   2 hours ago   8.61MB
    

    A rendszerkép létrehozása után a WDT-végrehajtható fájlokat a /auxiliary/weblogic-deploy, valamint a WDT-modellben, tulajdonságban és archív fájlokban kell használni a /kiegészítő/modellekben. Az eredmény ellenőrzéséhez használja az alábbi parancsot a Docker-lemezképen:

    docker run -it --rm model-in-image:WLS-v1 find /auxiliary -maxdepth 2 -type f -print
    

    Ennek a parancsnak az alábbi példához hasonló kimenetet kell létrehoznia:

    /auxiliary/models/model.properties
    /auxiliary/models/dbmodel.yaml
    /auxiliary/models/model.yaml
    /auxiliary/models/archive.zip
    /auxiliary/models/appmodel.yaml
    /auxiliary/Dockerfile
    /auxiliary/weblogic-deploy/LICENSE.txt
    /auxiliary/weblogic-deploy/VERSION.txt
    
  13. A következő lépésekkel küldje le a segédrendszerképet az Azure Container Registrybe:

    1. Nyissa meg az Azure Portalt, és nyissa meg a WSL üzembe helyezése az AKS-ben szakaszban kiépített erőforráscsoportot.

    2. Válassza ki a Tárolóregisztrációs adatbázis típusú erőforrást az erőforráslistából.

    3. Vigye az egérmutatót a Bejelentkezési kiszolgáló melletti érték fölé, és válassza a szöveg melletti másolás ikont.

    4. Mentse az értéket a ACR_LOGIN_SERVER környezeti változóban a következő paranccsal:

      export ACR_LOGIN_SERVER=<value-from-clipboard>
      
    5. Futtassa az alábbi parancsokat a rendszerkép címkézéséhez és leküldéséhez. A parancsok végrehajtása előtt győződjön meg arról, hogy a Docker fut.

      export ACR_NAME=$(echo ${ACR_LOGIN_SERVER} | cut -d '.' -f 1)
      az acr login -n $ACR_NAME
      docker tag model-in-image:WLS-v1 $ACR_LOGIN_SERVER/wlsaks-auxiliary-image:1.0
      docker push $ACR_LOGIN_SERVER/wlsaks-auxiliary-image:1.0
      
    6. Futtathatja az acr repository show annak tesztelését, hogy a rendszerkép sikeresen le van-e küldve a távoli adattárba, ahogy az alábbi példában látható:

      az acr repository show --name ${ACR_NAME} --image wlsaks-auxiliary-image:1.0
      

      Ennek a parancsnak az alábbi példához hasonló kimenetet kell létrehoznia:

      {
        "changeableAttributes": {
          "deleteEnabled": true,
          "listEnabled": true,
          "readEnabled": true,
          "writeEnabled": true
        },
        "createdTime": "2024-01-24T06:14:19.4546321Z",
        "digest": "sha256:a1befbefd0181a06c6fe00848e76f1743c1fecba2b42a975e9504ba2aaae51ea",
        "lastUpdateTime": "2024-01-24T06:14:19.4546321Z",
        "name": "1.0",
        "quarantineState": "Passed",
        "signed": false
      }
      

A segédrendszerkép alkalmazása

Az előző lépésekben létrehozta a kiegészítő rendszerképet, beleértve a modelleket és a WDT-t. Mielőtt a segédrendszerképet a WLS-fürtre alkalmazza, az alábbi lépésekkel hozza létre az adatforrás URL-címéhez, felhasználónevéhez és jelszavához tartozó titkos kulcsot. A titkos kód a dbmodel.yaml helyőrzőjének részeként használatos.

  1. Csatlakozás az AKS-fürtbe a korábban mentett shellCmdto Csatlakozás Aks érték másolásával, a Bash ablakba való beillesztésével, majd a parancs futtatásával. A parancsnak a következő példához hasonlóan kell kinéznie:

    az account set --subscription <subscription>; 
    az aks get-credentials \
        --resource-group <resource-group> \
        --name <name>
    

    Az alábbi példához hasonló kimenetnek kell megjelennie. Ha nem látja ezt a kimenetet, a folytatás előtt hárítsa el és oldja meg a problémát.

    Merged "<name>" as current context in /Users/<username>/.kube/config
    
  2. Az alábbi lépésekkel lekérheti az alábbi táblázatban látható változók értékeit. Ezeket az értékeket később az adatforrás-kapcsolat titkos kulcsának létrehozásához használhatja.

    Változó Leírás Példa
    DB_CONNECTION_STRING Az SQL Server kapcsolati sztring. jdbc:sqlserver://sqlserverforwlsaks.database.windows.net:1433;database=wlsaksquickstart0125
    DB_USER Az SQL Serverre való bejelentkezéshez használt felhasználónév. welogic@sqlserverforwlsaks
    DB_PASSWORD Az sQL-kiszolgálóra való bejelentkezéshez megadott jelszó. Secret123456
    1. Keresse fel az SQL-adatbázis erőforrását az Azure Portalon.

    2. A navigációs ablak Gépház területén válassza a Csatlakozás ion sztringeket.

    3. Válassza a JDBC lapot.

    4. Válassza a másolás ikont a kapcsolati sztring vágólapra másolásához.

    5. Ehhez DB_CONNECTION_STRINGhasználja a teljes kapcsolati sztring, de cserélje le a helyőrzőt {your_password_here} az adatbázis jelszavára.

    6. Ehhez DB_USERhasználja a kapcsolati sztring egy részét, de a bele azureuser nem értendő ;password={your_password_here}részt.

    7. Ehhez DB_PASSWORDhasználja az adatbázis létrehozásakor megadott értéket.

  3. A Kubernetes-titkos kód létrehozásához használja az alábbi parancsokat. Ez a cikk az adatforrás-kapcsolat titkos kódjának nevét sqlserver-secret használja. Ha más nevet használ, győződjön meg arról, hogy az érték megegyezik a dbmodel.yaml fájlban lévővel.

    Az alábbi parancsokban mindenképpen állítsa be a változókat DB_CONNECTION_STRING, DB_USERés DB_PASSWORD helyesen cserélje le a helyőrző példákat az előző lépésekben leírt értékekre. Ügyeljen arra, hogy a változók értékét DB_ egyetlen idézőjelbe foglalja, hogy a rendszerhéj ne zavarja az értékeket.

    export DB_CONNECTION_STRING='<example-jdbc:sqlserver://sqlserverforwlsaks.database.windows.net:1433;database=wlsaksquickstart0125>'
    export DB_USER='<example-welogic@sqlserverforwlsaks>'
    export DB_PASSWORD='<example-Secret123456>'
    export WLS_DOMAIN_NS=sample-domain1-ns
    export WLS_DOMAIN_UID=sample-domain1
    export SECRET_NAME=sqlserver-secret
    
    kubectl -n ${WLS_DOMAIN_NS} create secret generic \
        ${SECRET_NAME} \
        --from-literal=password="${DB_PASSWORD}" \
        --from-literal=url="${DB_CONNECTION_STRING}" \
        --from-literal=user="${DB_USER}"
    
    kubectl -n ${WLS_DOMAIN_NS} label secret \
        ${SECRET_NAME} \
        weblogic.domainUID=${WLS_DOMAIN_UID}
    

    A folytatás előtt a következő kimenetnek kell megjelennie. Ha nem látja ezt a kimenetet, a folytatás előtt hárítsa el és oldja meg a problémát.

    secret/sqlserver-secret created
    secret/sqlserver-secret labeled
    
  4. Alkalmazza a segédrendszerképet a tartomány egyéni erőforrásdefiníciójának (CRD) a parancs használatával történő javításával kubectl patch .

    A segédrendszerkép a következő példában spec.configuration.model.auxiliaryImageslátható módon van definiálva. További információkért tekintse meg a kiegészítő képeket.

    spec:
      clusters:
      - name: sample-domain1-cluster-1
      configuration:
        model:
          auxiliaryImages:
          - image: wlsaksacrafvzeyyswhxek.azurecr.io/wlsaks-auxiliary-image:1.0
            imagePullPolicy: IfNotPresent
            sourceModelHome: /auxiliary/models
            sourceWDTInstallHome: /auxiliary/weblogic-deploy
    

    Az alábbi parancsokkal növelheti az restartVersion értéket, és kubectl patch a segédrendszerképet a CRD tartományra alkalmazhatja az alábbi definíció használatával:

    export VERSION=$(kubectl -n ${WLS_DOMAIN_NS} get domain ${WLS_DOMAIN_UID} -o=jsonpath='{.spec.restartVersion}' | tr -d "\"")
    export VERSION=$((VERSION+1))
    
    cat <<EOF >patch-file.json
    [
      {
        "op": "replace",
        "path": "/spec/restartVersion",
        "value": "${VERSION}"
      },
      {
        "op": "add",
        "path": "/spec/configuration/model/auxiliaryImages",
        "value": [{"image": "$ACR_LOGIN_SERVER/wlsaks-auxiliary-image:1.0", "imagePullPolicy": "IfNotPresent", "sourceModelHome": "/auxiliary/models", "sourceWDTInstallHome": "/auxiliary/weblogic-deploy"}]
      },
      {
        "op": "add",
        "path": "/spec/configuration/secrets",
        "value": ["${SECRET_NAME}"]
      }
    ]
    EOF
    
    kubectl -n ${WLS_DOMAIN_NS} patch domain ${WLS_DOMAIN_UID} \
        --type=json \
        --patch-file patch-file.json
    
    kubectl get pod -n ${WLS_DOMAIN_NS} -w
    
  5. Várjon, amíg a rendszergazdai kiszolgáló és a felügyelt kiszolgálók a következő kimeneti blokkban jelenítik meg az értékeket, mielőtt továbblép:

    NAME                             READY   STATUS    RESTARTS   AGE
    sample-domain1-admin-server      1/1     Running   0          20m
    sample-domain1-managed-server1   1/1     Running   0          19m
    sample-domain1-managed-server2   1/1     Running   0          18m
    

    Ennek az állapotnak a elérése 5–10 percet is igénybe vehet. Az alábbi lista áttekintést nyújt a várakozás közbeni eseményekről:

    • Először a futtatásnak kell megjelennie sample-domain1-introspector . Ez a szoftver a tartomány egyéni erőforrásának módosításait keresi, hogy végrehajthassa a kubernetes-fürtön szükséges műveleteket.
    • A módosítások észlelésekor a tartományi introspector leáll, és új podokat indít el a módosítások bevezetéséhez.
    • Ezután látnia kell a pod leállítását sample-domain1-admin-server és újraindítását.
    • Ezután látnia kell, hogy a két felügyelt kiszolgáló leáll és újraindul.
    • Csak akkor érdemes továbblépni, ha mindhárom pod megjeleníti az 1/1 Running állapotot.

Az üzembe helyezés működésének ellenőrzése

Az alábbi lépésekkel ellenőrizheti az üzembe helyezés működését a WLS felügyeleti konzoljának és a mintaalkalmazásnak a megtekintésével:

  1. Illessze be az adminConsoleExternalUrl értéket egy internethez csatlakoztatott webböngésző címsorába. Ekkor megjelenik a jól ismert WLS felügyeleti konzol bejelentkezési képernyője.

  2. Jelentkezzen be a WLS Azure Portalról történő üzembe helyezésekor megadott felhasználónévvel weblogic és jelszóval. Ne feledje, hogy ez az érték .wlsAksCluster2022

  3. A Tartományszerkezet mezőben válassza a Szolgáltatások lehetőséget.

  4. A Szolgáltatások területen válassza az Adatforrások lehetőséget.

  5. A JDBC-adatforrások összegzése panelen válassza a Figyelés lehetőséget. A képernyőnek az alábbi példához hasonlóan kell kinéznie. Azt találja, hogy az adatforrás állapota felügyelt kiszolgálókon fut.

    Képernyőkép az adatforrás állapotáról.

  6. A Tartománystruktúra mezőben válassza az Üzembe helyezések lehetőséget.

  7. Az Üzembe helyezések táblában egy sornak kell lennie. A névnek meg kell egyeznie az Application appmodel.yaml fájl értékével. Válassza ki a nevet.

  8. A Gépház panelen válassza a Tesztelés lapot.

  9. Válassza a weblogic-café lehetőséget.

  10. A weblogic-café panel Gépház válassza a Tesztelés lapot.

  11. Bontsa ki a + weblogic-café melletti ikont. A képernyőnek az alábbi példához hasonlóan kell kinéznie. Különösen a Tesztpont oszlophoz http://sample-domain1-managed-server1:8001/weblogic-cafe/index.xhtmlhasonló értékeket kell látnia.

    Képernyőkép a weblogic-café tesztpontokról.

    Feljegyzés

    A Tesztpont oszlop hivatkozásai nem választhatók ki, mert nem konfiguráltuk a felügyeleti konzolt azzal a külső URL-címmel, amelyen fut. Ez a cikk csupán bemutató módon mutatja be a WLS felügyeleti konzolját. Ne használja a WLS felügyeleti konzolt tartós konfigurációs módosításokhoz a WLS AKS-en való futtatásakor. Az AKS-en futó WLS natív felhőbeli kialakításához minden tartós konfigurációt meg kell jeleníteni a kezdeti Docker-rendszerképekben, vagy ci/CD-technikákkal kell alkalmazni a futó AKS-fürtre, például frissíteni kell a modellt az Oracle dokumentációjában leírtak szerint.

  12. Ismerje meg az context-path üzembe helyezett mintaalkalmazás értékét. Ha üzembe helyezte az ajánlott mintaalkalmazást, a context-path következő: weblogic-cafe.

  13. Hozzon létre egy teljes url-címet a mintaalkalmazáshoz a context-pathclusterExternalUrl értékhez fűzve. Ha üzembe helyezte az ajánlott mintaalkalmazást, a teljes URL-címnek hasonlónak http://wlsgw202401-wls-aks-domain1.eastus.cloudapp.azure.com/weblogic-cafe/kell lennie.

  14. Illessze be a teljes URL-címet egy internethez csatlakoztatott webböngészőbe. Ha üzembe helyezte az ajánlott mintaalkalmazást, az alábbi képernyőképhez hasonló eredményeket kell látnia:

    Képernyőkép a teszt webalkalmazásról.

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

Az Azure-díjak elkerülése érdekében törölje a felesleges erőforrásokat. Ha már nincs szüksége a fürtre, használja az az group delete parancsot. Az alábbi parancs eltávolítja az erőforráscsoportot, a tárolószolgáltatást, a tárolóregisztrációs adatbázist és az összes kapcsolódó erőforrást:

az group delete --name <resource-group-name> --yes --no-wait
az group delete --name <db-resource-group-name> --yes --no-wait

Következő lépések

További információ a WLS AKS-en vagy virtuális gépeken való futtatásáról az alábbi hivatkozásokon keresztül: