Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ebben a rövid útmutatóban megtudhatja, hogyan helyezhet üzembe egy alkalmazást az Azure Container Appsben, amely Java-összetevőkkel kezeli a konfigurációkezelést, a szolgáltatásfelderítést, valamint az állapotot és a metrikákat. A példában használt mintaalkalmazás a Java PetClinic, amely a mikroszolgáltatás-architektúra mintáját használja. Az alábbi ábra a PetClinic-alkalmazás architektúráját mutatja be az Azure Container Appsben:
A PetClinic alkalmazás a következő funkciókat tartalmazza:
- A felhasználói felület egy önálló Node.js webalkalmazás, amely az API átjáró alkalmazásban fut.
- Az API-átjáró átirányítja a kéréseket a háttérszolgáltatás-alkalmazásoknak.
- A háttéralkalmazások a Spring Boot használatával készültek.
- Minden háttéralkalmazás egy HyperSQL-adatbázist használ állandó tárolóként.
- Az alkalmazások felügyelt Java-összetevőket használnak az Azure Container Appsben, beleértve a szolgáltatásregisztrációs adatbázist, a konfigurációs kiszolgálót és a rendszergazdai kiszolgálót.
- A konfigurációs kiszolgáló adatokat olvas be egy Git-adattárból.
- A Log Analytics-munkaterület naplózza a kiszolgáló adatait.
Az oktatóanyag során az alábbi lépéseket fogja végrehajtani:
- Konfigurációs kiszolgáló, Eureka-kiszolgáló, rendszergazdai kiszolgáló és rendszergazdai összetevők létrehozása
- Mikroszolgáltatási alkalmazások sorozatának létrehozása
- A kiszolgáló összetevőinek kötése a mikroszolgáltatás-alkalmazásokhoz
- Alkalmazások gyűjteményének üzembe helyezése
- Az üzembe helyezett alkalmazások áttekintése
A cikk végére üzembe helyez egy webalkalmazást és három háttéralkalmazást, amelyek három különböző Java-összetevővel való működésre vannak konfigurálva. Ezután az egyes összetevőket az Azure Portalon kezelheti.
Előfeltételek
- Azure-fiók: Ha nem rendelkezik Azure-fiókkal, hozzon létre egyet ingyenesen. Az Azure-előfizetéshez szüksége van közreműködői vagy tulajdonosi engedélyre a gyorsútmutató használatához. További információ: Azure-szerepkörök hozzárendelése az Azure Portal használatával.
- Azure CLI: Az Azure CLI telepítése.
- Azure Container Apps CLI-bővítmény. Használja a 0.3.47-es vagy újabb verziót.
az extension add --name containerapp --upgrade --allow-previewA parancs használatával telepítse a legújabb verziót.
Beállítás
Környezeti változók, erőforráscsoport és Azure Container Apps-környezet létrehozásához kövesse az alábbi lépéseket:
A környezeti változók tartalmazzák az egyéni értékeket, ezért a következő parancsok futtatása előtt cserélje le a saját értékekkel körülvett
<>helyőrző értékeket:export RESOURCE_GROUP=<RESOURCE_GROUP> export LOCATION=<LOCATION> export CONTAINER_APP_ENVIRONMENT=<CONTAINER_APPS_ENVIRONMENT>Most hozzon létre további környezeti változókat, amelyek tartalmazzák a mikroszolgáltatás-alkalmazás beállításait. Ezek az értékek határozzák meg a Java-összetevők és a mikroszolgáltatások üzembe helyezéséhez használt Azure Container Apps nevét és konfigurációját. A következő parancsokkal hozza létre ezeket a környezeti változókat:
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-gatewayJelentkezzen be az Azure CLI-be, és válassza ki aktív előfizetését az alábbi paranccsal:
az loginHozzon létre egy erőforráscsoportot az Azure-szolgáltatások rendszerezéséhez az alábbi paranccsal:
az group create \ --name $RESOURCE_GROUP \ --location $LOCATIONHozza létre az Azure Container Apps-környezetet, amely a Java-összetevőket és a tárolóalkalmazásokat is üzemelteti az alábbi paranccsal:
az containerapp env create \ --resource-group $RESOURCE_GROUP \ --name $CONTAINER_APP_ENVIRONMENT \ --location $LOCATION
Java-összetevők létrehozása
Most hozza létre a következő Java-összetevőket, amelyek támogatják az alkalmazást:
- Konfigurációs kiszolgáló. A mikroszolgáltatás-alkalmazások konfigurációs beállításainak kezelésére szolgál.
- Eureka kiszolgáló. A szolgáltatásregisztrációs adatbázis és a felderítés kezelésére szolgál.
- Rendszergazdai kiszolgáló. A mikroszolgáltatás-alkalmazások állapotának és metrikáinak figyelésére és kezelésére szolgál.
A kiszolgálóösszetevők létrehozásához kövesse az alábbi lépéseket:
Hozza létre a Java-összetevők konfigurációs kiszolgálóját az alábbi paranccsal:
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_URIHozza létre az Eureka-kiszolgálót a Java-összetevőkhöz az alábbi paranccsal:
az containerapp env java-component eureka-server-for-spring create \ --resource-group $RESOURCE_GROUP \ --name $EUREKA_SERVER_COMPONENT --environment $CONTAINER_APP_ENVIRONMENT \Hozza létre az adminisztrátori szervert a Java komponensekhez az alábbi paranccsal:
az containerapp env java-component admin-for-spring create \ --resource-group $RESOURCE_GROUP \ --name $ADMIN_SERVER_COMPONENT --environment $CONTAINER_APP_ENVIRONMENT \
A mikroszolgáltatási alkalmazások üzembe helyezése
Ha a Java-mikroszolgáltatási alkalmazásokat az Előre összeállított tárolórendszerképek használatával szeretné üzembe helyezni az Azure Container Appsben, kövesse az alábbi lépéseket:
Feljegyzés
Ebben a cikkben előre elkészített képfájlok sorozatát használja a Spring Petclinic mikroszolgáltatásokhoz. Emellett testre szabhatja a mintakódot, és használhatja a saját rendszerképeit. További információ: azure-container-apps-java-samples GitHub-adattár.
Hozza létre az ügyféladat-alkalmazást a következő paranccsal:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $CUSTOMERS_SERVICE \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $CUSTOMERS_SERVICE_IMAGEHozza létre a vet alkalmazást a következő paranccsal:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $VETS_SERVICE \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $VETS_SERVICE_IMAGEHozza létre a látogatási alkalmazást a következő paranccsal:
az containerapp create \ --resource-group $RESOURCE_GROUP \ --name $VISITS_SERVICE \ --environment $CONTAINER_APP_ENVIRONMENT \ --image $VISITS_SERVICE_IMAGEHozza létre az API Gateway-alkalmazást a következő paranccsal:
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
Tárolóalkalmazások kötése Java-összetevőkhöz
Ezután kösse össze a Java-összetevőket a tárolóalkalmazásokkal. Az ebben a szakaszban létrehozott kötések a következő funkciókat biztosítják:
- Konfigurációs adatok injektálása az egyes alkalmazásokba a felügyelt konfigurációs kiszolgálóról indításkor.
- Regisztrálja az alkalmazást a felügyelt Eureka-kiszolgálón a szolgáltatásfelderítéshez.
- Engedélyezze a rendszergazdai kiszolgálónak az alkalmazás monitorozását.
containerapp update A parancs használatával az alábbi lépések végrehajtásával hozhat létre kötéseket az egyes alkalmazásokhoz:
A következő paranccsal adhat kötéseket az ügyféladat-alkalmazáshoz:
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $CUSTOMERS_SERVICE \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENTA következő paranccsal adjon kapcsolatokat az állatorvosi szolgáltatáshoz:
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $VETS_SERVICE \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENTA következő paranccsal adjon kapcsolatokat a látogatási szolgáltatáshoz:
az containerapp update \ --resource-group $RESOURCE_GROUP \ --name $VISITS_SERVICE \ --bind $CONFIG_SERVER_COMPONENT $EUREKA_SERVER_COMPONENT $ADMIN_SERVER_COMPONENTKötések hozzáadása az API-átjáróhoz. A következő paranccsal adja vissza az előtérbeli alkalmazás URL-címét, majd nyissa meg ezt a helyet a böngészőben:
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
Alkalmazás állapotának ellenőrzése
Az alkalmazás állapotának ellenőrzéséhez kövesse az alábbi lépéseket:
Az API-átjáró
az containerapp updateparancsából visszaadott URL-cím használatával tekintse meg az előtéralkalmazást a böngészőben. Az alkalmazásnak az alábbi képernyőképhez kell hasonlítania:Tekintse meg az Eureka-kiszolgáló irányítópultját az alábbi lépésekkel:
Fontos
Az Eureka Server irányítópult és a Spring-rendszergazda irányítópult megtekintéséhez legalább a
Microsoft.App/managedEnvironments/writefiókhoz hozzárendelt szerepkörrel kell rendelkeznie a felügyelt környezeti erőforráson. Kifejezetten hozzárendelhet aOwnervagy aContributorszerepkört az erőforráshoz. A lépéseket követve létrehozhat egy egyéni szerepkördefiníciót, és hozzárendelheti azt a fiókjához.Futtassa a következő parancsot az irányítópult URL-címének visszaadásához:
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.fqdnNyissa meg az URL-címet a böngészőben. Az alábbi képernyőképhez hasonló alkalmazásnak kell megjelennie:
Tekintse meg a Spring Rendszergazda irányítópultját az alábbi lépések segítségével:
Az irányítópult URL-címét a következő paranccsal adja vissza:
az containerapp env java-component admin-for-spring show \ --resource-group $RESOURCE_GROUP \ --name $ADMIN_SERVER_COMPONENT \ --environment $CONTAINER_APP_ENVIRONMENT \ --query properties.ingress.fqdnNyissa meg az URL-címet a böngészőben. Az alábbi képernyőképhez hasonló alkalmazásnak kell megjelennie:
Nem kötelező: Java-összetevők konfigurálása
Az ebben a rövid útmutatóban létrehozott Java-összetevőket az Azure Portalon konfigurálhatja a Konfigurációk szakasz használatával.
Az ebben a rövid útmutatóban létrehozott három Java-összetevő konfigurálásával kapcsolatos további információkért tekintse meg az alábbi hivatkozásokat:
Az erőforrások tisztítása
Az ebben a rövid útmutatóban létrehozott erőforrások hatással vannak az Azure-számlájára. Ha nem fogja hosszú távon használni ezeket a szolgáltatásokat, az alábbi paranccsal távolítsa el az ebben a rövid útmutatóban létrehozott összes elemet:
az group delete --resource-group $RESOURCE_GROUP