Udostępnij za pośrednictwem


Samouczek: migrowanie serwera Oracle WebLogic Server do usługi Azure Kubernetes Service (AKS) w ramach niestandardowej sieci wirtualnej

W tym samouczku pokazano, jak wdrożyć serwer Oracle WebLogic Server (WLS) w ofercie usługi Azure Kubernetes Service (AKS), która integruje się z niestandardową siecią wirtualną w subskrypcji użytkownika. Oferta WLS w usłudze AKS umożliwia podjęcie decyzji, czy utworzyć nową sieć wirtualną, czy użyć istniejącej.

Z tego samouczka dowiesz się, jak wykonywać następujące czynności:

  • Utwórz niestandardową sieć wirtualną i utwórz infrastrukturę w sieci.
  • Uruchom program Oracle WebLogic Server w usłudze AKS w niestandardowej sieci wirtualnej.
  • Uwidaczniaj serwer Oracle WebLogic za pomocą usługi aplikacja systemu Azure Gateway jako modułu równoważenia obciążenia.
  • Weryfikowanie pomyślnego wdrożenia.

Wymagania wstępne

  • Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
  • Przygotuj maszynę lokalną z zainstalowanym systemem operacyjnym przypominającym system Unix — na przykład Ubuntu, macOS lub Podsystem Windows dla systemu Linux.
  • Zainstaluj interfejs wiersza polecenia platformy Azure w wersji 2.37.0 lub nowszej, aby uruchomić polecenia interfejsu wiersza polecenia platformy Azure.
  • Oferta WLS na platformie handlowej usługi AKS wymaga uprawnień do tworzenia tożsamości zarządzanej przypisanej przez użytkownika i przypisywania ról platformy Azure. Aby przypisać role platformy Azure, musisz mieć Microsoft.Authorization/roleAssignments/write uprawnienia, takie jak administrator dostępu użytkowników lub właściciel.
  • Konto Oracle. Kroki opisane w usłudze Oracle Container Registry spowodują zaakceptowanie umowy licencyjnej dla obrazów serwera WebLogic. Zanotuj hasło i adres e-mail konta Oracle.

Tworzenie grupy zasobów

Utwórz grupę zasobów za pomocą polecenia az group create. W tym przykładzie eastus zostanie utworzona grupa zasobów o nazwie myResourceGroup w lokalizacji:

export RESOURCE_GROUP_NAME="myResourceGroup"
az group create \
    --name ${RESOURCE_GROUP_NAME} \
    --location eastus

Tworzenie niestandardowej sieci wirtualnej

Istnieją ograniczenia podczas tworzenia niestandardowej sieci wirtualnej. Przed utworzeniem sieci wirtualnej w środowisku przeczytaj następujące artykuły:

Przykład w tej sekcji tworzy sieć wirtualną z przestrzenią adresową 192.168.0.0/16i tworzy dwie podsieci używane dla usług AKS i Application Gateway.

Najpierw utwórz sieć wirtualną przy użyciu polecenia az network vnet create. Poniższy przykład tworzy domyślną sieć wirtualną o nazwie myVNet:

az network vnet create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myVNet \
    --address-prefixes 192.168.0.0/16

Następnie utwórz podsieć przy użyciu polecenia az network vnet subnet create dla klastra usługi AKS. Poniższy przykład tworzy podsieć o nazwie myAKSSubnet:

az network vnet subnet create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myAKSSubnet \
    --vnet-name myVNet \
    --address-prefixes 192.168.1.0/24

Następnie utwórz podsieć przy użyciu polecenia az network vnet subnet create for Application Gateway. Poniższy przykład tworzy podsieć o nazwie myAppGatewaySubnet:

az network vnet subnet create \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myAppGatewaySubnet \
    --vnet-name myVNet \
    --address-prefixes 192.168.2.0/24

Następnie użyj następującego polecenia, aby uzyskać identyfikator zasobu podsieci usługi AKS i zapisać go w zmiennej do użycia w dalszej części tego artykułu:

export AKS_SUBNET_ID=$(az network vnet subnet show \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --vnet-name myVNet \
    --name myAKSSubnet \
    --query id \
    --output tsv)

Tworzenie klastra usługi AKS w sieci wirtualnej

Użyj następującego polecenia, aby utworzyć klaster usługi AKS w sieci wirtualnej i podsieci przy użyciu polecenia az aks create .

Uwaga

W tym przykładzie tworzony jest klaster usługi AKS przy użyciu rozwiązania kubenet i tożsamości przypisanej przez system. Interfejs wiersza polecenia platformy Azure przyzna rolę Współautor sieci tożsamości przypisanej przez system po utworzeniu klastra.

Jeśli chcesz użyć usługi Azure CNI, zobacz Konfigurowanie sieci CNI platformy Azure w usłudze AKS w celu utworzenia klastra usługi AKS z obsługą usługi Azure CNI .

Jeśli chcesz użyć tożsamości zarządzanej przypisanej przez użytkownika, zobacz Tworzenie klastra AKS z tożsamościami zarządzanymi przypisanymi przez system.

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

Przechowywanie aplikacji Java EE na koncie magazynu

Aplikację Java EE można wdrożyć wraz z usługą WLS we wdrożeniu oferty usługi AKS. Musisz przekazać plik aplikacji (war, .ear lub .jar) do istniejącego konta usługi Azure Storage i kontenera magazynu w ramach tego konta.

Utwórz konto usługi Azure Storage przy użyciu polecenia az storage account create , jak pokazano w poniższym przykładzie:

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

Do tworzenia kontenera do przechowywania obiektów blob służy polecenie az storage container create. W poniższym przykładzie użyto klucza konta magazynu, aby autoryzować operację do utworzenia kontenera. Możesz również użyć konta Microsoft Entra, aby autoryzować operację do utworzenia kontenera. Aby uzyskać więcej informacji, zobacz Autoryzowanie dostępu do danych obiektów blob lub kolejek za pomocą interfejsu wiersza polecenia platformy Azure.

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

Następnie przekaż aplikację Java EE do obiektu blob przy użyciu polecenia az storage blob upload . Poniższy przykład przekazuje aplikację testową w aplikacji testowej.

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

Aby przekazać wiele plików jednocześnie, zobacz Tworzenie, pobieranie i wyświetlanie listy obiektów blob za pomocą interfejsu wiersza polecenia platformy Azure.

Wdrażanie zabezpieczeń WLS w ofercie usługi AKS

W tej sekcji pokazano, jak aprowizować klaster WLS przy użyciu utworzonego wcześniej wystąpienia usługi AKS. Zaaprowizujesz klaster w ramach niestandardowej sieci wirtualnej i wyeksportujesz węzły klastra przy użyciu usługi aplikacja systemu Azure Gateway jako modułu równoważenia obciążenia. Oferta automatycznie wygeneruje certyfikat z podpisem własnym na potrzeby kończenia żądań PROTOKOŁU TLS/SSL usługi Application Gateway. Aby uzyskać zaawansowane użycie kończenia żądań PROTOKOŁU TLS/SSL w usłudze Application Gateway, zobacz Application Gateway Ingress Controller (Kontroler ruchu przychodzącego usługi Application Gateway).

Najpierw rozpocznij proces wdrażania serwera WebLogic zgodnie z opisem w przewodniku użytkownika Oracle WebLogic Server w usłudze AKS, ale wróć do tej strony po nawiązaniu połączenia z konfigurowaniem klastra AKS, jak pokazano na poniższym zrzucie ekranu.

Zrzut ekranu witryny Azure Portal przedstawiający okienko Konfigurowanie klastra usługi AKS na stronie Tworzenie serwera Oracle WebLogic na platformie Azure Kubernetes Service.

Konfigurowanie klastra usługi AKS

Teraz, gdy masz klaster usługi AKS w sieci wirtualnej, wybierz klaster AKS dla wdrożenia.

  1. W obszarze Utwórz nowy klaster usługi AKS? wybierz pozycję Nie.
  2. W obszarze Wybierz klaster usługi AKS otwórz menu rozwijane, a następnie wybierz utworzony klaster usługi AKS o nazwie myAKSCluster w tym przykładzie.
  3. W polu Użyj istniejącego obrazu platformy Docker serwera WebLogic z rejestru kontenerów Oracle? wybierz pozycję Tak.
  4. Aby utworzyć nową usługę Azure Container Registry do przechowywania obrazów aplikacji? wybierz pozycję Tak.
  5. W obszarze Nazwa użytkownika na potrzeby uwierzytelniania logowania jednokrotnego oracle wprowadź nazwę użytkownika konta logowania jednokrotnego Oracle.
  6. W obszarze Hasło do uwierzytelniania logowania jednokrotnego Oracle wprowadź hasło dla tego konta.
  7. W obszarze Potwierdź hasło wprowadź ponownie wartość poprzedniego pola.
  8. W polu Wybierz żądaną kombinację serwera WebLogic, zestawu JDK i systemu operatorów lub w pełni kwalifikowanego tagu platformy Docker zachowaj wartość domyślną.
  9. W polu Wdróż pakiet aplikacji wybierz pozycję Tak.
  10. W obszarze Pakiet aplikacji (.war,.ear,.jar) wybierz pozycję Przeglądaj.
    • Wybierz utworzone konto magazynu. Nazwa zaczyna się od stgwlsaks w tym przykładzie.
    • Wybierz kontener na stronie Kontenery . W tym przykładzie użyto wartości mycontainer.
    • Sprawdź aplikację wymienioną w kontenerze. W tym przykładzie użyto pliku testwebapp.war.
    • Wybierz pozycję Wybierz.
  11. W przypadku innych pól zachowaj wartości domyślne.

Zakończono konfigurowanie klastra AKS, obrazu podstawowego WebLogic i aplikacji Java EE.

Następnie skonfigurujesz kompleksowe protokoły TLS/SSL do konsoli administracyjnej serwera WebLogic i klastra na porcie HTTPS (Secure) przy użyciu własnego certyfikatu w okienku Konfiguracja protokołu TLS/SSL. W tym zadaniu wykonaj kroki opisane w przewodniku użytkownika Oracle WebLogic Server w usłudze AKS, ale wróć do tej strony po nawiązaniu połączenia z siecią, jak pokazano na poniższym zrzucie ekranu. Użyjesz następnej sekcji, aby skonfigurować sieć, a następnie powrócisz do usługi WLS w podręczniku użytkownika usługi AKS, aby ukończyć wdrożenie.

Zrzut ekranu witryny Azure Portal przedstawiający okienko Sieć na stronie Create Oracle WebLogic Server on Azure Kubernetes Service (Tworzenie serwera Oracle WebLogic w usłudze Azure Kubernetes Service).

Konfigurowanie kontrolera ruchu przychodzącego usługi Application Gateway

Wykonaj poniższe kroki, aby skonfigurować kontroler ruchu przychodzącego usługi Application Gateway w sieci wirtualnej.

  1. W obszarze Połącz z bramą aplikacja systemu Azure? wybierz pozycję Tak.
  2. W obszarze Konfigurowanie sieci wirtualnych w obszarze Sieć wirtualna wybierz utworzoną sieć wirtualną. W tym przykładzie użyto metody myVNet w pliku myResourceGroup. W polu Podsieć wybierz podsieć usługi Application Gateway. W tym przykładzie użyto wartości myAppGatewaySubnet.
  3. W polu Wybierz żądany certyfikat TLS/SSL wybierz pozycję Generuj certyfikat frontonu z podpisem własnym.
  4. W obszarze Tworzenie ruchu przychodzącego dla konsoli administracyjnej wybierz pozycję Tak , aby uwidocznić konsolę administracyjną serwera WebLogic.
  5. W przypadku innych pól zachowaj wartości domyślne.

Teraz możesz kontynuować pracę z innymi aspektami wdrożenia ZLS, zgodnie z opisem w podręczniku użytkownika oracle WebLogic Server w usłudze AKS.

Weryfikowanie pomyślnego wdrożenia zabezpieczeń WLS

W tej sekcji pokazano, jak szybko zweryfikować pomyślne wdrożenie klastra WLS i kontrolera ruchu przychodzącego usługi Application Gateway.

Po zakończeniu wdrażania wybierz pozycję Dane wyjściowe. Znajdziesz zewnętrzny adres URL konsoli administracyjnej serwera WebLogic i klastra. Aby uzyskać dostęp do tych zasobów, wykonaj następujące instrukcje:

  • Aby wyświetlić konsolę administracyjną WebLogic, najpierw skopiuj wartość zmiennej wyjściowej adminConsoleExternalUrl. Następnie wklej wartość na pasku adresu przeglądarki i naciśnij Enter , aby otworzyć stronę logowania konsoli administracyjnej WebLogic.
  • Aby wyświetlić klaster WebLogic, najpierw skopiuj wartość zmiennej wyjściowej clusterExternalUrl. Następnie użyj tej wartości, aby skonstruować przykładowy adres URL aplikacji, stosując go do następującego szablonu: ${clusterExternalUrl}testwebapp/. Teraz wklej adres URL aplikacji na pasku adresu przeglądarki i naciśnij Enter. Przekonasz się, że przykładowa aplikacja pokazuje prywatny adres i nazwę hosta zasobnika, do którego jest routing kontrolera ruchu przychodzącego usługi Application Gateway.

Czyszczenie zasobów

Jeśli nie zamierzasz nadal korzystać z klastra WLS, usuń sieć wirtualną i klaster WLS, wykonując następujące kroki w witrynie Azure Portal:

  1. Odwiedź stronę przeglądu grupy myResourceGroupzasobów, a następnie wybierz pozycję Usuń grupę zasobów.
  2. Odwiedź stronę przeglądu grupy zasobów wdrożonej w ofercie usługi AKS, a następnie wybierz pozycję Usuń grupę zasobów.

Następne kroki

Kontynuuj eksplorowanie opcji uruchamiania zabezpieczeń WLS na platformie Azure.