Modalità di distribuzione di Azure Load Balancer
Azure Load Balancer supporta le seguenti modalità di distribuzione per il routing delle connessioni alle istanze nel pool back-end:
Modalità di distribuzione | Basato su hash | Persistenza della sessione: IP client | Persistenza della sessione: protocollo e IP client |
---|---|---|---|
Panoramica | Traffico dallo stesso indirizzo IP client con routing a qualsiasi istanza integra nel pool back-end | Traffico dallo stesso indirizzo IP client con routing alla stessa istanza di back-end | Traffico dallo stesso indirizzo IP client e protocollo con routing alla stessa istanza di back-end |
Tuple | tupla a cinque | tupla a due | tupla a tre |
Configurazione del portale di Azure | Salvataggio permanente sessione: Nessuno | Persistenza della sessione: IP client | Persistenza della sessione: protocollo e IP client |
REST API | "loadDistribution":"Default" |
"loadDistribution":SourceIP |
"loadDistribution":SourceIPProtocol |
Non è previsto alcun tempo di inattività quando si passa da una modalità di distribuzione a un'altra in un servizio di bilanciamento del carico.
Azure Load Balancer usa un algoritmo di distribuzione con tupla a cinque per impostazione predefinita.
Il modello con tupla a cinque è costituito da:
- IP di origine
- Porta di origine
- IP di destinazione
- Porta di destinazione
- Tipo di protocollo
L'hash viene usato per eseguire il routing del traffico a istanze back-end integre all'interno del pool back-end. La persistenza dell'algoritmo viene mantenuta solo all'interno di una sessione di trasporto. Quando il client avvia una nuova sessione dallo stesso IP di origine, la porta di origine cambia e il traffico quindi viene indirizzato a un'istanza di back-end diversa.
Per configurare la distribuzione basata su hash, è necessario selezionare la persistenza della sessione Nessuno nel portale di Azure. Questo specifica che le richieste successive provenienti dallo stesso client possono essere gestite da qualsiasi macchina virtuale.
La persistenza della sessione è nota anche come affinità di sessione, affinità dell'IP di origine o affinità dell'IP client. Questa modalità di distribuzione un hash con tupla a due (IP di origine e IP di destinazione) o a tre (IP di origine, IP di destinazione e tipo di protocollo) per eseguire il routing del traffico alle istanze back-end. Quando si usa la persistenza della sessione, le connessioni dallo stesso client sono trasmesse alla stessa istanza back-end all'interno del pool back-end.
La modalità di persistenza della sessione ha due tipi di configurazione:
- IP client (tupla a 2): specifica che le richieste successive provenienti dallo stesso indirizzo IP client verranno gestite dalla stessa istanza back-end.
- IP client e protocollo (tupla a tre): specifica che le richieste successive provenienti dalla stessa combinazione di indirizzo IP client e protocollo verranno gestite dalla stessa istanza back-end.
La figura seguente illustra una configurazione con tupla a due. Si noti che la configurazione con tupla a due viene eseguita tramite il bilanciamento del carico nella macchina virtuale 1 (VM1). Viene eseguito il backup di VM1 con VM2 e VM3.
L'affinità dell'IP di origine con l'IP client e il protocollo (affinità dell'IP di origine con tupla a tre) risolve un'incompatibilità tra Azure Load Balancer e il Gateway Desktop remoto (Gateway RD).
Un altro scenario d'uso è il caricamento di contenuti multimediali. Il caricamento dei dati avviene tramite UDP, ma il piano di controllo viene raggiunto tramite TCP:
- Un client avvia una sessione TCP all'indirizzo pubblico con carico bilanciato e viene indirizzato a uno specifico DIP. Il canale viene lasciato attivo per monitorare lo stato della connessione.
- Viene avviata una nuova sessione UDP dallo stesso computer client allo stesso endpoint pubblico con carico bilanciato. La connessione viene indirizzata allo stesso endpoint DIP della connessione TCP precedente. Il caricamento del supporto può essere eseguito con una velocità effettiva elevata mantenendo un canale di controllo tramite TCP.
Nota
Quando vengono modificati i membri del pool back-end di Load Balancer tramite rimozione o aggiunta di una macchina virtuale, la distribuzione delle richieste client viene ricalcolata. Non è possibile dipendere da nuove connessioni da client esistenti che terminano nello stesso server. Inoltre, l'uso della modalità di distribuzione dell'affinità IP di origine può comportare una distribuzione non omogenea del traffico. I client in esecuzione dietro i proxy possono essere visti come un'applicazione client univoca.
Per altre informazioni su come configurare la modalità di distribuzione di Azure Load Balancer, vedere Configurare la modalità di distribuzione per Azure Load Balancer.