Condividi tramite


Creare un pool di Batch senza indirizzi IP pubblici (anteprima)

Avviso

Questa versione di anteprima verrà ritirata il 31 marzo 2023 e verrà sostituita da un pool di comunicazioni del nodo semplificato senza indirizzi IP pubblici. Per altre informazioni, vedere la Guida alla migrazione al ritiro.

Importante

  • Il supporto per i pool senza indirizzi IP pubblici in Azure Batch è attualmente disponibile in anteprima pubblica per le aree seguenti: Francia centrale, Asia orientale, Stati Uniti centro-occidentali, Stati Uniti centro-meridionali, Stati Uniti occidentali 2, Stati Uniti orientali, Europa settentrionale, Stati Uniti orientali 2, Stati Uniti centrali, Europa occidentale, Stati Uniti centro-settentrionali, Stati Uniti occidentali, Australia orientale, Giappone orientale, Giappone occidentale.
  • Questa versione di anteprima viene messa a disposizione senza contratto di servizio e non è consigliata per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate.
  • Per altre informazioni, vedere Condizioni supplementari per l'utilizzo delle anteprime di Microsoft Azure.

Quando si crea un pool di Azure Batch, è possibile effettuare il provisioning del pool di configurazione della macchina virtuale senza un indirizzo IP pubblico. Questo articolo illustra come configurare un pool Batch senza indirizzi IP pubblici.

Perché usare un pool senza indirizzi IP pubblici?

Per impostazione predefinita, a tutti i nodi di calcolo in un pool di configurazione di Azure Batch macchina virtuale viene assegnato un indirizzo IP pubblico. Questo indirizzo viene usato dal servizio Batch per pianificare le attività e per la comunicazione con i nodi di calcolo, incluso l'accesso in uscita a Internet.

Per limitare l'accesso a questi nodi e ridurne l'individuabilità da Internet, è possibile effettuare il provisioning del pool senza indirizzi IP pubblici.

Prerequisiti

  • Autenticazione. Per usare un pool senza indirizzi IP pubblici all'interno di una rete virtuale, l'API client Batch deve usare Microsoft Entra'autenticazione. Azure Batch supporto per Microsoft Entra ID è documentato in Autenticare i servizi di Azure Batch con Microsoft Entra ID. Se non si crea il pool all'interno di una rete virtuale, è possibile usare l'autenticazione Microsoft Entra o l'autenticazione basata su chiave.

  • Una rete virtuale di Azure. Se si crea il pool in una rete virtuale, seguire questi requisiti e configurazioni. Per preparare in anticipo una rete virtuale con una o più subnet, è possibile usare il portale di Azure, Azure PowerShell, l'interfaccia della riga di comando di Azure o altri metodi.

    • La rete virtuale deve essere nella stessa sottoscrizione e area dell'account Batch usato per creare il pool.

    • La subnet specificata per il pool deve disporre di indirizzi IP non assegnati sufficienti per contenere il numero di macchine virtuali usate come destinazione per il pool; questo valore corrisponde alla somma delle proprietà targetDedicatedNodes e targetLowPriorityNodes del pool. Se la subnet non dispone di sufficienti indirizzi IP non assegnati, il pool alloca parzialmente i nodi di calcolo e si verifica un errore di ridimensionamento.

    • È necessario disabilitare i criteri di rete del servizio collegamento privato e degli endpoint. Questa azione può essere eseguita usando l'interfaccia della riga di comando di Azure:

      az network vnet subnet update --vnet-name <vnetname> -n <subnetname> --resource-group <resourcegroup> --disable-private-endpoint-network-policies --disable-private-link-service-network-policies

Importante

Per ogni 100 nodi dedicati o spot, Batch alloca un servizio di collegamento privato e un servizio di bilanciamento del carico. Queste risorse sono limitate in base alle quote delle risorse della sottoscrizione. Per i pool di grandi dimensioni, potrebbe essere necessario richiedere un aumento della quota per una o più di queste risorse. Inoltre, non è necessario applicare blocchi di risorse a qualsiasi risorsa creata da Batch, poiché ciò impedisce la pulizia delle risorse in seguito a azioni avviate dall'utente, ad esempio l'eliminazione di un pool o il ridimensionamento su zero.

Limitazioni correnti

  1. I pool senza indirizzi IP pubblici devono usare la configurazione della macchina virtuale e non Servizi cloud configurazione.
  2. La configurazione dell'endpoint personalizzata per i nodi di calcolo batch non funziona con i pool senza indirizzi IP pubblici.
  3. Poiché non sono presenti indirizzi IP pubblici, non è possibile usare gli indirizzi IP pubblici specificati con questo tipo di pool.
  4. Le dimensioni di base della macchina virtuale non funzionano con i pool senza indirizzi IP pubblici.

Creare un pool senza indirizzi IP pubblici nel portale di Azure

  1. Passare all'account Batch nel portale di Azure.
  2. Nella finestra Impostazioni a sinistra selezionare Pool.
  3. Nella finestra Pool selezionare Aggiungi.
  4. Nella finestra Aggiungi pool selezionare l'opzione desiderata nell'elenco a discesa Tipo di immagine.
  5. Selezionare il server di pubblicazione/offerta/SKU corretto dell'immagine.
  6. Specificare le impostazioni necessarie rimanenti, incluse le dimensioni del nodo, i nodi dedicati target e i nodi Target Spot/low-priority e le eventuali impostazioni facoltative desiderate.
  7. Facoltativamente, selezionare una rete virtuale e una subnet da usare. Questa rete virtuale deve trovarsi nello stesso gruppo di risorse del pool che si sta creando.
  8. In Tipo di provisioning di indirizzi IP selezionare NoPublicIPAddresses.

Screenshot della schermata Aggiungi pool con l'opzione NoPublicIPAddresses selezionata.

Usare l'API REST batch per creare un pool senza indirizzi IP pubblici

L'esempio seguente illustra come usare l'API REST del servizio Batch per creare un pool 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/<your_subscription_id>/resourceGroups/<your_resource_group>/providers/Microsoft.Network/virtualNetworks/<your_vnet_name>/subnets/<your_subnet_name>",
          "publicIPAddressConfiguration": {
               "provision": "NoPublicIPAddresses"
          }
     },
     "resizeTimeout": "PT15M",
     "targetDedicatedNodes": 5,
     "targetLowPriorityNodes": 0,
     "taskSlotsPerNode": 3,
     "taskSchedulingPolicy": {
          "nodeFillType": "spread"
     },
     "enableAutoScale": false,
     "enableInterNodeCommunication": true,
     "metadata": [
          {
               "name": "myproperty",
               "value": "myvalue"
          }
     ]
}

Importante

Questo documento fa riferimento a una versione di versione di Linux vicina o alla fine della vita (EOL). Prendere in considerazione l'aggiornamento a una versione più recente.

Accesso in uscita a Internet

In un pool senza indirizzi IP pubblici, le macchine virtuali non saranno in grado di accedere a Internet pubblico, a meno che non si configuri la configurazione di rete in modo appropriato, ad esempio tramite NAT di rete virtuale. NAT consente solo l'accesso in uscita a Internet dalle macchine virtuali nella rete virtuale. I nodi di calcolo creati in batch non saranno accessibili pubblicamente, perché non hanno indirizzi IP pubblici associati.

Un altro modo per fornire la connettività in uscita consiste nell'usare una route definita dall'utente.Another way to provide outbound connectivity is to use a user-defined route (UDR). Questo metodo consente di instradare il traffico a un computer proxy con accesso a Internet pubblico.

Passaggi successivi