Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Z tego przewodnika Szybki start dowiesz się, jak wdrożyć aplikację w usłudze Azure Container Apps, która używa składników Java do obsługi zarządzania konfiguracją, odnajdywania usług oraz kondycji i metryk. Przykładowa aplikacja używana w tym przykładzie to Java PetClinic, która używa wzorca architektury mikrousług. Na poniższym diagramie przedstawiono architekturę aplikacji PetClinic w usłudze Azure Container Apps:
Aplikacja PetClinic zawiera następujące funkcje:
- Interfejs użytkownika to samodzielna aplikacja internetowa Node.js hostowana na aplikacji bramy API.
- Brama interfejsu API kieruje żądania do aplikacji usług zaplecza.
- Aplikacje zaplecza są tworzone przy użyciu platformy Spring Boot.
- Każda aplikacja zaplecza używa bazy danych HyperSQL jako magazynu trwałego.
- Aplikacje używają zarządzanych składników Java w usłudze Azure Container Apps, w tym rejestru usług, serwera konfiguracji i serwera administracyjnego.
- Serwer konfiguracji odczytuje dane z repozytorium Git.
- Obszar roboczy usługi Log Analytics rejestruje dane serwera.
W tym samouczku znajdziesz takie informacje:
- Tworzenie serwera konfiguracji, serwera Eureka, serwera administracyjnego i składników administracyjnych
- Tworzenie serii aplikacji mikrousług
- Wiązanie składników serwera z aplikacjami mikrousług
- Wdrażanie kolekcji aplikacji
- Przeglądanie wdrożonych aplikacji
Na koniec tego artykułu wdrożysz jedną aplikację internetową i trzy aplikacje zaplecza skonfigurowane do pracy z trzema różnymi składnikami języka Java. Następnie można zarządzać poszczególnymi składnikami za pośrednictwem witryny Azure Portal.
Wymagania wstępne
- Konto platformy Azure: jeśli nie masz konta platformy Azure, utwórz je bezpłatnie. Aby użyć tego szybkiego startu, musisz mieć uprawnienia Współautora lub Właściciela w subskrypcji Azure. Aby uzyskać więcej informacji, zobacz Przypisywanie ról platformy Azure przy użyciu witryny Azure Portal.
- Zainstaluj Azure CLI.
- Rozszerzenie interfejsu wiersza polecenia usługi Azure Container Apps. Użyj wersji 0.3.47 lub nowszej. Użyj polecenia ,
az extension add --name containerapp --upgrade --allow-previewaby zainstalować najnowszą wersję.
Ustawienia
Aby utworzyć zmienne środowiskowe, grupę zasobów i środowisko usługi Azure Container Apps, wykonaj następujące czynności:
Zmienne środowiskowe zawierają wartości niestandardowe, dlatego przed uruchomieniem następnych poleceń zastąp wartości w nawiasach objęte
<>swoimi własnymi wartościami:export RESOURCE_GROUP=<RESOURCE_GROUP> export LOCATION=<LOCATION> export CONTAINER_APP_ENVIRONMENT=<CONTAINER_APPS_ENVIRONMENT>Teraz utworzysz więcej zmiennych środowiskowych zawierających ustawienia aplikacji mikrousług. Te wartości służą do definiowania nazw i konfiguracji składników Java oraz usługi Azure Container Apps używanych do wdrażania mikrousług. Utwórz te zmienne środowiskowe przy użyciu następujących poleceń:
export CONFIG_SERVER_COMPONENT=configserver export ADMIN_SERVER_COMPONENT=admin export EUREKA_SERVER_COMPONENT=eureka export CONFIG_SERVER_URI=https://github.com/spring-petclinic/spring-petclinic-microservices-config.git export CUSTOMERS_SERVICE=customers-service export VETS_SERVICE=vets-service export VISITS_SERVICE=visits-service export API_GATEWAY=api-gateway export CUSTOMERS_SERVICE_IMAGE=ghcr.io/azure-samples/javaaccelerator/spring-petclinic-customers-service export VETS_SERVICE_IMAGE=ghcr.io/azure-samples/javaaccelerator/spring-petclinic-vets-service export VISITS_SERVICE_IMAGE=ghcr.io/azure-samples/javaaccelerator/spring-petclinic-visits-service export API_GATEWAY_IMAGE=ghcr.io/azure-samples/javaaccelerator/spring-petclinic-api-gatewayZaloguj się do interfejsu wiersza polecenia platformy Azure i wybierz aktywną subskrypcję przy użyciu następującego polecenia:
az loginUtwórz grupę zasobów w celu organizowania usług platformy Azure przy użyciu następującego polecenia:
az group create \ --name $RESOURCE_GROUP \ --location $LOCATIONUtwórz środowisko usługi Azure Container Apps, które hostuje zarówno składniki Java, jak i aplikacje kontenera, używając następującego polecenia:
az containerapp env create \ --resource-group $RESOURCE_GROUP \ --name $CONTAINER_APP_ENVIRONMENT \ --location $LOCATION
Tworzenie składników języka Java
Teraz utworzysz następujące składniki Języka Java, które obsługują aplikację:
- Serwer konfiguracji. Służy do zarządzania ustawieniami konfiguracji dla aplikacji mikrousług.
- Serwer Eureka. Służy do zarządzania rejestrem usług i odnajdywaniem.
- Serwer administracyjny. Służy do monitorowania kondycji i metryk aplikacji mikrousług oraz zarządzania nimi.
Aby utworzyć te składniki serwera, wykonaj następujące czynności:
Utwórz serwer konfiguracji dla składników Języka Java przy użyciu następującego polecenia:
az containerapp env java-component config-server-for-spring create \ --resource-group $RESOURCE_GROUP \ --name $CONFIG_SERVER_COMPONENT \ --environment $CONTAINER_APP_ENVIRONMENT \ --configuration spring.cloud.config.server.git.uri=$CONFIG_SERVER_URIUtwórz serwer Eureka dla składników Java przy użyciu następującego polecenia:
az containerapp env java-component eureka-server-for-spring create \ --resource-group $RESOURCE_GROUP \ --name $EUREKA_SERVER_COMPONENT --environment $CONTAINER_APP_ENVIRONMENT \Utwórz serwer administracyjny dla składników Języka Java przy użyciu następującego polecenia:
az containerapp env java-component admin-for-spring create \ --resource-group $RESOURCE_GROUP \ --name $ADMIN_SERVER_COMPONENT --environment $CONTAINER_APP_ENVIRONMENT \
Wdrażanie aplikacji mikrousług
Aby wdrożyć aplikacje mikrousług Java w usłudze Azure Container Apps przy użyciu wstępnie utworzonych obrazów kontenerów, wykonaj następujące kroki:
Uwaga
W tym artykule użyto serii utworzonych obrazów dla aplikacji mikrousług Spring Petclinic. Możesz również dostosować przykładowy kod i użyć własnych obrazów. Aby uzyskać więcej informacji, zobacz repozytorium GitHub azure-container-apps-java-samples.
Utwórz aplikację danych klienta przy użyciu następującego polecenia:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $CUSTOMERS_SERVICE \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $CUSTOMERS_SERVICE_IMAGEUtwórz aplikację weterynarza przy użyciu następującego polecenia:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $VETS_SERVICE \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $VETS_SERVICE_IMAGEUtwórz aplikację wizyt przy użyciu następującego polecenia:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $VISITS_SERVICE \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $VISITS_SERVICE_IMAGEUtwórz aplikację bramy API przy użyciu następującego polecenia:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $API_GATEWAY \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $API_GATEWAY_IMAGE \ --ingress external \ --target-port 8080 \ --query properties.configuration.ingress.fqdn
Wiązanie aplikacji kontenera ze składnikami języka Java
Następnie powiąż składniki Java z aplikacjami kontenera. Powiązania utworzone w tej sekcji zapewniają następujące funkcje:
- Wstrzykiwanie danych konfiguracji do każdej aplikacji z zarządzanego serwera konfiguracji podczas uruchamiania.
- Zarejestruj aplikację przy użyciu zarządzanego serwera Eureka na potrzeby odnajdywania usług.
- Włącz serwer administracyjny do monitorowania aplikacji.
containerapp update Użyj polecenia , aby utworzyć powiązania dla każdej aplikacji, wykonując następujące kroki:
Dodaj powiązania do aplikacji danych klienta przy użyciu następującego polecenia:
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $CUSTOMERS_SERVICE \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENTDodaj powiązania do usługi weterynaryjnej za pomocą następującego polecenia:
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $VETS_SERVICE \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENTDodaj powiązania do usługi wizyt przy użyciu następującego polecenia:
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $VISITS_SERVICE \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENTDodaj powiązania do bramy interfejsu API. Użyj następującego polecenia, aby zwrócić adres URL aplikacji front-end, a następnie otwórz go w przeglądarce.
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $API_GATEWAY \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENT \ --query properties.configuration.ingress.fqdn
Weryfikowanie stanu aplikacji
Aby sprawdzić stan aplikacji, wykonaj następujące czynności:
Za pomocą adresu URL zwróconego z polecenia bramy API wyświetl aplikację front-end w przeglądarce. Aplikacja powinna przypominać następujący zrzut ekranu:
Aby wyświetlić pulpit nawigacyjny serwera Eureka, wykonaj następujące czynności:
Ważne
Aby wyświetlić pulpit nawigacyjny serwera Eureka i pulpit nawigacyjny administratora platformy Spring, musisz mieć co najmniej
Microsoft.App/managedEnvironments/writerolę przypisaną do konta w zasobie środowiska zarządzanego. Możesz jawnie przypisać rolęOwnerlubContributorna zasobie. Możesz również wykonać kroki tworzenia niestandardowej definicji roli i przypisywania jej do konta.Uruchom następujące polecenie, aby zwrócić adres URL pulpitu nawigacyjnego:
az containerapp env java-component eureka-server-for-spring show \ --resource-group $RESOURCE_GROUP \ --name $EUREKA_SERVER_COMPONENT \ --environment $CONTAINER_APP_ENVIRONMENT \ --query properties.ingress.fqdnOtwórz adres URL w przeglądarce. Powinna zostać wyświetlona aplikacja podobna do poniższego zrzutu ekranu:
Wyświetl pulpit nawigacyjny Admin for Spring, wykonując następujące czynności:
Użyj następującego polecenia, aby zwrócić adres URL pulpitu nawigacyjnego:
az containerapp env java-component admin-for-spring show \ --resource-group $RESOURCE_GROUP \ --name $ADMIN_SERVER_COMPONENT \ --environment $CONTAINER_APP_ENVIRONMENT \ --query properties.ingress.fqdnOtwórz adres URL w przeglądarce. Powinna zostać wyświetlona aplikacja podobna do poniższego zrzutu ekranu:
Opcjonalne: Konfigurowanie składników języka Java
Składniki języka Java utworzone w tym przewodniku szybkiego startu można skonfigurować w portalu Azure, korzystając z sekcji Konfiguracje.
Aby uzyskać więcej informacji na temat konfigurowania trzech składników Java utworzonych w tym przewodniku Szybki start, zobacz następujące linki:
Czyszczenie zasobów
Zasoby utworzone w tym przewodniku Szybki start mają wpływ na rachunek za korzystanie z platformy Azure. Jeśli nie zamierzasz korzystać z tych usług przez dłuższy czas, użyj następującego polecenia, aby usunąć wszystkie elementy utworzone w tym przewodniku szybkiego startu:
az group delete --resource-group $RESOURCE_GROUP