Korzystanie z usługi konfiguracji aplikacji dla środowiska Tanzu
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 pokazano, jak używać usługi Konfiguracji aplikacji dla programu VMware Tanzu z planem Azure Spring Apps Enterprise.
Usługa konfiguracji aplikacji dla oprogramowania VMware Tanzu jest jednym z komercyjnych składników VMware Tanzu. Umożliwia zarządzanie zasobami natywnymi ConfigMap
platformy Kubernetes wypełnionymi z właściwości zdefiniowanych w co najmniej jednym repozytorium Git.
Usługa konfiguracji aplikacji udostępnia centralne miejsce do zarządzania właściwościami zewnętrznymi dla aplikacji we wszystkich środowiskach. Aby zrozumieć różnice między serwerem Spring Cloud Config Server w planach Podstawowa i Standardowa, zobacz sekcję Use Application Configuration Service for external configuration (Używanie usługi konfiguracji aplikacji na potrzeby konfiguracji zewnętrznej) w temacie Migrate an Azure Spring Apps Basic or Standard plan instance to the Enterprise plan (Migrowanie wystąpienia planu Usługi Azure Spring Apps w warstwie Podstawowa lub Standardowa do planu Enterprise).
Usługa konfiguracji aplikacji jest oferowana w dwóch wersjach: Gen1 i Gen2. Wersja Gen1 obsługuje głównie istniejących klientów w celach zgodności z poprzednimi wersjami i jest obsługiwana tylko do 30 kwietnia 2024 r. Nowe wystąpienia usługi powinny używać generacji 2. Wersja Gen2 używa strumienia jako zaplecza do komunikowania się z repozytoriami Git i zapewnia lepszą wydajność w porównaniu z gen1.
W poniższej tabeli przedstawiono relacje podskładowe:
Generowanie usługi konfiguracji aplikacji | Składniki podrzędne |
---|---|
Gen1 | application-configuration-service |
Druga generacja | application-configuration-service flux-source-controller |
W poniższej tabeli przedstawiono niektóre dane porównawcze dla Twoich odwołań. Jednak rozmiar repozytorium Git jest kluczowym czynnikiem, który ma znaczący wpływ na dane wydajności. Zalecamy przechowywanie tylko niezbędnych plików konfiguracji w repozytorium Git, aby zachować je małe.
Generowanie usługi konfiguracji aplikacji | Czas trwania odświeżania poniżej 100 wzorców | Czas trwania odświeżania poniżej 250 wzorców | Czas trwania odświeżania poniżej 500 wzorców |
---|---|---|---|
Gen1 | 330 s | 840 s | 1500 s |
Druga generacja | 13 s | 100 s | 378 s |
Gen2 zapewnia również więcej weryfikacji zabezpieczeń podczas nawiązywania połączenia ze zdalnym repozytorium Git. Usługa Gen2 wymaga bezpiecznego połączenia, jeśli używasz protokołu HTTPS, i sprawdza prawidłowy klucz hosta i algorytm hosta podczas korzystania z połączenia SSH.
Podczas tworzenia wystąpienia usługi Azure Spring Apps Enterprise możesz wybrać wersję usługi Application Configuration Service. Domyślna wersja to Gen1. Można również uaktualnić do wersji Gen2 po utworzeniu wystąpienia, ale zmiana na starszą wersję nie jest obsługiwana. Uaktualnienie nie przestój jest zerowy, ale nadal zalecamy przetestowanie w środowisku przejściowym przed przejściem do środowiska produkcyjnego.
Wymagania wstępne
- Już aprowizowane wystąpienie planu Usługi Azure Spring Apps Enterprise z włączoną usługą Application Configuration Service. Aby uzyskać więcej informacji, zobacz Szybki start: tworzenie i wdrażanie aplikacji w usłudze Azure Spring Apps przy użyciu planu Enterprise.
Zarządzanie ustawieniami usługi konfiguracji aplikacji
Usługa Konfiguracji aplikacji obsługuje usługi Azure DevOps, GitHub, GitLab i Bitbucket do przechowywania plików konfiguracji.
Aby zarządzać ustawieniami usługi, otwórz sekcję Ustawienia . W tej sekcji można skonfigurować następujące kluczowe aspekty:
- Generacja: uaktualnij generację usługi.
- Interwał odświeżania: dostosuj częstotliwość sprawdzania dostępności aktualizacji z repozytoriów Git.
- Repozytoria: dodaj nowe wpisy lub zmodyfikuj istniejące. Ta funkcja umożliwia kontrolowanie repozytoriów używanych przez usługę do ściągania danych.
Jeśli bieżąca generacja usługi to Gen1, możesz przeprowadzić uaktualnienie do wersji Gen2 , aby uzyskać lepszą wydajność. Aby uzyskać więcej informacji, zobacz sekcję Uaktualnianie z gen1 do 2 . generacji.
Interwał odświeżania określa częstotliwość (w sekundach) sprawdzania aktualizacji w repozytorium. Wartość minimalna to 0, co powoduje wyłączenie automatycznego odświeżania. Aby uzyskać optymalną wydajność, ustaw ten interwał na wartość minimalną wynoszącą 60 sekund.
W poniższej tabeli opisano właściwości każdego wpisu repozytorium:
Właściwości | Wymagany? | opis |
---|---|---|
Name |
Tak | Unikatowa nazwa do etykietowania każdego repozytorium Git. |
Patterns |
Tak | Wzorce do wyszukiwania w repozytoriach Git. Dla każdego wzorca użyj formatu, takiego jak {application} lub {application}/{profile} zamiast {application}-{profile}.yml. Rozdziel wzorce przecinkami. Aby uzyskać więcej informacji, zobacz sekcję Wzorzec tego artykułu. |
URI |
Tak | Identyfikator URI usługi Git (na przykład https://github.com/Azure-Samples/piggymetrics-config lub git@github.com:Azure-Samples/piggymetrics-config ) |
Label |
Tak | Nazwa gałęzi do wyszukania w repozytorium Git. |
Search path |
Nie. | Opcjonalne ścieżki wyszukiwania oddzielone przecinkami na potrzeby wyszukiwania podkatalogów repozytorium Git. |
Wzorzec
Konfiguracja jest pobierana z zapleczy Git przy użyciu tego, co definiujesz we wzorcu. Wzorzec jest kombinacją elementu {application}/{profile}, zgodnie z opisem w poniższych wytycznych.
- {application} — nazwa aplikacji, której konfiguracja jest pobierana. Wartość
application
jest uznawana za domyślną aplikację i zawiera informacje o konfiguracji udostępniane w wielu aplikacjach. Każda inna wartość odnosi się do określonej aplikacji i zawiera właściwości zarówno dla określonej aplikacji, jak i właściwości udostępnionych dla domyślnej aplikacji. - {profil} -Fakultatywny. Nazwa profilu, którego właściwości można pobrać. Pusta wartość lub wartość
default
zawiera właściwości, które są współużytkowane przez profile. Wartości inne niż domyślne obejmują właściwości określonego profilu i właściwości profilu domyślnego.
Uwierzytelnianie
Poniższy zrzut ekranu przedstawia trzy typy uwierzytelniania repozytorium obsługiwane przez usługę konfiguracji aplikacji.
Na poniższej liście opisano trzy typy uwierzytelniania:
Repozytorium publiczne.
Podczas korzystania z repozytorium publicznego nie potrzebujesz dodatkowej konfiguracji uwierzytelniania. Wybierz pozycję Publiczne w formularzu Uwierzytelnianie .
W poniższej tabeli przedstawiono konfigurowalną właściwość, której można użyć do skonfigurowania publicznego repozytorium Git:
Właściwości Wymagany? opis CA certificate
Nie. Wymagane tylko wtedy, gdy certyfikat z podpisem własnym jest używany dla adresu URL repozytorium Git. Repozytorium prywatne z uwierzytelnianiem podstawowym.
W poniższej tabeli przedstawiono konfigurowalne właściwości, których można użyć do skonfigurowania prywatnego repozytorium Git przy użyciu uwierzytelniania podstawowego:
Właściwości Wymagany? opis username
Tak Nazwa użytkownika używana do uzyskiwania dostępu do repozytorium. password
Tak Hasło używane do uzyskiwania dostępu do repozytorium. CA certificate
Nie. Wymagane tylko wtedy, gdy certyfikat z podpisem własnym jest używany dla adresu URL repozytorium Git. Prywatne repozytorium z uwierzytelnianiem SSH.
W poniższej tabeli przedstawiono konfigurowalne właściwości, których można użyć do skonfigurowania prywatnego repozytorium Git za pomocą protokołu SSH:
Właściwości Wymagany? opis Private key
Tak Klucz prywatny identyfikujący użytkownika usługi Git. Zaszyfrowane hasła klucze prywatne nie są obsługiwane. Host key
Nie dla generacji 1
Tak dla generacji 2Klucz hosta serwera Git. Jeśli nawiąższ połączenie z serwerem za pośrednictwem narzędzia Git w wierszu polecenia, klucz hosta znajduje się w pliku ssh/known_hosts . Nie dołączaj prefiksu algorytmu, ponieważ jest on określony w pliku Host key algorithm
.Host key algorithm
Nie dla generacji 1
Tak dla generacji 2Algorytm dla : hostKey
jeden zssh-dss
, ,ssh-rsa
ecdsa-sha2-nistp256
,ecdsa-sha2-nistp384
iecdsa-sha2-nistp521
. (Wymagane, jeśli podaj wartośćHost key
).Strict host key checking
Nie. Opcjonalna wartość wskazująca, czy zaplecze powinno być ignorowane, jeśli wystąpi błąd podczas korzystania z podanego Host key
elementu . Prawidłowe wartości totrue
ifalse
. Wartością domyślną jesttrue
.
Aby zweryfikować dostęp do docelowego identyfikatora URI, wybierz pozycję Weryfikuj. Po pomyślnym zakończeniu walidacji wybierz pozycję Zastosuj , aby zaktualizować ustawienia konfiguracji.
Uaktualnianie z gen1 do 2. generacji
Usługa konfiguracji aplikacji Gen2 zapewnia lepszą wydajność w porównaniu z gen1, szczególnie w przypadku dużej liczby plików konfiguracji. Zalecamy używanie usługi Gen2, zwłaszcza dlatego, że gen1 jest wkrótce wycofywany. Uaktualnienie z generacji 1 do 2. generacji nie przestój, ale nadal zalecamy przetestowanie w środowisku przejściowym przed przejściem do środowiska produkcyjnego.
Usługa Gen2 wymaga więcej właściwości konfiguracji niż Gen1 w przypadku korzystania z uwierzytelniania SSH. Aby aplikacja działała z usługą Gen2, należy zaktualizować właściwości konfiguracji. W poniższej tabeli przedstawiono wymagane właściwości usługi Gen2 podczas korzystania z uwierzytelniania SSH:
Właściwości | opis |
---|---|
Host key |
Klucz hosta serwera Git. Jeśli nawiąższ połączenie z serwerem za pośrednictwem narzędzia Git w wierszu polecenia, klucz hosta znajduje się w pliku ssh/known_hosts . Nie dołączaj prefiksu algorytmu, ponieważ jest on określony w pliku Host key algorithm . |
Host key algorithm |
Algorytm dla elementu hostKey : jeden z ssh-dss , ssh-rsa , ecdsa-sha2-nistp256 , ecdsa-sha2-nistp384 lub ecdsa-sha2-nistp521 . |
Wykonaj następujące kroki, aby uaktualnić usługę Gen1 do gen2:
W witrynie Azure Portal przejdź do strony Usługa konfiguracji aplikacji dla wystąpienia usługi Azure Spring Apps.
Wybierz sekcję Ustawienia , a następnie wybierz pozycję Gen2 w menu rozwijanym Generacja .
Wybierz pozycję Weryfikuj , aby zweryfikować dostęp do docelowego identyfikatora URI. Po pomyślnym zakończeniu walidacji wybierz pozycję Zastosuj , aby zaktualizować ustawienia konfiguracji.
Obsługa technologii wielolotowej
Usługa konfiguracji aplikacji bezproblemowo współpracuje z aplikacjami Spring Boot. Właściwości generowane przez usługę są importowane jako konfiguracje zewnętrzne przez platformę Spring Boot i wstrzykiwane do fasoli. Nie musisz pisać dodatkowego kodu. Wartości można używać przy użyciu adnotacji, dostępnej @Value
za pośrednictwem abstrakcji Środowiska Spring lub powiązać je z obiektami ustrukturyzowanymi przy użyciu @ConfigurationProperties
adnotacji.
Usługa konfiguracji aplikacji obsługuje również aplikacje wielolotowe, takie jak dotNET, Go, Python itd. Aby uzyskać dostęp do plików konfiguracji, które mają być ładowane podczas wdrażania aplikacji polyglot w aplikacjach, spróbuj uzyskać dostęp do ścieżki pliku, którą można pobrać za pośrednictwem zmiennej środowiskowej o nazwie takiej jak AZURE_SPRING_APPS_CONFIG_FILE_PATH
. W ramach tej ścieżki możesz uzyskać dostęp do wszystkich zamierzonych plików konfiguracji. Aby uzyskać dostęp do wartości właściwości w plikach konfiguracji, użyj istniejących bibliotek plików do odczytu/zapisu dla aplikacji.
Strategie odświeżania
Podczas modyfikowania i zatwierdzania konfiguracji w repozytorium Git należy wykonać kilka kroków przed odzwierciedleniem tych zmian w aplikacjach. Ten proces, choć zautomatyzowany, obejmuje następujące odrębne etapy i składniki, z których każdy ma własny czas i zachowanie:
- Sondowanie według usługi Konfiguracji aplikacji: usługa konfiguracji aplikacji regularnie sonduje repozytoria Git zaplecza w celu wykrycia wszelkich zmian. To sondowanie odbywa się z ustawioną częstotliwością zdefiniowaną przez interwał odświeżania. Po wykryciu zmiany usługa Konfiguracji aplikacji aktualizuje platformę Kubernetes
ConfigMap
. ConfigMap
aktualizacja i interakcja z pamięcią podręczną kubelet: w usłudze Azure Spring Apps jest onConfigMap
instalowany jako wolumin danych dla odpowiedniej aplikacji. Jednak w tym procesie występuje naturalne opóźnienie ze względu na częstotliwość odświeżania pamięci podręcznej kubelet w celu rozpoznawania zmian w plikuConfigMap
.- Aplikacja odczytuje zaktualizowaną konfigurację: Aplikacja uruchomiona w środowisku usługi Azure Spring Apps może uzyskać dostęp do zaktualizowanych wartości konfiguracji. Istniejące ziarna w kontekście spring nie są automatycznie odświeżane, aby używać zaktualizowanych konfiguracji.
Te etapy są podsumowane na poniższym diagramie:
Możesz dostosować interwał odświeżania sondowania usługi Application Configuration Service, aby dopasować go do określonych potrzeb. Aby zastosować zaktualizowane konfiguracje w aplikacji, konieczne jest ponowne uruchomienie lub odświeżenie.
W aplikacjach Spring właściwości są przechowywane lub przywołyzane jako fasola w kontekście spring. Aby załadować nowe konfiguracje, rozważ użycie następujących metod:
Uruchom ponownie aplikację. Ponowne uruchomienie aplikacji zawsze ładuje nową konfigurację.
Wywołaj
/actuator/refresh
punkt końcowy uwidoczniony na kliencie konfiguracji za pośrednictwem siłownika spring.Aby użyć tej metody, dodaj następującą zależność do pliku pom.xml klienta konfiguracji.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
Możesz również włączyć punkt końcowy siłownika, dodając następującą konfigurację:
management.endpoints.web.exposure.include=refresh, bus-refresh, beans, env
Po ponownym załadowaniu źródeł właściwości przez wywołanie punktu końcowego
/actuator/refresh
atrybuty powiązane z@Value
fasolą z adnotacją@RefreshScope
zostaną odświeżone.@Service @Getter @Setter @RefreshScope public class MyService { @Value private Boolean activated; }
Użyj narzędzia curl z punktem końcowym aplikacji, aby odświeżyć nową konfigurację, jak pokazano w poniższym przykładzie:
curl -X POST http://{app-endpoint}/actuator/refresh
Użyj
FileSystemWatcher
polecenia , aby obserwować zmianę pliku i odświeżać kontekst na żądanie.FileSystemWatcher
jest klasą dostarczaną zspring-boot-devtools
tą funkcją, która obserwuje określone katalogi pod kątem zmian plików lub można użyć innego narzędzia z podobną funkcją. Poprzednia opcja wymaga od użytkowników aktywnego zainicjowania odświeżania, a drugi może monitorować zmiany plików i automatycznie wywoływać odświeżanie po wykryciu aktualizacji. Ścieżkę pliku można pobrać przy użyciu zmiennej środowiskowejAZURE_SPRING_APPS_CONFIG_FILE_PATH
, jak wspomniano w sekcji obsługa technologii Polyglot.
Konfigurowanie ustawień usługi konfiguracji aplikacji
Aby skonfigurować usługę konfiguracji aplikacji, wykonaj następujące kroki:
Wybierz pozycję Usługa konfiguracji aplikacji.
Wybierz pozycję Przegląd , aby wyświetlić stan działania i zasoby przydzielone do usługi konfiguracji aplikacji.
Wybierz pozycję Ustawienia i dodaj nowy wpis w sekcji Repozytoria z informacjami zaplecza Git.
Wybierz pozycję Weryfikuj , aby zweryfikować dostęp do docelowego identyfikatora URI. Po pomyślnym zakończeniu walidacji wybierz pozycję Zastosuj , aby zaktualizować ustawienia konfiguracji.
Konfigurowanie certyfikatu TLS w celu uzyskania dostępu do zaplecza Usługi Git przy użyciu certyfikatu z podpisem własnym dla usługi Gen2
To krok jest opcjonalny. Jeśli używasz certyfikatu z podpisem własnym dla zaplecza Git, musisz skonfigurować certyfikat TLS w celu uzyskania dostępu do zaplecza Usługi Git.
Najpierw musisz przekazać certyfikat do usługi Azure Spring Apps. Aby uzyskać więcej informacji, zobacz sekcję Importowanie certyfikatu w sekcji Używanie certyfikatów TLS/SSL w aplikacji w usłudze Azure Spring Apps.
Aby skonfigurować certyfikat TLS, wykonaj następujące czynności:
Używanie usługi konfiguracji aplikacji z aplikacjami
W przypadku korzystania z usługi Application Configuration Service z zapleczem Git i używania scentralizowanych konfiguracji należy powiązać aplikację z usługą Application Configuration Service.
Wykonaj następujące kroki, aby użyć usługi Konfiguracji aplikacji z aplikacjami:
Otwórz kartę Powiązanie aplikacji.
Wybierz pozycję Powiąż aplikację i wybierz jedną aplikację z listy rozwijanej. Wybierz pozycję Zastosuj do powiązania.
Uwaga
Po zmianie stanu powiązania/odłączenia należy ponownie uruchomić lub ponownie wdrożyć aplikację, aby powiązanie zaczęły obowiązywać.
W menu nawigacji wybierz pozycję Aplikacje , aby wyświetlić listę wszystkich aplikacji.
Wybierz aplikację docelową, aby skonfigurować wzorce dla kolumny
name
.W okienku nawigacji wybierz pozycję Konfiguracja , a następnie wybierz pozycję Ustawienia ogólne.
Na liście rozwijanej Wzorce plików konfiguracji wybierz jeden lub więcej wzorców z listy. Aby uzyskać więcej informacji, zobacz sekcję Wzorzec .
Wybierz pozycję Zapisz.
Wiązanie aplikacji z usługą konfiguracji aplikacji
Teraz możesz powiązać aplikację z usługą Konfiguracji aplikacji podczas tworzenia nowej aplikacji.
Wykonaj następujące kroki, aby utworzyć nową aplikację i powiązać ją z usługą konfiguracji aplikacji:
W okienku nawigacji wybierz pozycję Aplikacje , aby wyświetlić wszystkie aplikacje.
Wybierz pozycję Utwórz aplikację , aby utworzyć nową aplikację.
Wprowadź nazwę nowej aplikacji.
Wybierz kartę Wiązanie, a następnie z listy rozwijanej wybierz pozycję Usługa konfiguracji aplikacji.
Wybierz pozycję Utwórz , aby zakończyć tworzenie aplikacji i powiązanie jej z usługą konfiguracji aplikacji.
Włączanie/wyłączanie usługi konfiguracji aplikacji po utworzeniu usługi
Usługę konfiguracji aplikacji można włączyć i wyłączyć po utworzeniu usługi przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure. Przed wyłączeniem usługi konfiguracji aplikacji musisz usunąć z niej powiązanie wszystkich aplikacji.
Aby włączyć lub wyłączyć usługę konfiguracji aplikacji, wykonaj następujące czynności:
- Przejdź do zasobu usługi, a następnie wybierz pozycję Usługa konfiguracji aplikacji.
- Zaznacz Zarządzaj.
- Wybierz lub usuń zaznaczenie pozycji Włącz usługę konfiguracji aplikacji, a następnie wybierz pozycję Zapisz.
- Stan usługi konfiguracji aplikacji można teraz wyświetlić na stronie Usługa konfiguracji aplikacji.
Sprawdzanie pliku konfiguracji w narzędziu ConfigMap
W poniższej sekcji pokazano, jak sprawdzić zawartość pliku konfiguracji pobieranego przez usługę Application Configuration Service z nadrzędnych repozytoriów Git w powiązanym rozwiązaniu Kubernetes ConfigMap
. Aby uzyskać więcej informacji, zobacz sekcję Strategie odświeżania w tym artykule.
Przypisywanie roli platformy Azure
Najpierw musisz mieć przypisaną rolę Azure Spring Apps Application Configuration Service Config File Pattern Reader Role
platformy Azure.
Aby przypisać rolę platformy Azure, wykonaj następujące czynności:
Otwórz witrynę Azure Portal i przejdź do wystąpienia usługi Azure Spring Apps.
W okienku nawigacji wybierz pozycję Kontrola dostępu (zarządzanie dostępem i tożsamościami).
Na stronie Kontrola dostępu (Zarządzanie dostępem i tożsamościami) wybierz pozycję Dodaj, a następnie wybierz pozycję Dodaj przypisanie roli.
Na stronie Dodawanie przypisania roli na liście Nazwa wyszukaj i wybierz rolę docelową, a następnie wybierz przycisk Dalej.
Wybierz pozycję Członkowie , a następnie wyszukaj i wybierz swoją nazwę użytkownika.
Wybierz Przejrzyj + przypisz.
Sprawdzanie pliku konfiguracji za pomocą interfejsu wiersza polecenia platformy Azure
Użyj następującego polecenia, aby wyświetlić zawartość pliku konfiguracji według wzorca:
az spring application-configuration-service config show \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--config-file-pattern <pattern>
To polecenie generuje dane wyjściowe JSON podobne do następującego przykładu:
{
"configurationFiles": {
"application.properties": [
"example.property.application.name: example-service",
"example.property.cloud: Azure"
]
},
"metadata": {
"gitRevisions": "[{\"url\":\"{gitRepoUrl}\",\"revision\":\"{revisionInfo}\"}]"
}
}
Uwaga
Właściwości metadata
i gitRevisions
nie są dostępne dla wersji Gen1 usługi konfiguracji aplikacji.
Możesz również użyć tego polecenia z parametrem , --export-path {/path/to/target/folder}
aby wyeksportować plik konfiguracji do określonego folderu. Obsługuje zarówno ścieżki względne, jak i ścieżki bezwzględne. Jeśli nie określisz ścieżki, polecenie domyślnie używa ścieżki bieżącego katalogu.
Sprawdzanie pliku konfiguracji w aplikacji
Po powiązaniu aplikacji z usługą Konfiguracji aplikacji i ustawieniu wzorca wdrożenia aplikacji, zgodnie z opisem w sekcji Używanie usługi konfiguracji aplikacji z aplikacjami tego artykułu, ConfigMap
plik konfiguracji wzorca powinien zostać zainstalowany w kontenerze aplikacji. Wykonaj następujące kroki, aby sprawdzić pliki konfiguracji w każdym wystąpieniu wdrożenia aplikacji:
Połącz się z jednym z wystąpień aplikacji. Aby uzyskać więcej informacji, zobacz Nawiązywanie połączenia z wystąpieniem aplikacji na potrzeby rozwiązywania problemów.
Użyj polecenia ,
echo $AZURE_SPRING_APPS_CONFIG_FILE_PATH
aby znaleźć foldery zawierające pliki konfiguracji. Lista lokalizacji jest wyświetlana oddzielona przecinkami, jak pokazano w poniższym przykładzie:$ echo $AZURE_SPRING_APPS_CONFIG_FILE_PATH /etc/azure-spring-cloud/configmap/acs-default-payment-default-e9d46,/etc/azure-spring-cloud/configmap/acs-default-catalog-default-616f4
Sprawdź zawartość pliku konfiguracji przy użyciu poleceń, takich jak
cat
.
Uwaga
Informacje o poprawkach usługi Git nie są dostępne w aplikacji.
Sprawdzanie dzienników
W poniższych sekcjach pokazano, jak wyświetlać dzienniki aplikacji przy użyciu interfejsu wiersza polecenia platformy Azure lub witryny Azure Portal.
Używanie przesyłania strumieniowego dzienników w czasie rzeczywistym
Dzienniki można przesyłać strumieniowo w czasie rzeczywistym za pomocą interfejsu wiersza polecenia platformy Azure. Aby uzyskać więcej informacji, zobacz Stream Azure Spring Apps managed component logs in real time (Dzienniki składników zarządzanych usługi Azure Spring Apps w czasie rzeczywistym). W poniższych przykładach pokazano, jak używać poleceń interfejsu wiersza polecenia platformy Azure do ciągłego przesyłania strumieniowego nowych dzienników dla podskładników application-configuration-service
i flux-source-controller
podskładników.
Użyj następującego polecenia, aby przesłać strumieniowo dzienniki dla application-configuration-service
programu :
az spring component logs \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--name application-configuration-service \
--all-instances \
--follow
Użyj następującego polecenia, aby przesłać strumieniowo dzienniki dla flux-source-controller
programu :
az spring component logs \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-instance-name> \
--name flux-source-controller \
--all-instances \
--follow
Korzystanie z usługi Log Analytics
W poniższych sekcjach pokazano, jak włączyć i wyświetlić dzienniki systemowe przy użyciu usługi Log Analytics.
Ustawienia diagnostyczne usługi Log Analytics
Przed wykonaniem zapytania dotyczącego dzienników usługi Application Configuration Service należy włączyć dzienniki systemowe i wysłać dzienniki do wystąpienia usługi Log Analytics. Aby włączyć dzienniki systemowe w witrynie Azure Portal, wykonaj następujące czynności:
Otwórz wystąpienie usługi Azure Spring Apps.
W okienku nawigacji wybierz pozycję Ustawienia diagnostyczne.
Wybierz pozycję Dodaj ustawienie diagnostyczne lub wybierz pozycję Edytuj ustawienie dla istniejącego ustawienia.
W sekcji Dzienniki wybierz kategorię Dzienniki systemowe.
W sekcji Szczegóły miejsca docelowego wybierz pozycję Wyślij do obszaru roboczego usługi Log Analytics, a następnie wybierz swój obszar roboczy.
Wybierz pozycję Zapisz , aby zaktualizować ustawienie.
Sprawdzanie dzienników w usłudze Log Analytics
Aby sprawdzić dzienniki application-configuration-service
i flux-source-controller
używać witryny Azure Portal, wykonaj następujące kroki:
Upewnij się, że włączono dzienniki systemowe. Aby uzyskać więcej informacji, zobacz sekcję Ustawienia diagnostyczne dla usługi Log Analytics .
Otwórz wystąpienie usługi Azure Spring Apps.
W menu nawigacji wybierz pozycję Dzienniki , a następnie wybierz pozycję Przegląd.
Użyj następujących przykładowych zapytań w okienku edycji zapytania. Dostosuj zakres czasu, a następnie wybierz pozycję Uruchom , aby wyszukać dzienniki.
Aby wyświetlić dzienniki dla
application-configuration-service
programu , użyj następującego zapytania:AppPlatformSystemLogs | where LogType in ("ApplicationConfigurationService") | project TimeGenerated , ServiceName , LogType, Log , _ResourceId | limit 100
Aby wyświetlić dzienniki dla
flux-source-controller
programu , użyj następującego zapytania:AppPlatformSystemLogs | where LogType in ("Flux") | project TimeGenerated , ServiceName , LogType, Log , _ResourceId | limit 100
Uwaga
Może upłynąć kilka minut, zanim dzienniki będą dostępne w usłudze Log Analytics.
Sprawdzanie poprawek usługi Git w plikach konfiguracji
Poprawkę git pliku konfiguracji wzorca można znaleźć w dziennikach usługi Konfiguracji aplikacji. Poniższy przykładowy dziennik wskazuje, że plik konfiguracji wzorca payment/default
jest ściągany z example-commit-id
main
gałęzi https://github.com/Azure-Samples/acme-fitness-store-config
repozytorium. Możesz dowiedzieć się, jak wykonywać zapytania dotyczące dzienników w sekcji Sprawdzanie dzienników .
Applied ConfigMap ({config-map-name}) for content (payment/default) from Git repositories https://github.com/Azure-Samples/acme-fitness-store-config@main@sha1:{example-commit-id}
Wersję usługi Git można również znaleźć przy użyciu interfejsu wiersza polecenia platformy Azure. Aby uzyskać więcej informacji, zobacz sekcję Sprawdzanie pliku konfiguracji za pomocą interfejsu wiersza polecenia platformy Azure.
Uwaga
Wersja usługi Git nie jest dostępna dla wersji Usługi konfiguracji aplikacji Gen1.
Rozwiązywanie znanych problemów
Jeśli najnowsze zmiany nie zostaną odzwierciedlone w aplikacjach, sprawdź następujące elementy w oparciu o sekcję Strategie odświeżania :
- Upewnij się, że repozytorium Git zostało poprawnie zaktualizowane, sprawdzając następujące elementy:
- Upewnij się, że gałąź żądanego pliku konfiguracji została zaktualizowana.
- Upewnij się, że wzorzec skonfigurowany w usłudze konfiguracji aplikacji jest zgodny ze zaktualizowanymi plikami konfiguracji.
- Upewnij się, że aplikacja jest powiązana z usługą konfiguracji aplikacji.
- Upewnij się, że usługa konfiguracji aplikacji używa poprawnych poprawek usługi Git zgodnie z opisem w sekcji Sprawdzanie poprawek usługi Git w plikach konfiguracji.
- Upewnij się, że
ConfigMap
plik konfiguracji wzorca używanego przez aplikację został zaktualizowany zgodnie z opisem w sekcji Sprawdzanie pliku konfiguracji w sekcji ConfigMap tego artykułu. Jeśli nie zostanie zaktualizowany, utwórz bilet. - Upewnij się, że
ConfigMap
plik jest zainstalowany w aplikacji jako plik zgodnie z opisem w pliku konfiguracji w sekcji aplikacji tego artykułu. Jeśli plik nie zostanie zaktualizowany, poczekaj na interwał odświeżania platformy Kubernetes (1 minutę) lub wymuś odświeżenie, uruchamiając ponownie aplikację.
Po sprawdzeniu tych elementów aplikacje powinny mieć możliwość odczytania zaktualizowanych konfiguracji. Jeśli aplikacje nadal nie są aktualizowane, utwórz bilet.