Självstudie: Migrera Oracle WebLogic Server till Azure Kubernetes Service (AKS) i ett anpassat virtuellt nätverk
Den här självstudien visar hur du distribuerar Oracle WebLogic Server (WLS) på AkS-erbjudandet (Azure Kubernetes Service) som integreras med ett anpassat virtuellt nätverk i konsumentens prenumeration. Med WLS på AKS-erbjudandet kan du bestämma om du vill skapa ett nytt virtuellt nätverk eller använda ett befintligt nätverk.
I den här självstudien lär du dig att:
- Skapa ett anpassat virtuellt nätverk och skapa infrastrukturen i nätverket.
- Kör Oracle WebLogic Server på AKS i det anpassade virtuella nätverket.
- Exponera Oracle WebLogic Server med Azure Application Gateway som lastbalanserare.
- Verifiera lyckad distribution.
Förutsättningar
- En Azure-prenumeration. Om du inte har en Azure-prenumeration kan du skapa ettkostnadsfritt konto innan du börjar.
- Förbered en lokal dator med Unix-liknande operativsystem installerat , till exempel Ubuntu, macOS eller Windows-undersystem för Linux.
- Installera Azure CLI 2.37.0 eller senare för att köra Azure CLI-kommandon.
- Logga in med Azure CLI med kommandot az login . Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen. Se Logga in på Azure med Azure CLI för andra inloggningsalternativ.
- När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda och hantera tillägg med Azure CLI.
- Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
- Erbjudandet WLS på AKS Marketplace kräver behörighet att skapa användartilldelad hanterad identitet och tilldela Azure-roller. Om du vill tilldela Azure-roller måste du ha
Microsoft.Authorization/roleAssignments/write
behörigheter, till exempel administratör för användaråtkomst eller ägare. - Ett Oracle-konto. Stegen i Oracle Container Registry instruerar dig att godkänna licensavtalet för WebLogic Server-avbildningar. Anteckna lösenordet och e-postmeddelandet för ditt Oracle-konto.
Skapa en resursgrupp
Skapa en resursgrupp med az group create. I det här exemplet skapas en resursgrupp med namnet myResourceGroup
på platsen eastus
:
export RESOURCE_GROUP_NAME="myResourceGroup"
az group create \
--name ${RESOURCE_GROUP_NAME} \
--location eastus
Skapa ett anpassat virtuellt nätverk
Det finns begränsningar när du skapar ett anpassat virtuellt nätverk. Läs följande artiklar innan du skapar det virtuella nätverket i din miljö:
- Nätverksbegrepp för program i Azure Kubernetes Service (AKS).
- Konfiguration av Application Gateway-infrastruktur.
Exemplet i det här avsnittet skapar ett virtuellt nätverk med adressutrymme 192.168.0.0/16
och skapar två undernät som används för AKS och Application Gateway.
Skapa först ett virtuellt nätverk med az network vnet create. I följande exempel skapas ett virtuellt standardnätverk med namnet myVNet
:
az network vnet create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myVNet \
--address-prefixes 192.168.0.0/16
Skapa sedan ett undernät med az network vnet subnet create för AKS-klustret. I följande exempel skapas ett undernät med namnet myAKSSubnet
:
az network vnet subnet create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myAKSSubnet \
--vnet-name myVNet \
--address-prefixes 192.168.1.0/24
Skapa sedan ett undernät med az network vnet subnet create för Application Gateway. I följande exempel skapas ett undernät med namnet myAppGatewaySubnet
:
az network vnet subnet create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myAppGatewaySubnet \
--vnet-name myVNet \
--address-prefixes 192.168.2.0/24
Använd sedan följande kommando för att hämta resurs-ID:t för AKS-undernätet och lagra det i en variabel för användning senare i den här artikeln:
export AKS_SUBNET_ID=$(az network vnet subnet show \
--resource-group ${RESOURCE_GROUP_NAME} \
--vnet-name myVNet \
--name myAKSSubnet \
--query id \
--output tsv)
Skapa ett AKS-kluster i det virtuella nätverket
Använd följande kommando för att skapa ett AKS-kluster i ditt virtuella nätverk och undernät med hjälp av kommandot az aks create .
Kommentar
Det här exemplet skapar ett AKS-kluster med kubenet och en systemtilldelad identitet. Azure CLI beviljar rollen Nätverksdeltagare till den systemtilldelade identiteten när klustret har skapats.
Om du vill använda Azure CNI läser du Konfigurera Azure CNI-nätverk i AKS för att skapa ett Azure CNI-aktiverat AKS-kluster.
Om du vill använda en användartilldelad hanterad identitet kan du läsa Skapa ett AKS-kluster med systemtilldelade hanterade identiteter.
az aks create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myAKSCluster \
--generate-ssh-keys \
--enable-managed-identity \
--node-count 3 \
--network-plugin kubenet \
--vnet-subnet-id $AKS_SUBNET_ID \
--yes
Lagra Java EE-program i ett lagringskonto
Du kan distribuera ett Java EE-program tillsammans med distributionen av WLS på AKS-erbjudandet. Du måste ladda upp programfilen (.war, .ear eller .jar) till ett befintligt Azure Storage-konto och en lagringscontainer i det kontot.
Skapa ett Azure Storage-konto med kommandot az storage account create , som du ser i följande exempel:
export STORAGE_ACCOUNT_NAME="stgwlsaks$(date +%s)"
az storage account create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name ${STORAGE_ACCOUNT_NAME} \
--location eastus \
--sku Standard_RAGRS \
--kind StorageV2
Skapa en behållare för att lagra blobar med kommandot az storage container create. I följande exempel används lagringskontonyckeln för att auktorisera åtgärden för att skapa containern. Du kan också använda ditt Microsoft Entra-konto för att auktorisera åtgärden för att skapa containern. Mer information finns i Auktorisera åtkomst till blob- eller ködata med Azure CLI.
export KEY=$(az storage account keys list \
--resource-group ${RESOURCE_GROUP_NAME} \
--account-name ${STORAGE_ACCOUNT_NAME} \
--query [0].value \
--output tsv)
az storage container create \
--account-name ${STORAGE_ACCOUNT_NAME} \
--name mycontainer \
--account-key ${KEY} \
--auth-mode key
Ladda sedan upp ditt Java EE-program till en blob med kommandot az storage blob upload . I följande exempel laddas testwebapp.war-testprogrammet upp.
curl -fsL https://aka.ms/wls-aks-testwebapp -o testwebapp.war
az storage blob upload \
--account-name ${STORAGE_ACCOUNT_NAME} \
--container-name mycontainer \
--name testwebapp.war \
--file testwebapp.war \
--account-key ${KEY} \
--auth-mode key
Information om hur du laddar upp flera filer samtidigt finns i Skapa, ladda ned och lista blobar med Azure CLI.
Distribuera WLS i AKS-erbjudandet
Det här avsnittet visar hur du etablerar ett WLS-kluster med aks-instansen som du skapade tidigare. Du etablerar klustret i det anpassade virtuella nätverket och exporterar klusternoder med Azure Application Gateway som lastbalanserare. Erbjudandet genererar automatiskt ett självsignerat certifikat för Application Gateway TLS/SSL-avslutning. Avancerad användning av TLS/SSL-avslutning med Application Gateway finns i Application Gateway-ingresskontrollant.
Börja först med att distribuera en WebLogic Server enligt beskrivningen i användarhandboken för Oracle WebLogic Server i AKS, men kom tillbaka till den här sidan när du når Konfigurera AKS-kluster, som du ser i följande skärmbild.
Konfigurera AKS-klustret
Nu när du har ett AKS-kluster i det virtuella nätverket väljer du AKS-klustret för distributionen.
- För Skapa ett nytt AKS-kluster?, väljer du Nej.
- Under Välj AKS-kluster öppnar du den nedrullningsbara menyn och väljer sedan det AKS-kluster som du skapade med namnet
myAKSCluster
i det här exemplet. - För Använd en befintlig WebLogic Server Docker-avbildning från Oracle Container Registry? väljer du Ja.
- För Skapa ett nytt Azure Container Registry för att lagra programavbildningar? väljer du Ja.
- Under Användarnamn för Oracle-autentisering med enkel inloggning anger du användarnamnet för ditt Oracle-konto för enkel inloggning.
- Under Lösenord för Oracle-autentisering med enkel inloggning anger du lösenordet för det kontot.
- Under Bekräfta lösenord anger du värdet för föregående fält igen.
- För Välj önskad kombination av WebLogic Server, JDK och Operator System eller fullständigt kvalificerad Docker-tagg behåller du standardvärdet.
- För Distribuera programpaketet väljer du Ja.
- För Programpaket (.war,.ear,.jar)väljer du Bläddra.
- Välj det lagringskonto som du skapade. Namnet börjar med
stgwlsaks
i det här exemplet. - Välj containern på sidan Containrar . I det här exemplet används
mycontainer
. - Kontrollera ditt program i containern. I det här exemplet används testwebapp.war.
- Välj Välj.
- Välj det lagringskonto som du skapade. Namnet börjar med
- Behåll standardvärdena för andra fält.
Nu har du konfigurerat AKS-klustret, WebLogic-basavbildningen och Java EE-programmet.
Därefter konfigurerar du TLS/SSL från slutpunkt till slutpunkt till WebLogic Server Administration Console och kluster på HTTPS-port (säker) med ditt eget certifikat i fönstret TLS/SSL-konfiguration . För den här uppgiften följer du stegen i användarhandboken för Oracle WebLogic Server i AKS, men kom tillbaka till den här sidan när du når Nätverk, som du ser i följande skärmbild. Du använder nästa avsnitt för att konfigurera nätverket och återgår sedan till användarhandboken för WLS i AKS för att slutföra distributionen.
Konfigurera Application Gateway-ingresskontrollant
Använd följande steg för att konfigurera Application Gateway Ingress Controller i det virtuella nätverket.
- För Anslut till Azure Application Gateway? väljer du Ja.
- Under Konfigurera virtuella nätverk väljer du det virtuella nätverk som du skapade för Virtuellt nätverk. Det här exemplet används
myVNet
imyResourceGroup
. För Undernät väljer du undernätet för Application Gateway. I det här exemplet användsmyAppGatewaySubnet
. - För Alternativet Välj önskat TLS/SSL-certifikat väljer du Generera ett självsignerat klientdelscertifikat.
- För Skapa ingress för administrationskonsolen väljer du Ja för att exponera WebLogic-administrationskonsolen.
- Behåll standardvärdena för de andra fälten.
Nu kan du fortsätta med de andra aspekterna av WLS-distributionen enligt beskrivningen i användarhandboken för Oracle WebLogic Server i AKS.
Verifiera lyckad distribution av WLS
Det här avsnittet visar hur du snabbt verifierar den lyckade distributionen av WLS-klustret och Application Gateway-ingresskontrollanten.
När distributionen är klar väljer du Utdata. Du hittar den externa URL:en för WebLogic-administrationskonsolen och klustret. Använd följande instruktioner för att komma åt dessa resurser:
- Om du vill visa WebLogic-administrationskonsolen kopierar du först värdet för utdatavariabeln
adminConsoleExternalUrl
. Klistra sedan in värdet i webbläsarens adressfält och tryck på Retur för att öppna inloggningssidan i WebLogic-administrationskonsolen. - Om du vill visa WebLogic-klustret kopierar du först värdet för utdatavariabeln
clusterExternalUrl
. Använd sedan det här värdet för att skapa exempelprogrammets URL genom att tillämpa den på följande mall:${clusterExternalUrl}testwebapp/
. Klistra nu in programmets URL i webbläsarens adressfält och tryck på Retur. Du ser att exempelprogrammet visar den privata adressen och värdnamnet för podden som Application Gateway Ingress Controller dirigeras till.
Rensa resurser
Om du inte fortsätter att använda WLS-klustret tar du bort det virtuella nätverket och WLS-klustret med följande Azure Portal steg:
- Gå till översiktssidan för resursgruppen
myResourceGroup
och välj sedan Ta bort resursgrupp. - Gå till översiktssidan för den resursgrupp som du distribuerade WLS i AKS-erbjudandet och välj sedan Ta bort resursgrupp.
Nästa steg
Fortsätt att utforska alternativ för att köra WLS i Azure.