Megosztás:


Oktatóanyag: A Spring rendszergazdájának integrálása az Eureka Server for Spring szolgáltatással az Azure Container Appsben

Ez az oktatóanyag végigvezeti a Spring felügyelt rendszergazdájának az Azure Container Appsen belüli Eureka Server for Spring-kiszolgálóval való integrálásának folyamatán.

Ez a cikk a "Connect to a managed Admin for Spring in Azure Container Apps" oktatóanyaghoz hasonló tartalmakat tartalmaz, de az Eureka Server for Spring segítségével a Spring rendszergazdáját az Eureka Server for Springhez kötheti, hogy az eurekán keresztül lekérhesse az alkalmazásadatokat, ahelyett, hogy az egyes alkalmazásokat a Spring rendszergazdájához kellene kötnie.

Az útmutatót követve beállít egy Eureka-kiszolgálót a szolgáltatásfelderítéshez, majd létrehoz egy Spring-rendszergazdat az Eureka-kiszolgálón regisztrált Spring-alkalmazások kezeléséhez és figyeléséhez. Ez a beállítás biztosítja, hogy más alkalmazásoknak csak az Eureka-kiszolgálóhoz kell csatlakozniuk, ami leegyszerűsíti a mikroszolgáltatások kezelését.

Eben az oktatóanyagban az alábbiakkal fog megismerkedni:

  1. Hozzon létre egy Eureka Server for Spring-kiszolgálót.
  2. Hozzon létre egy rendszergazdát a Springhez, és csatolja az Eureka-kiszolgálóhoz.
  3. Kössön más alkalmazásokat az Eureka-kiszolgálóhoz az egyszerűsített szolgáltatásfelderítés és -kezelés érdekében.

Előfeltételek

Megfontolások

Ha felügyelt Java-összetevőket futtat az Azure Container Appsben, vegye figyelembe az alábbi részleteket:

Elem Magyarázat
Hatókör Az összetevők ugyanabban a környezetben futnak, mint a csatlakoztatott tárolóalkalmazás.
Méretezés Az összetevők nem méretezhetők. A skálázási tulajdonságok minReplicas és maxReplicas mindkettő a következőre 1van állítva: .
Források Az összetevők tárolóerőforrás-lefoglalása ki van javítva. A processzormagok száma 0,5, a memória mérete pedig 1 GB.
Díjszabás Az összetevők számlázása a használatalapú díjszabás alá tartozik. A felügyelt összetevők által felhasznált erőforrások számlázása az erőforrás használati állapottól függően aktív vagy tétlen díjszabással történik. Törölheti azokat az összetevőket, amelyek már nincsenek használatban a számlázás leállításához.
Kötés A tárolóalkalmazások kötéssel csatlakoznak egy összetevőhöz. A kötések konfigurációkat injektálnak a tárolóalkalmazás környezeti változóiba. A kötés létrehozása után a tárolóalkalmazás beolvassa a környezeti változók konfigurációs értékeit, és csatlakozhat az összetevőhöz.

Beállítás

A kezdés előtt hozza létre a szükséges erőforrásokat az alábbi parancsok végrehajtásával.

  1. Hozzon létre változókat az alkalmazáskonfiguráció támogatásához. Ezeket az értékeket a lecke céljaira biztosítjuk.

    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"
    
    Változó Leírás
    LOCATION Az Azure-régió helye, ahol a tárolóalkalmazást és a Java-összetevőket hozza létre.
    RESOURCE_GROUP A bemutató alkalmazás Azure-erőforráscsoportjának neve.
    ENVIRONMENT A bemutató alkalmazás Azure Container Apps-környezetének neve.
    EUREKA_COMPONENT_NAME Az Eureka Server Java-összetevő neve.
    ADMIN_COMPONENT_NAME A Spring Java-összetevő rendszergazdájának neve.
    CLIENT_APP_NAME Az Eureka-kiszolgálóhoz kötődő tárolóalkalmazás neve.
    CLIENT_IMAGE Az Eureka Server tárolóalkalmazásban használt tárolórendszerkép.
  2. Jelentkezzen be az Azure-ba az Azure CLI-vel.

    az login
    
  3. Hozzon létre egy erőforráscsoportot.

    az group create --name $RESOURCE_GROUP --location $LOCATION
    
  4. Hozza létre a tárolóalkalmazás-környezetet.

    az containerapp env create \
        --name $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION \
        --query "properties.provisioningState"
    

    --query A paraméter használatával a választ egy egyszerű sikeres vagy sikertelen üzenetre szűri le.

Nem kötelező: Az Eureka Server for Spring létrehozása

Ha nem rendelkezik meglévő Eureka Server for Spring-kiszolgálóval, az alábbi paranccsal hozza létre az Eureka Server Java-összetevőt. További információ: Az Eureka Server for Spring létrehozása.

az containerapp env java-component eureka-server-for-spring create \
    --environment $ENVIRONMENT \
    --resource-group $RESOURCE_GROUP \
    --name $EUREKA_COMPONENT_NAME

Az összetevők összekapcsolása

Hozza létre a Spring Java rendszergazdája összetevőt.

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

Más alkalmazások kötése az Eureka-kiszolgálóhoz

Az Eureka-kiszolgáló beállításával mostantól más alkalmazásokat is köthet hozzá a szolgáltatásfelderítéshez. Ezeket az alkalmazásokat a Spring rendszergazda irányítópultján is figyelheti és kezelheti. Tárolóalkalmazás létrehozásához és az Eureka-kiszolgálóhoz való kötéséhez kövesse az alábbi lépéseket:

Hozza létre a tárolóalkalmazást, és kösse hozzá az Eureka-kiszolgálóhoz.

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 

Tipp.

Mivel az előző lépések a Spring-rendszergazda összetevőt az Eureka Server for Spring összetevőhöz kötötték, a rendszergazdai összetevő lehetővé teszi a szolgáltatásfelderítést, és lehetővé teszi, hogy egyszerre kezelje azt a Spring-rendszergazda irányítópulton keresztül.

Az irányítópultok megtekintése

Fontos

Az irányítópult megtekintéséhez legalább a Microsoft.App/managedEnvironments/write fiókhoz hozzárendelt szerepkört kell hozzárendelnie a felügyelt környezeti erőforráshoz. Explicit módon hozzárendelhet Owner vagy Contributor szerepkört az erőforráshoz, vagy a lépéseket követve létrehozhat egy egyéni szerepkördefiníciót, és hozzárendelheti azt a fiókjához.

  1. Hozza létre az egyéni szerepkördefiníciót.

    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>"]
    }'
    

    Mindenképpen cserélje le az <SUBSCRIPTION_ID> érték helyőrzőjének helyét az AssignableScopes előfizetés-azonosítóra.

  2. Rendelje hozzá az egyéni szerepkört a fiókjához felügyelt környezeti erőforráson.

    Kérje le a felügyelt környezet erőforrás-azonosítóját.

    export ENVIRONMENT_ID=$(az containerapp env show \
        --name $ENVIRONMENT --resource-group $RESOURCE_GROUP \
        --query id \
        --output tsv)
    
  3. Rendelje hozzá a szerepkört a fiókjához.

    A parancs futtatása előtt cserélje le a <USER_OR_SERVICE_PRINCIPAL_ID> helyőrzőt a felhasználó vagy szolgáltatásnév azonosítójára.

    az role assignment create \
        --assignee <USER_OR_SERVICE_PRINCIPAL_ID> \
        --role "Java Component Dashboard Access" \
        --scope $ENVIRONMENT_ID
    
  4. Kérje le a Rendszergazda a Springhez irányítópult URL-címét.

    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
    
  5. Kérje le az Eureka Server for Spring-irányítópult URL-címét.

    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
    

    Ez a parancs az Eureka Server for Spring irányítópult eléréséhez használható URL-címet adja vissza. Az irányítópulton keresztül a tárolóalkalmazás is az Ön számára érhető el, ahogyan az alábbi képernyőképen látható.

    Képernyőkép a Spring-rendszergazda irányítópultról.

    Képernyőkép az Eureka Server for Spring irányítópultjáról.

Az erőforrások eltávolítása

Az oktatóanyagban létrehozott erőforrások hatással vannak az Azure-számlára. Ha nem fogja hosszú távon használni ezeket a szolgáltatásokat, futtassa a következő parancsot az oktatóanyagban létrehozott összes eltávolításához.

az group delete --resource-group $RESOURCE_GROUP