Strato Elastic Load Balancing - AWS OpsWorks

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Strato Elastic Load Balancing

Importante

Il AWS OpsWorks Stacks servizio ha raggiunto la fine del ciclo di vita il 26 maggio 2024 ed è stato disattivato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il AWS Support Team su AWS re:post o tramite Premium AWS Support.

Elastic Load Balancing funziona in modo leggermente diverso rispetto a un livello AWS OpsWorks Stacks. Invece di creare un layer e aggiungervi istanze, utilizzate la console o l'API Elastic Load Balancing per creare un load balancer e quindi collegarlo a un layer esistente. Oltre a distribuire il traffico verso le istanze del layer, Elastic Load Balancing esegue le seguenti operazioni:

  • Rileva le istanze Amazon EC2 non integre e reindirizza il traffico verso le istanze integre rimanenti fino al ripristino delle istanze non integre.

  • Ridimensiona automaticamente la capacità di gestione delle richieste in risposta al traffico in entrata.

  • Se si abilita Connection Draining, il sistema di bilanciamento del carico invia nuove richieste alle istanze non integre o la cui registrazione sta per essere annullata, ma mantiene la connessione attiva, fino a un valore di timeout specificato, per consentire all'istanza di completare qualsiasi richiesta in transito.

Dopo aver collegato un sistema di bilanciamento del carico a un layer, Stacks esegue le seguenti operazioni: AWS OpsWorks

  • Annulla la registrazione di qualsiasi istanza registrata attualmente.

  • Registra automaticamente le istanze del livello quando sono online e annulla la registrazione delle istanze quando sono offline, tra cui istanze basate sul carico e sul tempo.

  • Avvia automaticamente le richieste di routing per le istanze registrate nelle zone di disponibilità.

Se hai abilitato la funzione di drenaggio della connessione del load balancer, puoi specificare se AWS OpsWorks Stacks la supporta. Se abiliti il supporto per il drenaggio della connessione (impostazione predefinita), dopo la chiusura di un'istanza, AWS OpsWorks Stacks esegue le seguenti operazioni:

  • Annulla la registrazione dell'istanza dal sistema di bilanciamento del carico.

    Il sistema di bilanciamento del carico smette di inviare nuove richieste e avvia il Connection Draining.

  • Ritarda l'attivazione di un evento di arresto del ciclo di vita fino a che il sistema di bilanciamento del carico ha completato il Connection Draining.

Se non abiliti il supporto per il drenaggio della connessione, AWS OpsWorks Stacks attiva l'evento Shutdown non appena l'istanza viene chiusa, anche se l'istanza è ancora connessa al load balancer.

Per utilizzare Elastic Load Balancing con uno stack, devi prima creare uno o più sistemi di bilanciamento del carico nella stessa regione utilizzando la console Elastic Load Balancing, la CLI o l'API. Ricordarsi quanto segue:

  • È possibile collegare solo un sistema di bilanciamento del carico a un livello.

  • Ogni sistema di bilanciamento del carico è in grado di gestire un solo livello.

  • AWS OpsWorks Stacks non supporta Application Load Balancer. Puoi usare Classic Load Balancer solo con AWS OpsWorks Stacks.

Ciò significa che è necessario creare un sistema di bilanciamento del carico Elastic Load Balancing separato per ogni livello di ogni stack che si desidera bilanciare e utilizzarlo solo per tale scopo. Una pratica consigliata consiste nell'assegnare un nome distintivo a ciascun sistema di bilanciamento del carico Elastic Load Balancing che intendi utilizzare AWS OpsWorks con gli stack, ad esempio MyStack 1 RailsLayer - -ELB, per evitare di utilizzare un load balancer per più di uno scopo.

Importante

Ti consigliamo di creare nuovi sistemi di bilanciamento del carico Elastic Load Balancing per i livelli Stacks. AWS OpsWorks Se scegli di utilizzare un sistema di bilanciamento del carico Elastic Load Balancing esistente, devi prima confermare che non viene utilizzato per altri scopi e che non ha istanze collegate. Dopo aver collegato il load balancer al layer, OpsWorks rimuove tutte le istanze esistenti e configura il load balancer per gestire solo le istanze del layer. Sebbene sia tecnicamente possibile utilizzare la console o l'API Elastic Load Balancing per modificare la configurazione di un load balancer dopo averlo collegato a un layer, non dovresti farlo; le modifiche non saranno permanenti.

Per collegare un sistema di bilanciamento del carico Elastic Load Balancing a un layer
  1. Se non l'hai ancora fatto, usa la console Elastic Load Balancing, l'API o la CLI per creare un load balancer nella regione dello stack. Quando si crea un sistema di bilanciamento del carico, procedere nel seguente modo:

    • Assicurarsi di specificare un percorso ping del controllo dello stato adatto per l'applicazione.

      Il percorso ping predefinito è /index.html, perciò se l'applicazione root non include index.html, è necessario specificare un percorso ping appropriato o il controllo dello stato darà errori.

    • Se si desidera utilizzare Connection Draining, assicurarsi che la funzionalità sia attiva e che abbia un valore di timeout appropriato.

    Per ulteriori informazioni, consulta Elastic Load Balancing.

  2. Creazione del livello che si desidera equilibrare o modificare le impostazioni di rete di un livello esistente.

    Nota

    Non è possibile collegare un sistema di bilanciamento del carico quando si crea un livello personalizzato. È necessario modificare le impostazioni del livello.

  3. In Elastic Load Balancing, seleziona il load balancer che desideri collegare al layer e specifica se desideri che AWS OpsWorks Stacks supporti il drenaggio delle connessioni.

Dopo aver collegato un load balancer a un layer, AWS OpsWorks Stacks attiva un evento Configure lifecycle sulle istanze dello stack per notificare loro la modifica. AWS OpsWorks Stacks attiva anche un evento Configure quando si scollega un sistema di bilanciamento del carico.

Nota

Dopo l'avvio di un'istanza, AWS OpsWorks Stacks esegue le ricette Setup and Deploy, che installano pacchetti e distribuiscono applicazioni. Al termine di tali ricette, l'istanza è nello stato online e AWS OpsWorks Stacks la registra con Elastic Load Balancing. AWS OpsWorks Stacks attiva anche un evento Configure dopo che l'istanza è online. Ciò significa che la registrazione di Elastic Load Balancing e le ricette di configurazione potrebbero essere eseguite contemporaneamente e l'istanza potrebbe essere registrata prima del termine delle ricette di configurazione. Per garantire che una ricetta finisca prima che un'istanza venga registrata con Elastic Load Balancing, è necessario aggiungere la ricetta agli eventi del ciclo di vita Setup o Deploy del layer. Per ulteriori informazioni, consulta Esecuzione di ricette.

Talvolta è utile rimuovere un'istanza da un sistema di bilanciamento del carico. Ad esempio, quando si aggiorna un'app, si consiglia di distribuire l'app in una singola istanza e verificare che l'app funzioni correttamente prima di distribuirla in ogni istanza. Quell'istanza viene in genere rimossa dal sistema di bilanciamento del carico, in modo che non riceva le richieste dagli utenti finché non si è verificato l'aggiornamento.

È necessario utilizzare la console o l'API Elastic Load Balancing per rimuovere temporaneamente un'istanza online da un sistema di bilanciamento del carico. La seguente sezione descrive come utilizzare la console.

Per rimuovere temporaneamente un'istanza da un sistema di bilanciamento del carico
  1. Apri la console Amazon EC2 e scegli Load Balancers.

  2. Scegliere il sistema di bilanciamento del carico appropriato e aprire la scheda Instances (Istanze).

  3. Selezionare Remove from Load Balancer (Rimuovi da Sistema di bilanciamento del carico) nella colonna dell'istanza Actions (Operazioni).

  4. Al termine, selezionare Edit Instances (Modifica istanze) e tornare l'istanza al sistema di bilanciamento del carico.

Importante

Se utilizzi la console o l'API Elastic Load Balancing per rimuovere un'istanza da un load balancer, devi anche utilizzare Elastic Load Balancing per ripristinarla. AWS OpsWorks Stacks non è a conoscenza delle operazioni che esegui con altre console di servizio o API e non restituirà l'istanza al sistema di bilanciamento del carico per te. A volte, AWS OpsWorks Stacks può aggiungere nuovamente l'istanza all'ELB, ma questo non è un comportamento garantito e non si verifica in tutti i casi.

È possibile collegare più sistemi di bilanciamento del carico per un determinato set di istanze come segue:

Per collegare più sistemi di bilanciamento del carico
  1. Utilizza la console Elastic Load Balancing, l'API o la CLI per creare un set di sistemi di bilanciamento del carico.

  2. Creare un livello personalizzato per ogni sistema di bilanciamento del carico e collegarvi uno dei sistemi di bilanciamento del carico. Non è necessario implementare ricette personalizzate per questi livelli; un livello personalizzato predefinito è sufficiente.

  3. Aggiungere il set di istanze per ciascun livello personalizzato.

È possibile esaminare le proprietà di un sistema di bilanciamento del carico, visitando la pagina delle istanze e facendo clic sul nome appropriato del sistema di bilanciamento del carico.

La pagina ELB mostra le proprietà di base del sistema di bilanciamento del carico, tra cui il nome DNS e lo stato di integrità delle istanze associate. Se lo stack è in esecuzione in un VPC, la pagina mostra le sottoreti anziché le zone di disponibilità. Un segno di spunta verde indica un'istanza sana. È possibile fare clic sul nome per connettersi a un server, tramite il sistema di bilanciamento del carico.