Een vereenvoudigde knooppuntcommunicatiepool zonder openbare IP-adressen maken

Notitie

Hiermee vervangt u de vorige preview-versie van Azure Batch-pool zonder openbare IP-adressen. Voor deze nieuwe versie is het gebruik van vereenvoudigde communicatie tussen berekeningsknooppunten vereist.

Belangrijk

Ondersteuning voor pools zonder openbare IP-adressen in Azure Batch is momenteel beschikbaar voor bepaalde regio's.

Wanneer u een Azure Batch-pool maakt, kunt u de configuratiepool van de virtuele machine (VM) inrichten zonder een openbaar IP-adres. In dit artikel wordt uitgelegd hoe u een Batch-pool zonder openbare IP-adressen instelt.

Waarom een groep zonder openbare IP-adressen gebruiken?

Standaard krijgen alle berekeningsknooppunten in een Azure Batch VM-configuratiepool een openbaar IP-adres toegewezen. Dit adres wordt door de Batch-service gebruikt ter ondersteuning van uitgaande toegang tot internet, evenals binnenkomende toegang tot rekenknooppunten vanaf internet.

Als u de toegang tot deze knooppunten wilt beperken en de detectie van deze knooppunten vanaf internet wilt verminderen, kunt u de pool inrichten zonder openbare IP-adressen.

Vereisten

Belangrijk

De vereisten zijn gewijzigd ten opzichte van de vorige preview-versie van deze functie. Zorg ervoor dat u elk item controleert op wijzigingen voordat u doorgaat.

  • Gebruik vereenvoudigde communicatie tussen rekenknooppunten. Zie Vereenvoudigde communicatie tussen rekenknooppunten gebruiken voor meer informatie.

  • De Batch-client-API moet gebruikmaken van Microsoft Entra-verificatie. Azure Batch-ondersteuning voor Microsoft Entra-id wordt beschreven in Batch-serviceoplossingen verifiëren met Active Directory.

  • Maak uw pool in een virtueel Azure-netwerk (VNet) en volg deze vereisten en configuraties. Als u vooraf een VNet wilt voorbereiden met een of meer subnetten, kunt u Azure Portal, Azure PowerShell, de Azure-opdrachtregelinterface (Azure CLI) of andere methoden gebruiken.

    • 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.

    • Als u van plan bent een privé-eindpunt te gebruiken en uw virtuele netwerkbeleid voor privé-eindpunten is ingeschakeld, moet de binnenkomende verbinding met TCP/443 met het subnet dat als host fungeert voor het privé-eindpunt, zijn toegestaan vanuit het subnet van de Batch-pool.

  • Schakel uitgaande toegang in voor Batch-knooppuntbeheer. Voor een groep zonder openbare IP-adressen is standaard geen uitgaande toegang via internet ingeschakeld. Kies een van de volgende opties om rekenknooppunten toegang te geven tot de Beheerservice voor Batch-knooppunten (zie Vereenvoudigde communicatie van rekenknooppunten gebruiken):

    • Gebruik het privé-eindpunt nodeManagement met Batch-accounts, dat privétoegang biedt tot de Beheerservice van Batch-knooppunten vanuit het virtuele netwerk. Deze oplossing is de voorkeursmethode.

    • U kunt ook uw eigen ondersteuning voor uitgaande internettoegang bieden (zie Uitgaande toegang tot internet).

Belangrijk

Er zijn twee subbronnen voor privé-eindpunten met Batch-accounts. Gebruik het privé-eindpunt nodeManagement voor de Batch-pool zonder openbare IP-adressen. Zie Privé-eindpunten gebruiken met Azure Batch-accounts voor meer informatie.

Huidige beperkingen

  1. Pools zonder openbare IP-adressen moeten gebruikmaken van configuratie van virtuele machines en niet van Cloud Services-configuratie.
  2. Aangepaste eindpuntconfiguratie voor Batch-rekenknooppunten werkt niet met pools zonder openbare IP-adressen.
  3. Omdat er geen openbare IP-adressen zijn, kunt u uw eigen openbare IP-adressen niet gebruiken met dit type groep.
  4. Het token voor taakverificatie voor Batch-taak wordt niet ondersteund. De tijdelijke oplossing is het gebruik van Batch-pool met beheerde identiteiten.

Een pool maken zonder openbare IP-adressen in Azure Portal

  1. Maak indien nodig een privé-eindpunt voor nodeManagement voor uw Batch-account in het virtuele netwerk (zie de vereiste voor uitgaande toegang in vereisten).
  2. Ga in Azure Portal naar uw Batch-account.
  3. Selecteer Pools in het Instellingen venster aan de linkerkant.
  4. Selecteer Toevoegen in het venster Pools.
  5. Selecteer in het venster Pool toevoegen de optie die u wilt gebruiken in de vervolgkeuzelijst Afbeeldingstype .
  6. Selecteer de juiste Uitgever/Aanbieding/SKU van uw installatiekopieën.
  7. Geef de resterende vereiste instellingen op, waaronder de knooppuntgrootte, toegewezen doelknooppunten en doelknooppunten met een lage prioriteit.
  8. Selecteer vereenvoudigd onder Optionele Instellingen voor de communicatiemodus van knooppunten.
  9. Selecteer een virtueel netwerk en subnet dat u wilt gebruiken. Dit virtuele netwerk moet zich op dezelfde locatie bevinden als de pool die u maakt.
  10. Selecteer NoPublicIPAddresses in het inrichtingstype IP-adres.

In de volgende schermopname ziet u de elementen die moeten worden gewijzigd om een pool te maken zonder openbare IP-adressen.

Screenshot of the Add pool screen with NoPublicIPAddresses selected.

De Batch REST API gebruiken om een pool te maken zonder openbare IP-adressen

In het volgende voorbeeld ziet u hoe u de Batch Service REST API gebruikt om een pool te maken die gebruikmaakt van openbare IP-adressen.

REST API-URI

POST {batchURL}/pools?api-version=2022-10-01.16.0
client-request-id: 00000000-0000-0000-0000-000000000000

Aanvraagtekst

"pool": {
     "id": "pool-npip",
     "vmSize": "standard_d2s_v3",
     "virtualMachineConfiguration": {
          "imageReference": {
               "publisher": "Canonical",
               "offer": "0001-com-ubuntu-server-jammy",
               "sku": "22_04-lts"
          },
          "nodeAgentSKUId": "batch.node.ubuntu 22.04"
     },
     "networkConfiguration": {
          "subnetId": "/subscriptions/<your_subscription_id>/resourceGroups/<your_resource_group>/providers/Microsoft.Network/virtualNetworks/<your_vnet_name>/subnets/<your_subnet_name>",
          "publicIPAddressConfiguration": {
               "provision": "NoPublicIPAddresses"
          }
     },
     "resizeTimeout": "PT15M",
     "targetDedicatedNodes": 2,
     "targetLowPriorityNodes": 0,
     "taskSlotsPerNode": 1,
     "taskSchedulingPolicy": {
          "nodeFillType": "spread"
     },
     "enableAutoScale": false,
     "enableInterNodeCommunication": false,
     "targetNodeCommunicationMode": "simplified"
}

Een pool maken zonder openbare IP-adressen met behulp van een ARM-sjabloon

U kunt deze Azure-quickstartsjabloon gebruiken om een pool te maken zonder openbare IP-adressen met behulp van een ARM-sjabloon (Azure Resource Manager).

De volgende resources worden geïmplementeerd door de sjabloon:

  • Azure Batch-account met IP-firewall geconfigureerd om openbare netwerktoegang tot het beheereindpunt van Batch-knooppunten te blokkeren
  • Virtueel netwerk met netwerkbeveiligingsgroep om uitgaande toegang via internet te blokkeren
  • Privé-eindpunt voor toegang tot batchknooppuntbeheereindpunt van het account
  • DNS-integratie voor het privé-eindpunt met behulp van een privé-DNS-zone die is gekoppeld aan het virtuele netwerk
  • Batch-pool geïmplementeerd in het virtuele netwerk en zonder openbare IP-adressen

Als u bekend bent met het gebruik van ARM-sjablonen, selecteert u de knop Implementeren in Azure . De sjabloon wordt in Azure Portal geopend.

Button to deploy the Resource Manager template to Azure.

Notitie

Als de implementatie van het privé-eindpunt is mislukt vanwege een ongeldige groupId 'nodeManagement', controleert u of de regio in de ondersteunde lijst staat voor vereenvoudigde communicatie tussen rekenknooppunten. Kies de juiste regio en voer de implementatie opnieuw uit.

Uitgaande toegang tot internet

In een pool zonder openbare IP-adressen hebben uw virtuele machines geen toegang tot het openbare internet, tenzij u de netwerkinstallatie op de juiste manier configureert, zoals met behulp van NAT van het virtuele netwerk. NAT staat alleen uitgaande toegang tot internet toe vanaf de virtuele machines in het virtuele netwerk. Rekenknooppunten die in batch zijn gemaakt, zijn niet openbaar toegankelijk, omdat er geen openbare IP-adressen zijn gekoppeld.

Een andere manier om uitgaande connectiviteit te bieden, is door een door de gebruiker gedefinieerde route (UDR) te gebruiken. Met deze methode kunt u verkeer routeren naar een proxycomputer met openbare internettoegang, bijvoorbeeld Azure Firewall.

Belangrijk

Er is geen extra netwerkresource (load balancer, netwerkbeveiligingsgroep) gemaakt voor vereenvoudigde knooppuntcommunicatiegroepen zonder openbare IP-adressen. Omdat de rekenknooppunten in de pool niet zijn gebonden aan een load balancer, kan Azure standaard uitgaande toegang bieden. Standaard uitgaande toegang is echter niet geschikt voor productieworkloads en wordt buiten gebruik gesteld op 30 september 2025 (zie de officiële aankondiging). Dus als uw workloads uitgaande toegang via internet vereisen of als uw pool geen privé-eindpunt gebruikt voor toegang tot het beheereindpunt van Batch-knooppunten, moet u uw eigen oplossing bieden om uitgaande toegang via internet mogelijk te maken.

Probleemoplossing

Onbruikbare rekenknooppunten in een Batch-pool

Als rekenknooppunten onbruikbaar zijn in een Batch-pool zonder openbare IP-adressen, is de eerste en belangrijkste controle om de uitgaande toegang tot de Beheerservice van Batch-knooppunten te controleren. Deze moet correct worden geconfigureerd, zodat rekenknooppunten verbinding kunnen maken met de service vanuit uw virtuele netwerk.

Privé-eindpunt nodeManagement gebruiken

Als u een privé-eindpunt voor knooppuntbeheer hebt gemaakt in het virtuele netwerk voor uw Batch-account:

  • Controleer of het privé-eindpunt is gemaakt in het juiste virtuele netwerk, in de inrichting geslaagde status en ook in de status Goedgekeurd .
  • Controleer of de DNS-configuratie juist is ingesteld voor het knooppuntbeheereindpunt van uw Batch-account:
    • Als uw privé-eindpunt wordt gemaakt met automatische integratie van privé-DNS-zones, controleert u of de DNS A-record correct is geconfigureerd in de privé-DNS-zone privatelink.batch.azure.comen of de zone is gekoppeld aan uw virtuele netwerk.
    • Als u uw eigen DNS-oplossing gebruikt, controleert u of de DNS-record voor het beheereindpunt van het Batch-knooppunt correct is geconfigureerd en wijst u het IP-adres van het privé-eindpunt aan.
  • Controleer de DNS-resolutie voor het beheereindpunt van batchknooppunten van uw account. U kunt dit bevestigen door vanuit uw virtuele netwerk uit te voeren nslookup <nodeManagementEndpoint> en de DNS-naam moet worden omgezet in het IP-adres van het privé-eindpunt.
  • Als voor uw virtuele netwerk netwerkbeleid voor privé-eindpunten is ingeschakeld, controleert u NSG en UDR op subnetten van zowel de Batch-pool als het privé-eindpunt. De binnenkomende verbinding met TCP/443 met het subnet dat als host fungeert voor het privé-eindpunt, moet zijn toegestaan vanuit het subnet van de Batch-pool.
  • Voer vanuit het subnet van de Batch-pool TCP-ping uit naar het knooppuntbeheereindpunt met behulp van de standaard HTTPS-poort (443). Deze test kan zien of de private link-verbinding werkt zoals verwacht.
# Windows
Test-TcpConnection -ComputeName <nodeManagementEndpoint> -Port 443
# Linux
nc -v <nodeManagementEndpoint> 443

Als de TCP-ping mislukt (bijvoorbeeld een time-out), is dit meestal een probleem met de privékoppelingsverbinding en kunt u ondersteuning voor Azure ticket indienen bij deze privé-eindpuntresource. Anders kan dit probleem met dit knooppunt lastig worden weergegeven als normale Batch-pools en kunt u een ondersteuningsticket indienen met uw Batch-account.

Uw eigen uitgaande internetoplossing gebruiken

Als u uw eigen uitgaande internetoplossing gebruikt in plaats van een privé-eindpunt, voert u TCP-ping uit naar het eindpunt van het knooppuntbeheer. Als het niet werkt, controleert u of uw uitgaande toegang correct is geconfigureerd door gedetailleerde vereisten te volgen voor vereenvoudigde communicatie tussen rekenknooppunten.

Verbinding maken voor rekenknooppunten

Er is geen inkomende toegang via internet tot rekenknooppunten in de Batch-pool zonder openbare IP-adressen. Voor toegang tot uw rekenknooppunten voor foutopsporing moet u verbinding maken vanuit het virtuele netwerk:

  • Gebruik de jumpbox-machine in het virtuele netwerk en maak vervolgens vanaf daar verbinding met uw rekenknooppunten.
  • Of probeer andere oplossingen voor externe verbindingen, zoals Azure Bastion, te gebruiken:
    • Maak Bastion in het virtuele netwerk waarvoor een IP-verbinding is ingeschakeld.
    • Gebruik Bastion om verbinding te maken met het rekenknooppunt met behulp van het IP-adres.

U kunt de handleiding Verbinding maken voor het berekenen van knooppunten om gebruikersreferenties en IP-adres op te halen voor het doel-rekenknooppunt in uw Batch-pool.

Migratie van vorige preview-versie van geen openbare IP-adresgroepen

Voor bestaande pools die gebruikmaken van de vorige preview-versie van Azure Batch Geen openbare IP-adresgroep, is het alleen mogelijk om pools te migreren die zijn gemaakt in een virtueel netwerk.

  1. Maak een privé-eindpunt voor Batch-knooppuntbeheer in het virtuele netwerk.
  2. Werk de communicatiemodus van het knooppunt van de pool bij naar vereenvoudigd.
  3. Schaal de pool omlaag naar nul knooppunten.
  4. Schaal de pool opnieuw uit. De pool wordt vervolgens automatisch gemigreerd naar de nieuwe versie.

Volgende stappen