Plánování kapacity pro Azure Batch

Efektivní plánování kapacity pomáhá zajistit, aby vaše Azure Batch úlohy měly výpočetní prostředky, které potřebují, když je potřebují. Tento článek vysvětluje, jak je kapacita služby Batch strukturovaná, jak naplánovat kvótu pro úlohy a jak snížit riziko selhání přidělení.

Kvóta je limit, nikoli záruka kapacity. Plánování vám pomůže požádat o odpovídající kvótu, zvolit odolné konfigurace a správně reagovat při omezení kapacity. Konkrétní výchozí a maximální hodnoty najdete v tématu Kvóty a omezení služby Batch.

Ověřte, že Batch odpovídá vaší pracovní zátěži

Používejte Batch, když chcete, aby Azure poskytoval plánování jako službu a vaše aplikace může organizovat práci do poolů, úloh a úkolů. Než naplánujete kapacitu Batch, zvažte tyto alternativy:

  • Vyberte Azure CycleCloud, když potřebujete provozovat konkrétní HPC plánovač, přizpůsobit topologii clusteru a softwarový stack nebo se přizpůsobit stávajícím on-premises workflow.
  • Vyberte Azure CycleCloud Workspace pro Slurm, pokud chcete připravené k nasazení prostředí Slurm s komponentami pro síť, úložiště a přístup nastavenými ve vašem předplatném.

Pokud je Batch správný provozní model, použijte následující sekce k odhadu špičkové poptávky, výběru VM, výpočtu kvóty a definování záložních plánů před vytvořením produkčních poolů.

Hierarchie kapacity

Kapacita dávky se řídí v několika vrstvách, kde každá vrstva omezuje jednu pod ní. Vaše efektivní kapacita je taková, jakou umožňuje nejpřísnější omezení v řetězci.

Nahoře oblast Azure zobrazuje fyzickou kapacitu datacentra dostupnou pro každou řadu virtuálních počítačů. Regionální kapacita není pevná hodnota, kterou řídíte; se v průběhu času a podle řad virtuálních počítačů liší. Kvóta vašeho předplatného pak nastaví povolený limit počtu jader na řadu virtuálních počítačů na oblast. V režimu přidělování fondů předplatného uživatele se tyto kvóty předplatného vztahují přímo na fondy služby Batch. Kvóta účtu Batch určuje počet jader, fondů a aktivních úloh povolených pro účet Batch. V režimu přidělování fondů služby Batch platí tyto kvóty na úrovni účtu. Nakonec limity fondu omezují počet uzlů na fond na základě kvóty nad fondem a omezení velikosti fondu nastavené službou Batch.

Pochopení, která vrstva se vztahuje na váš účet, závisí na režimu přidělování fondu. Další informace najdete v tématu Účty Batch a režimy přidělování fondů.

Plánování požadavků na kapacitu

Před vytvořením produkčních fondů odhadněte prostředky, které vaše úlohy potřebují. Projděte si následující otázky a přeložte charakteristiky úloh na žádost o kvótu:

  • Profil úlohy Jaký je maximální počet souběžných úloh a úkolů? Jaká je průměrná doba trvání úlohy a požadavek na paměť? Potřebují úkoly koordinaci GPU nebo více uzlů (MPI)?
  • Výběr virtuálního počítače Která řada virtuálních počítačů a velikost nejlépe odpovídá úloze? Kolik jader a kolik paměti každý virtuální počítač poskytuje?
  • Dimenzování fondu. Kolik úloh běží souběžně na každém uzlu (až čtyřikrát počet jader uzlů, omezených na 256 slotů úloh na uzel)? S ohledem na počet souběžných úloh ve špičce, kolik uzlů potřebujete? Jak rozdělíte kapacitu mezi vyhrazené a spotové uzly?
  • Požadavek na kvótu Vynásobte maximální počet uzlů počtem jader na virtuální počítač a získáte celkový potřebný počet jader. Porovnejte tento součet s aktuální kvótou a určete zvýšení, které se má požadovat.
  • Odhad nákladů. K odhadu denních a měsíčních nákladů použijte hodinovou sazbu virtuálního počítače a očekávanou dobu běhu. Další informace najdete v tématu Plánování správy nákladů na Azure Batch.

Pokud chcete zkontrolovat aktuální kvóty a požádat o navýšení, přečtěte si téma Zobrazení kvót služby Batch a zvýšení kvóty. Odešlete žádosti o kvótu dobře předem a začněte mírným přírůstkovým nárůstem. Zvýšení velkých kvót může vyžadovat ruční kontrolu a může trvat několik dní až několik týdnů.

Správa kapacity proaktivně

Naplánujte kapacitu před tím, než se stane omezením:

  • Monitorování využití kvóty Sledujte využití jader vzhledem ke své kvótě a upozorněte, když se využití blíží limitu, například na 70–80 %. Další informace najdete v tématu Monitorování řešení služby Batch.
  • Použijte automatické škálování. Nakonfigurujte automatické škálování tak, aby se fondy zvětšovaly a zmenšovaly s poptávkou místo toho, aby držely pevně zřízený počet uzlů. Běžný postup udržuje základní úroveň vyhrazených uzlů pro zajištění garantovaného postupu a při potřebě vyšší propustnosti dočasně využívá Spot uzly.
  • Napříč regiony a účty. Rozložte úlohy do několika oblastí nebo účtů Batch, abyste získali přístup k vyšší celkové kapacitě. Kvóty služeb, jako jsou aktivní úlohy a fondy, se vztahují na každý samostatný účet Batch.

Zpracování omezení kapacity

I při plánování může dojít k selhání přidělení. Navrhněte pracovní postup tak, aby byl odolný:

  • Opakujte a diverzifikujte. Pokud fond nedosáhne cílové velikosti, zkuste to znovu za několik minut, vyzkoušejte jinou velikost virtuálního počítače nebo jiný region. Dostupnost prostředků se v průběhu času mění.
  • Změnit cílení úloh. Nespoléhejte se na jeden statický fond. Ujistěte se, že můžete změnit cílení úloh na jiný fond, případně s jinou velikostí virtuálního počítače, pokud fond nemůže růst. Další informace najdete v tématu Osvědčené postupy pro Azure Batch.
  • Navrhujte s ohledem na preempci Spot.Uzly Spot mohou být preemptovány, když Azure tuto kapacitu potřebuje zpět. Spotové uzly používejte jenom pro práci odolnou proti chybám a zkombinujte je s vyhrazenými uzly a automatickým škálováním, aby se fond automaticky obnovil.

Podrobné příznaky, příčiny a řešení chyb přidělení a kvót najdete v doprovodných materiálech k řešení potíží:

Ověřte kapacitu před výrobou

Proveďte ověření konceptu s reprezentativní úlohou, jejím očekávaným objemem dat a konfigurací produkčního fondu. Neschvalujte návrh k výrobě, dokud nebudete mít důkazy pro všechna kritéria:

Criterion Důkazy k zaznamenání
Dokončení úlohy Úloha se správně dokončí pomocí závislostí produkčních úloh, aplikačních balíčků a vstupních a výstupních datových cest.
Rozsah a kvóta Fond dosáhne požadovaného počtu uzlů v požadované oblasti, aniž by překročil kvótu účtu Batch, předplatného nebo řady virtuálních počítačů.
Performance Doba od začátku do konce úkolu splňuje cíl, včetně alokace poolu, přenosu dat, výpočtu a perzistence výsledků.
Recovery Po ztrátě uzlu, selhání úkolu nebo po použití Spot preemptionu zůstává úloha v rámci zaznamenaného maximálního času obnovy a povolené ztráty kontrolního bodu, splní termín dokončení a úspěšně využije plánovanou velikost nebo pool záložního VM.
Cost Měřené výpočetní, úložné, síťové a licenční náklady na dokončenou zakázku splňují cíl při očekávané frekvenci běhu.
Operations Upozornění identifikují tlak kvóty, selhání alokace a neúspěšné úkoly a vlastník může pracovní zátěž znovu zacílit nebo obnovit.

Pokud kritérium selže, upravte velikost poolu, výběr VM, cestu úložiště, chování při opakovaném pokusu nebo regionální záložní plán a opakujte stejnou úlohu. Malý funkční test nestanovuje výrobní kapacitu, protože neprovádí maximální rozsah, kvóty ani pohyb dat.

Doporučené postupy

Practice Description
Žádost o včasnou kvótu Odešlete žádosti o kvótu dobře předem; velký nárůst může trvat několik dní až několik týdnů.
Plánujte s rezervou Požádejte o trochu větší kvótu, než je vaše aktuální špička, aby bylo možné růst.
Použití více oblastí Rozprostřete úlohy napříč oblastmi, abyste mohli získat přístup k více agregované kapacitě.
Monitorování používání Upozornění, když využití jader dosáhne 70–80% kvóty
Správné velikosti virtuálních počítačů Přizpůsobte řadu a velikost virtuálních počítačů pracovní zátěži místo jejich předimenzování.
Používejte Spot uvážlivě Vyhraďte spotové uzly pro úlohy odolné proti chybám a spárujte je s vyhrazenými uzly.
Vyčistěte zdroje Odstraňte nepoužívané pooly, abyste uvolnili kvótu účtu.

Další kroky