Wdrażanie aplikacji Java przy użyciu serwera WebLogic w klastrze usługi Azure Kubernetes Service (AKS)
W tym artykule pokazano, jak:
- Uruchom aplikację Java na serwerze Oracle WebLogic Server (WLS).
- Utwórz klaster serwera WebLogic w usłudze AKS przy użyciu oferty witryny Azure Marketplace.
- Utwórz obraz platformy Docker aplikacji, który zawiera modele webLogic Deploy Tooling (WDT).
- Wdróż konteneryzowaną aplikację w klastrze serwera WebLogic w usłudze AKS z połączeniem z usługą Microsoft Azure SQL.
W tym artykule użyto oferty witryny Azure Marketplace dla serwera WebLogic, aby przyspieszyć podróż do usługi AKS. Oferta automatycznie aprowizuje kilka zasobów platformy Azure, w tym następujące zasoby:
- Wystąpienie usługi Azure Container Registry
- Klaster usługi AKS
- Wystąpienie kontrolera ruchu przychodzącego bramy aplikacja systemu Azure (AGIC)
- The WebLogic Kubernetes Operator
- Obraz kontenera, w tym środowisko uruchomieniowe WebLogic
- Klaster serwera WebLogic bez aplikacji
Następnie w artykule przedstawiono tworzenie obrazu w celu zaktualizowania klastra serwera WebLogic. Obraz przedstawia modele aplikacji i WDT.
Jeśli wolisz mniej zautomatyzowane podejście do wdrażania oprogramowania WebLogic w usłudze AKS, zapoznaj się ze wskazówkami krok po kroku zawartymi w oficjalnej dokumentacji firmy Oracle dla usługi Azure Kubernetes Service.
Jeśli chcesz przekazać opinię lub ściśle pracować nad scenariuszami migracji z zespołem inżynierów opracowującym oprogramowanie WebLogic w usłudze AKS, wypełnij tę krótką ankietę dotyczącą migracji serwera WebLogic i dołącz informacje kontaktowe. Zespół menedżerów programów, architektów i inżynierów natychmiast skontaktuje się z Tobą w celu zainicjowania ścisłej współpracy.
Wymagania wstępne
- Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.
- Upewnij się, że tożsamość platformy Azure używana do logowania się i ukończenie tego artykułu ma rolę Właściciel w bieżącej subskrypcji lub rolę Współautor i Administrator dostępu użytkowników w bieżącej subskrypcji. Aby zapoznać się z omówieniem ról platformy Azure, zobacz Co to jest kontrola dostępu oparta na rolach platformy Azure (Azure RBAC)? Aby uzyskać szczegółowe informacje na temat określonych ról wymaganych przez usługę WLS w usłudze AKS, zobacz Role wbudowane platformy Azure.
- Poświadczenia dla konta logowania jednokrotnego (SSO) oracle. Aby je utworzyć, zobacz Tworzenie konta Oracle.
- Zaakceptuj postanowienia licencyjne dotyczące serwera WebLogic.
- Odwiedź usługę Oracle Container Registry i zaloguj się.
- Jeśli masz uprawnienie do pomocy technicznej, wybierz pozycję Oprogramowanie pośredniczące, a następnie wyszukaj i wybierz pozycję weblogic_cpu.
- Jeśli nie masz uprawnień do pomocy technicznej w programie Oracle, wybierz pozycję Oprogramowanie pośredniczące, a następnie wyszukaj i wybierz pozycję weblogic.
- Zaakceptuj umowę licencyjną.
Uwaga
Uzyskaj uprawnienie do pomocy technicznej od firmy Oracle przed przejściem do środowiska produkcyjnego. Niepowodzenie w tym celu powoduje uruchomienie niezabezpieczonych obrazów, które nie są poprawiane pod kątem krytycznych wad zabezpieczeń. Aby uzyskać więcej informacji na temat aktualizacji poprawek krytycznych firmy Oracle, zobacz Aktualizacje poprawek krytycznych, alerty zabezpieczeń i biuletyny firmy Oracle.
- Przygotuj maszynę lokalną z zainstalowanym systemem operacyjnym przypominającym system Unix — na przykład Ubuntu, Azure Linux, macOS, Podsystem Windows dla systemu Linux.
- Interfejs wiersza polecenia platformy Azure. Użyj polecenia
az --version
, aby sprawdzić, czy polecenie az works. Ten dokument został przetestowany w wersji 2.55.1. - kubectl. Użyj polecenia
kubectl version
, aby sprawdzić, czy narzędzie kubectl działa. Ten dokument został przetestowany z wersją 1.21.2. - Zestaw Java Development Kit (JDK). Ten artykuł kieruje Cię do zainstalowania pakietu Microsoft Build of OpenJDK 11. Upewnij się, że
JAVA_HOME
zmienna środowiskowa jest poprawnie ustawiona w powłokach, w których uruchamiasz polecenia. - Maven 3.5.0 lub nowszy.
- Upewnij się, że masz zainstalowane narzędzie zip/unzip. Użyj polecenia
zip/unzip -v
, aby sprawdzić, czyzip/unzip
działa.
- Interfejs wiersza polecenia platformy Azure. Użyj polecenia
Tworzenie bazy danych SQL platformy Azure
Ta sekcja tworzy bazę danych Azure SQL Database przy użyciu uwierzytelniania firmy Microsoft Entra z włączonym połączeniem tożsamości zarządzanej.
Tworzenie grupy zasobów
Utwórz grupę zasobów za pomocą polecenia az group create. Ponieważ grupy zasobów muszą być unikatowe w ramach subskrypcji, wybierz unikatową nazwę. Łatwym sposobem na używanie unikatowych nazw jest użycie kombinacji inicjałów, dzisiejszej daty i identyfikatora. Na przykład abc1228rg
. W tym przykładzie eastus
zostanie utworzona grupa zasobów o nazwie abc1228rg
w lokalizacji:
export RESOURCE_GROUP_NAME="abc1228rg"
az group create \
--name ${RESOURCE_GROUP_NAME} \
--location eastus
Tworzenie serwera bazy danych i bazy danych
Utwórz serwer za pomocą polecenia az sql server create . W tym przykładzie tworzony jest serwer o nazwie z myazuresql20130213
użytkownikiem azureuser
administratora i hasłem administratora. Zastąp ciąg <your-password>
hasłem. Aby uzyskać więcej informacji, zobacz Szybki start: tworzenie pojedynczej bazy danych — Azure SQL Database.
Uwaga
Mimo że używasz tutaj nazwy użytkownika i hasła, te poświadczenia nie są widoczne poza bazą danych. Połączenie między warstwą aplikacji a bazą danych jest zabezpieczone za pomocą tożsamości zarządzanych.
export AZURESQL_SERVER_NAME="myazuresql20130213"
export AZURESQL_ADMIN_USER="azureuser"
export AZURESQL_ADMIN_PASSWORD="<your-password>"
export DATABASE_NAME="mysingledatabase20230213"
az sql server create \
--resource-group $RESOURCE_GROUP_NAME \
--name $AZURESQL_SERVER_NAME \
--location westus \
--admin-user $AZURESQL_ADMIN_USER \
--admin-password $AZURESQL_ADMIN_PASSWORD
Utwórz bazę danych za pomocą polecenia az sql db create w bezserwerowej warstwie obliczeniowej.
az sql db create \
--resource-group $RESOURCE_GROUP_NAME \
--server $AZURESQL_SERVER_NAME \
--name $DATABASE_NAME \
--sample-name AdventureWorksLT \
--edition GeneralPurpose \
--compute-model Serverless \
--family Gen5 \
--capacity 2
Konfigurowanie administratora firmy Microsoft Entra
Aby uzyskać informacje na temat interakcji programu Azure SQL Server z tożsamościami zarządzanymi, zobacz Connect using Microsoft Entra authentication (Nawiązywanie połączenia przy użyciu uwierzytelniania w usłudze Microsoft Entra).
Wykonaj następujące kroki, aby skonfigurować konto administratora usługi Microsoft Entra na serwerze Azure SQL Server w witrynie Azure Portal:
- W witrynie Azure Portal otwórz wystąpienie
myazuresql20130213
programu Azure SQL Server . - Wybierz pozycję Ustawienia, a następnie wybierz pozycję Microsoft Entra ID. Na stronie Microsoft Entra ID wybierz pozycję Ustaw administratora.
- Na stronie Dodawanie administratora wyszukaj użytkownika, wybierz użytkownika lub grupę, aby być administratorem, a następnie wybierz pozycję Wybierz.
- W górnej części strony Identyfikator entra firmy Microsoft wybierz pozycję Zapisz. W przypadku użytkowników i grup firmy Microsoft identyfikator obiektu jest wyświetlany obok nazwy administratora.
- Proces zmiany administratora może potrwać kilka minut. Następnie nowy administrator pojawi się w polu Microsoft Entra ID .
Tworzenie tożsamości zarządzanej przypisanej przez użytkownika
Następnie w interfejsie wiersza polecenia platformy Azure utwórz tożsamość w ramach subskrypcji przy użyciu polecenia az identity create . Ta tożsamość zarządzana służy do nawiązywania połączenia z bazą danych.
az identity create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myManagedIdentity
Tworzenie użytkownika bazy danych dla tożsamości zarządzanej
Teraz połącz się jako użytkownik administratora firmy Microsoft Entra z bazą danych Azure SQL Database w witrynie Azure Portal i utwórz użytkownika dla swojej tożsamości zarządzanej.
Najpierw utwórz regułę zapory, aby uzyskać dostęp do serwera Azure SQL Server z poziomu portalu, jak pokazano w poniższych krokach:
- W witrynie Azure Portal otwórz wystąpienie
myazuresql20130213
programu Azure SQL Server . - Wybierz pozycję Zabezpieczenia, a następnie wybierz pozycję Sieć.
- W obszarze Reguły zapory wybierz pozycję Dodaj adres IP klienta IPV4.
- W obszarze Wyjątki wybierz pozycję Zezwalaj usługom i zasobom platformy Azure na dostęp do tego serwera.
- Wybierz pozycję Zapisz.
Po utworzeniu reguły zapory możesz uzyskać dostęp do serwera Azure SQL z poziomu portalu. Aby utworzyć użytkownika bazy danych, wykonaj następujące czynności:
Wybierz pozycję Ustawienia, a następnie wybierz pozycję Bazy danych SQL. Wybierz opcję
mysingledatabase20230213
.Wybierz pozycję Edytor zapytań. Na stronie Witamy w usłudze SQL Database Edytor Power Query w obszarze uwierzytelnianie usługi Active Directory znajdź komunikat podobny
Logged in as user@contoso.com
do .Wybierz pozycję Kontynuuj jako user@contoso.com, gdzie
user
to nazwa konta administratora usługi AD.Po zalogowaniu w edytorze Query 1 uruchom następujące polecenia, aby utworzyć użytkownika bazy danych dla tożsamości
myManagedIdentity
zarządzanej.CREATE USER "myManagedIdentity" FROM EXTERNAL PROVIDER ALTER ROLE db_datareader ADD MEMBER "myManagedIdentity"; ALTER ROLE db_datawriter ADD MEMBER "myManagedIdentity"; ALTER ROLE db_ddladmin ADD MEMBER "myManagedIdentity"; GO
W edytorze Query 1 wybierz pozycję Uruchom , aby uruchomić polecenia SQL.
Jeśli polecenia zakończą się pomyślnie, możesz znaleźć komunikat z informacją
Query succeeded: Affected rows: 0
.
Użyj następującego polecenia, aby uzyskać parametry połączenia, które są używane w następnej sekcji:
export CONNECTION_STRING="jdbc:sqlserver://${AZURESQL_SERVER_NAME}.database.windows.net:1433;database=${DATABASE_NAME};encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;"
echo ${CONNECTION_STRING}
Tworzenie schematu dla przykładowej aplikacji
Wybierz pozycję Nowe zapytanie , a następnie w edytorze zapytań uruchom następujące zapytanie:
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);
Po pomyślnym uruchomieniu powinien zostać wyświetlony komunikat Zapytanie powiodło się: wiersze, których dotyczy problem: 1. Jeśli ten komunikat nie jest widoczny, przed kontynuowaniem rozwiąż problem i rozwiąż go.
Możesz kontynuować wdrażanie zabezpieczeń WLS w ofercie usługi AKS.
Wdrażanie serwera WebLogic w usłudze AKS
Wykonaj następujące kroki, aby znaleźć ofertę Serwera WebLogic w usłudze AKS i wypełnić okienko Podstawowe :
Na pasku wyszukiwania w górnej części witryny Azure Portal wprowadź ciąg weblogic. W wynikach wyszukiwania automatycznego sugerowania w sekcji Marketplace wybierz pozycję Serwer WebLogic w usłudze AKS.
Możesz również przejść bezpośrednio do serwera WebLogic w ofercie usługi AKS .
Na stronie oferty wybierz pozycję Utwórz.
W okienku Podstawowe upewnij się, że wartość wyświetlana w polu Subskrypcja jest taka sama, do której zalogowano się na platformie Azure. Upewnij się, że masz role wymienione w sekcji wymagań wstępnych dla subskrypcji.
Należy wdrożyć ofertę w pustej grupie zasobów. W polu Grupa zasobów wybierz pozycję Utwórz nową, a następnie wypełnij wartość dla grupy zasobów. Ponieważ grupy zasobów muszą być unikatowe w ramach subskrypcji, wybierz unikatową nazwę. Łatwym sposobem na używanie unikatowych nazw jest użycie kombinacji inicjałów, dzisiejszej daty i identyfikatora — na przykład
ejb0723wls
.W obszarze Szczegóły wystąpienia wybierz region wdrożenia. Aby uzyskać listę regionów świadczenia usługi Azure, w których usługa AKS jest dostępna, zobacz Dostępność regionów usługi AKS.
W obszarze Credentials for WebLogic (Poświadczenia dla serwera WebLogic) pozostaw wartość domyślną pola Username for WebLogic Administrator (Nazwa użytkownika dla administratora serwera WebLogic).
wlsAksCluster2022
Wprowadź hasło dla administratora WebLogic. Użyj tej samej wartości dla pól potwierdzenia i hasła dla pól szyfrowania modelu WebLogic.Wybierz Dalej.
Wykonaj następujące kroki, aby rozpocząć proces wdrażania:
Przewiń do sekcji z etykietą Provide an Oracle Single Sign-On (SSO) account (Zapewnianie konta logowania jednokrotnego Oracle). Wypełnij poświadczenia logowania jednokrotnego Oracle z warunków wstępnych.
Pamiętaj, aby pamiętać o krokach w polu informacyjnym rozpoczynającym się od pozycji Przed przejściem do przodu, musisz zaakceptować standardowe warunki i ograniczenia oracle.
W zależności od tego, czy konto logowania jednokrotnego Oracle ma uprawnienie do obsługi oracle, wybierz odpowiednią opcję dla pozycji Wybierz typ obrazów serwera WebLogic. Jeśli konto ma uprawnienie do pomocy technicznej, wybierz pozycję Patched WebLogic Server Images (Poprawione obrazy serwera WebLogic). W przeciwnym razie wybierz pozycję Ogólne obrazy serwera WebLogic.
Pozostaw wartość w polu Wybierz żądaną kombinację serwera WebLogic... w wartości domyślnej. Masz szeroką gamę opcji dla serwerów WebLogic, zestawów JDK i wersji systemu operacyjnego.
W sekcji Aplikacja obok pozycji Wdróż aplikację? wybierz pozycję Nie.
Poniższe kroki sprawiają, że konsola administracyjna serwera WebLogic i przykładowa aplikacja są udostępniane publicznemu Internetowi z wbudowanym dodatkiem ruchu przychodzącego usługi Application Gateway. Aby uzyskać więcej informacji, zobacz Co to jest kontroler ruchu przychodzącego usługi Application Gateway?
Wybierz pozycję Dalej , aby wyświetlić okienko TLS/SSL .
Wybierz pozycję Dalej , aby wyświetlić okienko Równoważenie obciążenia.
Obok pozycji Opcje równoważenia obciążenia wybierz pozycję Kontroler ruchu przychodzącego usługi Application Gateway.
W obszarze Kontroler ruchu przychodzącego usługi Application Gateway powinny zostać wyświetlone wszystkie pola wstępnie wypełnione wartościami domyślnymi dla sieci wirtualnej i podsieci. Pozostaw wartości domyślne.
W obszarze Tworzenie ruchu przychodzącego dla konsoli administracyjnej wybierz pozycję Tak.
Wybierz pozycję Dalej , aby wyświetlić okienko DNS .
Wybierz pozycję Dalej , aby wyświetlić okienko Baza danych .
Wykonaj następujące kroki, aby skonfigurować połączenie z bazą danych przy użyciu tożsamości zarządzanej:
- W obszarze Połącz z bazą danych? wybierz pozycję Tak.
- W obszarze Ustawienia połączenia w obszarze Wybierz typ bazy danych otwórz menu rozwijane, a następnie wybierz pozycję Microsoft SQL Server (z obsługą połączenia bez hasła).
- W polu Nazwa JNDI wprowadź wartość jdbc/WebLogicCafeDB.
- W przypadku parametrów połączenia źródła danych wprowadź parametry połączenia uzyskane w ostatniej sekcji.
- Wybierz pozycję Użyj połączenia źródła danych bez hasła.
- W polu Tożsamość zarządzana przypisana przez użytkownika wybierz tożsamość zarządzaną utworzoną w poprzednim kroku. W tym przykładzie jego nazwa to
myManagedIdentity
. - Wybierz Dodaj.
Sekcja Ustawienia połączenia powinna wyglądać podobnie jak na poniższym zrzucie ekranu:
Aby ukończyć wdrażanie, wykonaj następujące czynności:
- Wybierz pozycję Przejrzyj i utwórz. Upewnij się, że walidacja nie zakończy się niepowodzeniem. Jeśli zakończy się to niepowodzeniem, rozwiąż wszelkie problemy z walidacją, a następnie ponownie wybierz pozycję Przejrzyj i utwórz .
- Wybierz pozycję Utwórz.
- Śledzenie postępu wdrażania na stronie Wdrażanie jest w toku .
W zależności od warunków sieciowych i innych działań w wybranym regionie wdrożenie może potrwać do 50 minut.
Uwaga
Jeśli Twoja organizacja wymaga wdrożenia obciążenia w firmowej sieci wirtualnej bez dozwolonych publicznych adresów IP, możesz wybrać wewnętrzną usługę Load Balancer. Aby skonfigurować wewnętrzną usługę Load Balancer, wykonaj następujące kroki na karcie Równoważenie obciążenia:
W obszarze Opcje równoważenia obciążenia wybierz pozycję usługa usługa Load Balancer w warstwie Standardowa.
Wybierz pozycję Użyj wewnętrznego modułu równoważenia obciążenia.
Dodaj w odpowiednich wierszach do tabeli:
Prefiks nazwy usługi Obiekt docelowy Port wls-admin-internal
admin-server
7001 wls-cluster-internal
cluster-1
8001
Karta Równoważenie obciążenia powinna wyglądać podobnie jak na poniższym zrzucie ekranu:
Po wdrożeniu można znaleźć adresy URL dostępu serwera administracyjnego i klastra z danych wyjściowych z etykietą adminConsoleExternalUrl i clusterExternalUrl.
Sprawdzanie danych wyjściowych wdrożenia
Wykonaj kroki opisane w tej sekcji, aby sprawdzić, czy wdrożenie zakończyło się pomyślnie.
Jeśli nastąpi przejście z dala od strony Wdrożenie jest w toku , poniższe kroki pokazują, jak wrócić do tej strony. Jeśli nadal znajdujesz się na stronie z wyświetlonym komunikatem Wdrożenie zostało ukończone, możesz przejść do kroku 5 po następnym zrzucie ekranu.
W rogu dowolnej strony witryny Azure Portal wybierz menu typu hamburger i wybierz pozycję Grupy zasobów.
W polu z tekstem Filtr dla dowolnego pola wprowadź kilka pierwszych znaków utworzonej wcześniej grupy zasobów. Jeśli wykonano zalecaną konwencję, wprowadź swoje inicjały, a następnie wybierz odpowiednią grupę zasobów.
W okienku nawigacji w sekcji Ustawienia wybierz pozycję Wdrożenia. Zostanie wyświetlona uporządkowana lista wdrożeń w tej grupie zasobów z najnowszą.
Przewiń do najstarszego wpisu na tej liście. Ten wpis odpowiada wdrożeniu rozpoczętym w poprzedniej sekcji. Wybierz najstarsze wdrożenie, jak pokazano na poniższym zrzucie ekranu.
W okienku nawigacji wybierz pozycję Dane wyjściowe. Ta lista zawiera wartości wyjściowe z wdrożenia. Przydatne informacje są zawarte w danych wyjściowych.
Wartość adminConsoleExternalUrl to w pełni kwalifikowany publiczny link widoczny w Internecie do konsoli administracyjnej serwera WebLogic dla tego klastra usługi AKS. Wybierz ikonę kopiowania obok wartości pola, aby skopiować link do schowka. Zapisz tę wartość na bok później.
Wartość clusterExternalUrl to w pełni kwalifikowany, publiczny link widoczny w Internecie do przykładowej aplikacji wdrożonej na serwerze WebLogic w tym klastrze usługi AKS. Wybierz ikonę kopiowania obok wartości pola, aby skopiować link do schowka. Zapisz tę wartość na bok później.
Wartość shellCmdtoOutputWlsImageModelYaml to ciąg base64 modelu WDT używany do kompilowania obrazu kontenera. Zapisz tę wartość na bok później.
Wartość shellCmdtoOutputWlsImageProperties jest ciągiem base64 właściwości modelu WDT używanym do kompilowania obrazu kontenera. Zapisz tę wartość na bok później.
Wartość shellCmdtoConnectAks to polecenie interfejsu wiersza polecenia platformy Azure służące do łączenia się z tym konkretnym klastrem usługi AKS.
Inne wartości w danych wyjściowych wykraczają poza zakres tego artykułu, ale zostały szczegółowo wyjaśnione w podręczniku użytkownika aplikacji WebLogic w usłudze AKS.
Konfigurowanie i wdrażanie przykładowej aplikacji
Oferta aprowizuje klaster serwera WebLogic za pomocą modelu na obrazie. Obecnie klaster serwera WebLogic nie ma wdrożonej aplikacji.
Ta sekcja aktualizuje klaster serwera WebLogic, wdrażając przykładową aplikację przy użyciu obrazu pomocniczego.
Wyewidencjonowywanie aplikacji
W tej sekcji sklonujesz przykładowy kod dla tego przewodnika. Przykład znajduje się w witrynie GitHub w repozytorium weblogic-on-azure w folderze javaee/weblogic-café/ . Oto struktura plików aplikacji.
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
Użyj następujących poleceń, aby sklonować repozytorium:
# 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
Jeśli zostanie wyświetlony komunikat o stanie "odłączony HEAD", ten komunikat jest bezpieczny do zignorowania. Oznacza to po prostu wyewidencjonowanie tagu.
Użyj następującego polecenia, aby skompilować plik javaee/weblogic-café/:
mvn clean package --file $BASE_DIR/weblogic-on-azure/javaee/weblogic-cafe/pom.xml
Pakiet powinien zostać pomyślnie wygenerowany i zlokalizowany w lokalizacji $BASE_DIR/weblogic-on-azure/javaee/weblogic-café/target/weblogic-café.war. Jeśli nie widzisz pakietu, przed kontynuowaniem musisz rozwiązać problem i rozwiązać ten problem.
Tworzenie obrazu pomocniczego za pomocą usługi Azure Container Registry
W krokach w tej sekcji pokazano, jak utworzyć obraz pomocniczy. Ten obraz zawiera następujące składniki:
- Model w plikach modelu obrazów
- Twoja aplikacja
- Plik archiwum sterownika JDBC (Java Database Connectivity)
- Instalacja narzędzi WebLogic Deploy
Obraz pomocniczy to obraz kontenera platformy Docker zawierający aplikację i konfigurację. Operator Kubernetes WebLogic łączy obraz pomocniczy z domain.spec.image
klastrem AKS zawierającym serwer WebLogic, zestaw JDK i system operacyjny. Aby uzyskać więcej informacji na temat obrazów pomocniczych, zobacz Obrazy pomocnicze w dokumentacji oracle.
Ta sekcja wymaga terminalu systemu Linux z zainstalowanym interfejsem wiersza polecenia platformy Azure i rozwiązaniem kubectl.
Aby skompilować obraz, wykonaj następujące czynności:
Użyj następujących poleceń, aby utworzyć katalog do przygotowania modeli i aplikacji:
mkdir -p ${BASE_DIR}/mystaging/models cd ${BASE_DIR}/mystaging/models
Skopiuj wartość shellCmdtoOutputWlsImageModelYaml zapisaną z danych wyjściowych wdrożenia, wklej ją w oknie powłoki Bash i uruchom polecenie. Polecenie powinno wyglądać podobnie do następującego przykładu:
echo -e IyBDb3B5cmlna...Cgo= | base64 -d > model.yaml
To polecenie tworzy plik ${BASE_DIR}/mystaging/models/model.yaml z zawartością podobną do następującego przykładu:
# 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"
W podobny sposób skopiuj wartość shellCmdtoOutputWlsImageProperties , wklej ją w oknie powłoki Bash i uruchom polecenie . Polecenie powinno wyglądać podobnie do następującego przykładu:
echo -e IyBDb3B5cml...pFPTUK | base64 -d > model.properties
To polecenie tworzy plik ${BASE_DIR}/mystaging/models/model.properties z zawartością podobną do następującego przykładu:
# 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
Aby utworzyć plik modelu aplikacji, wykonaj następujące kroki.
Użyj następujących poleceń, aby skopiować plik weblogic-café.war i zapisać go wlsdeploy /applications:
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
Użyj następujących poleceń, aby utworzyć plik modelu aplikacji z wyświetloną zawartością. Zapisz plik modelu w lokalizacji ${BASE_DIR}/mystaging/models/appmodel.yaml.
cat <<EOF >appmodel.yaml appDeployments: Application: weblogic-cafe: SourcePath: 'wlsdeploy/applications/weblogic-cafe.war' ModuleType: ear Target: 'cluster-1' EOF
Wykonaj poniższe kroki, aby skonfigurować połączenie ze źródłem danych.
Wykonaj poniższe kroki, aby pobrać i zainstalować sterownik JDBC programu Microsoft SQL Server i rozszerzenie tożsamości platformy Azure, które umożliwia nawiązywanie połączeń z bazą danych przy użyciu tożsamości zarządzanej platformy Azure.
Użyj następujących poleceń, aby pobrać i zainstalować sterownik JDBC programu Microsoft SQL Server do programu
wlsdeploy/externalJDBCLibraries
: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
Użyj następujących poleceń, aby zainstalować rozszerzenie tożsamości platformy Azure w programie
wlsdeploy/classpathLibraries
:curl -LO https://github.com/oracle/weblogic-azure/raw/refs/heads/main/weblogic-azure-aks/src/main/resources/azure-identity-extensions.xml mvn dependency:copy-dependencies -f azure-identity-extensions.xml mkdir -p ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/azureLibraries mkdir ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/jackson # fix JARs conflict issue in GA images, put jackson libraries to PRE_CLASSPATH to upgrade the existing libs. mv target/dependency/jackson-annotations-*.jar ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/jackson/ mv target/dependency/jackson-core-*.jar ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/jackson/ mv target/dependency/jackson-databind-*.jar ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/jackson/ mv target/dependency/jackson-dataformat-xml-*.jar ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/jackson/ # Thoes jars will be appended to CLASSPATH mv target/dependency/*.jar ${BASE_DIR}/mystaging/models/wlsdeploy/classpathLibraries/azureLibraries/
Aby wyczyścić zasoby, użyj następujących poleceń:
rm target -f -r rm azure-identity-extensions.xml
Połącz się z klastrem usługi AKS, kopiując wartość shellCmdtoConnectAks zapisaną wcześniej, wklejając ją w oknie powłoki Bash, a następnie uruchamiając polecenie. Polecenie powinno wyglądać podobnie do następującego przykładu:
az account set --subscription <subscription>; az aks get-credentials \ --resource-group <resource-group> \ --name <name>
Powinny zostać wyświetlone dane wyjściowe podobne do poniższego przykładu. Jeśli te dane wyjściowe nie są widoczne, przed kontynuowaniem rozwiąż problem i rozwiąż go.
Merged "<name>" as current context in /Users/<username>/.kube/config
Wyeksportuj model połączenia bazy danych i zapisz go w lokalizacji ${BASE_DIR}/mystaging/models/dbmodel.yaml. W poniższych krokach wyodrębnisz model konfiguracji bazy danych z obiektu ConfigMap
sample-domain1-wdt-config-map
. Nazwa jest zgodna z formatem<domain-uid>-wdt-config-map
, gdzie<domain-uid>
jest ustawiana podczas wdrażania oferty. Jeśli zmodyfikowano wartość domyślną, zastąp ją własnym identyfikatorem UID domeny.Kluczem danych jest <db-secret-name.yaml>. Użyj następującego polecenia, aby pobrać nazwę wpisu tajnego bazy danych:
export WLS_DOMAIN_UID=sample-domain1 export WLS_DOMAIN_NS=${WLS_DOMAIN_UID}-ns export DB_K8S_SECRET_NAME=$(kubectl get secret -n ${WLS_DOMAIN_NS} | grep "ds-secret" | awk '{print $1}')
Następnie wyodrębnij model bazy danych za pomocą tego polecenia:
kubectl get configmap sample-domain1-wdt-config-map -n ${WLS_DOMAIN_NS} -o=jsonpath="{['data']['${DB_K8S_SECRET_NAME}\.yaml']}" >${BASE_DIR}/mystaging/models/dbmodel.yaml
Na koniec użyj następującego polecenia, aby zweryfikować zawartość pliku dbmodel.yaml.
cat ${BASE_DIR}/mystaging/models/dbmodel.yaml
Dane wyjściowe tego polecenia powinny przypominać następującą strukturę:
# 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. resources: JDBCSystemResource: jdbc/WebLogicCafeDB: Target: 'cluster-1' JdbcResource: JDBCDataSourceParams: JNDIName: [ jdbc/WebLogicCafeDB ] GlobalTransactionsProtocol: OnePhaseCommit JDBCDriverParams: DriverName: com.microsoft.sqlserver.jdbc.SQLServerDriver URL: '@@SECRET:ds-secret-sqlserver-1727147748:url@@' PasswordEncrypted: '@@SECRET:ds-secret-sqlserver-1727147748:password@@' Properties: user: Value: '@@SECRET:ds-secret-sqlserver-1727147748:user@@' JDBCConnectionPoolParams: TestTableName: SQL SELECT 1 TestConnectionsOnReserve: true
Użyj następujących poleceń, aby utworzyć plik archiwum, a następnie usunąć folder wlsdeploy , którego nie potrzebujesz już:
cd ${BASE_DIR}/mystaging/models zip -r archive.zip wlsdeploy rm -f -r wlsdeploy
Użyj następujących poleceń, aby pobrać i zainstalować narzędzie WebLogic Deploy Tooling (WDT) w katalogu przejściowym i usunąć jego pliki weblogic-deploy/bin/*.cmd , które nie są używane w środowiskach systemu UNIX:
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
Użyj następującego polecenia, aby wyczyścić instalatora WDT:
rm weblogic-deploy.zip
Użyj następujących poleceń, aby utworzyć plik platformy Docker:
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 COPY --chown=\$USER:\$GROUP ./ \${AUXILIARY_IMAGE_PATH}/ USER \$USER EOF
az acr build
Uruchom polecenie przy użyciu polecenia ${BASE_DIR}/mystaging/Dockerfile, jak pokazano w poniższym przykładzie:export ACR_NAME=<value-from-clipboard> export IMAGE="wlsaks-auxiliary-image:1.0"
Użyj następujących poleceń, aby dokładnie sprawdzić pliki przejściowe:
cd ${BASE_DIR}/mystaging find -maxdepth 2 -type f -print
Te polecenia generują dane wyjściowe podobne do następującego przykładu:
./models/model.properties ./models/model.yaml ./models/appmodel.yaml ./models/dbmodel.yaml ./models/archive.zip ./Dockerfile ./weblogic-deploy/VERSION.txt ./weblogic-deploy/LICENSE.txt
Skompiluj obraz za pomocą
az acr build
polecenia , jak pokazano w poniższym przykładzie:az acr build -t ${IMAGE} --build-arg AUXILIARY_IMAGE_PATH=/auxiliary -r ${ACR_NAME} --platform linux/amd64 .
Po pomyślnym skompilowania obrazu dane wyjściowe wyglądają podobnie do następującego przykładu:
... Step 1/9 : FROM busybox latest: Pulling from library/busybox Digest: sha256:9ae97d36d26566ff84e8893c64a6dc4fe8ca6d1144bf5b87b2b85a32def253c7 Status: Image is up to date for busybox:latest ---> 65ad0d468eb1 Step 2/9 : ARG AUXILIARY_IMAGE_PATH=/auxiliary ---> Running in 1f8f4e82ccb6 Removing intermediate container 1f8f4e82ccb6 ---> 947fde618be9 Step 3/9 : ARG USER=oracle ---> Running in dda021591e41 Removing intermediate container dda021591e41 ---> f43d84be4517 Step 4/9 : ARG USERID=1000 ---> Running in cac4df6dfd13 Removing intermediate container cac4df6dfd13 ---> e5513f426c74 Step 5/9 : ARG GROUP=root ---> Running in 8fec1763270c Removing intermediate container 8fec1763270c ---> 9ef233dbe279 Step 6/9 : ENV AUXILIARY_IMAGE_PATH=${AUXILIARY_IMAGE_PATH} ---> Running in b7754f58157a Removing intermediate container b7754f58157a ---> 4a26a97eb572 Step 7/9 : RUN adduser -D -u ${USERID} -G $GROUP $USER ---> Running in b6c1f1a81af1 Removing intermediate container b6c1f1a81af1 ---> 97d3e5ad7540 Step 8/9 : COPY --chown=$USER:$GROUP ./ ${AUXILIARY_IMAGE_PATH}/ ---> 21088171876f Step 9/9 : USER $USER ---> Running in 825e0abc9f6a Removing intermediate container 825e0abc9f6a ---> b81d6430fcda Successfully built b81d6430fcda Successfully tagged wlsaksacru6jyly7kztoqu.azurecr.io/wlsaks-auxiliary-image:1.0 2024/08/28 03:06:19 Successfully executed container: build 2024/08/28 03:06:19 Executing step ID: push. Timeout(sec): 3600, Working directory: '', Network: '' 2024/08/28 03:06:19 Pushing image: wlsaksacru6jyly7kztoqu.azurecr.io/wlsaks-auxiliary-image:1.0, attempt 1 The push refers to repository [wlsaksacru6jyly7kztoqu.azurecr.io/wlsaks-auxiliary-image] ee589b3cda86: Preparing c1fd1adab3b9: Preparing d51af96cf93e: Preparing c1fd1adab3b9: Pushed d51af96cf93e: Pushed ee589b3cda86: Pushed 1.0: digest: sha256:c813eb75576eb07a179c3cb4e70106ca7dd280f933ab33a2f6858de673b12eac size: 946 2024/08/28 03:06:21 Successfully pushed image: wlsaksacru6jyly7kztoqu.azurecr.io/wlsaks-auxiliary-image:1.0 2024/08/28 03:06:21 Step ID: build marked as successful (elapsed time in seconds: 8.780235) 2024/08/28 03:06:21 Populating digests for step ID: build... 2024/08/28 03:06:22 Successfully populated digests for step ID: build 2024/08/28 03:06:22 Step ID: push marked as successful (elapsed time in seconds: 1.980158) 2024/08/28 03:06:22 The following dependencies were found: 2024/08/28 03:06:22 - image: registry: wlsaksacru6jyly7kztoqu.azurecr.io repository: wlsaks-auxiliary-image tag: "1.0" digest: sha256:c813eb75576eb07a179c3cb4e70106ca7dd280f933ab33a2f6858de673b12eac runtime-dependency: registry: registry.hub.docker.com repository: library/busybox tag: latest digest: sha256:9ae97d36d26566ff84e8893c64a6dc4fe8ca6d1144bf5b87b2b85a32def253c7 git: {} Run ID: ca1 was successful after 14s
Obraz jest wypychany do usługi ACR po pomyślnej kompilacji.
Możesz uruchomić polecenie
az acr repository show
, aby sprawdzić, czy obraz jest wypychany do repozytorium zdalnego, jak pokazano w poniższym przykładzie:az acr repository show --name ${ACR_NAME} --image ${IMAGE}
To polecenie powinno wygenerować dane wyjściowe podobne do następującego przykładu:
{ "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 }
Stosowanie obrazu pomocniczego
W poprzednich krokach utworzono obraz pomocniczy, w tym modele i WDT. Zastosuj obraz pomocniczy do klastra serwera WebLogic, wykonując następujące kroki.
Zastosuj obraz pomocniczy, stosując poprawkę niestandardowej definicji zasobu domeny (CRD) przy użyciu
kubectl patch
polecenia .Obraz pomocniczy jest zdefiniowany w
spec.configuration.model.auxiliaryImages
pliku , jak pokazano w poniższym przykładzie: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
Użyj następujących poleceń, aby zwiększyć
restartVersion
wartość i użyćkubectl patch
polecenia , aby zastosować obraz pomocniczy do domeny CRD przy użyciu przedstawionej definicji:export VERSION=$(kubectl -n ${WLS_DOMAIN_NS} get domain ${WLS_DOMAIN_UID} -o=jsonpath='{.spec.restartVersion}' | tr -d "\"") export VERSION=$((VERSION+1)) export ACR_LOGIN_SERVER=$(az acr show --name ${ACR_NAME} --query "loginServer" --output tsv) cat <<EOF >patch-file.json [ { "op": "replace", "path": "/spec/restartVersion", "value": "${VERSION}" }, { "op": "add", "path": "/spec/configuration/model/auxiliaryImages", "value": [{"image": "$ACR_LOGIN_SERVER/$IMAGE", "imagePullPolicy": "IfNotPresent", "sourceModelHome": "/auxiliary/models", "sourceWDTInstallHome": "/auxiliary/weblogic-deploy"}] }, { "op": "remove", "path": "/spec/configuration/model/configMap" } ] EOF kubectl -n ${WLS_DOMAIN_NS} patch domain ${WLS_DOMAIN_UID} \ --type=json \ --patch-file patch-file.json
Ponieważ połączenie z bazą danych jest skonfigurowane na obrazie pomocniczym, uruchom następujące polecenie, aby usunąć ConfigMap:
kubectl delete configmap sample-domain1-wdt-config-map -n ${WLS_DOMAIN_NS}
Przed kontynuowaniem poczekaj, aż następujące polecenie wyświetli następujące dane wyjściowe dla serwera administracyjnego i serwerów zarządzanych:
kubectl get pod -n ${WLS_DOMAIN_NS} -w
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
Osiągnięcie tego stanu przez system może potrwać od 5 do 10 minut. Poniższa lista zawiera omówienie tego, co się dzieje podczas oczekiwania:
- Powinien zostać wyświetlony
sample-domain1-introspector
pierwszy uruchomiony element. To oprogramowanie wyszukuje zmiany w zasobie niestandardowym domeny, dzięki czemu może podejmować niezbędne działania w klastrze Kubernetes. - Po wykryciu zmian introspektor domeny zabija i uruchamia nowe zasobniki w celu wdrożenia zmian.
- Następnie powinno zostać wyświetlone
sample-domain1-admin-server
zakończenie i ponowne uruchomienie zasobnika. - Następnie powinny zostać wyświetlone dwa serwery zarządzane, które zakończą działanie i uruchom ponownie.
- Tylko wtedy, gdy wszystkie trzy zasobniki pokazują
1/1 Running
stan, czy można kontynuować.
Weryfikowanie funkcjonalności wdrożenia
Wykonaj następujące kroki, aby zweryfikować funkcjonalność wdrożenia, wyświetlając konsolę administracyjną serwera WebLogic i przykładową aplikację:
Wklej wartość adminConsoleExternalUrl na pasku adresu przeglądarki internetowej połączonej z Internetem. Powinien zostać wyświetlony ekran logowania do konsoli administracyjnej serwera WebLogic.
Zaloguj się przy użyciu nazwy użytkownika
weblogic
i hasła wprowadzonego podczas wdrażania serwera WebLogic w witrynie Azure Portal. Pamiętaj, że ta wartość towlsAksCluster2022
.W polu Struktura domeny wybierz pozycję Usługi.
W obszarze Usługi wybierz pozycję Źródła danych.
W panelu Podsumowanie źródeł danych JDBC wybierz pozycję Monitorowanie. Ekran powinien wyglądać podobnie do poniższego przykładu. Stan źródła danych jest uruchomiony na serwerach zarządzanych.
W polu Struktura domeny wybierz pozycję Wdrożenia.
W tabeli Wdrożenia powinien istnieć jeden wiersz. Nazwa powinna być taka sama jak
Application
wartość w pliku appmodel.yaml . Wybierz nazwę.Wybierz kartę Testowanie .
Wybierz pozycję weblogic-café.
W panelu Ustawienia dla weblogic-café wybierz kartę Testowanie.
Rozwiń ikonę + obok weblogic-café. Ekran powinien wyglądać podobnie do poniższego przykładu. W szczególności powinny być widoczne wartości podobne do
http://sample-domain1-managed-server1:8001/weblogic-cafe/index.xhtml
w kolumnie Punkt testu.Uwaga
Hiperlinki w kolumnie Punkt testowy nie można zaznaczyć, ponieważ nie skonfigurowaliśmy konsoli administracyjnej przy użyciu zewnętrznego adresu URL, na którym jest uruchomiony. W tym artykule przedstawiono konsolę administracyjną serwera WebLogic tylko w sposób demonstracyjny. Nie używaj konsoli administracyjnej serwera WebLogic server do żadnych trwałych zmian konfiguracji podczas uruchamiania serwera WebLogic w usłudze AKS. Natywny dla chmury projekt serwera WebLogic w usłudze AKS wymaga, aby każda trwała konfiguracja została przedstawiona w początkowych obrazach platformy Docker lub zastosowana do uruchomionego klastra usługi AKS przy użyciu technik ciągłej integracji/ciągłego wdrażania, takich jak aktualizowanie modelu, zgodnie z opisem w dokumentacji oracle.
Zapoznaj się z wartością
context-path
wdrożonej przykładowej aplikacji. Jeśli wdrożono zalecaną przykładową aplikację, parametrcontext-path
toweblogic-cafe
.Skonstruuj w pełni kwalifikowany adres URL przykładowej aplikacji, dołączając
context-path
element do wartości clusterExternalUrl . Jeśli wdrożono zalecaną przykładową aplikację, w pełni kwalifikowany adres URL powinien być podobny dohttp://wlsgw202401-wls-aks-domain1.eastus.cloudapp.azure.com/weblogic-cafe/
następującego: .Wklej w pełni kwalifikowany adres URL w przeglądarce internetowej połączonej z Internetem. Jeśli wdrożono zalecaną przykładową aplikację, powinny zostać wyświetlone wyniki podobne do poniższego zrzutu ekranu:
Czyszczenie zasobów
Aby uniknąć opłat za platformę Azure, należy wyczyścić niepotrzebne zasoby. Gdy klaster nie jest już potrzebny, użyj polecenia az group delete . Następujące polecenie usuwa grupę zasobów, usługę kontenera, rejestr kontenerów, bazę danych i wszystkie powiązane zasoby:
az group delete --name <resource-group-name> --yes --no-wait
az group delete --name <db-resource-group-name> --yes --no-wait
Następne kroki
Dowiedz się więcej na temat uruchamiania serwera WebLogic w usłudze AKS lub maszynach wirtualnych, korzystając z następujących linków:
Aby uzyskać więcej informacji na temat ofert Oracle WebLogic w witrynie Azure Marketplace, zobacz Oracle WebLogic Server na platformie Azure. Wszystkie te oferty to Bring-Your-Own-License. Zakładają one, że masz już odpowiednie licencje z programem Oracle i są prawidłowo licencjonowane do uruchamiania ofert na platformie Azure.
Azure Kubernetes Service