Megosztás:


Oktatóanyag: Magas rendelkezésre állású Eureka-kiszolgálóösszetevő-fürt létrehozása az Azure Container Appsben

Ebben az oktatóanyagban megtudhatja, hogyan hozhat létre olyan Eureka-szolgáltatást, amely úgy lett kialakítva, hogy a hibák és a nagy igény esetén is működőképes maradjon. Egy magas rendelkezésre állású Eureka-szolgáltatás létrehozása segít biztosítani, hogy az Azure Container Appshez használt szolgáltatásregisztrációs adatbázis mindig elérhető legyen az ügyfelek számára igénytől függetlenül.

Az Eureka magas rendelkezésre állási állapotának elérése magában foglalja több Eureka-kiszolgálópéldány összekapcsolását is, így azok fürtöt alkotnak. A fürt erőforrásokat biztosít, hogy ha egy Eureka-kiszolgáló meghibásodik, a többi szolgáltatás továbbra is elérhető maradjon a kérésekhez.

Az oktatóanyag során az alábbi lépéseket fogja végrehajtani:

  • Eureka-kiszolgálók létrehozása Spring-összetevőkhöz.
  • Kössön össze két Eureka-kiszolgálót a Spring-összetevőkhöz egy fürtbe.
  • Tárolóalkalmazás kötése mindkét Eureka-kiszolgálóhoz a magas rendelkezésre állású szolgáltatásfelderítés érdekében.

Előfeltételek

Megfontolások

Ha felügyelt Java-összetevőket futtat a 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.

Kezdeti erőforrások beállítása

Az alábbi lépésekkel létrehozhat néhány erőforrást, amelyekre szüksége van az Eureka-szolgáltatásfürthöz.

  1. Alkalmazáskonfigurációs értékeket tartalmazó változók létrehozása.

    export LOCATION=eastus
    export RESOURCE_GROUP=my-services-resource-group
    export ENVIRONMENT=my-environment
    export EUREKA_COMPONENT_FIRST=eureka01
    export EUREKA_COMPONENT_SECOND=eureka02
    export APP_NAME=sample-service-eureka-client
    export IMAGE="mcr.microsoft.com/javacomponents/samples/sample-service-eureka-client:latest"
    
  2. Az Azure CLI használatával jelentkezzen be az Azure-ba.

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

    az group create --name $RESOURCE_GROUP --location $LOCATION
    
  4. Hozza létre a Container Apps-környezetet.

    az containerapp env create \
        --name $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION
    

Kiszolgálók létrehozása fürthöz

Hozzon létre két Eureka Server for Spring-összetevőt.

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

Összetevők kötése fürt létrehozásához

Ahhoz, hogy az Eureka-kiszolgálók magas rendelkezésre állású konfigurációban működjenek, fürtként kell összekapcsolni őket.

  1. Az első Eureka-kiszolgáló kötése a másodikhoz.

    az containerapp env java-component eureka-server-for-spring update \
        --environment $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --name $EUREKA_COMPONENT_FIRST \
        --bind $EUREKA_COMPONENT_SECOND
    
  2. Kösse össze a második Eureka-kiszolgálót az elsőhöz.

    az containerapp env java-component eureka-server-for-spring update \
        --environment $ENVIRONMENT \
        --resource-group $RESOURCE_GROUP \
        --name $EUREKA_COMPONENT_SECOND \
        --bind $EUREKA_COMPONENT_FIRST
    

Az alkalmazás üzembe helyezése és kötése

A kiszolgálóösszetevők összekapcsolása után létrehozhatja a tárolóalkalmazást, és a két Eureka-összetevőhöz kötheti.

  1. Hozza létre a tárolóalkalmazást.

    az containerapp create \
        --name $APP_NAME \
        --resource-group $RESOURCE_GROUP \
        --environment $ENVIRONMENT \
        --image $IMAGE \
        --min-replicas 1 \
        --max-replicas 1 \
        --ingress external \
        --target-port 8080
    
  2. A tárolóalkalmazás kötése az első Eureka-kiszolgáló összetevőhöz.

    az containerapp update \
        --name $APP_NAME \
        --resource-group $RESOURCE_GROUP \
        --bind $EUREKA_COMPONENT_FIRST 
    
  3. A tárolóalkalmazás kötése a második Eureka-kiszolgáló összetevőhöz.

    az containerapp update \
        --name $APP_NAME \
        --resource-group $RESOURCE_GROUP \
        --bind $EUREKA_COMPONENT_SECOND
    

Az irányítópult megtekintése

Fontos

Az Eureka Server for Spring irányítópult megtekintéséhez a Microsoft.App/managedEnvironments/write, Owner vagy Contributor szerepkört hozzá kell rendelni az Ön fiókjához, amely a Container Apps környezeti erőforráshoz kapcsolódik.

Egyéni szerepkör létrehozása és hozzárendelése

  1. Hozza létre az egyéni szerepkördefiníciót. A parancs futtatása előtt cserélje le az AssignableScopes értékű helyőrzőt az előfizetés azonosítójával.

    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>"]
    }'
    
  2. Kérje le a Container Apps-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á az egyéni szerepkört saját fiókodhoz a Container Apps környezeti erőforráshoz. A parancs futtatása előtt cserélje le a helyőrzőt az assignee értékben a felhasználói objektumazonosítóra vagy szolgáltatásnév-azonosítóra.

    az role assignment create \
        --assignee <USER_OR_SERVICE_PRINCIPAL_ID> \
        --role "Java Component Dashboard Access" \
        --scope $ENVIRONMENT_ID
    

Az irányítópult URL-címének lekérése

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_FIRST \
    --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 ellenőrizheti, hogy az Eureka-kiszolgáló beállítása két replikából áll-e.

Képernyőkép egy Eureka for Spring-irányítópultról. A regisztrált példányok szakasz felsorol egy tárolóalkalmazást és két Eureka-kiszolgálót, amelyek mindegyike felfelé állapotú.

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 hosszú távon nem fogja használni ezeket a szolgáltatásokat, futtassa az alábbi parancsot az oktatóanyagban létrehozott összes elem eltávolításához.

az group delete --resource-group $RESOURCE_GROUP