Java-alkalmazás üzembe helyezése a WebLogic Serverrel egy Azure Kubernetes Service-fürtön
Ez a cikk bemutatja, hogyan:
- Futtassa a Java, Java EE vagy Jakarta EE-t az Oracle WebLogic Serveren (WLS).
- WebLogic Server-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ő WebLogic Server-fürtön az AKS-en a Microsoft Azure SQL-hez való kapcsolattal.
Ez a cikk a WebLogic Serverhez 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
- WebLogic Server-fürt alkalmazás nélkül
Ez a cikk ezután lépésről lépésre bemutatja egy kiegészítő rendszerkép készítését egy meglévő WebLogic Server-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.
Ha szeretne visszajelzést küldeni, vagy szorosan együttműködni a migrálási forgatókönyvekkel a WebLogic AKS-megoldásokon fejlesztő mérnöki csapatával, töltse ki ezt a rövid felmérést a WebLogic migrálásáról , és adja meg a kapcsolattartási adatait. A programmenedzserek, építészek és mérnökök csapata azonnal kapcsolatba lép Önnel, hogy szoros együttműködést kezdeményezze.
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-rendszergazdai 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.
Feljegyzés
Ezeket a szerepköröket az előfizetés szintjén kell megadni, nem az erőforráscsoport szintjén.
- 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 WebLogic Server licencfeltételét.
- 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 az Oracle kritikus javításfrissítései, biztonsági riasztásai és 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 WebLogic-kiszolgáló verziójával kompatibilis Java JDK. A cikk arra utasítja, hogy telepítse a WebLogic Server 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-ezip/unzip
.
- Azure parancssori felület (CLI). Annak tesztelésére használható
- 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?
WebLogic-kiszolgáló üzembe helyezése az AKS-en
Az ebben a szakaszban ismertetett lépések a WebLogic-kiszolgáló AKS-en való üzembe helyezését a lehető legegyszerűbb módon irányítják. Az AKS-en futó WebLogic Server az Azure-integrációk széles 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 WebLogic-kiszolgálót az AKS-ajánlatban, és hogyan töltheti ki az Alapismeretek panelt.
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.
Az AKS-ajánlatban közvetlenül is megnyithatja a WebLogic-kiszolgálót.
Az ajánlat lapon válassza a Létrehozás lehetőséget.
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.
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
.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.
A WebLogic hitelesítő adatai területen hagyja meg a Felhasználónév a WebLogic-rendszergazda alapértelmezett értékét.
wlsAksCluster2022
Adja meg a WebLogic-rendszergazda jelszavát. Használja ugyanazt az értéket a WebLogic-modell titkosítási mezőinek megerősítéséhez és jelszavához.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.
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.
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.
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.
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.
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 WebLogic Server, A JDK és az operációs rendszer verziójához számos választási lehetőség közül választhat.
Az Alkalmazás szakaszban, az Alkalmazás üzembe helyezése mellett válassza a Nem lehetőséget.
Az alábbi lépések végrehajtásával a WebLogic Server felügyeleti konzolja és a mintaalkalmazás egy beépített Application Gateway bemeneti bővítményrel lesz elérhető a nyilvános interneten. További információ: Mi az Application Gateway bejövőforgalom-vezérlője?
A Tovább gombra kattintva megtekintheti a TLS/SSL panelt.
A Tovább gombra kattintva megtekintheti a Terheléselosztás panelt.
A terheléselosztási beállítások mellett válassza az Application Gateway bejövőforgalom-vezérlője lehetőséget.
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.
A felügyeleti konzol bejövő forgalmának létrehozásához válassza az Igen lehetőséget.
Hagyja meg a többi mező alapértelmezett értékeit.
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.
Válassza a Létrehozás lehetőséget.
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.
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.
Í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.
A navigációs panel Beállítások szakaszában válassza az Üzembe helyezések lehetőséget. Ekkor megjelenik az erőforráscsoportba tartozó központi telepítések rendezett listája, a legutóbbival.
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.
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.
Az adminConsoleExternalUrl érték az AKS-fürt WebLogic Server 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.
A clusterExternalUrl érték az AKS-fürtön a WebLogic Serverben üzembe helyezett mintaalkalmazás teljes mértékben minősített, nyilvános internetes látható hivatkozása. 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.
A shellCmdtoOutputWlsImageModelYaml értéke a tárolólemezképbe épített WDT-modell base64-sztringje. Mentse ezt az értéket későbbre.
A shellCmdtoOutputWlsImageProperties értéke a tárolólemezképbe épített WDT-modelltulajdonságok base64 sztringje. Mentse ezt az értéket későbbre.
A shellCmdtoConnectAks é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 Kapcsolati módszert nyilvános végpontra, állítsa be 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.
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;
.
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 WebLogic Server-fürt. Ha szeretné, megnyithat egy böngészőt, és navigálhat az adminConsoleExternalUrl címére. Jelentkezzen be a WebLogic-kiszolgáló AKS-telepítése során megadott értékekkel.
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 WebLogic Server-fürtöt modellen keresztül helyezi üzembe a képen. A WebLogic-kiszolgáló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 WebLogic Server-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: $BASE_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:
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
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 ${BASE_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"
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 ${BASE_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
Az alkalmazásmodell-fájl létrehozásához kövesse az alábbi lépéseket.
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
Az alábbi parancsokkal hozza létre az alkalmazásmodell-fájlt a megjelenített tartalommal. Mentse a modellfájlt a ${BASE_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
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
Ezután az alábbi parancsokkal hozza létre az adatbázis-kapcsolatmodell-fájlt a megjelenített tartalommal. Mentse a modellfájlt a ${BASE_DIR}/mystaging/models/dbmodel.yaml fájlba. A modell helyőrzőket (titkos
sqlserver-secret
kó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őveljdbc/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
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
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
A WDT-telepítő eltávolításához használja a következő parancsot:
rm weblogic-deploy.zip
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
Futtassa a parancsot a
docker buildx build
${BASE_DIR}/mystaging/Dockerfile használatával, ahogyan az a következő példában látható: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
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
A következő lépésekkel küldje le a segédrendszerképet az Azure Container Registrybe:
Nyissa meg az Azure Portalt, és nyissa meg a WebLogic-kiszolgáló üzembe helyezése az AKS-ben szakaszban kiépített erőforráscsoportot.
Válassza ki a Tárolóregisztrációs adatbázis típusú erőforrást az erőforráslistából.
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.
Mentse az értéket a
ACR_LOGIN_SERVER
környezeti változóban a következő paranccsal:export ACR_LOGIN_SERVER=<value-from-clipboard>
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
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 alkalmazza a kiegészítő lemezképet a WebLogic Server-fürtre, 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.
Csatlakozzon az AKS-fürthöz a korábban mentett ShellCmdtoConnectAks é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
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://server-name.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
Keresse fel az SQL-adatbázis erőforrását az Azure Portalon.
A navigációs panel Beállítások csoportjában válassza a Kapcsolati sztringek lehetőséget.
Válassza a JDBC lapot.
Válassza a másolás ikont a kapcsolati sztring vágólapra másolásához.
Ehhez
DB_CONNECTION_STRING
használja a teljes kapcsolati sztring, de cserélje le a helyőrzőt{your_password_here}
az adatbázis jelszavára.Ehhez
DB_USER
használja a kapcsolati sztring egy részét, de a beleazureuser
nem értendő;password={your_password_here}
részt.Ehhez
DB_PASSWORD
használja az adatbázis létrehozásakor megadott értéket.
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
ésDB_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étDB_
egyetlen idézőjelbe foglalja, hogy a rendszerhéj ne zavarja az értékeket.export DB_CONNECTION_STRING='<example-jdbc:sqlserver://server-name.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
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.auxiliaryImages
lá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, éskubectl 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
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.
- Először a futtatásnak kell megjelennie
Az üzembe helyezés működésének ellenőrzése
Az üzembe helyezés működésének ellenőrzéséhez kövesse az alábbi lépéseket a WebLogic Server felügyeleti konzoljának és a mintaalkalmazásnak a megtekintésével:
Illessze be az adminConsoleExternalUrl értéket egy internethez csatlakoztatott webböngésző címsorába. Ekkor megjelenik a weblogic server rendszergazdai konzoljának bejelentkezési képernyője.
Jelentkezzen be a WebLogic-kiszolgáló 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
A Tartományszerkezet mezőben válassza a Szolgáltatások lehetőséget.
A Szolgáltatások területen válassza az Adatforrások lehetőséget.
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.
A Tartománystruktúra mezőben válassza az Üzembe helyezések lehetőséget.
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.A Beállítások panelen válassza a Tesztelés lapot.
Válassza a weblogic-café lehetőséget.
A Weblogic-Café beállításai panelen válassza a Tesztelés lapot.
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.xhtml
hasonló értékeket kell látnia.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 WebLogic Server felügyeleti konzolját. A WebLogic Server AKS-en való futtatásakor ne használja a WebLogic Server felügyeleti konzolját tartós konfigurációs módosításokhoz. Az AKS-en futó WebLogic-kiszolgáló natív felhőbeli kialakításához minden tartós konfigurációt meg kell jeleníteni a kezdeti Docker-rendszerképekben, vagy a futó AKS-fürtre kell alkalmazni CI/CD-technikákkal, például a modell frissítésével, az Oracle dokumentációjában leírtak szerint.
Ismerje meg az
context-path
üzembe helyezett mintaalkalmazás értékét. Ha üzembe helyezte az ajánlott mintaalkalmazást, acontext-path
következő:weblogic-cafe
.Hozzon létre egy teljes url-címet a mintaalkalmazáshoz a
context-path
clusterExternalUrl értékhez fűzve. Ha üzembe helyezte az ajánlott mintaalkalmazást, a teljes URL-címnek hasonlónakhttp://wlsgw202401-wls-aks-domain1.eastus.cloudapp.azure.com/weblogic-cafe/
kell lennie.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:
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 WebLogic Server AKS-en vagy virtuális gépeken való futtatásáról az alábbi hivatkozásokon keresztül:
Az Azure Marketplace-en elérhető Oracle WebLogic-ajánlatokkal kapcsolatos további információkért tekintse meg az Azure-beli Oracle WebLogic Servert. Ezek az ajánlatok mind saját licenccel rendelkeznek. Feltételezik, hogy már rendelkezik a megfelelő licencekkel az Oracle-hez, és megfelelő licenccel rendelkezik az ajánlatok Azure-ban való futtatásához.
Azure Kubernetes Service
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: