Configurazione di rete dei nodi

Un nodo del cluster Azure CycleCloud include le impostazioni predefinite per la rete e sono modificabili nella sezione relativa alla definizione del nodo nel modello di cluster.

Interfacce di rete

Quando Azure CycleCloud effettua il provisioning di una macchina virtuale di Azure per un cluster, collega un'interfaccia di rete virtuale. Per i set di scalabilità di macchine virtuali, un'interfaccia di rete virtuale è collegata a un servizio di bilanciamento del carico.

Le impostazioni di rete per i nodi sono configurabili modificando la sezione di definizione dell'interfaccia di rete del nodo nel modello di cluster.

Assegnazione di indirizzi IP pubblici

Aggiungere un AssociatePublicIpAddress attributo a un nodo per specificare se un nodo deve ricevere un indirizzo IP pubblico. Ad esempio:

[[node scheduler]]
[[[network-interface eth0]]]
    AssociatePublicIpAddress = true

La configurazione precedente consente l'accesso pubblico al nodo dell'utilità di pianificazione sulle porte consentite dal gruppo di sicurezza di rete per il Rete virtuale.

Per impostazione predefinita, l'indirizzo IP pubblico assegnato al nodo sarà dinamico e cambierà ogni volta che il cluster viene avviato. Per avere un indirizzo IP pubblico assegnato in modo statico per il nodo, creare prima di tutto un indirizzo IP pubblico nella sottoscrizione di Azure. Aggiungere quindi l'attributo PublicIP alla sezione node network-interface, assegnando l'ID risorsa per l'oggetto PublicIP creato.

[[node scheduler]]
[[[network-interface eth0]]]
    PublicIp = /subscriptions/${subscription_id/resourceGroups/${resource_group_name}/providers/Microsoft.Network/publicIPAddresses/${public-ip-name}

In alternativa, creare un'interfaccia di rete nella sottoscrizione di Azure e collegare un indirizzo IP pubblico a tale interfaccia di rete. Specificare quindi l'ID dell'interfaccia di rete nella configurazione del nodo:

[[node scheduler]]
[[[network-interface eth0]]]
    NetworkInterfaceId = /subscriptions/${subscription_id/resourceGroups/${resource_group_name}/providers/Microsoft.Network/networkInterfaces/${network-interface-name}

Assegnazione di un'etichetta DNS pubblica

L'aggiunta PublicDnsLabel a un'interfaccia di rete pubblica consentirà di personalizzare il nome DNS per tale indirizzo IP.

[[node scheduler]]
[[network-interface eth0]]
    AssociatePublicIpAddress = true
    PublicDnsLabel = myuniquename

La configurazione precedente restituirà un indirizzo IP pubblico assegnato in modo statico e una voce DNS per la macchina virtuale che si myuniquename.eastus.cloudapp.azure.com risolve in (con eastus la corrispondenza della posizione di Azure corrispondente per la macchina virtuale).

Assegnazione di un indirizzo IP privato

Per impostazione predefinita, le macchine virtuali riceveranno un indirizzo IP privato assegnato dinamicamente in Azure. In determinate circostanze, è necessario o auspicabile che i nodi abbiano indirizzi IP privati fissi. A tale scopo, usare la configurazione seguente per la sezione network-interface della configurazione del cluster:

[[[network-interface eth0]]]
PrivateIp = x.x.x.x

Si noti che l'indirizzo IP privato specificato deve essere valido per la subnet associata. Azure riserva i primi quattro e gli ultimi indirizzi IP nella subnet. Questi indirizzi non possono essere assegnati manualmente a un nodo.

Gruppi di sicurezza di rete

Azure CycleCloud effettua il provisioning di Macchine virtuali e set di scalabilità di macchine virtuali in reti virtuali e subnet definite dall'utente. L'accesso a porte specifiche nei nodi è in definitiva disciplinato dai gruppi di sicurezza di rete associati alla rete virtuale. Per altre informazioni, vedere Rete virtuale Documentazione

Se a un nodo è configurata un'interfaccia di rete con AssociatePublicIpAddress = trueo viene assegnato un PublicIp, il nodo riceverà automaticamente un gruppo di sicurezza di rete.

Questo valore può essere specificato da SecurityGroupo, se omesso, verrà generato automaticamente dalle input-endpoints sezioni del nodo. SecurityGroup specificato per un'interfaccia eseguirà l'override del gruppo di sicurezza di rete automatico creato per gli endpoint di input. A meno che non venga specificata una specifica SecurityGroup , tutte le interfacce otterranno il gruppo di sicurezza automatico dalle definizioni di input-endpoint.

Input-Endpoints nelle matrici di nodi

[[nodearray execute]]
  [[[network-interface eth0]]]
    AssociatePublicIpAddress = true

  [[[input-endpoint SSH]]]
  PrivatePort = 22
  PublicPort = 10000

  [[[input-endpoint MyCustomPort]]]
  PrivatePort = 999
  PublicPort = 10999
  Protocol = tcp

La configurazione precedente consente l'accesso pubblico ai nodi di esecuzione sulle porte consentite dal gruppo di sicurezza di rete per il Rete virtuale. Per nodearray, PublicPort è il numero di porta di base per i nodi nella matrice. L'intervallo di porte riservate per nodearray è 500 per endpoint. Per impostazione predefinita, gli endpoint sono protocollo TCP, ma UDP è supportato anche tramite Protocol = UDP. Per impostazione predefinita, l'indirizzo IP pubblico assegnato al nodo sarà dinamico e cambierà ogni volta che il cluster viene avviato. Per avere un indirizzo IP pubblico assegnato in modo statico per il nodo, aggiungere PublicIP alla configurazione dell'interfaccia di rete per l'interfaccia primaria:

Per i nodi proxy restituiti, se AssociatePublicIpAddress non è stato specificato, verrà creato automaticamente un indirizzo IP pubblico. Se AssociatePublicIpAddress è stato impostato su False, il nodo avrà esito negativo con un avviso e non verrà creato alcun gruppo di sicurezza di rete automatico per il nodo.

Nota

Dopo l'avvio di un nodo con AssociatePublicIpAddress, l'indirizzo IP verrà mantenuto fino alla rimozione del nodo o del cluster.