Oktatóanyag: Tárolóalkalmazás skálázása
Az Azure Container Apps deklaratív skálázási szabályokon keresztül kezeli az automatikus horizontális skálázást. A tárolóalkalmazás felskálázása során a tárolóalkalmazás új példányai igény szerint jönnek létre. Ezeket a példányokat replikáknak nevezzük.
Ebben az oktatóanyagban egy HTTP-méretezési szabályt ad hozzá a tárolóalkalmazáshoz, és megfigyelheti, hogyan skálázható az alkalmazás.
Előfeltételek
Követelmény | Utasítások |
---|---|
Azure-fiók | Ha nem rendelkezik Azure-fiókkal, ingyenesen létrehozhat egyet. A folytatáshoz az Azure-előfizetés közreműködői engedélyére van szüksége. Részletekért tekintse meg az Azure-szerepkörök hozzárendelését az Azure Portalon . |
GitHub-fiók | Szerezz egyet ingyen. |
Azure CLI | Telepítse az Azure CLI-t. |
Beállítás
Ha a parancssori felületről szeretne bejelentkezni az Azure-ba, futtassa a következő parancsot, és kövesse az utasításokat a hitelesítési folyamat befejezéséhez.
az login
A parancssori felület legújabb verziójának futtatásához futtassa a frissítési parancsot.
az upgrade
Ezután telepítse vagy frissítse az Azure Container Apps bővítményt a parancssori felülethez.
Ha hibaüzenetet kap a hiányzó paraméterekről, amikor parancsokat futtat az containerapp
az Azure CLI-ben vagy parancsmagokat a Az.App
PowerShell-modulból, győződjön meg arról, hogy telepítve van az Azure Container Apps bővítmény legújabb verziója.
az extension add --name containerapp --upgrade
Feljegyzés
2024 májusától kezdődően az Azure CLI-bővítmények alapértelmezés szerint nem engedélyezik az előzetes verziójú funkciókat. A Container Apps előzetes verziójú funkcióinak eléréséhez telepítse a Container Apps bővítményt a következővel --allow-preview true
: .
az extension add --name containerapp --upgrade --allow-preview true
Az aktuális bővítmény vagy modul telepítése után regisztrálja a névtereket és Microsoft.OperationalInsights
a Microsoft.App
névtereket.
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
A tárolóalkalmazás létrehozása és üzembe helyezése
Hozza létre és telepítse a tárolóalkalmazást a containerapp up
paranccsal. Ez a parancs a következőket hozza létre:
- Erőforráscsoport
- Container Apps-környezet
- Log Analytics-munkaterület
Ha ezek közül az erőforrások közül bármelyik már létezik, a parancs a meglévő erőforrásokat használja az újak létrehozása helyett.
Végül a parancs létrehozza és üzembe helyezi a tárolóalkalmazást egy nyilvános tárolórendszerkép használatával.
az containerapp up \
--name my-container-app \
--resource-group my-container-apps \
--location centralus \
--environment 'my-container-apps' \
--image mcr.microsoft.com/k8se/quickstart:latest \
--target-port 8080 \
--ingress external \
--query properties.configuration.ingress.fqdn \
Feljegyzés
Győződjön meg arról, hogy a --image
paraméter értéke kisbetűs.
A beállítással --ingress
external
elérhetővé teszi a tárolóalkalmazást a nyilvános kérések számára.
A up
parancs a tárolóalkalmazás teljes tartománynevét (FQDN) adja vissza. Másolja ezt a teljes tartománynevet egy szövegfájlba. Ezt a Kérések küldése szakaszban fogja használni. A teljes tartománynév a következő példához hasonlóan néz ki:
https://my-container-app.icydune-96848328.centralus.azurecontainerapps.io
Méretezési szabály hozzáadása
A parancs futtatásával adjon hozzá EGY HTTP-méretezési szabályt a az containerapp update
tárolóalkalmazáshoz.
az containerapp update \
--name my-container-app \
--resource-group my-container-apps \
--scale-rule-name my-http-scale-rule \
--scale-rule-http-concurrency 1
Ez a parancs egy HTTP-méretezési szabályt ad hozzá a tárolóalkalmazáshoz a névvel my-http-scale-rule
és az egyidejűség beállításával 1
. Ha az alkalmazás több egyidejű HTTP-kérést kap, a futtatókörnyezet létrehozza az alkalmazás replikáit a kérések kezeléséhez.
A update
parancs JSON-válaszként adja vissza az új konfigurációt, hogy ellenőrizze a kérés sikerességét.
Naplókimenet indítása
Az alkalmazás skálázásának hatásait a Container Apps-futtatókörnyezet által létrehozott naplók megtekintésével tekintheti meg.
az containerapp logs show
A parancs használatával elkezdhet figyelni a naplóbejegyzéseket.
az containerapp logs show \
--name my-container-app \
--resource-group my-container-apps \
--type=system \
--follow=true
A show
parancs valós időben adja vissza a tárolóalkalmazás rendszernaplóinak bejegyzéseit. A következő példához hasonló válaszra számíthat:
{
"TimeStamp":"2023-08-01T16:49:03.02752",
"Log":"Connecting to the container 'my-container-app'..."
}
{
"TimeStamp":"2023-08-01T16:49:03.04437",
"Log":"Successfully Connected to container:
'my-container-app' [Revision: 'my-container-app--9uj51l6',
Replica: 'my-container-app--9uj51l6-5f96557ffb-5khg9']"
}
{
"TimeStamp":"2023-08-01T16:47:31.9480811+00:00",
"Log":"Microsoft.Hosting.Lifetime[14]"
}
{
"TimeStamp":"2023-08-01T16:47:31.9481264+00:00",
"Log":"Now listening on: http://[::]:8080"
}
{
"TimeStamp":"2023-08-01T16:47:31.9490917+00:00",
"Log":"Microsoft.Hosting.Lifetime[0]"
}
{
"TimeStamp":"2023-08-01T16:47:31.9491036+00:00",
"Log":"Application started. Press Ctrl+C to shut down."
}
{
"TimeStamp":"2023-08-01T16:47:31.949723+00:00",
"Log":"Microsoft.Hosting.Lifetime[0]"
}
{
"TimeStamp":"2023-08-01T16:47:31.9497292+00:00",
"Log":"Hosting environment: Production"
}
{
"TimeStamp":"2023-08-01T16:47:31.9497325+00:00",
"Log":"Microsoft.Hosting.Lifetime[0]"
}
{
"TimeStamp":"2023-08-01T16:47:31.9497367+00:00",
"Log":"Content root path: /app/"
}
További információ: az containerapp logs.
Kérések küldése
Nyisson meg egy új bash-felületet. Futtassa a következő parancsot, és cserélje le <YOUR_CONTAINER_APP_FQDN>
a tárolóalkalmazás teljes tartománynevét, amelyet a Tárolóalkalmazás létrehozása és üzembe helyezése szakaszból mentett.
seq 1 50 | xargs -Iname -P10 curl "<YOUR_CONTAINER_APP_FQDN>"
Ezek a parancsok 50 kérést küldenek a tárolóalkalmazásnak egyidejűleg 10 kérelem kötegében.
Parancs vagy argumentum | Leírás |
---|---|
seq 1 50 |
1 és 50 közötti számsorozatot hoz létre. |
| |
A cső operátora elküldi a sorrendet a xargs parancsnak. |
xargs |
A megadott URL-címmel futtat curl |
-Iname |
A kimenetének seq helyőrzőjeként szolgál. Ez az argumentum megakadályozza, hogy a visszatérési érték a parancsnak curl legyen elküldve. |
curl |
Meghívja a megadott URL-címet. |
-P10 |
Arra utasítja xargs , hogy egyszerre legfeljebb 10 folyamatot futtasson. |
További információkért tekintse meg a következő dokumentációt:
Az első rendszerhéjban, ahol futtatta a az containerapp logs show
parancsot, a kimenet most egy vagy több naplóbejegyzést tartalmaz, például az alábbiakat.
{
"TimeStamp":"2023-08-01 18:09:52 +0000 UTC",
"Type":"Normal",
"ContainerAppName":"my-container-app",
"RevisionName":"my-container-app--9uj51l6",
"ReplicaName":"my-container-app--9uj51l6-5f96557ffb-f795d",
"Msg":"Replica 'my-container-app--9uj51l6-5f96557ffb-f795d' has been scheduled to run on a node.",
"Reason":"AssigningReplica",
"EventSource":"ContainerAppController",
"Count":0
}
Skálázás megtekintése az Azure Portalon (nem kötelező)
- Jelentkezzen be az Azure Portalra.
- A felső keresősávon adja meg a saját tárolóalkalmazást.
- A keresési eredményekben az Erőforrások területen válassza ki a saját tárolóalkalmazást.
- A bal oldali navigációs sávon bontsa ki az Alkalmazást, és válassza a Méretezés és replikák lehetőséget.
- A Méretezés és replikák lapon válassza a Replikák lehetőséget.
- A tárolóalkalmazásban most már több replika is fut.
Előfordulhat, hogy az új replikák megtekintéséhez a Frissítés lehetőséget kell választania.
A bal oldali navigációs sávon bontsa ki a Figyelés elemet, és válassza a Metrikák lehetőséget.
A Metrikák lapon állítsa a Metrikát kérések értékre.
Válassza ki a Felosztás alkalmazása.
Bontsa ki az Értékek legördülő menüt, és jelölje be a Replika elemet.
A felosztás szerkesztésének befejezéséhez válassza a kék pipa ikont.
A gráf a tárolóalkalmazás által fogadott kéréseket jeleníti meg replika szerint felosztva.
A gráfméret alapértelmezés szerint az utolsó 24 órára van állítva, 15 perces részletességgel. Jelölje ki a skálát, és módosítsa az utolsó 30 percre egyperces részletességgel. Válassza a Apply gombot.
Jelölje ki a gráfot, és húzza az alakzatot a tárolóalkalmazás által fogadott kérelmek legutóbbi számának kiemeléséhez.
Az alábbi képernyőképen a tárolóalkalmazás által fogadott kérések replikák közötti felosztásának nagyított nézete látható.
Az erőforrások eltávolítása
Ha nem folytatja az alkalmazás használatát, futtassa az alábbi parancsot az erőforráscsoport és az oktatóanyagban létrehozott összes erőforrás törléséhez.
Figyelemfelhívás
Az alábbi parancs törli a megadott erőforráscsoportot és a benne lévő összes erőforrást. Ha az oktatóanyag hatókörén kívül eső erőforrások a megadott erőforráscsoportban találhatók, akkor azok is törlődnek.
az group delete --name my-container-apps
Tipp.
Problémákat tapasztal? Tudassa velünk a GitHubon, ha megnyit egy hibát az Azure Container Apps adattárában.