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

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

“Il bilanciamento del carico è una tecnica in cui il carico di lavoro viene ridistribuito in modo tale che non vi sia un uso eccessivo, sotto uso o nessun uso dei dispositivi di elaborazione. In AWS, 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 sul percorso e routing basato su host.

Nel routing basato sul percorso, il traffico in arrivo viene instradato sulla base del percorso dell'URL dato."

Cosa copriremo?

In questa guida, vedremo come creare un bilanciamento del carico dell'applicazione con routing basato sul percorso.

Che cosa ti serve sapere?

Per questa guida, supponiamo che tu sappia:

  1. Cos'è un bilanciatore del carico e, più specificamente, qual è lo scopo di un bilanciamento del carico dell'applicazione?
  1. Come impostare un bilanciamento del carico dell'applicazione?

Di cosa avrai bisogno?

Per eseguire il laboratorio descritto in questa guida, hai bisogno di alcune cose:

  1. Accesso al tuo account AWS.
  2. Conoscenza del bilanciamento del carico dell'applicazione.
  3. Accesso a Internet.

Come funziona il routing basato sul percorso?

AWS ha quattro tipi (al momento della stesura di questo articolo) di bilanciatori del carico elastico. Si tratta di bilanciatori di carico classici, bilanciatori del carico dell'applicazione, bilanciatori del carico gateway e bilanciatori del carico di rete.

Dato che abbiamo a che fare con ALB, sembra bello dire un po 'di ALB. Alb, un bilanciamento del carico a livello 7, utilizza due o più istanze EC2 per distribuire il traffico. Il bilanciamento del carico elastico aggiunge o rilascia i server in base alla domanda di utilizzo dell'applicazione. Il traffico in arrivo è diviso tra più obiettivi. Questi obiettivi, residenti in zone di disponibilità singole o multipla, possono includere istanze, contenitori o indirizzi IP.

Inoltre, le regole di routing qui possono essere definite sulla base del contenuto della richiesta (routing basato sul contenuto). Come accennato in precedenza, le richieste di percorso di routing basate sul percorso si basano sul percorso URL, E.G., Se specifichiamo "/ordini", le richieste verranno inoltrate ai server che gestiscono le richieste dell'ordine e se il percorso è "/pagamento", le richieste verranno inoltrate ai server che gestiscono il lavoro di pagamento. In questo modo, possiamo segmentare il traffico e controllare in modo efficiente i carichi di lavoro del server.

Impostazione delle istanze

Ci sono alcune cose che devi fare per questo laboratorio: avvia due Ubuntu o Amazon Linux o altre due istanze EC2 e installa un server Web Apache su di essi. Personalizza la pagina dell'indice di ciascun server Web; Un server visualizza il messaggio "Questa è la pagina di pagamento" e l'altro visualizza "Questa è la pagina dell'ordine."Il file indice per queste pagine viene servito dalle directory" pagamento "e" ordine "all'interno della cartella"/var/www/html "per entrambi i server Web.

Requisito per il laboratorio

Ci sono alcuni requisiti per questo laboratorio che dovrebbero essere completati:

  1. Due zone di disponibilità con almeno un'istanza di servizio in ciascuno di essi. Configurare quindi due istanze e due AZ, con ogni AZ contenente almeno un'istanza.
  2. Un VPC contiene un minimo di una sottorete pubblica in ciascuna delle zone di disponibilità sopra.

Impostazione del gruppo target

A partire da gruppi target, ne abbiamo bisogno due per le istanze di cui sopra. Ogni istanza sarà associata a un gruppo target esclusivo per questo laboratorio. Crea un gruppo target e ripeti gli stessi passaggi per l'altro ma con un'istanza diversa.

Passo 1. Dirigiti alla console EC2 e scegli "Gruppi target"

Passo 2. Quindi, fai clic sul "Crea gruppo target" per la pagina successiva:

Passaggio 3. Per la pagina "Specifica i dettagli del gruppo", compilare i dettagli seguenti:

  1. Scegli un tipo di destinazione: Scegli l'opzione "istanze".
  2. Nome del gruppo target: Nome del gruppo target da utilizzare. ("Pagamento" e "ordine" nel nostro caso.)
  3. Protocollo: Http
  4. Porta: 80
  5. VPC: Scegli il VPC utilizzato qui.
  6. Versione del protocollo: Attenersi al già selezionato. (HTTP1)

La configurazione "Controlli sanitari":

  1. Protocollo di controllo sanitario: Http
  2. Percorso di controllo sanitario: Attenersi al valore predefinito o modifica se necessario (“/pagamento/indice.html "e"/ordine/indice.html "per i web server qui.).

Si consiglia di non toccare inutilmente le "impostazioni di controllo sanitario avanzate". Facoltativamente, aggiungi tag. Hit "Next" per continuare.

Passaggio 4. Ora registra le istanze EC2 con i gruppi target sopra. Scegli un'istanza e quindi premi sul pulsante "Includi in attesa di seguito". Questa istanza sarà ora disponibile nella sezione "Rescensione degli obiettivi". Fai clic sul pulsante "Crea gruppo target".

Dopo il completamento, i due gruppi target appariranno ora come:

Crea un bilanciamento del carico dell'applicazione (ALB)

Per creare un bilanciamento del carico dell'applicazione, utilizzare l'opzione di configurazione del bilanciamento del carico dalla console EC2. Abbiamo impostato la seguente configurazione per esso:

Carico Nome bilanciatore: Linuxhint-LB

schema: Fatta in Internet

Tipo di indirizzo IP: IPv4

VPC: il tuo VPC

Mappatura: Per ogni zona di disponibilità (AZ) contenente le istanze EC2, scegli l'AZ e quindi seleziona una sottorete pubblica per quell'AZ.

Gruppi di sicurezza: Consentire la porta 80.

Protocollo ascoltatore: Http e porta 80.

Azione predefinita: Seleziona un gruppo target qui.

Aggiunta di regole al bilanciamento del carico

Passo 1. Dopo aver configurato il bilanciamento del carico, vai alla scheda Ascoltatore del bilanciamento del carico target e seleziona il "Visualizza/modifica regole" con "Regole" colonna.

Passo 2. Ora seleziona l'icona "+", quindi fai clic sul collegamento "Inserisci regola" per aggiungere una nuova regola. Un nuovo blocco si aprirà per aggiungere regole. Fare clic sul menu "+Aggiungi condizione" e quindi scegliere il "tipo di regola" come percorso e immettere il percorso "/ordine/*" nel campo di testo allegato all'etichetta "Is". Salvarla.

Passaggio 3. Allo stesso modo, per la sezione "allora", scegli il menu "+Aggiungi azione" e quindi scegli l'opzione "Forward to" e seleziona il gruppo di destinazione "Ordina." Salvarla.

Fai gli stessi passaggi per un altro gruppo target chiamato "Pagamento."Il percorso dovrebbe ora essere"/pagamento/*."Rivedere le regole prima di procedere.

Test eseguire la configurazione

Apri un browser Web e inserisci l'URL del bilanciamento del carico e aggiungilo con il percorso dei gruppi target come:

  1. Percorso del gruppo target "ordine"
  1. Percorso del gruppo target "pagamento"

Avvolgendo

Congratulazioni, il nostro laboratorio è completo ora e il routing basato su percorsi funziona bene, come dimostrato sopra. Quello che possiamo fare dopo è configurare il routing basato su host o configurare una miscela di bilanciamento del carico di routing basato su host e basato su percorsi.