Knooppunten en pools in Azure Batch

In een Azure Batch is een reken knooppunt (of knooppunt) een virtuele machine die een deel van de workload van uw toepassing verwerkt. Een pool is een verzameling van deze knooppunten waar uw toepassing op kan worden uitgevoerd. In dit artikel wordt meer uitgelegd over knooppunten en pools, samen met overwegingen bij het maken en gebruiken ervan in een Azure Batch werkstroom.

Knooppunten

Een knooppunt is een virtuele Azure-machine (VM) of cloudservice-VM die is toegewezen aan het verwerken van een deel van de workload van uw toepassing. De grootte van een knooppunt bepaalt het aantal CPU-kernen, de geheugencapaciteit en de grootte van het lokale bestandssysteem die aan het knooppunt worden toegewezen.

U kunt pools van Windows- of Linux-knooppunten maken met behulp van Azure Cloud Services, Azure Virtual Machines Marketplace-installatiekopieën of aangepaste installatiekopieën die u voorbereidt.

Knooppunten kunnen elk uitvoerbaar bestand of script uitvoeren dat wordt ondersteund door de besturingssysteemomgeving van het knooppunt. Uitvoerbare bestanden of scripts omvatten *.exe-, * .cmd-,.bat- en * PowerShell-scripts (voor Windows) en binaire bestanden, shell- en Python-scripts (voor Linux).

Alle rekenknooppunten in Batch omvatten ook:

  • Een standaardmapstructuur en daaraan gekoppelde omgevingsvariabelen die beschikbaar zijn voor verwijzing door taken.
  • Firewall instellingen die zijn geconfigureerd om de toegang te beheren.
  • Externe toegang tot zowel Windows-knooppunten (Remote Desktop Protocol (RDP)) als Linux-knooppunten (Secure Shell (SSH)) (tenzij u uw pool maakt met externe toegang uitgeschakeld).

Standaard kunnen knooppunten met elkaar communiceren, maar ze kunnen niet communiceren met virtuele machines die geen deel uitmaken van dezelfde pool. Als u wilt dat knooppunten veilig kunnen communiceren met andere virtuele machines of met een on-premises netwerk, kunt u de pool inrichten in een subnet van een virtueel Azure-netwerk (VNet). Wanneer u dit doet, zijn uw knooppunten toegankelijk via openbare IP-adressen. Deze openbare IP-adressen worden gemaakt door Batch en kunnen gedurende de levensduur van de pool worden gewijzigd. U kunt ook een pool maken met statische openbare IP-adressen die u controleert, zodat deze niet onverwacht veranderen.

Pools

Een pool is de verzameling knooppunten waar uw toepassing op wordt uitgevoerd.

Azure Batch-groepen worden gebouwd boven op het kernrekenplatform van Azure. Ze bieden grootschalige toewijzing, installatie van toepassingen, gegevensdistributie,statuscontrole en flexibele aanpassing (schalen) van het aantal rekenknooppunten in een pool.

Aan elk knooppunt dat aan een pool wordt toegevoegd, wordt een unieke naam en een uniek IP-adres toegewezen. Wanneer een knooppunt uit een pool wordt verwijderd, gaan alle wijzigingen in het besturingssysteem of de bestanden verloren. De naam en het IP-adres van het verwijderde knooppunt worden vrijgegeven voor toekomstig gebruik. Wanneer een knooppunt een pool verlaat, is de levensduur ervan beëindigd.

Een pool kan alleen worden gebruikt door de Batch-account waarin deze is gemaakt. Een Batch-account kan meerdere pools maken om te voldoen aan de resourcevereisten van de toepassingen die worden uitgevoerd.

De pool kan handmatig worden gemaakt of automatisch door de Batch-service wanneer u het werk opgeeft dat moet worden uitgevoerd. Wanneer u een pool maakt, kunt u de volgende kenmerken opgeven:

Belangrijk

Batch-accounts hebben een standaardquotum dat het aantal kernen in een Batch-account beperkt. Het aantal kernen komt overeen met het aantal rekenknooppunten. U vindt de standaardquota en instructies voor het verhogen van een quotum in Quotas and limits for the Azure Batch service (Quota en limieten voor de Azure Batch-service). Als een pool niet het beoogde aantal knooppunten bereikt, ligt dit mogelijk aan het kernquotum.

Besturingssysteem en versie

Wanneer u een Batch-pool maakt, geeft u de configuratie van de virtuele Azure-machine en het type besturingssysteem op dat u wilt uitvoeren op elk reken knooppunt in de pool.

Configuraties

Er zijn twee typen poolconfiguraties beschikbaar in Batch.

Belangrijk

Hoewel u momenteel pools kunt maken met behulp van een van beide configuraties, moeten nieuwe pools worden geconfigureerd met behulp van Configuratie van virtuele machines en niet Cloud Services configuratie. Alle huidige en nieuwe Batch-functies worden ondersteund door virtuele-machineconfiguratiegroepen. Cloud Services configuratiegroepen ondersteunen niet alle functies en er zijn geen nieuwe mogelijkheden gepland. U kunt na 29 februari 2024geen nieuwe CloudServiceConfiguration-pools meer maken of nieuwe knooppunten toevoegen aan bestaande pools.

Configuratie van virtuele machines

De configuratie van de virtuele machine geeft aan dat de pool bestaat uit virtuele Azure-machines. Deze virtuele machines kunnen worden gemaakt met Linux- of Windows-installatiekopieën.

De Batch-knooppuntagent is een programma dat wordt uitgevoerd op elk knooppunt in de pool en dat de opdracht- en besturingsinterface biedt tussen het knooppunt en de Batch-service. Er zijn verschillende implementaties van de knooppuntagent, ook wel SKU's genoemd, voor verschillende besturingssystemen. Wanneer u een pool maakt op basis van de virtuele-machineconfiguratie, moet u niet alleen de grootte van de knooppunten opgeven en de bron van de installatiekopieën waarmee u ze hebt gemaakt, maar ook de verwijzing naar de installatiekopie van de virtuele machine en de Batch-knooppuntagent-SKU die op de knooppunten moet worden geïnstalleerd. Zie Linux-rekenknooppunten in Azure Batch-pools inrichten voor meer informatie over het opgeven van deze pooleigenschappen. U kunt desgewenst een of meer lege gegevensschijven koppelen aan pool-VM's die zijn gemaakt op basis van Marketplace-installatiekopieën of gegevensschijven opnemen in aangepaste installatiekopieën die worden gebruikt voor het maken van de virtuele machines. Wanneer u gegevensschijven opeensteunt, moet u de schijven vanuit een VM monteren en formatteren om ze te kunnen gebruiken.

Cloud Services configureren

Waarschuwing

Cloud Services configuratiegroepen zijn afgeschaft. Gebruik in plaats daarvan configuratiegroepen voor virtuele machines. Zie Batch-poolconfiguratie migreren van Cloud Services naar virtuele machine voor meer informatie.

De Cloud Services configuratie geeft aan dat de pool bestaat uit Azure Cloud Services knooppunten. Cloud Services biedt alleen rekenknooppunten Windows rekenknooppunten.

Beschikbare besturingssystemen voor Cloud Services-configuratiegroepen worden vermeld in de Azure-gastbesturingssysteemversies en SDK-compatibiliteitsmatrixen beschikbare reken-knooppuntgrootten worden vermeld in Grootten voor Cloud Services. Wanneer u een pool maakt die Cloud Services knooppunten bevat, geeft u de knooppuntgrootte en de os-familie op (die bepaalt welke versies van .NET worden geïnstalleerd met het besturingssysteem). Cloud Services wordt sneller geïmplementeerd in Azure dan virtuele machines met Windows. Als u pools met Windows-rekenknooppunten wilt, zult u merken dat Cloud Services prestatievoordelen biedt wat de implementatietijd betreft.

Net als bij werkrollen binnen Cloud Services, kunt u een versie van het besturingssysteem opgeven. U wordt aangeraden op te geven voor de versie van het besturingssysteem, zodat de knooppunten automatisch worden bijgewerkt en er geen werk nodig is om geschikt te zijn voor Latest (*) nieuw uitgebrachte versies. Er wordt voornamelijk voor een specifieke versie van een besturingssysteem gekozen om ervoor te zorgen dat toepassingen compatibel blijven, en om compatibiliteitstests met eerdere versies te kunnen uitvoeren alvorens toe te staan dat de versie mag worden bijgewerkt. Na de validatie kan de versie van het besturingssysteem voor de groep worden bijgewerkt en kan de nieuwe installatieversie van het besturingssysteem worden geïnstalleerd. Alle taken die worden uitgevoerd, worden onderbroken en opnieuw in dequequeued.

Knooppuntagent-SKU's

Wanneer u een pool maakt, moet u afhankelijk van het besturingssysteem van de basisinstallatiekopie van uw VHD de juiste nodeAgentSkuId selecteren. U kunt een toewijzing van beschikbare knooppuntagent-SKU-ID's aan de verwijzingen naar de besturingssysteemafbeelding verkrijgen door de bewerking Lijst ondersteunde knooppuntagent-SKU's aan te roepen.

Aangepaste installatiekopieën voor VM-pools

Zie Use the Azure Compute Gallery to create a custom pool (De galerie van Azure Compute gebruiken om een aangepaste pool te maken) voor meer informatie over het maken van een pool met aangepaste afbeeldingen.

U kunt ook een aangepaste pool met virtuele machines maken met behulp van een beheerde afbeeldingsresource. Zie How to create an image of a virtual machine or VHD (Een installatiekopie van een virtuele machine of VHD maken) voor meer informatie over het maken van aangepaste Linux-installatiekopieën van virtuele Azure-machines. Zie Create a managed image of a generalized VM in Azure (Een beheerde VM-installatiekopie maken van een gegeneraliseerde VM in Azure) voor meer informatie over het maken van aangepaste Windows-installatiekopieën op basis van Azure VM's.

Ondersteuning voor containers in virtuele machine-pools

Bij het maken van een virtuele machine-pool met de Batch-API's, kunt u de pool instellen voor het uitvoeren van taken in Docker-containers. Momenteel moet u de pool maken met behulp van een installatiekopie die ondersteuning biedt voor Docker-containers. Gebruik Windows Server 2016 Datacenter met de Containers-installatiekopie van Azure Marketplace of geef een aangepaste VM-installatiekopie op die Docker Community Edition of Enterprise Edition en alle vereiste stuurprogramma's bevat. De poolinstellingen moeten een containerconfiguratie bevatten die containerinstallatiekopieën naar de virtuele machines kopieert wanneer de pool wordt gemaakt. Taken die worden uitgevoerd op de pool kunnen vervolgens verwijzen naar de containerinstallatiekopieën en uitvoeringsopties voor containers.

Zie voor meer informatie Docker-containertoepassingen uitvoeren op Azure Batch.

Knooppunttype en -doel

Wanneer u een pool maakt, kunt u opgeven welke typen knooppunten u wilt en het doelnummer voor elk knooppunt. De twee typen knooppunten zijn:

  • Toegewezen knooppunten. Toegewezen rekenknooppunten zijn gereserveerd voor uw workloads. Ze zijn duurder dan de knooppunten met lage prioriteit, maar ze worden gegarandeerd nooit verschoven.
  • Knooppunten met lage prioriteit. Knooppunten met lage prioriteit profiteren van de overtollige capaciteit in Azure om uw Batch-workloads uit te voeren. Knooppunten met lage prioriteit zijn minder duur per uur dan toegewezen knooppunten en maken workloads mogelijk waarvoor aanzienlijke rekenkracht is vereist. Zie voor meer informatie VM's met lage prioriteit gebruiken met Batch.

Knooppunten met lage prioriteit kunnen worden verdurkt wanneer Azure onvoldoende overtollige capaciteit heeft. Als een knooppunt wordt verschoven tijdens het uitvoeren van taken, worden de taken opnieuw ingepland en uitgevoerd zodra er weer een rekenknooppunt beschikbaar is. Knooppunten met lage prioriteit zijn een goede optie voor workloads waarbij de voltooiingstijd van de taak flexibel is en het werk over veel knooppunten wordt verdeeld. Voordat u besluit om knooppunten met lage prioriteit voor uw scenario te gebruiken, moet u ervoor zorgen dat het werk dat verloren gaat als gevolg van toe-eigening minimaal is en eenvoudig opnieuw kan worden uitgevoerd.

U kunt zowel rekenknooppunten met lage prioriteit als toegewezen rekenknooppunten hebben in dezelfde groep. Elk type knooppunt heeft een eigen doelinstelling, waarvoor u het gewenste aantal knooppunten kunt opgeven.

Het aantal rekenknooppunten wordt aangeduid als beoogd omdat de pool in sommige gevallen mogelijk niet het gewenste aantal knooppunten bereikt. Een pool kan het doel bijvoorbeeld mogelijk niet bereiken als het eerst het quotum voor kernen voor uw Batch-account bereikt. Het is ook mogelijk dat de pool het doel niet bereikt als u een formule voor automatisch schalen hebt toegepast op de pool die het maximum aantal knooppunten beperkt.

Zie Batch-prijzen voor prijsinformatie voor zowel knooppunten met lage prioriteit als toegewezen knooppunten.

Knooppuntgrootte

Wanneer u een Azure Batch-groep maakt, kunt u kiezen uit bijna alle reeksen en grootten virtuele machines die beschikbaar zijn in Azure. Azure biedt verscheidene VM-grootten voor verschillende workloads, met inbegrip van VM-grootten die speciaal zijn bedoeld voor HPC of GPU. Houd er rekening mee dat knooppuntgrootten alleen kunnen worden gekozen op het moment dat een pool wordt gemaakt. Met andere woorden, zodra een pool is gemaakt, kan de knooppuntgrootte niet meer worden gewijzigd.

Zie Choose a VM size for compute nodes in an Azure Batch pool (Een VM-grootte voor rekenknooppunten in een Azure Batch-groep kiezen) voor meer informatie.

Beleid voor automatisch schalen

Voor dynamische workloads kunt u een beleid voor automatisch schalen toepassen op een pool. De Batch-service evalueert uw formule periodiek en past het aantal knooppunten binnen de pool dynamisch aan op basis van de huidige workload en het resourcegebruik van uw rekenscenario. Zo kunt u de totale kosten van het uitvoeren van uw toepassing verlagen door alleen de benodigde resources te gebruiken en de resources die u niet nodig hebt, vrij te geven.

U schakelt automatische vergroting/verkleining in door een formule voor automatisch vergroten/verkleinen te schrijven en die formule te koppelen aan een pool. De Batch-service gebruikt deze formule om het doelaantal knooppunten in de pool te bepalen voor het volgende interval voor vergroten/verkleinen (een interval dat u kunt configureren). U kunt de instellingen voor automatisch vergroten/verkleinen voor een pool opgeven wanneer u deze maakt of op een later moment voor een pool inschakelen. U kunt de instellingen voor automatisch vergroten/verkleinen ook bijwerken in een pool waarvoor vergroten/verkleinen is ingeschakeld.

Een voorbeeld: mogelijk vereist een job dat u een groot aantal taken indient om te worden uitgevoerd. U kunt aan de pool een formule voor vergroten/verkleinen toewijzen die het aantal knooppunten in de pool aanpast op basis van het huidige aantal taken in de wachtrij en de snelheid waarmee de taken in de job worden voltooid. De Batch-service evalueert periodiek de formule en vergroot/verkleint de pool op basis van de workload en uw andere formule-instellingen. De service voegt naar behoefte knooppunten toe, bijvoorbeeld wanneer er veel taken in de wachtrij staan. Ook worden er knooppunten verwijderd wanneer er geen taken actief zijn of in de wachtrij staan.

Een formule voor vergroten/verkleinen kan op de volgende metrische gegevens worden gebaseerd:

  • Metrische gegevens voor tijd zijn gebaseerd op statistieken die om de vijf minuten worden verzameld binnen het opgegeven aantal uren.
  • Metrische gegevens voor resources zijn gebaseerd op CPU-gebruik, bandbreedtegebruik, geheugengebruik en het aantal knooppunten.
  • Metrische gegevens voor taken zijn gebaseerd op de taakstatus, zoals Actief (in de wachtrij) Wordt uitgevoerd of Voltooid.

Wanneer met automatisch vergroten/verkleinen het aantal rekenknooppunten in een groep vermindert, moet u bedenken hoe taken moeten worden afgehandeld die worden uitgevoerd op het moment van de verkleining. Hiervoor biedt Batch een optie voor knooppuntverplaatsing die u in uw formules kunt opnemen. U kunt bijvoorbeeld opgeven dat actieve taken worden gestopt en vervolgens opnieuw in de wachtrij worden geplaatst om te worden uitgevoerd op een ander knooppunt, of moeten worden voltooid voordat het knooppunt uit de pool wordt verwijderd. Houd er rekening mee dat het instellen van de optie voor het opnieuw instellen van de toewijzing van knooppunt als of voorkomt dat de pool het wijzigen van het aantal bewerkingen voorkomt totdat alle taken zijn voltooid, of alle bewaarperioden voor taken taskcompletion retaineddata zijn verlopen.

Zie Automatically scale compute nodes in an Azure Batch pool (Rekenknooppunten in een Azure Batch-pool automatisch vergroten/verkleinen) voor meer informatie over het automatisch vergroten/verkleinen van een toepassing.

Tip

Als u het gebruik van rekenresources wilt maximaliseren, stelt u het doelaantal knooppunten aan het einde van een job in op nul, maar staat u toe dat actieve taken mogen worden voltooid.

Taakplanningsbeleid

De configuratieoptie Maximumaantal taken per knooppunt bepaalt het maximumaantal taken dat parallel kan worden uitgevoerd op elk rekenknooppunt in de pool.

Bij de standaardconfiguratie wordt er op een knooppunt één taak tegelijk uitgevoerd, maar er zijn scenario's waarin het nuttig is om op een knooppunt twee of meer taken tegelijk uit te voeren. Zie het voorbeeldscenario in het artikel over gelijktijdige knooppunttaken om te bekijken hoe u kunt profiteren van meerdere taken per knooppunt.

U kunt ook een opvultype opgeven, waarmee wordt bepaald of Batch de taken gelijkmatig verspreidt over alle knooppunten in een pool, of dat elk knooppunt het maximum aantal taken bevat voordat taken aan een ander knooppunt worden toegewezen.

Communicatiestatus

In de meeste gevallen functioneren taken onafhankelijk en hoeven ze niet met elkaar te communiceren. Maar mogelijk hebt u ook toepassingen waarin taken moeten communiceren, bijvoorbeeld MPI-scenario's.

U kunt een pool configureren om communicatie tussen knooppunten toe te staan, zodat knooppunten in een pool tijdens runtime kunnen communiceren. Wanneer communicatie tussen knooppunten is ingeschakeld, kunnen knooppunten in de configuratie voor Cloud Services-pools met elkaar communiceren op poorten die groter zijn dan 1100. Voor virtuele-machineconfiguratiepools is verkeer op geen enkele poort beperkt.

Het inschakelen van communicatie tussen knooppunten heeft ook invloed op de plaatsing van de knooppunten in clusters en kan het maximum aantal knooppunten in een pool beperken vanwege implementatiebeperkingen. Als voor uw toepassing geen communicatie tussen knooppunten is vereist, kan de Batch-service een potentieel groter aantal knooppunten aan de pool toewijzen vanuit vele verschillende clusters en datacenters, om meer parallelle verwerkingskracht mogelijk te maken.

Taken starten

Desgewenst kunt u een begintaak toevoegen die op elk knooppunt wordt uitgevoerd wanneer dat knooppunt aan de pool wordt toevoegen en telkens wanneer een knooppunt opnieuw wordt opgestart of een nieuwe locatie wordt gemaakt. De begintaak is vooral handig voor de voorbereiding van rekenknooppunten voor het uitvoeren van taken, zoals het installeren van de toepassingen die door de taken worden uitgevoerd.

Toepassingspakketten

U kunt toepassingspakketten opgeven die moeten worden geïmplementeerd in de rekenknooppunten in de groep. Toepassingspakketten bieden vereenvoudigde implementatie en versies van de toepassingen die de taken uitvoeren. Toepassingspakketten die u voor een groep van toepassingen opgeeft, worden geïnstalleerd op elk knooppunt dat lid wordt van de groep, en elke keer dat er een knooppunt opnieuw wordt opgestart of er een installatiekopie wordt hersteld.

Zie Deploy applications to compute nodes with Batch application packages (Toepassingen implementeren naar rekenknooppunten met Batch-toepassingspakketten) voor meer informatie over het gebruiken van toepassingspakketten om toepassingen te implementeren naar Batch-knooppunten.

Configuratie van virtuele netwerken (VNet) en firewalls

Wanneer u een pool rekenknooppunten inricht in Batch kunt u deze pool koppelen aan een subnet van een virtueel netwerk van Azure (VNet). Het gebruik van een Azure VNet vereist dat de Batch-client-API gebruikmaakt van Azure Active Directory-verificatie (AD). Azure Batch-ondersteuning voor Azure AD wordt beschreven in Oplossingen van Batch-service verifiëren met Active Directory.

Vereisten voor VNet

Algemene vereisten

  • Het VNet moet in hetzelfde abonnement en dezelfde regio voorkomen als het Batch-account dat u gebruikt om de pool te maken.

  • Het subnet dat is opgegeven voor de pool moet voldoende vrije IP-adressen hebben voor het aantal virtuele machines voor de pool, ofwel de som van de targetDedicatedNodes- en targetLowPriorityNodes-eigenschappen van de pool. Als het subnet onvoldoende vrije IP-adressen heeft, wijst de pool de rekenknooppunten gedeeltelijk toe en wordt een fout weergegeven voor het aanpassen van de grootte.

  • Uw Azure Storage-eindpunt moet worden omgezet door alle aangepaste DNS-servers die u beschikbaar maakt voor uw VNet. Vooral URL's met de indeling <account>.table.core.windows.net, <account>.queue.core.windows.net en <account>.blob.core.windows.net moeten kunnen worden omgezet.

  • Er kunnen meerdere groepen in hetzelfde VNet of in hetzelfde subnet worden gemaakt (op voorwaarde dat er voldoende adresruimte is). Eén groep kan niet bestaan in meerdere VNets of subnetten.

Aanvullende vereisten voor VNet verschillen, afhankelijk van of de Batch-pool zich in de configuratie van de virtuele machine bevindt of in de configuratie van Cloud Services. Voor nieuwe implementaties van pools in een VNet wordt de configuratie van de virtuele machine aanbevolen.

Pools in de configuratie van virtuele machines

Ondersteunde VNets: alleen op Azure Resource Manager gebaseerde VNets

Subnet-ID: bij het opgeven van het subnet met behulp van de Batch-API's moet u de resource-id van het subnet gebruiken. De subnet-id het formulier heeft de vorm van:

/subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/virtualNetworks/{network}/subnets/{subnet}

Machtigingen: controleer of uw beveiligingsbeleid of de vergrendelingen die voor het VNet-abonnement of de resourcegroep gelden, een gebruikersmachtiging beperkt om het VNet te beheren.

Aanvullende netwerkresources: Batch maakt automatisch extra netwerkresources in de resourcegroep die het VNet bevat.

Belangrijk

Voor elke 100 toegewezen knooppunten of knooppunten met lage prioriteit maakt Batch: één netwerkbeveiligingsgroep (NSG), één openbaar IP-adres en één load balancer. De beperkingen die voor deze resources gelden, worden bepaald door de resourcequota van het abonnement. Voor grote pools moet u mogelijk een verhoging van het quotum aanvragen voor een of meer van deze resources.

Netwerkbeveiligingsgroepen Batch-standaardinstelling

Het subnet moet toestaan dat met binnenkomende communicatie van de Batch-service taken op de rekenknooppunten kunnen worden gepland, en toestaan dat uitgaande communicatie mogelijk is met Azure Storage of andere resources, zoals vereist door uw werkbelasting. Voor pools in de configuratie van de virtuele machine, voegt Batch netwerkbeveiligingsgroepen toe op het niveau van netwerkinterfaces (NIC's) die zijn gekoppeld aan rekenknooppunten. Deze NSG's zijn geconfigureerd met de volgende aanvullende regels:

  • Binnenkomend TCP-verkeer op poorten 29876 en 29877 van IP-adressen van de Batch-service die overeenkomen met servicetag BatchNodeManagement.
  • Binnenkomend TCP-verkeer op poort 22 (Linux-knooppunten) of poort 3389 (Windows-knooppunten) om externe toegang te verlenen. Voor bepaalde typen taken met meerdere instanties in Linux (zoals MPI), moet u ook verkeer via SSH-poort 22 toestaan voor IP-adressen in het subnet met de Batch-rekenknooppunten. Dit kan worden geblokkeerd per NSG-regels op subnetniveau (zie hieronder).
  • Uitgaand verkeer op een willekeurige poort naar het virtuele netwerk. Dit kan worden aangepast per NSG-regels op subnetniveau (zie hieronder).
  • Uitgaand verkeer op een willekeurige poort naar internet. Dit kan worden aangepast per NSG-regels op subnetniveau (zie hieronder).

Belangrijk

Wees voorzichtig als u binnenkomende of uitgaande regels toevoegt of wijzigt in netwerkbeveiligingsgroepen die door Batch zijn geconfigureerd. Als communicatie met de rekenknooppunten in het opgegeven subnet wordt geweigerd door een netwerkbeveiligingsgroep, zet de Batch-service de status van de rekenknooppunten op Onbruikbaar. Daarnaast mogen er geen resourcevergrendelingen worden toegepast op resources die door Batch zijn gemaakt. Dit kan er anders toe leiden dat het opschonen van resources als gevolg van door de gebruiker geïnitieerde acties, zoals het verwijderen van een pool, wordt voorkomen.

Netwerkbeveiligingsgroepen: Regels op subnetniveau opgeven

Als er een NSG is gekoppeld aan het subnet waarin Batch-rekenknooppunten zijn geïmplementeerd of als u aangepaste NSG-regels wilt toepassen om de standaardinstellingen te overschrijven, moet u deze NSG configureren met ten minste de beveiligingsregels voor binnenkomend en uitgaand verkeer, zoals weergegeven in de volgende tabellen.

Configureer binnenkomend verkeer op poort 3389 (Windows) of 22 (Linux) alleen als u externe toegang tot rekenknooppunten vanaf externe bronnen wilt toestaan. Mogelijk moet u regels voor poort 22 inschakelen op Linux als u ondersteuning nodig hebt voor taken met meerdere instanties met bepaalde MPI-runtimes. Het toestaan van verkeer op deze poorten is niet strikt vereist om de rekenknooppunten van de pool te kunnen gebruiken.

Waarschuwing

De IP-adressen van de Batch-service kunnen na verloop van tijd worden gewijzigd. Daarom raden we u ten zeerste aan de servicetag (of een regionale variant) te gebruiken voor de BatchNodeManagement NSG-regels die in de volgende tabellen worden aangegeven. Vermijd het vullen van NSG-regels met specifieke IP-adressen voor batchservices.

Inkomende beveiligingsregels

IP-adressen van bron Bronservicetag Bronpoorten Doel Doelpoorten Protocol Bewerking
N.v.t. BatchNodeManagementservicetag (als u een regionale variant gebruikt, in dezelfde regio als uw Batch-account) * Alle 29876-29877 TCP Toestaan
IP-adressen van gebruikersbronnen voor het op afstand verkrijgen van toegang tot rekenknooppunten en/of het subnet van rekenknooppunten voor Linux-taken voor meerdere exemplaren, indien nodig. N.v.t. * Alle 3389 (Windows), 22 (Linux) TCP Toestaan

Uitgaande beveiligingsregels

Bron Bronpoorten Doel Doelservicetag Doelpoorten Protocol Bewerking
Alle * Servicetag Storage (bij gebruik van een regionale variant in dezelfde regio als uw Batch-account) 443 TCP Toestaan
Alle * Servicetag BatchNodeManagement (bij gebruik van een regionale variant in dezelfde regio als uw Batch-account) 443 TCP Toestaan

Uitgaand naar is vereist om contact op te nemen met BatchNodeManagement de Batch-service vanaf de rekenknooppunten, zoals voor Job Manager-taken.

Pools die zijn gemaakt in de Cloud Services-configuratie

Waarschuwing

Cloud Services configuratiegroepen zijn afgeschaft. Gebruik in plaats daarvan configuratiegroepen voor virtuele machines.

Ondersteunde VNets: klassieke VNets

Subnet-ID: bij het opgeven van het subnet met behulp van de Batch-API's moet u de resource-id van het subnet gebruiken. De subnet-id heeft de vorm van:

/subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.ClassicNetwork /virtualNetworks/{network}/subnets/{subnet}

Machtigingen - de Microsoft Azure Batchservice-principal moet de Classic Virtual Machine Contributor Azure-rol hebben voor het betreffende VNet.

Netwerkbeveiligingsgroepen

Het subnet moet toestaan dat met binnenkomende communicatie van de Batch-service taken op de rekenknooppunten kunnen worden gepland, en toestaan dat uitgaande communicatie mogelijk is met Azure Storage of andere resources.

U hoeft geen netwerkbeveiligingsgroep op te geven omdat Batch binnenkomende communicatie alleen configureert van Batch IP-adressen naar de poolknooppunten. Als echter aan het opgegeven subnet netwerkbeveiligingsgroepen en/of een firewall zijn gekoppeld, configureert u de binnenkomende en uitgaande beveiligingsregels zoals wordt weergegeven in de volgende tabellen. Als communicatie met de rekenknooppunten in het opgegeven subnet wordt geweigerd door een netwerkbeveiligingsgroep, zet de Batch-service de status van de rekenknooppunten op Onbruikbaar.

Configureer binnenkomend verkeer op poort 3389 voor Windows alleen als u RDP-toegang tot poolknooppunten wilt toestaan. Dit is niet vereist om ervoor te zorgen dat de poolknooppunten kunnen worden gebruikt.

Inkomende beveiligingsregels

IP-adressen van bron Bronpoorten Doel Doelpoorten Protocol Bewerking
Alle

Hoewel dit in feite 'alles toestaan' vereist, past de Batch-service een regel voor toegangsbeheerlijsten toe op het niveau van elk knooppunt, die ervoor zorgt dat alle IP-adressen van niet-Batch-services worden uitgefilterd.
* Alle 10100, 20100, 30100 TCP Toestaan
Optioneel, voor het toestaan van RDP-toegang tot rekenknooppunten. * Alle 3389 TCP Toestaan

Uitgaande beveiligingsregels

Bron Bronpoorten Doel Doelpoorten Protocol Bewerking
Alle * Alle 443 Alle Toestaan

Zie Een pool van virtuele machines maken met uw virtuele netwerk voor meer informatie over het instellen van een Batch-pool in een VNet.

Tip

Om ervoor te zorgen dat de openbare IP-adressen die worden gebruikt voor toegang tot knooppunten niet veranderen, kunt u een pool maken met opgegeven openbare IP-adressen die u controleert.

Levensduur van pool en rekenknooppunt

Wanneer u uw Azure Batch ontwerpt, moet u opgeven hoe en wanneer pools worden gemaakt en hoe lang rekenknooppunten in deze pools beschikbaar blijven.

Aan het ene uiteinde van het spectrum kunt u een pool maken voor elke job wanneer deze wordt verzonden en kunt u de pool verwijderen zodra taken zijn uitgevoerd. Dit maximaliseert het gebruik omdat de knooppunten alleen worden toegewezen wanneer ze nodig zijn en worden afgesloten wanneer ze inactief zijn. Hoewel dit betekent dat de job moet wachten tot de knooppunten zijn toegewezen, is het belangrijk te weten dat taken worden gepland voor uitvoering zodra knooppunten afzonderlijk zijn toegewezen en de begintaak is voltooid. Batch wacht niet tot alle knooppunten in een pool beschikbaar zijn alvorens taken aan de knooppunten toe te wijzen. Hiermee zorgt u voor maximaal gebruik van alle beschikbare knooppunten.

Als, aan het andere uiteinde van het spectrum, het onmiddellijk starten van jobs de hoogste prioriteit heeft, kunt u een pool voortijdig maken en de knooppunten ervan beschikbaar stellen voordat er jobs worden verzonden. In dit scenario kunnen taken onmiddellijk worden gestart, maar blijven knooppunten mogelijk inactief terwijl wordt gewacht tot er taken worden toegewezen.

Een gecombineerde benadering wordt doorgaans gebruikt voor het verwerken van een variabele, maar doorlopende belasting. U kunt een pool hebben waarin meerdere taken worden verzonden en het aantal knooppunten omhoog of omlaag schalen op basis van de taakbelasting. U kunt dit reactief doen, op basis van de huidige workload, of proactief als de workload kan worden voorspeld. Zie Beleid voor automatisch schalen voor meer informatie.

Autopools

Een autopool is een pool die door de Batch-service wordt gemaakt wanneer een taak wordt verzonden, in plaats van te worden gemaakt vóór de taken die in de pool worden uitgevoerd. De Batch-service beheert de levensduur van een autopool op basis van de kenmerken die u opgeeft. Meestal worden deze pools ook ingesteld om automatisch te worden verwijderd nadat hun taken zijn voltooid.

Beveiliging met certificaten

Certificaten gebruikt u doorgaans bij het versleutelen of ontsleutelen van gevoelige gegevens voor taken, zoals de sleutel voor een Azure Storage-account. Ter ondersteuning hiervan installeert u certificaten op knooppunten. Versleutelde geheimen worden via opdrachtregelparameters doorgegeven aan taken of worden ingesloten in een van de taakresources. De geïnstalleerde certificaten kunnen dan worden gebruikt om ze te ontsleutelen.

U gebruikt de bewerking Certificaat toevoegen (Batch REST) of de methode CertificateOperations.CreateCertificate (Batch .NET) om een certificaat aan een Batch-account toe te voegen. Daarna kunt u het certificaat aan een nieuwe of bestaande pool koppelen.

Wanneer een certificaat aan een pool is gekoppeld, wordt het door de Batch-service in elk knooppunt in de pool geïnstalleerd. De Batch-service installeert de juiste certificaten wanneer het knooppunt wordt gestart, voordat er taken worden gestart (inclusief de begintaak en jobbeheertaak).

Als u een certificaat aan een bestaande pool toevoegt, moet u de rekenknooppunten opnieuw opstarten om het certificaat toe te voegen aan de knooppunten.

Volgende stappen