Migrowanie aplikacji WebSphere do usługi Azure Kubernetes Service

W tym przewodniku opisano, co należy wiedzieć, kiedy chcesz przeprowadzić migrację istniejącego obciążenia serwera aplikacji WebSphere (WAS) do ibm WebSphere Liberty lub Open Liberty w usłudze Azure Kubernetes Service (AKS).

Przed migracją

Aby zapewnić pomyślną migrację, przed rozpoczęciem wykonaj kroki oceny i spisu opisane w poniższych sekcjach.

Upewnij się, że element docelowy jest odpowiednim celem dla nakładu pracy nad migracją

Pierwszym krokiem pomyślnej migracji aplikacji WAS na platformę Azure jest wybranie najbardziej odpowiedniego celu migracji.

Usługa WAS działa dobrze w usłudze Azure Virtual Machines. Obiekt docelowy maszyny wirtualnej jest najprostszym wyborem, ponieważ najbardziej przypomina wdrożenie lokalne. Środowisko administracyjne i wdrożenie maszyn wirtualnych jest podobne do środowiska lokalnego.

Inną opcją jest migracja do kontenerów przez przekonwertowanie tradycyjnego obciążenia WAS na kontenery aplikacji. Element docelowy kontenera można uruchomić w usługach Azure Kubernetes Service (AKS) i Azure Red Hat OpenShift. Kompromisem za tę łatwość jest koszt ekonomiczny.

Ogólnie rzecz biorąc, koszt za minutę rozwiązania opartego na maszynie wirtualnej jest wyższy w porównaniu z kontenerami. Chociaż rozwiązanie oparte na kontenerze kosztuje mniej do uruchomienia, należy ograniczyć aplikację, aby dopasować się do wymagań platformy orkiestracji kontenerów.

Jeśli minimalizacja zmian jest najważniejszym czynnikiem dla nakładu pracy nad migracją, rozważ migrację opartą na maszynie wirtualnej. W tym przypadku zobacz Migrowanie aplikacji WebSphere do usługi Azure Virtual Machines.

Jeśli możesz tolerować konwertowanie aplikacji do uruchamiania w kontenerach w celu zmniejszenia kosztów środowiska uruchomieniowego, rozważ migrację opartą na usłudze AKS lub migrację opartą na usłudze Azure Red Hat OpenShift.

W przypadku migracji opartej na usłudze AKS możesz rozpocząć korzystanie z warstwy Bezpłatna. Uzyskaj bezpłatne zarządzanie klastrem i zapłać tylko za używane maszyny wirtualne, skojarzony magazyn i zasoby sieciowe. W tym przypadku zobacz Migrowanie aplikacji WebSphere do usługi Azure Kubernetes Service.

W przypadku migracji opartej na platformie Azure Red Hat OpenShift oprócz kosztów obliczeń i infrastruktury węzły aplikacji mają kolejny koszt składnika licencji OpenShift. Ten koszt jest rozliczany na podstawie liczby węzłów aplikacji i typu wystąpienia. Użyj cen na żądanie lub wystąpień zarezerwowanych, w zależności od tego, co najlepiej spełnia potrzeby obciążenia i firmy. W tym przypadku zobacz Migrowanie aplikacji WebSphere do usługi Azure Red Hat OpenShift.

Przewodniki z instrukcjami w dokumentacji usługi Azure Red Hat OpenShift obejmują niektóre aspekty istotne dla migracji. Pełną listę przewodników z instrukcjami można znaleźć w dokumentacji usługi Azure Red Hat OpenShift.

Określanie, czy wstępnie utworzona oferta witryny Azure Marketplace jest dobrym punktem wyjścia

Po podjęciu decyzji, że usługa AKS jest odpowiednim celem wdrożenia, musisz zaakceptować, że operator IBM WebSphere Liberty lub Open Liberty Operator (operator) to jedyny sposób uruchamiania liberty na platformie Kubernetes. Po zaakceptowaniu tego faktu musisz zdecydować, czy wstępnie utworzona oferta witryny Azure Marketplace jest dobrym punktem wyjścia. Poniżej przedstawiono kilka kwestii, które należy wziąć pod uwagę podczas wstępnie utworzonej oferty witryny Azure Marketplace:

  • Firma IBM i microsoft stworzyła tę ofertę, aby umożliwić szybką aprowizację usługi Liberty w usłudze AKS. Ta koncepcja jest bardziej szczegółowo wyjaśniona w poniższej zawartości.
  • Na wysokim poziomie oferta automatyzuje następujące kroki.
    • W razie potrzeby wykonaj istniejący obraz aplikacji.
    • Aprowizuj klaster usługi AKS i wystąpienie usługi Azure Container Registry (ACR) w razie potrzeby.
    • Zainstaluj i skonfiguruj operator IBM WebSphere Liberty lub operator Open Liberty w usłudze AKS.
    • Użyj operatora , aby uruchomić całość. Operator wdraża konteneryzowane aplikacje Liberty i zarządza nimi w usłudze AKS. Dokumentację referencyjną można znaleźć w witrynie IBM WebSphere Liberty operator i operator Open Liberty.

Jeśli nie używasz wstępnie utworzonej oferty witryny Azure Marketplace, musisz dowiedzieć się, jak bezpośrednio używać operatora. Opanowanie operatora wykracza poza zakres tego artykułu. Pełna dokumentacja operatora jest dostępna w witrynie IBM WebSphere Liberty operator i operator Open Liberty.

Teraz, po wprowadzeniu różnych sposobów obsługi usługi Liberty w usłudze AKS, lepiej możesz wybrać, czy używać wstępnie utworzonej oferty witryny Azure Marketplace, czy zrobić to samodzielnie przy użyciu operatora bezpośrednio.

Określanie, czy wersja Liberty jest zgodna

Potrzebujesz operatora Open Liberty lub operatora WebSphere Liberty, aby wdrażać aplikacje w klastrach opartych na platformie Kubernetes i zarządzać nimi. Upewnij się, że istniejąca wersja Liberty jest jedną z wersji obsługiwanych przez operatora. Wersje Open Liberty są obsługiwane w witrynie GitHub OpenLiberty/open-liberty. IBM obsługuje wersje serwera IBM WebSphere Application Server Liberty. Aby uzyskać więcej informacji, zobacz WebSphere Application Server Liberty.

Wstępnie utworzona oferta witryny Azure Marketplace umożliwia wybranie obrazów aplikacji z rejestru publicznego, a tym samym niejawnie obsługuje wszystkie wersje.

Określanie, czy wymagana jest licencja

W przypadku ibm WebSphere Liberty należy zaakceptować postanowienia umowy licencyjnej odpowiadającej wersji programu IBM w kontenerze aplikacji. Aby uzyskać umowę licencyjną dotyczącą tego programu IBM, zobacz Wyświetlanie informacji o licencji dla operatora WebSphere Liberty. Aby uzyskać więcej informacji, zobacz Running WebSphere Liberty on Microsoft Azure (Uruchamianie platformy WebSphere Liberty na platformie Microsoft Azure).

Jeśli wersja produktu jest czymś innym niż domyślny serwer APLIKACJI IBM WebSphere (baza), .spec.license.edition value należy określić wersję produktu. Inne dostępne wartości to IBM WebSphere Application Server Liberty Core i IBM WebSphere Application Server Network Deployment. Wstępnie utworzona oferta witryny Azure Marketplace umożliwia wybranie obsługiwanej wersji produktu.

Różnice w spisie przy użyciu narzędzi migracji IBM

Aby przenieść aplikacje na serwer WebSphere Application Server Liberty lub Open Liberty, należy zaplanować migrację, przeanalizować aplikacje i zaktualizować kod źródłowy. FIRMA IBM udostępnia narzędzia migracji, które ułatwiają identyfikowanie wszelkich różnic między bieżącym środowiskiem a technologiami w nowym środowisku Liberty, takimi jak Java EE 7 lub Java EE 8 oraz Java SE 8 lub Java SE 11. Aby uzyskać więcej informacji, zobacz Migrowanie aplikacji do liberty.

Utworzenie spisu pojemności serwerów

Udokumentowanie sprzętu (pamięci, procesora CPU, dysku) bieżących serwerów produkcyjnych oraz średniej i szczytowej liczby żądań oraz wykorzystania zasobów. Te informacje będą potrzebne niezależnie od wybranej ścieżki migracji. Jest to przydatne, na przykład, aby ułatwić wybór rozmiaru maszyn wirtualnych w puli węzłów, ilość pamięci używanej przez kontener oraz liczbę udziałów procesora CPU w kontenerze.

Istnieje możliwość zmiany rozmiaru pul węzłów w usłudze AKS. Aby dowiedzieć się, jak to zrobić, zobacz Zmienianie rozmiaru pul węzłów w usłudze Azure Kubernetes Service (AKS).

Utworzenie spisu wszystkich wpisów tajnych

Przed pojawieniem się technologii typu „konfiguracja jako usługa”, takich jak usługa Azure Key Vault, nie było dobrze zdefiniowanego pojęcia „wpisu tajnego”. Zamiast tego korzystano z odrębnych zestawów ustawień konfiguracji, które efektywnie funkcjonowały jak dzisiejsze „wpisy tajne”. W przypadku serwerów aplikacji, takich jak WAS, te wpisy tajne znajdują się w wielu różnych plikach konfiguracji i magazynach konfiguracji. Sprawdź wszystkie pliki właściwości i konfiguracji na serwerach produkcyjnych kątem jakichkolwiek wpisów tajnych i haseł. Możesz również znaleźć pliki konfiguracji zawierające hasła lub poświadczenia wewnątrz aplikacji. WAS przechowuje dane konfiguracji w kilku dokumentach w kaskadowej hierarchii katalogów. Większość dokumentów konfiguracyjnych ma zawartość XML. Aby uzyskać więcej informacji, zobacz Dokumenty konfiguracji i Podstawowe pojęcia dotyczące usługi Azure Key Vault.

Po utworzeniu solidnego spisu wpisów tajnych zapoznaj się z dokumentacją operatora dotyczącą wpisów tajnych. Aby uzyskać więcej informacji, zobacz następujące artykuły:

Utworzenie spisu wszystkich certyfikatów

Zapisz wszystkie certyfikaty używane na potrzeby publicznych punktów końcowych protokołu SSL. Wszystkie certyfikaty na serwerach produkcyjnych można wyświetlić, uruchamiając następujące polecenie:

keytool -list -v -keystore <path to keystore>

Po utworzeniu solidnego spisu certyfikatów skonfiguruj je przy użyciu następujących artykułów:

Sprawdzanie, czy obsługiwana wersja języka Java działa poprawnie

Korzystanie z platformy Liberty wymaga określonej wersji języka Java, dlatego należy potwierdzić, że aplikacja działa prawidłowo przy użyciu tej obsługiwanej wersji.

Środowisko uruchomieniowe serwera Aplikacji WebSphere Liberty ma określone wymagania dotyczące minimalnego poziomu środowiska uruchomieniowego Java Runtime Environment (JRE). Aby uzyskać więcej informacji, zobacz Zależności wersji języka Java dla funkcji.

Środowisko uruchomieniowe Open Liberty wymaga środowiska uruchomieniowego Java SE. Można go uruchomić przy użyciu dystrybucji Java Runtime Environment (JRE) lub Java SE Development Kit (JDK). Aby uzyskać więcej informacji, zobacz Obsługiwane wersje środowiska Java SE.

Utworzenie spisu zasobów JNDI

Utwórz spis wszystkich zasobów JNDI. Na przykład źródła danych, takie jak bazy danych, mogą mieć skojarzoną nazwę JNDI, która umożliwia interfejsowi JPA prawidłowe powiązanie wystąpień EntityManager z określoną bazą danych. Aby uzyskać więcej informacji na temat zasobów i baz danych JNDI, zobacz WebSphere Data Sources (Źródła danych WebSphere) w dokumentacji ibm. Inne zasoby związane z JNDI, takie jak broker komunikatów JMS, mogą wymagać migracji lub ponownej konfiguracji. Aby uzyskać więcej informacji na temat konfiguracji pakietu JMS, zobacz Using JMS resources (Korzystanie z zasobów JMS).

Jeśli używasz wstępnie utworzonej oferty witryny Azure Marketplace, zestaw zasobów JNDI, które można dostosować w czasie wdrażania, jest ograniczony do tego, co obsługuje oferta. W przypadku platformy WebSphere Liberty w usłudze AKS można udostępnić obiekt w domyślnej przestrzeni nazw Java Naming and Directory Interface (JNDI). Aby uzyskać więcej informacji, zobacz Tworzenie za pomocą domyślnej przestrzeni nazw JNDI w funkcji Liberty. Aby zapoznać się z tematem Open Liberty, zobacz Java Naming and Directory Interface (Interfejs nazewnictwa języka Java i katalogu).

Sprawdzanie konfiguracji profilu

Główną jednostką konfiguracji w usłudze WAS jest profil. W związku z tym plik resources.xml zawiera wiele konfiguracji, które należy dokładnie rozważyć pod kątem migracji. Plik zawiera odwołania do innych plików XML przechowywanych w podkatalogach. Aby uzyskać więcej informacji, zobacz Zarządzanie profilami w systemach operacyjnych rozproszonych i IBM i.

W aplikacji

Sprawdź plik deployment.xml i/lub plik WEB-INF/web.xml.

Te dostosowania należy przechwycić w obrazie kontenera uruchomionym przez usługę AKS. W przypadku korzystania ze wstępnie utworzonej oferty witryny Azure Marketplace takie dostosowania są najlepiej obsługiwane przez utworzenie niestandardowego obrazu kontenera i udostępnienie go w rejestrze publicznym, a następnie wskazanie tego rejestru podczas wdrażania.

Jeśli używasz komórki wdrażania sieci serwera aplikacji WebSphere, każdy element członkowski klastra jest uruchamiany w instalacji tradycyjnej usługi WAS. Liberty to lekki profil serwera aplikacji WebSphere. Jest to elastyczny i dynamiczny profil WAS, który umożliwia serwerOWI WAS wdrażanie tylko wymaganych funkcji niestandardowych zamiast wdrażania dużego zestawu dostępnych składników Java EE.

Określenie, czy jest używana replikacja sesji

Jeśli aplikacja korzysta z replikacji sesji, dostępne są następujące opcje:

  • W przypadku sesji HTTP, zgodnie z poziomem zarządzania sesjami, można użyć pamięci podręcznej lub bazy danych do zbierania danych sesji.
  • W przypadku sesji rozproszonych można zapisywać sesje w bazie danych przy użyciu trwałości sesji bazy danych.
  • W przypadku dynamicznej pamięci podręcznej można zarządzać danymi sesji w pamięci podręcznej lub w bazie danych.
  • Możesz refaktoryzować aplikację, aby używać bazy danych do zarządzania sesjami.
  • Możesz refaktoryzować aplikację w celu zewnętrzności sesji w usłudze Azure Redis Service. Aby uzyskać więcej informacji, zobacz Pamięć podręczna Azure Cache for Redis.

W przypadku wszystkich tych opcji dobrym pomysłem jest opanowanie sposobu, w jaki Liberty wykonuje replikację stanu sesji HTTP. Poniższe dokumenty pomagają zrozumieć, jak zarządzać sesjami HTTP w wolności:

Wstępnie utworzona oferta witryny Azure Marketplace obsługuje koligację sesji za pośrednictwem kontrolera ruchu przychodzącego usługi Application Gateway. Podczas wdrażania oferty wybierz pozycję Włącz koligację opartą na plikach cookie.

Udokumentowanie źródeł danych

Jeśli aplikacja korzysta z dowolnych baz danych, należy przechwycić następujące informacje:

  • Jaka jest nazwa źródła danych?
  • Jaka jest konfiguracja puli połączeń?
  • Gdzie mogę znaleźć plik JAR sterownika JDBC?

Aby uzyskać więcej informacji na temat sterowników JDBC w usłudze WAS, zobacz Using JDBC Drivers with WebSphere Application Server (Używanie sterowników JDBC z serwerem aplikacji WebSphere).

Konfiguracja JDBC jest podstawową konfiguracją serwera w liberty. Aby uzyskać więcej informacji, zobacz Sterownik JDBC.

Wstępnie utworzona oferta witryny Azure Marketplace ma ograniczoną obsługę baz danych. Konfigurację można obsługiwać na obrazach aplikacji i używać obrazu podczas wdrażania oferty.

Określanie, czy funkcja WAS została dostosowana

Ustal, które z następujących dostosowań zostały wdrożone, i określ, jakie działania zostały wykonane.

  • Czy zostały zmienione skrypty uruchamiania? Takie skrypty obejmują wsadmin, Administracja Control, Administracja Config, Administracja App i Administracja Task.
  • Czy do środowiska JVM są przekazywane określone parametry?
  • Czy do ścieżki klas serwera zostały dodane pliki JAR?
  • Czy obiekty na poziomie systemu operacyjnego, takie jak systemd były używane do automatycznego uruchamiania składników WAS po ponownym uruchomieniu serwera?

Należy uwzględnić zagadnienia dotyczące migracji w zależności od odpowiedzi na te pytania.

Te dostosowania należy przechwycić w obrazie kontenera uruchomionym przez usługę AKS. W przypadku korzystania ze wstępnie utworzonej oferty witryny Azure Marketplace takie dostosowania są najlepiej obsługiwane przez utworzenie niestandardowego obrazu kontenera i udostępnienie go w rejestrze publicznym, a następnie wskazanie tego rejestru podczas wdrażania.

Określenie, czy jest konieczne połączenie z lokalną usługą

Jeśli aplikacja wymaga dostępu do dowolnych usług lokalnych, musisz aprowizować jedną z usług łączności platformy Azure. Aby uzyskać więcej informacji, zobacz Wybieranie rozwiązania do łączenia sieci lokalnej z platformą Azure. Możesz również przeprowadzić refaktoryzację aplikacji, aby korzystać z publicznie dostępnych interfejsów API uwidacznianych przez Twoje zasoby lokalne.

Określanie, czy używane są kolejki lub tematy Java Message Service (JMS)

Jeśli aplikacja korzysta z kolejek lub tematów JMS, musisz przeprowadzić migrację ich do serwera JMS hostowanego zewnętrznie. Jedną ze strategii dla osób korzystających z programu JMS jest użycie usługi Azure Service Bus i protokołu Advanced Message Queuing Protocol. Aby uzyskać więcej informacji, zobacz Używanie usługi JMS z usługą Azure Service Bus i protokołem AMQP 1.0.

Jeśli skonfigurowano magazyny trwałe JMS, należy przechwycić ich konfigurację i zastosować ją po migracji.

Jeśli używasz oprogramowania IBM MQ, możesz migrować to oprogramowanie do usługi Azure Virtual Machines i używać go w takim stanie, w jakim jest.

Firma Microsoft ma rozwiązanie do integracji oprogramowania IBM MQ z usługą Logic Apps. Aby uzyskać więcej informacji, zobacz Połączenie do serwera IBM MQ z przepływu pracy w usłudze Azure Logic Apps.

Ustalanie, czy są używane niestandardowe, udostępnione biblioteki Java EE

Jeśli korzystasz z funkcji udostępnionych bibliotek Java EE, masz dwie opcje:

  • Przeprowadź refaktoryzację kodu aplikacji, usuwając wszystkie zależności od bibliotek, i dołącz funkcje bezpośrednio do aplikacji.
  • Dodaj biblioteki do ścieżki klas serwera.

Te biblioteki można obsługiwać przy użyciu tych samych technik, co opisano w artykule Uzyskiwanie dostępu do interfejsów API innych firm z poziomu aplikacji Java EE.

Określanie, czy są używane pakiety technologii OSGi

Jeśli użyto pakietów OSGi dodanych do bazy danych WAS, musisz dodać równoważne pliki JAR bezpośrednio do aplikacji internetowej.

Pakiety można uwzględnić na obrazie dostarczonym do wstępnie utworzonej oferty witryny Azure Marketplace. Aby uzyskać więcej informacji, zobacz Konfigurowanie bibliotek dla aplikacji OSGi.

Określanie, czy aplikacja zawiera kod właściwy dla systemu operacyjnego

Jeśli aplikacja zawiera dowolny kod z zależnościami w systemie operacyjnym hosta, musisz przeprowadzić jej refaktoryzację, aby usunąć te zależności. Na przykład może być konieczne zastąpienie każdego użycia symbolu / lub \ w ścieżkach systemu plików przez File.Separator lub Paths.get.

Usługa Liberty w usłudze AKS działa w systemie Linux x86_64. Każdy kod specyficzny dla systemu operacyjnego musi być zgodny z systemem Linux. Aby dowiedzieć się, jak odnajdywać określone informacje o systemie operacyjnym, wykonaj kroki opisane w sekcji Określanie, czy wersja Liberty jest zgodna .

Określanie, czy jest używana usługa IBM Integration Bus

Jeśli aplikacja korzysta z usługi IBM Integration Bus, musisz przechwycić sposób konfigurowania usługi IBM Integration Bus. Aby uzyskać więcej informacji, zobacz dokumentację usługi IBM Integration Bus.

Usługa IBM Integration Bus nie jest bezpośrednio obsługiwana w wstępnie utworzonej ofercie witryny Azure Marketplace. Aby włączyć tę funkcję, postępuj zgodnie z instrukcjami w temacie Włączanie aplikacji JMS na liberty w celu nawiązania połączenia z magistralą integracji usług w dokumentacji ibm.

Ustalanie, czy aplikacja składa się z wielu plików WAR

Jeśli Twoja aplikacja składa się z wielu plików WAR, należy traktować poszczególne pliki jako oddzielne aplikacje. W przypadku każdej z nich należy wykonać instrukcje opisane w tym przewodniku.

Ustalanie, czy aplikacja jest spakowana jako plik EAR

Jeśli aplikacja jest spakowana jako plik EAR, sprawdź application.xml, ibm-application-bnd.xmi i ibm-application-ext.xmi i przechwytywać ich konfiguracje. Aby uzyskać więcej informacji, zobacz Tworzenie pakietu archiwum przedsiębiorstwa (EAR) w witrynie WebSphere.

Wstępnie utworzona oferta witryny Azure Marketplace umożliwia korzystanie z istniejącego obrazu kontenera. Aplikację można przygotować zgodnie z wymaganiami biznesowymi.

Identyfikacja wszystkich procesów i demonów zewnętrznych działających na serwerach produkcyjnych

Jeśli masz jakiekolwiek procesy działające poza serwerem aplikacji, takie jak demony monitorowania, musisz wyeliminować je lub zmigrować do innego miejsca.

Określanie, czy i jak jest używany system plików

Platforma Kubernetes zajmuje się systemami plików z woluminami trwałymi (PV). Instalowanie trwałych woluminów nie jest obsługiwane w wstępnie utworzonej ofercie witryny Azure Marketplace. Aby włączyć różne opcje magazynu, postępuj zgodnie z instrukcjami w temacie Opcje magazynu dla aplikacji w usłudze Azure Kubernetes Service.

Zawartość statyczna tylko do odczytu

Jeśli aplikacja aktualnie obsługuje zawartość statyczną, potrzebna jest dodatkowa lokalizacja. Warto rozważyć przeniesienie zawartości statycznej do usługi Azure Blob Storage i dodanie usługi Azure CDN, aby zapewnić błyskawiczne pobieranie na całym świecie. Aby uzyskać więcej informacji, zobacz Hostowanie statycznej witryny internetowej w usłudze Azure Storage i Szybki start: integrowanie konta usługi Azure Storage z usługą Azure CDN. Możesz również bezpośrednio wdrożyć zawartość statyczną w aplikacji w planie Azure Spring Apps Enterprise. Aby uzyskać więcej informacji, zobacz Wdrażanie internetowych plików statycznych.

Dynamicznie publikowana zawartość statyczna

Jeśli aplikacja zezwala na zawartość statyczną, która została przekazana/utworzona przez aplikację, ale pozostaje niezmienna po jej utworzeniu, możesz użyć usług Azure Blob Storage i Azure CDN, jak opisano powyżej, oraz usługi Azure Function do obsługiwania przekazywania i odświeżania usługi CDN. Udostępniliśmy przykładową implementację do użycia w temacie Przekazywanie zawartości statycznej i jej wstępne ładowanie w usłudze CDN za pomocą usługi Azure Functions. Możesz również bezpośrednio wdrożyć zawartość statyczną w aplikacji w planie Azure Spring Apps Enterprise. Aby uzyskać więcej informacji, zobacz Wdrażanie internetowych plików statycznych.

Określanie topologii sieci

Bieżący zestaw ofert witryny Azure Marketplace jest punktem wyjścia do migracji. Jeśli oferta nie obejmuje aspektów architektury, które należy zmigrować, musisz przechwycić topologię sieci istniejącego wdrożenia. Następnie należy odtworzyć topologię na platformie Azure, nawet po utworzeniu podstawowej oferty przy użyciu jednego z szablonów rozwiązań.

Topologia sieci jest szerokim tematem, ale następujące odwołania mogą dać pewne wskazówki dla wysiłków związanych z migracją:

Konto dotyczące używania kart JCA i kart zasobów

Jeśli istniejąca aplikacja używa kart JCA lub kart zasobów do łączenia się z innymi systemami przedsiębiorstwa, upewnij się, że zastosowano konfigurację tych artefaktów do serwera Liberty uruchomionego w usłudze AKS. Aby uzyskać więcej informacji, zobacz Overview of JCA configuration elements (Omówienie elementów konfiguracji JCA) i Java Połączenie or Architecture (Architektura Połączenie or języka Java).

Określanie, czy jest używane klastrowanie

Operator obsługuje klastrowanie na wszystkie możliwe sposoby uruchamiania obciążenia WAS w usłudze AKS.

Sprawdzanie klastrowania EJB

Jeśli aplikacja korzysta z lokalnej fasoli Java w przedsiębiorstwie (EJB), może być konieczne przeprowadzenie migracji ich do klastrowanej usługi EJB. Aby uzyskać więcej informacji, zobacz Tworzenie aplikacji EJB w liberty.

Konto wymagań dotyczących równoważenia obciążenia

Najlepszym sposobem, aby uwzględnić równoważenie obciążenia, jest użycie integracji usługi App Gateway dostarczonej przez wbudowaną ofertę witryny Azure Marketplace.

Migracja

W krokach w tej sekcji założono, że analiza doprowadziła Cię do podjęcia decyzji o użyciu wstępnie utworzonej oferty witryny Azure Marketplace.

Aprowizacja oferty

Aby otworzyć ofertę w witrynie Azure Portal, zobacz IBM WebSphere Liberty i Open Liberty w usłudze Azure Kubernetes Service. Wybierz pozycję Utwórz, a następnie użyj informacji zebranych w poprzednich krokach, aby ułatwić wypełnianie pól oferty.

Konto magazynów kluczy

Musisz uwzględnić migrację wszystkich magazynów kluczy SSL/TLS używanych przez aplikację. Więcej informacji znajduje się w temacie Konfigurowanie magazynów kluczy.

Łączenie źródeł interfejsu JMS

Po połączeniu baz danych można skonfigurować program JMS, postępując zgodnie z instrukcjami w temacie Omówienie elementów konfiguracji JCA w dokumentacji ibm.

Konto na potrzeby rejestrowania

Nie można wykonywać czynności w chmurze bez rejestrowania głównego. Operator udostępnia różne podejścia do monitorowania. Aby uzyskać więcej informacji, zobacz Monitorowanie środowiska uruchomieniowego serwera Liberty. Jeśli wolisz korzystać z usługi Elastic Stack, platforma Azure zapewnia doskonałą obsługę funkcji Elastic. Aby uzyskać szczegółowe informacje, zobacz Co to jest integracja elastyczna z platformą Azure? Możesz połączyć wiedzę z tych dwóch zasobów, aby uzyskać rozwiązanie do rejestrowania zoptymalizowane pod kątem platformy Azure dla usługi Liberty w usłudze AKS.

Migrowanie aplikacji

Niezależnie od tego, czy wybrano opcję udostępnienia obrazu aplikacji w czasie wdrażania, musisz zaktualizować aplikację za pośrednictwem ciągłej integracji/ciągłego wdrażania. Dokumentacja firmy IBM zawiera przykład pokazujący, jak wykonać tę aktualizację. Aby uzyskać więcej informacji, zobacz Wdrażanie aplikacji w liberty.

Konfigurowanie testów

Aby uzyskać dostęp do nowych serwerów działających na platformie Azure, należy skonfigurować wszystkie testy w kontenerze względem aplikacji. Podobnie jak w przypadku problemów dotyczących ciągłej integracji/ciągłego wdrażania, należy upewnić się, że niezbędne reguły zabezpieczeń sieci umożliwiają testom dostęp do aplikacji wdrożonych na platformie Azure. Aby uzyskać więcej informacji, zobacz Sieciowe grupy zabezpieczeń.

Po migracji

Po osiągnięciu celów migracji zdefiniowanych w kroku Czynności przed migracją wykonaj niektóre kompleksowe testy akceptacyjne, aby sprawdzić, czy wszystko działa zgodnie z oczekiwaniami. Następujące artykuły zawierają informacje na temat ulepszeń po migracji: