Uzly a fondy v Azure Batch
V Azure Batch pracovním postupu je výpočetní uzel (nebo uzel) virtuální počítač, který zpracovává část úloh vaší aplikace. Fond je kolekce těchto uzlů, na které může vaše aplikace běží. Tento článek vysvětluje další informace o uzlech a fondech a také důležité informace o jejich vytváření a používání v Azure Batch pracovním postupu.
Uzly
Uzel je virtuální počítač Azure nebo virtuální počítač cloudové služby vyhrazený pro zpracování části úloh vaší aplikace. Velikost uzlu určuje počet jader procesoru, kapacita paměti a velikost místního systému souborů, který je přidělen k uzlu.
Fondy uzlů Windows nebo Linux můžete vytvořit pomocí služby Azure Cloud Services, imagí z webu Azure Virtual Machines Marketplace nebo vlastních imagí, které připravíte.
Uzly mohou spustit libovolný spustitelný soubor nebo skript, který je podporován prostředím operačního systému uzlu. Mezi spustitelné soubory nebo skripty patří skripty.exe, .cmd,.bat a PowerShell (pro Windows) a binární soubory, skripty prostředí a * * * pythonové skripty (pro Linux).
Součástí všech výpočetních uzlů ve službě Batch také jsou:
- Standardní struktura složek a přidružené proměnné prostředí, které jsou úkolu k dispozici.
- Nastavení brány firewall, která jsou nakonfigurována pro řízení přístupu.
- Vzdálený přístup k uzlům Windows (protokol RDP (Remote Desktop Protocol) (RDP)) i Linux (Secure Shell (SSH)) (pokud nevytváříte fond se zakázaným vzdáleným přístupem).
Ve výchozím nastavení spolu uzly mohou vzájemně komunikovat, ale nekomunikují s virtuálními počítači, které nejsou součástí stejného fondu. Pokud chcete uzlům povolit zabezpečenou komunikaci s jinými virtuálními počítači nebo s místní sítí, můžete fond zřídit v podsíti virtuální sítě Azure . Když to provedete, budou vaše uzly přístupné prostřednictvím veřejných IP adres. Tyto veřejné IP adresy vytváří batch a po celou dobu životnosti fondu se mohou měnit. Můžete také vytvořit fond se statickými veřejnými IP adresami, které řídíte, což zajistí, že se neočekávaně nezmění.
Fondy
Fond je kolekce uzlů, na které běží vaše aplikace.
Fondy Azure Batch jsou postavené na základní platformě Azure Compute. Poskytují rozsáhlé přidělování, instalaci aplikací, distribuci dat, monitorování stavua flexibilní úpravy (škálování) počtu výpočetních uzlů v rámci fondu.
Každému uzlu, který je přidán do fondu, je přiřazen jedinečný název a IP adresa. Pokud je uzel odebrán z fondu, veškeré změny provedené v operačním systému nebo souborech jsou ztraceny a jeho název a IP adresa jsou uvolněny pro pozdější použití. Jestliže uzel opustí fond, je jeho životnost ukončena.
Fond může být používán pouze účtem Batch, ve kterém byl vytvořen. Účet Batch může vytvořit více fondů, aby splňoval požadavky na prostředky aplikací, které bude spouštět.
Fond může vytvořit ručně nebo automaticky služba Batch, když zadáte práci, která se má provést. Při vytváření fondu můžete zadat následující atributy:
- Operační systém a verze uzlu
- Typ uzlu a cílový počet uzlů
- Velikost uzlu
- Zásady automatického škálování
- Zásady plánování úkolů
- Stav komunikace
- Spuštění úkolů
- Balíčky aplikací
- Konfigurace virtuální sítě a brány firewall
- Doba platnosti
Důležité
Účty Batch mají výchozí kvótu, která omezuje počet jader v účtu Batch. Počet jader odpovídá počtu výpočetních uzlů. Výchozí kvóty a pokyny pro navýšení kvóty najdete v článku Kvóty a omezení služby Azure Batch. Pokud váš fond nedosahuje cílového počtu uzlů, může být důvodem právě kvóta jader.
Operační systém a verze
Při vytváření fondu Batch zadáte konfiguraci virtuálního počítače Azure a typ operačního systému, který chcete spustit na každém výpočetním uzlu ve fondu.
Konfigurace
Ve batch jsou k dispozici dva typy konfigurací fondu.
Důležité
V současné době můžete fondy vytvářet pomocí obou konfigurací, ale nové fondy by se měly konfigurovat pomocí konfigurace virtuálního počítače, Cloud Services konfigurace. Všechny aktuální a nové funkce služby Batch budou podporované fondy konfigurace virtuálního počítače. Cloud Services konfigurace nepodporují všechny funkce a neplánují se žádné nové funkce. Po 29. únoru 2024nebudete moct vytvářet nové fondy CloudServiceConfiguration ani přidávat nové uzly do existujících fondů.
Konfigurace virtuálního počítače
Konfigurace virtuálního počítače určuje, že se fond skládá z virtuálních počítačů Azure. Tyto virtuální počítače mohou být vytvořené na základě image Linuxu nebo Windows.
Agent uzlu Batch je program, který běží na každém uzlu ve fondu a poskytuje rozhraní pro příkazy a řízení mezi uzlem a službou Batch. Existují různé implementace agenta uzlu, označované jako SKU, pro různé operační systémy. Při vytváření fondu založeného na konfiguraci virtuálního počítače je nutné zadat nejen velikost uzlů a zdroj imagí použitých pro jejich vytvoření, ale také referenční image virtuálního počítače a SKU agenta uzlu služby Batch, které se budou na uzly instalovat. Další informace o zadávání těchto vlastností fondů najdete v článku Zřízení linuxových výpočetních uzlů ve fondech Azure Batch Volitelně můžete k virtuálním počítačům ve fondu vytvořeným z imagí z webu Marketplace připojit jeden nebo více prázdných datových disků nebo datové disky zahrnout do vlastních imagí používaných k vytvoření virtuálních počítačů. Při zahrnutí datových disků je potřeba připojit a naformátovat disky z virtuálního počítače, abyste je měli používat.
Cloud Services konfigurace
Upozornění
Cloud Services konfigurace jsou zastaralé. Místo toho použijte fondy konfigurace virtuálního počítače. Další informace najdete v tématu Migrace konfigurace fondu Batch z Cloud Services na virtuální počítač.
Konfigurace Cloud Services určuje, že se fond skládá z Azure Cloud Services uzlů. Cloud Services poskytuje pouze Windows výpočetní uzly.
Dostupné operační systémy pro fondy Cloud Services Configuration jsou uvedené v matici kompatibility hostovaných operačních systémů Azure a sad SDKa dostupné velikosti výpočetních uzlů jsou uvedené v části Velikosti pro Cloud Services. Při vytváření fondu, který obsahuje Cloud Services uzly, zadáte velikost uzlu a jeho rodinu operačního systému (která určuje, které verze rozhraní .NET se instaluje s operačním systémem). Cloud Services se do Azure nasazovat rychleji než virtuální počítače s Windows. Pokud chcete fondy výpočetních uzlů Windows, můžete zjistit, že služba Cloud Services představuje výhodu z hlediska času nasazení.
Stejně jako u rolí pracovních procesů Cloud Services můžete zadat verzi operačního systému. Pro verzi operačního systému doporučujeme zadat , aby se uzly automaticky upgradovali a aby bylo možné pracovat s nově vydanými verzemi, není potřeba Latest (*) nic pracovat. Hlavním případem použití s výběrem konkrétní verze operačního systému scénář zajištění kompatibility aplikací, který umožní testovat zpětnou kompatibilitu, než se povolí aktualizace verze. Po ověření je možné aktualizovat verzi operačního systému pro fond a nainstalovat novou image operačního systému. Všechny spuštěné úlohy se přeruší a znovu zařadí do fronty.
SKU agenta uzlu
Když vytvoříte fond, je nutné vybrat odpovídající nodeAgentSkuId, v závislosti na operačním systému základní image vašeho disku VHD. Voláním operace List Supported Node Agent SKU (Seznam podporovaných skladových položek agenta uzlu) můžete získat mapování dostupných ID skladových položek agenta uzlu na jejich odkazy na image operačního systému.
Vlastní image pro fondy virtuálních počítačů
Informace o vytvoření fondu s vlastními imagemi najdete v tématu Použití Azure Compute Gallery k vytvoření vlastního fondu.
Alternativně můžete vytvořit vlastní fond virtuálních počítačů pomocí prostředku spravované image. Informace o přípravě vlastních imagí Linuxu z virtuálních počítačů Azure najdete v tématu popisujícím vytvoření image virtuálního počítače nebo virtuálního pevného disku. Informace o přípravě vlastních imagí Windows z virtuálních počítačů Azure najdete v tématu popisujícím vytvoření spravované image zobecněného virtuálního počítače v Azure.
Podpora kontejnerů ve fondech virtuálních počítačů
Při vytváření fondu konfigurace virtuálních počítačů pomocí rozhraní API služby Batch můžete ve fondu nastavit spouštění úloh v kontejnerech Dockeru. V současné době musíte fond vytvořit pomocí image, která podporuje kontejnery Dockeru. Použijte Windows Server 2016 Datacenter s použitím image kontejnerů z webu Azure Marketplace nebo zadejte vlastní image virtuálního počítače, která zahrnuje Docker Community Edition nebo Enterprise Edition a všechny požadované ovladače. Nastavení fondu musí obsahovat konfiguraci kontejneru, která při vytvoření fondu zkopíruje image kontejneru do virtuálních počítačů. Úlohy spouštěné ve fondu pak můžou odkazovat na image kontejneru a možnosti spuštění kontejneru.
Další informace najdete v tématu věnovaném spuštění kontejnerových aplikací Dockeru ve službě Azure Batch.
Typ a cíl uzlu
Při vytváření fondu můžete určit, jaké typy uzlů chcete, a cílové číslo pro každý z nich. Jsou to dva typy uzlů:
- Vyhrazené uzly. Vyhrazené výpočetní uzly jsou rezervované pro vaše úlohy. Jsou dražší než uzly s nízkou prioritou, ale nabízejí záruku toho, že nikdy nedojde k jejich zrušení.
- Uzly s nízkou prioritou. Uzly s nízkou prioritou mají tu výhodu, že ke spouštění úloh služby Batch využívají nadbytečnou kapacitu v Azure. Uzly s nízkou prioritou jsou levnější za hodinu než vyhrazené uzly a umožňují úlohám, které vyžadují významný výpočetní výkon. Další informace najdete v tématu Použití virtuálních počítačů s nízkou prioritou ve službě Batch.
Uzly s nízkou prioritou mohou být vyprázdněny, pokud má Azure nedostatečnou nadbytečnou kapacitu. Pokud dojde ke zrušení uzlu během spouštění úloh, tyto úlohy se znovu zařadí do fronty, a jakmile bude uzel zase dostupný, znovu se spustí. Uzly s nízkou prioritou jsou dobrou volbou pro úlohy s flexibilním časem dokončení a pro úkony distribuované mezi velký počet uzlů. Než se rozhodnete použít pro svůj scénář uzly s nízkou prioritou, ujistěte se, že ztráta práce z důvodu přerušení bude minimální a bude ji snadné vytvořit znovu.
Ve stejném fondu můžete mít výpočetní uzly s nízkou prioritou i vyhrazené uzly. Každý typ uzlu má vlastní cílové nastavení, pro které můžete zadat požadovaný počet uzlů.
Počet výpočetních uzlů se označuje jako cílový z toho důvodu, že v některých situacích nemusí váš fond dosáhnout požadovaného počtu uzlů. Fond třeba nemusí dosáhnout cílového nastavení v případě, že dřív dosáhne základní kvóty daného účtu služby Batch. Nebo fond nemusí dosáhnout cíle, pokud jste ve fondu použili vzorec automatického škálování, který omezuje maximální počet uzlů.
Informace o cenách pro uzly s nízkou prioritou i vyhrazené uzly najdete v tématu Ceny služby Batch.
Velikost uzlu
Při vytváření fondu Azure Batch máte na výběr téměř ze všech řad a velikostí virtuálních počítačů, které jsou v Azure k dispozici. Azure nabízí řadu velikostí virtuálních počítačů pro různé úlohy, včetně specializovaných velikostí s podporou prostředí HPC nebo grafického procesoru. Všimněte si, že velikosti uzlů je možné zvolit pouze při vytváření fondu. Jinými slovy, po vytvoření fondu není možné změnit jeho velikost uzlu.
Další informace najdete v tématu Výběr velikosti virtuálních počítačů pro výpočetní uzly ve fondu Azure Batch.
Zásady automatického škálování
U dynamických úloh můžete pro fond použít zásady automatického škálování. Služba Batch bude vzorec pravidelně vyhodnocovat a dynamicky upravuje počet uzlů ve fondu podle aktuální úlohy a využití prostředků ve výpočetním scénáři. To umožňuje snížit celkové náklady na běh aplikace, protože se využívají pouze prostředky, které jsou nutné, a aktuálně nepotřebné se uvolňují.
Automatické škálování můžete zapnout napsáním vzorce automatického škálování a jeho přidružením k fondu. Služba Batch používá tento vzorec k určování cílového počtu uzlů ve fondu pro další interval škálování (ten můžete nakonfigurovat). Nastavení automatického škálování můžete pro fond zadat při jeho vytvoření, nebo můžete škálování povolit ve fondu později. Také můžete aktualizovat nastavení škálování ve fondu, v němž je škálování povoleno.
Například úloha může ovat odeslání velkého počtu úkolů ke spuštění. Fondu můžete přiřadit vzorec škálování na základě aktuálního počtu úkolů čekajících ve frontě a rychlosti dokončování těchto úkolů v úloze, který přizpůsobí počet uzlů ve fondu. Služba Batch vzorec pravidelně vyhodnocuje a mění velikost fondu na základě vytížení a dalších nastavení vzorce. Služba podle potřeby přidává uzly, když ve frontě čeká velký počet úkolů, a naopak uzly odebírá, když ve frontě nejsou žádné úkoly nebo žádné úkoly právě neběží.
Vzorec škálování může být založen na následujících metrikách:
- Časové metriky jsou založeny na statistikách shromažďovaných každých pět minut po zadaný počet hodin.
- Metriky prostředků jsou založeny na využití procesoru, šířky pásma a paměti a na počtu uzlů.
- Metriky úkolů jsou založeny na stavu úkolů, jako je například Aktivní (zařazený do fronty), Spuštěný nebo Dokončený.
Když automatické škálování snižuje počet výpočetních uzlů ve fondu, je nutné zvážit, jak naložit s úkoly, které v okamžiku snižování již běží. Aby to bylo možné jmout, poskytuje Batch možnost uvolnění uzlu, kterou můžete zahrnout do vzorců. Můžete například zadat, že spuštěné úkoly se mají okamžitě zastavit a pak znovu zařadit do fronty pro provedení na jiném uzlu, nebo nechat dokončit před odebráním uzlu z fondu. Mějte na paměti, že nastavením možnosti navracení uzlu jako nebo zabráníte operacím změny velikosti fondu, dokud se nedokončí všechny úkoly nebo dokud neskončí všechna období uchovávání taskcompletion retaineddata úkolů.
Další informace o automatickém škálování aplikace naleznete v tématu Automatické škálování výpočetních uzlů ve fondu Azure Batch.
Tip
Chcete-li maximalizovat využití výpočetních prostředků, nastavte cílový počet uzlů na konci úlohy na hodnotu nula, ale povolte dokončení spouštěných úkolů.
Zásady plánování úkolů
Možnost konfigurace maximálního počtu úkolů na uzel určuje maximální počet úkolů, které lze spustit souběžně na jednotlivých výpočetních uzlech v rámci fondu.
Výchozí konfigurace určuje, že na uzlu běží současně jen jeden úkol, ale existují scénáře, kdy je výhodné mít na uzlu spuštěno ve stejnou dobu dva a více úkolů. Jaké výhody vám může přinést více úkolů na jednom uzlu je popsáno v části příklad scénáře v článku souběžné úkoly na uzlu.
Můžete také zadat typ výplně , který určuje, jestli služba Batch rozprostíří úkoly rovnoměrně mezi všechny uzly ve fondu, nebo zabalí každý uzel s maximálním počtem úkolů před přiřazením úkolů jinému uzlu.
Stav komunikace
Ve většině scénářů pracují úkoly nezávisle a nepotřebují mezi sebou komunikovat. Existují však aplikace, ve kterých úkoly musí komunikovat, například scénáře MPI.
Fond můžete nakonfigurovat tak, aby povoll komunikaci mezi uzly, aby uzly ve fondu mohly komunikovat za běhu. Pokud je komunikace mezi uzly povolena, uzly ve fondech z konfigurace služby Cloud Services mohou vzájemně komunikovat na portech vyšších než 1100. Fondy z konfigurace virtuálního počítače neomezují provoz na žádném portu.
Povolení komunikace mezi uzly má také vliv na umístění uzlů v rámci clusterů a může kvůli omezením nasazení omezit maximální počet uzlů ve fondu. Pokud aplikace nevyžaduje komunikaci mezi uzly, služba Batch můžete fondu přidělit potenciálně velký počet uzlů z mnoha různých clusterů a datových center, aby umožnila zvýšený výkon paralelního zpracování.
Spuštění úkolů
V případě potřeby můžete přidat úkol spuštění, který se spustí na každém uzlu, když se tento uzel připojí k fondu, a pokaždé, když se uzel restartuje nebo znovu z image. Spouštěcí úkol je obzvlášť užitečný pro přípravu výpočetních uzlů k provádění úkolů, jako je instalace aplikací, které budou vaše úkoly na výpočetních uzlech spouštět.
Balíčky aplikací
Můžete určit balíčky aplikací pro nasazení do výpočetních uzlů ve fondu. Balíčky aplikací poskytují možnost zjednodušeného nasazení a správy verzí aplikace, která provádí vaše úlohy. Balíčky aplikací, které pro fond určíte, se nainstalují na každý uzel, který se do daného fondu připojí, a také pokaždé, když se uzel restartuje nebo obnoví z image.
Další informace o používání balíčků aplikací k nasazení aplikací do uzlů služby Batch najdete v tématu Nasazení aplikací do výpočetních uzlů pomocí balíčků aplikací služby Batch.
Konfigurace virtuální sítě a brány firewall
Při zřizování fondu výpočetních uzlů ve službě Batch můžete k fondu přidružit podsíť virtuální sítě Azure. Pokud chcete použít virtuální síť Azure klientské rozhraní API služby Batch musí používat ověřování pomocí Azure Active Directory (AD). Podpora služby Azure AD ve službě Azure Batch je zdokumentovaná v tématu Ověřování řešení služby Batch pomocí Active Directory.
Požadavky na virtuální síť
Obecné požadavky
Virtuální síť musí být ve stejném předplatném a stejné oblasti jako účet Batch, který použijete k vytvoření fondu.
Podsíť zadaná pro fond musí obsahovat dostatek nepřiřazených IP adres pro všechny virtuální počítače, na které fond cílí, jejichž počet je součtem vlastností
targetDedicatedNodesatargetLowPriorityNodesfondu. Pokud podsíť nemá dostatek nepřiřazených IP adres, fond částečně přidělí výpočetní uzly a dojde k chybě změny velikosti.Všechny vlastní servery DNS obsluhující virtuální síť musí být schopné přeložit váš koncový bod služby Azure Storage. Konkrétně musí být možné přeložit adresy URL ve formátu
<account>.table.core.windows.net,<account>.queue.core.windows.neta<account>.blob.core.windows.net.Ve stejné virtuální síti nebo ve stejné podsíti se dá vytvořit víc fondů (Pokud má dostatečný adresní prostor). Jeden fond nemůže existovat v rámci více virtuální sítě nebo podsítí.
Další požadavky na virtuální síť se liší podle toho, jestli je fond Batch v konfiguraci virtuálního počítače nebo konfiguraci služby Cloud Services. Pro nová nasazení fondů do virtuální sítě se doporučuje konfigurace virtuálního počítače.
Fondy v konfiguraci virtuálního počítače
Podporované virtuální sítě – Pouze virtuální sítě založené na Azure Resource Manageru
ID podsítě – Při zadávání podsítě pomocí rozhraní API služby Batch použijte identifikátor prostředku podsítě. Identifikátor podsítě má tento formát:
/subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/virtualNetworks/{network}/subnets/{subnet}
Oprávnění – Zkontrolujte, jestli vaše zásady zabezpečení nebo zámky na předplatném nebo skupině prostředků virtuální sítě neomezují oprávnění uživatele spravovat tuto virtuální síť.
Další síťové prostředky – Batch automaticky vytvoří další síťové prostředky ve skupině prostředků, která obsahuje virtuální síť.
Důležité
Pro každý 100 vyhrazený uzel nebo uzly s nízkou prioritou vytvoří služba Batch: jednu skupinu zabezpečení sítě (NSG), jednu veřejnou IP adresu a jeden nástroj pro vyrovnávání zatížení. Pro tyto prostředky platí omezení kvót prostředků předplatného. V případě velkých fondů možná bude potřeba požádat o navýšení kvóty pro jeden nebo několik z těchto prostředků.
Skupiny zabezpečení sítě: Výchozí hodnota služby Batch
Podsíť musí umožňovat příchozí komunikaci ze služby Batch, aby mohla plánovat úlohy na výpočetních uzlech, a odchozí komunikaci kvůli komunikaci se službou Azure Storage nebo jinými prostředky podle potřeb vaší úlohy. Pro fondy v konfiguraci virtuálního počítače přidává Batch skupiny zabezpečení sítě na úrovni síťových rozhraní připojených k výpočetním uzlům. U těchto skupin zabezpečení sítě jsou nakonfigurovaná následující další pravidla:
- Příchozí provoz přes protokol TCP na portech 29876 a 29877 z IP adres služby Batch, které odpovídají značce služby
BatchNodeManagement. - Příchozí provoz přes protokol TCP na portu 22 (uzly s Linuxem) nebo portu 3389 (uzly s Windows) umožňující vzdálený přístup. U některých typů úkolů s více instancemi v Linuxu (jako je MPI) bude potřeba povolit také provoz přes protokol SSH na portu 22 pro IP adresy v podsíti, která obsahuje výpočetní uzly služby Batch. Toto je možné zablokovat pravidly NSG na úrovni podsítě (viz níže).
- Odchozí provoz do virtuální sítě na jakémkoli portu. Toto je možné upravit pravidly NSG na úrovni podsítě (viz níže).
- Odchozí provoz do internetu na jakémkoli portu. Toto je možné upravit pravidly NSG na úrovni podsítě (viz níže).
Důležité
Buďte opatrní při úpravách nebo přidávání příchozích nebo odchozích pravidel v skupin zabezpečení sítěě nakonfigurovaném pro dávkovou práci. Pokud je komunikace s výpočetními uzly v zadané podsíti zamítnutá NSG, služba Batch nastaví stav výpočetních uzlů na nepoužitelné. Kromě toho by se neměly žádné zámky prostředků použít pro všechny prostředky vytvořené službou Batch, protože to může zabránit vyčištění prostředků v důsledku akcí iniciované uživatelem, jako je například odstranění fondu.
Skupiny zabezpečení sítě: Zadání pravidel na úrovni podsítě
Pokud máte NSG přidruženou k podsíti, ve které jsou nasazené dávkové výpočetní uzly, nebo pokud chcete použít vlastní pravidla NSG pro přepsání použitých výchozích nastavení, musíte tento NSG nakonfigurovat alespoň na pravidla zabezpečení příchozích a odchozích připojení uvedená v následujících tabulkách.
Příchozí provoz na portu 3389 (Windows) nebo 22 (Linux) nakonfigurujte pouze v případě, že potřebujete povolit vzdálený přístup k výpočetním uzlům z externích zdrojů. Pokud potřebujete zajistit podporu úkolů s více instancemi a některými moduly runtime MPI, možná bude potřeba v Linuxu povolit pravidla pro port 22. Výpočetní uzly ve fondu budou použitelné i bez povolení provozu na těchto portech.
Upozornění
IP adresy služby Batch se můžou v průběhu času měnit. Proto důrazně doporučujeme, abyste BatchNodeManagement pro pravidla NSG, která jsou uvedena v následujících tabulkách, používali značku služby (nebo místní varianta). Vyhněte se naplnění pravidel NSG s konkrétními IP adresami služby Batch.
Příchozí pravidla zabezpečení
| Zdrojové IP adresy | Značka zdrojové služby | Zdrojové porty | Cíl | Cílové porty | Protocol (Protokol) | Akce |
|---|---|---|---|---|---|---|
| – | BatchNodeManagementznačka služby (při použití regionální varianty ve stejné oblasti jako účet Batch) |
* | Všechny | 29876–29877 | TCP | Povolit |
| Zdrojové IP adresy uživatelů pro vzdálený přístup k výpočetním uzlům nebo podsíti výpočetních uzlů pro úlohy Linuxu s více instancemi, pokud je to potřeba | – | * | Všechny | 3389 (Windows), 22 (Linux) | TCP | Povolit |
Odchozí pravidla zabezpečení
| Zdroj | Zdrojové porty | Cíl | Značka cílové služby | Cílové porty | Protocol (Protokol) | Akce |
|---|---|---|---|---|---|---|
| Všechny | * | Značka služby | Storage (pokud používáte místní variantu ve stejné oblasti jako váš účet Batch) |
443 | TCP | Povolit |
| Všechny | * | Značka služby | BatchNodeManagement (pokud používáte místní variantu ve stejné oblasti jako váš účet Batch) |
443 | TCP | Povolit |
BatchNodeManagementPro kontaktování služby Batch z výpočetních uzlů, jako jsou úlohy Správce úloh, se vyžaduje odchozí připojení.
Fondy v konfigurace služby Cloud Services
Upozornění
Fondy konfigurací Cloud Services jsou zastaralé. Místo toho prosím použijte fondy konfigurací virtuálních počítačů.
Podporované virtuální sítě – Pouze virtuální sítě Classic
ID podsítě – Při zadávání podsítě pomocí rozhraní API služby Batch použijte identifikátor prostředku podsítě. Identifikátor podsítě má tento formát:
/subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.ClassicNetwork /virtualNetworks/{network}/subnets/{subnet}
Oprávnění – Microsoft Azure Batch instanční objekt musí mít Classic Virtual Machine Contributor pro zadanou virtuální síť roli Azure.
Skupiny zabezpečení sítě
Podsíť musí umožňovat příchozí komunikaci ze služby Batch, aby mohla plánovat úlohy na výpočetních uzlech, a odchozí komunikaci kvůli komunikaci se službou Azure Storage nebo jinými prostředky.
Není potřeba zadávat skupinu zabezpečení sítě, protože Batch konfiguruje příchozí komunikaci do uzlů fondu pouze z IP adres služby Batch. Pokud má však zadaná podsíť přiřazené skupiny zabezpečení sítě nebo bránu firewall, nakonfigurujte příchozí a odchozí pravidla zabezpečení podle následujících tabulek. Pokud je komunikace s výpočetními uzly v zadané podsíti zamítnutá NSG, služba Batch nastaví stav výpočetních uzlů na nepoužitelné.
Pokud potřebujete povolit přístup k uzlům fondu přes protokol RDP, nakonfigurujte pro Windows příchozí provoz na portu 3389. Tento postup není nutný, pokud se uzly fondu dají použít.
Příchozí pravidla zabezpečení
| Zdrojové IP adresy | Zdrojové porty | Cíl | Cílové porty | Protocol (Protokol) | Akce |
|---|---|---|---|---|---|
| Všechny Přestože to efektivně vyžaduje „povolit vše“, služba Batch použije pravidlo seznamu ACL na úrovni každého uzlu, které filtruje všechny IP adresy, které nejsou služby Batch. |
* | Všechny | 10100, 20100, 30100 | TCP | Povolit |
| Volitelné povolení přístupu k výpočetním uzlům přes protokol RDP | * | Všechny | 3389 | TCP | Povolit |
Odchozí pravidla zabezpečení
| Zdroj | Zdrojové porty | Cíl | Cílové porty | Protocol (Protokol) | Akce |
|---|---|---|---|---|---|
| Všechny | * | Všechny | 443 | Všechny | Povolit |
Další informace o nastavení fondu Batch ve virtuální síti najdete v tématu Vytvoření fondu virtuálních počítačů s vlastní virtuální sítí.
Tip
Pokud chcete zajistit, aby se veřejné IP adresy používané pro přístup k uzlům nezmění, můžete vytvořit fond se zadanými veřejnými IP adresami, které řídíte.
Životnost fondu a výpočetního uzlu
Při návrhu řešení Azure Batch musíte určit, jak a kdy se fondy vytvoří a jak dlouho budou výpočetní uzly v těchto fondech udržovány dostupné.
Na jednom konci spektra můžete vytvořit fond pro každou úlohu, kterou odešlete, a odstranit jej, jakmile se dokončí provádění příslušných úkolů. Tím se maximalizuje využití, protože uzly se přidělují jenom v případě potřeby a po nečinnosti se vypíná. I když to znamená, že úloha musí čekat na přidělení uzlů, je důležité si uvědomit, že úkoly jsou naplánovány ke spuštění, jakmile jsou uzly jednotlivě přiděleny a úkol spuštění je dokončen. Služba Batch před přiřazením úkolů k uzlům nečeká, až budou všechny uzly v rámci fondu dostupné. Tím je zajištěno maximální využití všech dostupných uzlů.
Na druhém konci spektra, pokud je nejvyšší prioritou okamžité spuštění úloh, můžete fond vytvořit s předstihem, aby jeho uzly byly k dispozici před odesláním úloh. V tomto scénáři se mohou úkoly spustit okamžitě, ale uzly mohou „nečinně sedět“ a čekat na jejich přiřazení.
Kombinovaný přístup se obvykle používá pro zpracování proměnlivé, ale průběžné zátěže. Můžete mít fond, ve kterém se odeslalo více úloh, a podle zatížení úlohy můžete škálovat počet uzlů nahoru nebo dolů. Toto přizpůsobování kapacity můžete provádět reaktivně, na základě aktuálního zatížení, nebo proaktivně, pokud lze zatížení předpovídat. Další informace najdete v tématu Zásady automatického škálování.
Automatické zařazování
Automatické zařazování je fond, který je vytvořen službou Batch při odeslané úloze, nikoli před úlohami, které se spustí ve fondu. Služba Batch bude spravovat životnost automatického zařazování podle vlastností, které zadáte. Nejčastěji se tyto fondy také nastaví tak, aby se po dokončení úloh automaticky odstranily.
Zabezpečení pomocí certifikátů
Při šifrování nebo dešifrování citlivých informací pro úkoly, jako je klíč pro účet Azure Storage, je obvykle třeba použít certifikáty. Z toho důvodu můžete na uzly nainstalovat certifikáty. Šifrované tajné klíče jsou předány na úkoly prostřednictvím parametrů příkazového řádku nebo vložené v jednom prostředků úkolu a nainstalované certifikáty lze použít pro jejich dešifrování.
K přidání certifikátu do účtu služby Batch můžete použít operaci Přidat certifikát (Batch REST) nebo metodu CertificateOperations.CreateCertificate (Batch .NET). Poté můžete certifikát přidružit k novému nebo existujícímu fondu.
Pokud je certifikát přidružený k fondu, služba Batch nainstaluje certifikát na každý uzel ve fondu. Služba Batch nainstaluje příslušné certifikáty při spuštění uzlu před spuštěním jakýchkoli úkolů (včetně spouštěcího úkolu a úkolu správce úloh).
Pokud přidáte certifikát do existujícího fondu, musíte restartovat jeho výpočetní uzly, aby se certifikát na uzly použil.
Další kroky
- Seznamte se s úlohami a úkoly.
- Naučte se detekovat selhání operací na pozadí fondu a uzlu a vyhnout se jim.