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.
A nagy léptékű Azure Batch-megoldások monitorozásához és kezeléséhez szükség lehet a különböző állapotokban lévő erőforrások számának meghatározására. Az Azure Batch hatékony műveleteket biztosít a Batch-feladatok és számítási csomópontok számának lekéréséhez. Ezeket a műveleteket használhatja ahelyett, hogy esetleg időigényes lista lekérdezéseket használ, amelyek részletes információkat adnak vissza a feladatok vagy csomópontok nagy gyűjteményeiről.
A Tevékenységszám lekérése a feladat aktív, futó és befejezett tevékenységeinek összesített számát, valamint a sikeres vagy sikertelen tevékenységeket jeleníti meg. Az egyes állapotokban lévő tevékenységek számlálásával egyszerűen megjelenítheti a feladat előrehaladását egy felhasználó számára, vagy észlelheti a feladatot érintő váratlan késéseket vagy hibákat.
A listakészlet-csomópontok száma az egyes készletek dedikált és kihasználatlan számítási csomópontjainak számát jeleníti meg, amelyek különböző állapotban vannak: létrehozás, tétlen, offline, előzetes, újraindítás, újraimálás, indítás és egyéb. Az egyes állapotokban lévő csomópontok számlálásával meghatározhatja, hogy mikor rendelkezik megfelelő számítási erőforrásokkal a feladatok futtatásához, és azonosíthatja a készletekkel kapcsolatos lehetséges problémákat.
Előfordulhat, hogy a műveletek által visszaadott számok időnként nem naprakészek. Ha meg kell győződnie arról, hogy a szám pontos, használjon lista lekérdezést az erőforrások megszámlálásához. A listázási lekérdezések lehetővé teszik az egyéb Batch-erőforrások, például alkalmazások információinak lekérését is. További információ a szűrők listázási lekérdezésekre való alkalmazásáról: Lekérdezések létrehozása a Batch-erőforrások hatékony listázásához.
Feladatállapotok száma
A Get Tevékenységszámláló művelet az alábbi állapotok szerint számlálja meg a tevékenységeket:
-
Aktív: Egy várólistán lévő és futtatásra kész feladat, amely jelenleg nincs hozzárendelve egyetlen számítási csomóponthoz sem. A tevékenység akkor is
active, ha egy szülőtevékenységtől függ , amely még nem fejeződött be. -
Futás: Egy olyan feladat, amely egy számítási csomóponthoz van rendelve, de még nem fejeződött be. Egy feladat akkor számít
running-nak, amikor annak állapotapreparingvagyrunning, ahogyan azt aGetfeladat információk művelet jelzi. - Befejezve: Olyan tevékenység, amely már nem futtatható, mert vagy sikeresen befejeződött, vagy sikertelenül fejeződött be, és kimerítette az újrapróbálkozási korlátot is.
-
Sikeres: Olyan tevékenység, amelyben a feladat végrehajtásának eredménye .
successA Batch aTaskExecutionResulttulajdonság tulajdonságának ellenőrzésével határozza meg, hogy egy tevékenység sikeres vagy sikertelen volt-e. -
Sikertelen: Egy feladat, amelynek végrehajtásának eredménye
failure.
Az alábbi .NET-kódminta bemutatja, hogyan kérhető le a tevékenységek száma állapot szerint.
BatchTaskCountsResult taskCounts = await batchClient.GetJobTaskCountsAsync("job-1");
Console.WriteLine("Task count in active state: {0}", taskCounts.TaskCounts.Active);
Console.WriteLine("Task count in preparing or running state: {0}", taskCounts.TaskCounts.Running);
Console.WriteLine("Task count in completed state: {0}", taskCounts.TaskCounts.Completed);
Console.WriteLine("Succeeded task count: {0}", taskCounts.TaskCounts.Succeeded);
Console.WriteLine("Failed task count: {0}", taskCounts.TaskCounts.Failed);
Hasonló mintát használhat a REST és más támogatott nyelvek esetében a feladatok számának lekéréséhez.
Csomópontállapotok száma
A listakészlet-csomópontok száma művelet a számítási csomópontokat az egyes készletek alábbi állapotai szerint számlálja meg. Az egyes készletek dedikált csomópontjaihoz és Spot csomópontjaihoz külön aggregátumszámok vannak biztosítva.
- Létrehozás: Egy Azure által kiosztott virtuális gép, amely még nem kezdte meg a csatlakozást egy készlethez.
- Tétlen: Elérhető és jelenleg nem futó számítási csomópont.
- LeavingPool: A készletet elhagyó csomópont, vagy azért, mert a felhasználó kifejezetten eltávolította, vagy mert a készlet átméretezi vagy automatikusan lecsökkenti a méretét.
- Offline: Olyan csomópont, amellyel a Batch nem tud új feladatokat ütemezni.
-
Megszakított: A készletből eltávolított Spot csomópont, amely azért lett megszüntetve, mert az Azure visszavette a virtuális gépet. A
preemptedcsomópont újraincializálható, ha rendelkezésre áll a kihasználatlan virtuálisgép-kapacitás cseréje. - Újraindítás: Újrainduló csomópont.
- Újrakezelés: Egy csomópont, ahol az operációs rendszert újratelepítik.
- Futtatás : Olyan csomópont, amely egy vagy több tevékenységet futtat (a kezdési tevékenységen kívül).
- Indítás: Egy csomópont, ahol a Batch szolgáltatás elindul.
-
StartTaskFailed: Az a csomópont, ahol a kezdési feladat az újrapróbálkozások után meghiúsult, és
waitForSuccessengedélyezve van. Ez a csomópont nem tud feladatokat futtatni. - Ismeretlen: Olyan csomópont, amely elvesztette a kapcsolatot a Batch szolgáltatással, és amelynek állapota nem ismert.
- Használhatatlan: Olyan csomópont, amely hiba miatt nem használható feladatvégrehajtáshoz.
-
WaitingForStartTask: Az a csomópont, amelyen a kezdő tevékenység fut, de
waitForSuccessengedélyezve van, és még nem fejeződött be.
Az alábbi C#-kódrészlet bemutatja, hogyan listázhatja az aktuális fiók összes készletének csomópontszámát:
await foreach (BatchPoolNodeCounts nodeCounts in batchClient.GetPoolNodeCountsAsync())
{
Console.WriteLine("Pool Id: {0}", nodeCounts.PoolId);
Console.WriteLine("Total dedicated node count: {0}", nodeCounts.Dedicated.Total);
// Get dedicated node counts in Idle and Offline states; you can get additional states.
Console.WriteLine("Dedicated node count in Idle state: {0}", nodeCounts.Dedicated.Idle);
Console.WriteLine("Dedicated node count in Offline state: {0}", nodeCounts.Dedicated.Offline);
Console.WriteLine("Total Spot node count: {0}", nodeCounts.LowPriority.Total);
// Get Spot node counts in Running and Preempted states; you can get additional states.
Console.WriteLine("Spot node count in Running state: {0}", nodeCounts.LowPriority.Running);
Console.WriteLine("Spot node count in Preempted state: {0}", nodeCounts.LowPriority.Preempted);
}
Az alábbi C#-kódrészlet bemutatja, hogyan listázhatja az aktuális fiókban lévő adott készlet csomópontszámait.
await foreach (BatchPoolNodeCounts nodeCounts in batchClient.GetPoolNodeCountsAsync(
filter: "poolId eq 'testpool'"))
{
Console.WriteLine("Pool Id: {0}", nodeCounts.PoolId);
Console.WriteLine("Total dedicated node count: {0}", nodeCounts.Dedicated.Total);
// Get dedicated node counts in Idle and Offline states; you can get additional states.
Console.WriteLine("Dedicated node count in Idle state: {0}", nodeCounts.Dedicated.Idle);
Console.WriteLine("Dedicated node count in Offline state: {0}", nodeCounts.Dedicated.Offline);
Console.WriteLine("Total Spot node count: {0}", nodeCounts.LowPriority.Total);
// Get Spot node counts in Running and Preempted states; you can get additional states.
Console.WriteLine("Spot node count in Running state: {0}", nodeCounts.LowPriority.Running);
Console.WriteLine("Spot node count in Preempted state: {0}", nodeCounts.LowPriority.Preempted);
}
A REST-hez és más támogatott nyelvekhez hasonló mintát használhat a készletek csomópontszámának lekéréséhez.
Következő lépések
- Ismerje meg a Batch szolgáltatás munkafolyamatát és az elsődleges erőforrásokat , például készleteket, csomópontokat, feladatokat és feladatokat.
- Ismerje meg, hogyan alkalmazhat szűrőket a Batch-erőforrásokat listázó lekérdezésekre, lásd: Lekérdezések létrehozása a Batch-erőforrások hatékony listázásához.