Come configurare il bilanciamento del carico dell'applicazione con routing basato su host

Come configurare il bilanciamento del carico dell'applicazione con routing basato su host

“Un bilanciamento del carico riceve richieste e quindi le trasferisce agli obiettivi definiti in un gruppo target. Possiamo creare un bilanciamento del carico dell'applicazione utilizzando la console di gestione AWS o AWS CLI. Esistono diverse opzioni di routing con il bilanciamento del carico dell'applicazione AWS, E.G., Routing basato su host.

Nel routing basato su host, il traffico in arrivo viene instradato sulla base del nome di dominio o del nome host indicato nell'intestazione host. In questo tutorial, creeremo un bilanciamento del carico dell'applicazione con routing basato su host."

Panoramica di questo laboratorio

In questo laboratorio, imposteremo il bilanciamento del carico dell'applicazione su AWS utilizzando l'approccio di routing basato su host. Per eseguire questo laboratorio, richiediamo i seguenti componenti: in primo luogo, abbiamo bisogno di due zone di disponibilità con un minimo di un'istanza EC2 in ciascuno di essi. Il prossimo è un VPC con almeno una sottorete pubblica in ciascuna di queste zone di disponibilità. Configureremo il bilanciamento del carico usando queste sottoreti pubblici. Infine, configurare un server Web per le istanze EC2 sopra e utilizzare il gruppo di sicurezza per aprire la porta 80 per le richieste HTTP in queste istanze.

Configurazione delle istanze EC2

La prima istanza EC2 è un Ubuntu 20.04 Linux Machine e il server Web (Apache) visualizza il messaggio:Questo è un host XYZ". Ha un nome host: www.XYZ.Tecofes.com

Allo stesso modo, la seconda istanza è anche un Ubuntu 20.04 Linux, con il server Web che visualizza il messaggio:Questo è un ospite ABC". Ha un nome host: www.ABC.Tecofes.com

I web server contengono le directory "ABC" e "XYZ" all'interno delle loro directory di radice, io.e. (/var/www/).

Impostazione del gruppo target

Passo 1. In questo passaggio, creeremo gruppi target ("XYZ" e "ABC") per instradare le richieste in arrivo. Sul dashboard EC2, selezionare l'opzione Gruppi di destinazione sul riquadro sinistro con il titolo di bilanciamento del carico. Ora seleziona l'opzione "Crea gruppo target":


Passo 2. La pagina "Specifica i dettagli del gruppo" ha diverse opzioni da riempire.

i) Iniziamo con l'intestazione della "configurazione di base":

  1. Per l'opzione "Scegli un tipo di destinazione", fai clic sul pulsante di opzione "istanze" qui.
  1. Per il "nome del gruppo target", immettere un nome del gruppo target appropriato ("XYZ" nel mio caso).
  1. Per le opzioni "Protocollo" e "Porta", selezionare rispettivamente "HTTP" e "80".
  1. Per l'opzione "VPC", scegli il VPC contenente le tue istanze.
  1. Infine, per la "versione del protocollo", attenersi all'opzione predefinita (HTTP1).

ii) La configurazione "Controlli sanitari" ha i seguenti campi:

  1. Per il menu a discesa "Health Control Protocol", scegli HTTP.
  1. Per il "percorso di controllo sanitario", specificare un percorso personalizzato o utilizzare quello predefinito (consigliato).
  2. Si consiglia di mantenere le "impostazioni di controllo sanitario avanzate" così com'è. L'aggiunta di tag è un passaggio opzionale. Inserisci "Avanti" per continuare.

Registra le istanze

In questo passaggio, dobbiamo registrare le istanze con i gruppi target.

Passo 1. In questa pagina, scegli un'istanza e quindi seleziona il pulsante "Includi in attesa di seguito". Questo farà apparire l'istanza nella testa di "Review Targets". Procedere premendo il pulsante "Crea gruppo target".

Per un altro gruppo target, "ABC", ripeti gli stessi passaggi per creare un gruppo target e quindi allegare un'altra istanza qui. Sui gruppi target, i due gruppi target appariranno come:


Finora non abbiamo allegato alcun bilanciamento del carico ai nostri gruppi target. Andiamo a creare un bilanciamento del carico.

Crea il bilanciamento del carico dell'applicazione

Nota: Creazione di un servizio di bilanciamento del carico richiede di pagare AWS.

Passo 1. Sul dashboard EC2, selezionare il titolo di caricamento dei bilanciatori e premere il pulsante "Crea il bilanciamento del carico", quindi selezionare "Bilanciatore del carico dell'applicazione":


Passo 2. Immettere un nome per il bilanciamento del carico che soddisfa i vincoli di denominazione. Nell'ambito dello schema, mantieni l'opzione predefinita ("Facing Internet") selezionata. Per "Tipo di indirizzo IP", scegli IPv4.


Passaggio 3. Andando avanti, abbiamo "mappatura della rete"; Qui, scegli il VPC con cui stiamo lavorando. Inoltre, scegli due zone di disponibilità che possiedono gli obiettivi. Il traffico in arrivo verrà instradato a questi obiettivi dal bilanciamento del carico.


Passaggio 4. Per i gruppi di sicurezza, selezionare o creare un nuovo gruppo di sicurezza per il bilanciamento del carico che consentirà la comunicazione con la porta di destinazione (porta 80)


Passaggio 5. Ora vieni gli ascoltatori e il segmento di routing; Quello che dobbiamo fare qui è configurare un ascoltatore scegliendo un protocollo (HTTP qui) e una porta. Per l'azione predefinita, scegli il target corrispondente al campo "Forward to".


Passaggio 6. L'aggiunta di tag e servizi aggiuntivi sono passaggi opzionali e possono essere saltati. Dopo aver esaminato il riepilogo della configurazione e fare clic sul pulsante "Crea il bilanciamento del carico":


Il bilanciatore del carico è ora pronto.

Aggiungi le regole di inoltro basate su host

Dopo aver creato il bilanciamento del carico e il suo stato diventa attivo, siamo tenuti ad aggiungere le regole del traffico in avanti.

Passo 1. Dalla pagina "Carica bilanciatori" e selezionare il bilanciamento del carico e quindi passare alla scheda Ascoltatore:


Passo 2. Passare alla scheda Ascoltatore e nella colonna "Regole", fare clic sul collegamento "Visualizza/Modifica regole". Una nuova pagina appare per prima qui; Fai clic sull'icona "+", quindi fai clic sul collegamento "Inserisci regola".


Passaggio 3. Per la colonna IF (All Match), fai come segue:

i) Fare clic sulla "+ Aggiungi condizione" e impostare "Intestazione host" come tipo di regola.

ii) Immettere l'host o il nome di dominio all'interno del campo corrispondente all'etichetta "IS".

Passaggio 4. Per la colonna "allora", fai come segue:

I) Fare clic su "+Aggiungi azione" e imposta "avanti" come azione.

ii) Scegli il gruppo target.

Salva la regola e per un altro gruppo target, inserisci la regola allo stesso modo e salvala.


Nel caso in cui le regole di cui sopra non siano soddisfatte, verrà utilizzata la regola predefinita.

Registra il dominio

Per far funzionare il routing basato su host su Internet, dobbiamo registrare i nomi host con la Route 53 e mapparli con il DNS del bilanciamento del carico.

Passo 1. Dalla dashboard della Route 53, scegli l'opzione "Crea Zone Hosted":


Passo 2. Successivamente, inserisci il tuo nome di dominio dove verrà instradato il traffico. Per il campo "Tipo", imposta "Zona ospitata pubblica". Premi il pulsante "Crea zona ospitata".


Passaggio 3. Nella sezione "Record", scegli "Crea record".


Passaggio 4. Nella pagina "Scegli Criteri di routing", seleziona il collegamento "Passa alla procedura guidata" e quindi scegli la casella "semplice routing" e fai clic su "Avanti":

Passaggio 5. Ora scegli "Definisci un record semplice" e quindi inserisci i dettagli del record:

Dominio: Nome del dominio o sottodominio per instradare il traffico verso.

Tipo di registrazione: Tipo DNS del record.

Traffico valore/percorso verso:

  1. Scegli "Alias ​​to Application e Classic Load Balancer"
  2. Scegli la regione in cui viene distribuito il bilanciamento del carico
  3. Scegli l'indirizzo del bilanciamento del carico e premi "Definisci un record semplice".

Nella pagina successiva, fai clic sul pulsante "Crea record".

Fai gli stessi passaggi per un altro nome di dominio e verifica il record sopra nella pagina "Configura record".

Prova la configurazione

Per verificare la procedura di cui sopra, su un browser Web, immettere il nome DNS del bilanciamento del carico insieme a I nomi ospitanti:

Conclusione

Abbiamo finalmente preso la strada per il routing basato su host sul bilanciamento del carico dell'applicazione AWS. Prova a fare questo laboratorio da solo e prova anche a configurare il bilanciamento del carico dell'applicazione con routing basato su percorsi.

Riferimenti: https: // docs.AWS.Amazon.com/elasticloadbalancing/ultimo/applicazione/applicazione-caricatore-bilanciatore-imbarcazione.html