Kurz: Integrace správy pro Spring se serverem Eureka pro Spring v Azure Container Apps
Tento kurz vás provede procesem integrace spravovaného správce pro Spring se serverem Eureka pro Spring v rámci Azure Container Apps.
Tento článek obsahuje nějaký obsah podobný kurzu "Připojení ke spravovanému správci Springu v Azure Container Apps", ale s Eureka Serverem for Spring můžete vytvořit vazbu správce springu na Server Eureka pro Spring, aby mohl získat informace o aplikaci prostřednictvím Eureky, a nemusíte svázat jednotlivé aplikace se správcem pro Spring.
Podle této příručky nastavíte Server Eureka pro zjišťování služeb a pak vytvoříte správce pro Spring, který bude spravovat a monitorovat aplikace Spring zaregistrované na Serveru Eureka. Toto nastavení zajišťuje, že ostatní aplikace musí svázat pouze se serverem Eureka, což zjednodušuje správu mikroslužeb.
V tomto kurzu se naučíte:
- Vytvořte server Eureka pro spring.
- Vytvořte správce pro Spring a propojte ho se serverem Eureka.
- Pro zajištění zjednodušeného zjišťování a správy služeb vytvořte vazbu dalších aplikací na Server Eureka.
Požadavky
- Účet Azure s aktivním předplatným. Pokud ho ještě nemáte, můžete si ho zdarma vytvořit.
- Rozhraní příkazového řádku Azure.
- Existující komponenta Eureka Server for Spring Java. Pokud ho nemáte, přečtěte si téma Vytvoření serveru Eureka for Spring.
Důležité informace
Při spouštění spravovaných komponent Javy v Azure Container Apps mějte na paměti následující podrobnosti:
Položka | Vysvětlení |
---|---|
Obor | Komponenty se spouštějí ve stejném prostředí jako připojená aplikace kontejneru. |
Škálování | Komponenta nemůže škálovat. Vlastnosti minReplicas škálování a maxReplicas obě jsou nastaveny na 1 . |
Zdroje informací | Opravili jsme přidělení prostředků kontejneru pro komponenty. Počet jader procesoru je 0,5 a velikost paměti je 1 Gi. |
Ceny | Fakturace součástí spadá do cen založených na spotřebě. Prostředky spotřebované spravovanými komponentami se účtují podle tarifů aktivní/nečinné. K zastavení fakturace můžete odstranit komponenty, které se už nepoužívají. |
Vazba | Kontejnerové aplikace se připojují ke komponentě prostřednictvím vazby. Vazby vloží konfigurace do proměnných prostředí kontejneru aplikace. Po vytvoření vazby může aplikace kontejneru číst konfigurační hodnoty z proměnných prostředí a připojit se ke komponentě. |
Nastavení
Než začnete, vytvořte potřebné prostředky spuštěním následujících příkazů.
Vytvořte proměnné pro podporu konfigurace aplikace. Tyto hodnoty jsou k dispozici pro účely této lekce.
export LOCATION=eastus export RESOURCE_GROUP=my-services-resource-group export ENVIRONMENT=my-environment export EUREKA_COMPONENT_NAME=eureka export ADMIN_COMPONENT_NAME=admin export CLIENT_APP_NAME=sample-service-eureka-client export CLIENT_IMAGE="mcr.microsoft.com/javacomponents/samples/sample-admin-for-spring-client:latest"
Proměnná Popis LOCATION
Umístění oblasti Azure, kde vytvoříte kontejnerovou aplikaci a komponenty Javy. RESOURCE_GROUP
Název skupiny prostředků Azure pro ukázkovou aplikaci ENVIRONMENT
Název prostředí Azure Container Apps pro vaši ukázkovou aplikaci. EUREKA_COMPONENT_NAME
Název komponenty Java serveru Eureka. ADMIN_COMPONENT_NAME
Název komponenty Admin for Spring Java. CLIENT_APP_NAME
Název aplikace kontejneru, která je svázaná se serverem Eureka. CLIENT_IMAGE
Image kontejneru použitá v aplikaci kontejneru Eureka Server. Přihlaste se k Azure pomocí Azure CLI.
az login
Vytvořte skupinu prostředků.
az group create --name $RESOURCE_GROUP --location $LOCATION
Vytvořte prostředí kontejnerových aplikací.
az containerapp env create \ --name $ENVIRONMENT \ --resource-group $RESOURCE_GROUP \ --location $LOCATION \ --query "properties.provisioningState"
Použití parametru
--query
filtruje odpověď dolů na jednoduchou zprávu o úspěchu nebo selhání.
Volitelné: Vytvoření serveru Eureka pro Spring
Pokud nemáte existující Server Eureka pro Spring, vytvořte komponentu Java serveru Eureka pomocí následujícího příkazu. Další informace naleznete v tématu Vytvoření Serveru Eureka for Spring.
az containerapp env java-component eureka-server-for-spring create \
--environment $ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--name $EUREKA_COMPONENT_NAME
Vytvoření vazby součástí
Vytvořte komponentu Admin for Spring Java.
az containerapp env java-component admin-for-spring create \
--environment $ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--name $ADMIN_COMPONENT_NAME \
--min-replicas 1 \
--max-replicas 1 \
--bind $EUREKA_COMPONENT_NAME
Vytvoření vazby dalších aplikací na Server Eureka
Při nastavení Serveru Eureka teď můžete svázat další aplikace pro zjišťování služeb. Tyto aplikace můžete také monitorovat a spravovat na řídicím panelu správce pro Spring. Pomocí následujících kroků vytvořte a svážete aplikaci kontejneru se serverem Eureka:
Vytvořte aplikaci kontejneru a svážete ji se serverem Eureka.
az containerapp create \
--name $CLIENT_APP_NAME \
--resource-group $RESOURCE_GROUP \
--environment $ENVIRONMENT \
--image $CLIENT_IMAGE \
--min-replicas 1 \
--max-replicas 1 \
--ingress external \
--target-port 8080 \
--bind $EUREKA_COMPONENT_NAME
Tip
Vzhledem k tomu, že předchozí kroky vázaly součást Admin for Spring na komponentu Eureka Server for Spring, komponenta Admin umožňuje zjišťování služeb a umožňuje ji spravovat prostřednictvím řídicího panelu Admin for Spring současně.
Zobrazení řídicích panelů
Důležité
Pokud chcete zobrazit řídicí panel, musíte mít přiřazenou alespoň Microsoft.App/managedEnvironments/write
roli k vašemu účtu ve spravovaném prostředku prostředí. Můžete buď explicitně přiřadit Owner
prostředek, nebo Contributor
postupovat podle pokynů k vytvoření vlastní definice role a jeho přiřazení k vašemu účtu.
Vytvořte vlastní definici role.
az role definition create --role-definition '{ "Name": "Java Component Dashboard Access", "IsCustom": true, "Description": "Can access managed Java Component dashboards in managed environments", "Actions": [ "Microsoft.App/managedEnvironments/write" ], "AssignableScopes": ["/subscriptions/<SUBSCRIPTION_ID>"] }'
Nezapomeňte zástupný symbol v hodnotě
AssignableScopes
nahradit<SUBSCRIPTION_ID>
ID vašeho předplatného.Přiřaďte vlastní roli k účtu u prostředku spravovaného prostředí.
Získejte ID prostředku spravovaného prostředí.
export ENVIRONMENT_ID=$(az containerapp env show \ --name $ENVIRONMENT --resource-group $RESOURCE_GROUP \ --query id \ --output tsv)
Přiřaďte roli k účtu.
Před spuštěním tohoto příkazu nahraďte
<USER_OR_SERVICE_PRINCIPAL_ID>
zástupný symbol ID uživatele nebo instančního objektu.az role assignment create \ --assignee <USER_OR_SERVICE_PRINCIPAL_ID> \ --role "Java Component Dashboard Access" \ --scope $ENVIRONMENT_ID
Získejte adresu URL řídicího panelu Správce pro Spring.
az containerapp env java-component admin-for-spring show \ --environment $ENVIRONMENT \ --resource-group $RESOURCE_GROUP \ --name $ADMIN_COMPONENT_NAME \ --query properties.ingress.fqdn \ --output tsv
Získejte adresu URL řídicího panelu Eureka Server for Spring.
az containerapp env java-component eureka-server-for-spring show \ --environment $ENVIRONMENT \ --resource-group $RESOURCE_GROUP \ --name $EUREKA_COMPONENT_NAME \ --query properties.ingress.fqdn \ --output tsv
Tento příkaz vrátí adresu URL, kterou můžete použít pro přístup k řídicímu panelu Serveru Eureka for Spring. Prostřednictvím řídicího panelu je vaše aplikace kontejneru také pro vás, jak je znázorněno na následujícím snímku obrazovky.
Vyčištění prostředků
Prostředky vytvořené v tomto kurzu mají vliv na fakturu za Azure. Pokud tyto služby nebudete používat dlouhodobě, spuštěním následujícího příkazu odeberte vše vytvořené v tomto kurzu.
az group delete --resource-group $RESOURCE_GROUP