Migrowanie usługi konfiguracji aplikacji do zarządzanego serwera konfiguracji Spring Cloud
Uwaga
Plany Podstawowa, Standardowa i Enterprise zostaną wycofane od połowy marca 2025 r. z 3-letnim okresem emerytalnym. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.
Zużycie standardowe i dedykowany plan zostaną wycofane od 30 września 2024 r. z całkowitym zamknięciem po sześciu miesiącach. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.
Ten artykuł dotyczy: ❎ Podstawowa/Standardowa ✅ Enterprise
W tym artykule opisano sposób migracji z usługi Application Configuration Service (ACS) do serwera Spring Cloud Config Server podczas korzystania z planu Usługi Azure Spring Apps Enterprise z aplikacjami Java.
Serwer Spring Cloud Config Server udostępnia scentralizowaną usługę konfiguracji, która umożliwia aplikacjom pobieranie właściwości konfiguracji ze źródeł zewnętrznych, takich jak repozytoria Git.
Aprowizuj serwer Spring Cloud Config Server
Jeśli masz wystąpienie planu Usługi Azure Spring Apps Enterprise z włączoną usługą Application Configuration Service, pierwszym krokiem migracji z usługi ACS do serwera konfiguracji Spring Cloud jest aprowizowanie serwera konfiguracji w środowisku usługi Azure Spring Apps. Można ją aprowizować przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.
Aby aprowizować serwer Spring Cloud Config Server, wykonaj następujące kroki:
- Przejdź do wystąpienia przedsiębiorstwa usługi Azure Spring Apps w witrynie Azure Portal.
- W menu wybierz pozycję Spring Cloud Config Server.
- Wybierz pozycję Zarządzaj , aby sprawdzić, czy serwer Spring Cloud Config Server jest włączony. Jeśli tak nie jest, włącz ją, a następnie wybierz pozycję Zastosuj , aby zapisać.
- Po pomyślnym zaktualizowaniu stan aprowizacji serwera konfiguracji to Powodzenie na karcie Przegląd .
Konfigurowanie serwera Spring Cloud Config Server
Po aprowizacji serwera Spring Cloud Config Server następnym krokiem jest skonfigurowanie go dla aplikacji w celu zapewnienia bezproblemowej migracji.
Wykonaj następujące kroki, aby skonfigurować serwer Spring Cloud Config Server w witrynie Azure Portal:
W wystąpieniu usługi Azure Spring Apps przejdź do pozycji Spring Cloud Config Server.
Na karcie Ustawienia zamapuj konfiguracje wszystkich repozytoriów usług ACS na serwer konfiguracji Spring Cloud.
Jeśli masz tylko jedno repozytorium w usłudze ACS, zamapuj je na domyślne repozytorium serwera spring Cloud Config Server bez nazw i wzorców. Jeśli masz wiele repozytoriów w usłudze ACS, wybierz jedno repozytorium jako domyślne repozytorium serwera Spring Cloud Config Server i użyj innych jako dodatkowych repozytoriów. Migrowanie właściwości, w tym
uri
,label
,search path
name
, iauthentication
z usługi ACS do serwera konfiguracji Spring Cloud.Po skonfigurowaniu mapowania wybierz pozycję Weryfikuj , aby zweryfikować konfigurację.
Po pomyślnym zakończeniu walidacji wybierz pozycję Zastosuj , aby zakończyć konfigurację serwera konfiguracji Spring Cloud.
Aby zastosować zmiany, na karcie Powiązanie aplikacji wybierz pozycję Powiązaj aplikację, a następnie wybierz wszystkie aplikacje do korzystania z serwera Spring Cloud Config Server.
Aby przeprowadzić migrację właściwości pattern
usługi ACS, należy upewnić się, że nazwa aplikacji usługi Azure Spring Apps jest zgodna z nazwą pliku konfiguracji w repozytorium Git.
- Jeśli nazwa aplikacji usługi Azure Spring Apps jest zgodna z nazwą pliku konfiguracji, program Spring Cloud Config Server automatycznie zastosuje plik konfiguracji z zgodną nazwą do aplikacji bez konieczności dodatkowej konfiguracji.
- Jeśli nazwy nie są zgodne, musisz utworzyć nową aplikację o nazwie jako nazwę pliku konfiguracji.
Aby uzyskać więcej konfiguracji, zobacz dokument Spring Cloud Config Server .
Aktualizowanie konfiguracji aplikacji
Ze względu na różnice w mechanizmach implementacji między usługą ACS i serwerem konfiguracji niektóre zmiany konfiguracji aplikacji są wymagane do dostosowania do sposobu pobierania konfiguracji.
Po aprowizacji i skonfigurowaniu serwera Spring Cloud Config Server należy dostosować konfigurację, wykonując następujące czynności:
Zaktualizuj zależności platformy Spring Boot, dodając następujące wymagane zależności konfiguracji spring cloud do pliku pom.xml dla pliku Maven lub build.gradle dla narzędzia Gradle.
Skonfiguruj profil.
W usłudze ACS należy podać profil jako wzorce we wdrożeniu usługi Azure Spring Apps, podczas gdy w programie Spring Cloud Config Server profil jest konfigurowany w kodzie źródłowym aplikacji.
Upewnij się, że aplikacja używa prawidłowych profilów —
dev
,prod
i tak dalej — aby serwer Spring Cloud Config Server mógł obsługiwać konfiguracje specyficzne dla środowiska.Zaktualizuj plik bootstrap.yml lub application.yml w aplikacji przy użyciu poprawnych właściwości konfiguracji, aby wskazać serwer Spring Cloud Config Server, jak pokazano w poniższym przykładzie:
spring: cloud: config: profile: dev
Upewnij się, że nazwa aplikacji usługi Azure Spring Apps jest zgodna z nazwą pliku konfiguracji w repozytorium git. Ponadto unikaj konfigurowania
spring.application.name
w kodzie aplikacji.
Ponowne wdrażanie aplikacji
Po przetestowaniu aplikacji lokalnie możesz ponownie wdrożyć ją w usłudze Azure Spring Apps, aby użyć serwera Spring Cloud Config Server przy użyciu następującego polecenia interfejsu wiersza polecenia platformy Azure:
az spring app deploy \
--name <app-name> \
--artifact-path <path-to-your-app> \
--config-file-patterns '""'
Parametr --config-file-patterns '""'
umożliwia wyczyszczenie odwołania usługi Application Configuration Service z aplikacji. Aplikacja korzysta z konfiguracji za pośrednictwem serwera Spring Cloud Config Server, a nie usługi Konfiguracji aplikacji.
Wyłączanie usługi konfiguracji aplikacji
Po zakończeniu migracji wszystkich aplikacji do serwera Spring Cloud Config Server można cofnąć powiązanie tych aplikacji z usługą konfiguracji aplikacji i wyłączyć usługę ACS.
- W wystąpieniu usługi Azure Spring Apps przejdź do usługi Konfiguracji aplikacji
- Otwórz kartę Powiązanie aplikacji, a następnie wybierz każdą powiązaną aplikację, aby usunąć powiązanie.
- Po niepowiązaniu wszystkich aplikacji wybierz pozycję Zarządzaj , aby wyłączyć usługę konfiguracji aplikacji.
Starannie wykonując te kroki, możesz zapewnić bezproblemową migrację i korzystać z zalet serwera Spring Cloud Config Server w usłudze Azure Spring Apps.
Znane ograniczenie
Migracja usług ACS do serwera konfiguracji Spring Cloud dotyczy tylko aplikacji Java, ponieważ usługa ACS zarządza konfiguracją przy użyciu natywnego ConfigMap
rozwiązania Kubernetes. Ta metoda umożliwia dynamiczne aktualizacje konfiguracji w środowiskach Kubernetes, dzięki czemu jest wszechstronna dla różnych aplikacji z wieloma językami programowania. Serwer Spring Cloud Config Server jest przeznaczony głównie dla aplikacji Java korzystających z funkcji platformy Spring Framework, dlatego obsługuje tylko zarządzanie konfiguracją dla języka Java.