Condividi tramite


Creare un pool di Azure Batch con indirizzi IP pubblici specificati

In Azure Batch è possibile creare un pool di Batch in una subnet di una rete virtuale di Azure. Le macchine virtuali nel pool di Batch sono accessibili tramite indirizzi IP pubblici creati da Batch. Questi indirizzi IP pubblici possono cambiare nel corso della durata del pool. Se gli indirizzi IP non vengono aggiornati, le impostazioni di rete potrebbero diventare obsolete.

È invece possibile creare un elenco di indirizzi IP pubblici statici da usare con le macchine virtuali nel pool. In alcuni casi, potrebbe essere necessario controllare l'elenco di indirizzi IP pubblici per assicurarsi che non cambino in modo imprevisto. Ad esempio, è possibile usare un servizio esterno, ad esempio un database, che limita l'accesso a indirizzi IP specifici.

Per informazioni sulla creazione di pool senza indirizzi IP pubblici, vedere Creare un pool di Azure Batch senza indirizzi IP pubblici.

Prerequisiti

  • L'API client Batch deve usare l'autenticazione Microsoft Entra per usare un indirizzo IP pubblico.
  • Una rete virtuale di Azure dalla stessa sottoscrizione in cui si creano il pool e gli indirizzi IP. È possibile usare solo reti virtuali basate su Azure Resource Manager. Verificare che la rete virtuale soddisfi tutti i requisiti generali della rete virtuale.
  • Almeno un indirizzo IP pubblico di Azure esistente. Seguire i requisiti degli indirizzi IP pubblici per creare e configurare gli indirizzi IP.

Nota

Batch alloca automaticamente risorse di rete aggiuntive nel gruppo di risorse contenente gli indirizzi IP pubblici. Per ogni 100 nodi dedicati, Batch alloca in genere un gruppo di sicurezza di rete (NSG) e un servizio di bilanciamento del carico. Queste risorse sono limitate in base alle quote delle risorse della sottoscrizione. Quando si usano pool di dimensioni maggiori, potrebbe essere necessario richiedere un aumento della quota per una o più di queste risorse.

Requisiti per gli indirizzi IP pubblici

Creare uno o più indirizzi IP pubblici tramite uno di questi metodi:

Assicurarsi che gli indirizzi IP pubblici soddisfino i requisiti seguenti:

  • Creare gli indirizzi IP pubblici nella stessa sottoscrizione e nella stessa area dell'account per il pool di Batch.
  • Impostare l'assegnazione dell'indirizzo IP su Statico.
  • Impostare lo SKU su Standard.
  • Specificare un nome DNS.
  • Assicurarsi che nessun'altra risorsa usi questi indirizzi IP pubblici o che il pool possa riscontrare errori di allocazione. Usare solo questi indirizzi IP pubblici per i pool di configurazione della macchina virtuale.
  • Assicurarsi che nessun criterio di sicurezza o blocchi delle risorse limiti l'accesso utente all'indirizzo IP pubblico.
  • Creare indirizzi IP pubblici sufficienti per il pool per supportare il numero di macchine virtuali di destinazione.
    • Questo numero deve essere uguale almeno alla somma delle proprietà targetDedicatedNodes e targetLowPriorityNodes del pool.
    • Se non si creano indirizzi IP sufficienti, il pool alloca parzialmente i nodi di calcolo e si verifica un errore di ridimensionamento.
    • Attualmente Batch usa un indirizzo IP pubblico per ogni 100 macchine virtuali.
  • Creare anche un buffer di indirizzi IP pubblici. Un buffer aiuta Batch con l'ottimizzazione interna per ridurre le prestazioni. Un buffer consente anche una scalabilità più rapida dopo un aumento o una riduzione delle prestazioni non riuscite. È consigliabile aggiungere una delle quantità seguenti di indirizzi IP del buffer; scegliere il numero maggiore.
    • Aggiungere almeno un altro indirizzo IP.
    • In alternativa, aggiungere circa il 10% del numero totale di indirizzi IP pubblici nel pool.

Importante

Dopo aver creato il pool di Batch, non è possibile aggiungere o modificare il relativo elenco di indirizzi IP pubblici. Se si desidera modificare l'elenco, è necessario eliminare e ricreare il pool.

Creare un pool di Batch con indirizzi IP pubblici

L'esempio seguente illustra come creare un pool tramite l'API REST del servizio Azure Batch che usa indirizzi IP pubblici.

URI DELL'API REST:

POST {batchURL}/pools?api-version=2020-03-01.11.0
client-request-id: 00000000-0000-0000-0000-000000000000

Testo della richiesta:

"pool": {
      "id": "pool2",
      "vmSize": "standard_a1",
      "virtualMachineConfiguration": {
        "imageReference": {
          "publisher": "Canonical",
          "offer": "UbuntuServer",
          "sku": "20.04-LTS"
        },
        "nodeAgentSKUId": "batch.node.ubuntu 20.04"
      },
"networkConfiguration": {
          "subnetId": "/subscriptions/<subId>/resourceGroups/<rgId>/providers/Microsoft.Network/virtualNetworks/<vNetId>/subnets/<subnetId>",
          "publicIPAddressConfiguration": {
            "provision": "usermanaged",
            "ipAddressIds": [
              "/subscriptions/<subId>/resourceGroups/<rgId>/providers/Microsoft.Network/publicIPAddresses/<publicIpId>"
          ]
        },

       "resizeTimeout":"PT15M",
      "targetDedicatedNodes":5,
      "targetLowPriorityNodes":0,
      "taskSlotsPerNode":3,
      "taskSchedulingPolicy": {
        "nodeFillType":"spread"
      },
      "enableAutoScale":false,
      "enableInterNodeCommunication":true,
      "metadata": [ {
        "name":"myproperty",
        "value":"myvalue"
      } ]
    }

Passaggi successivi