HAProxy AWS OpsWorks Stacks Layer - 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à.

HAProxy AWS OpsWorks Stacks Layer

Nota

Questo livello è disponibile solo per stack Chef 11 e stack basati su Linux di versioni precedenti.

Il AWS OpsWorks Stacks layer è HAProxy un AWS OpsWorks Stacks layer che fornisce un modello per le istanze che ospitano un HAProxyserver: un bilanciamento del carico e prestazioni affidabili ad alte prestazioni. TCP HTTP Un'istanza small è in genere sufficiente per gestire tutto il traffico del server di applicazioni.

Nota

Gli stack sono limitati a una singola regione. Per distribuire l'applicazione tra più regioni, devi creare uno stack distinto per ogni regione.

Per creare un livello HAProxy
  1. Nel riquadro di navigazione, fare clic su Layers (Livelli).

  2. Nella pagina Layers (Livelli), fare clic su Add a Layer (Aggiungi un livello) o + Layer (+ Livello). Per Tipo di livello, selezionare. HAProxy

Il livello è associato alle impostazioni di configurazione opzionali seguenti.

HAProxystatistiche

Specifica se il livello raccoglie e visualizza le statistiche. Il valore predefinito è Yes (Sì).

statistiche URL

Il URL percorso della pagina delle statistiche. Il completo URL è http://DNSNameStatisticsPathdove: DNSName è il DNS nome dell'istanza associata. Il valore di timeout predefinito per StatisticsPath il valore è /haproxy? stats, che corrisponde a qualcosa come: http://ec2-54-245-151-7.us-west-2.compute.amazonaws.com/haproxy?stats.

Statistics user name (Nome utente statistiche)

Il nome utente della pagina delle statistiche, che devi fornire per visualizzare la pagina delle statistiche. Il valore predefinito è «opsworks».

Statistics password (Password statistiche)

Password della pagina relativa alle statistiche, che deve essere specificata per poter visualizzare la pagina delle statistiche. Il valore predefinito è una stringa generata casualmente.

Health check URL

Il URL suffisso del controllo sanitario. HAProxylo utilizza URL per chiamare periodicamente un HTTP metodo su ogni istanza dell'Application Server per determinare se l'istanza funziona. Se il controllo di integrità fallisce, HAProxy interrompe l'indirizzamento del traffico verso l'istanza fino al riavvio, manualmente o tramite riparazione automatica. Il valore predefinito per il URL suffisso è «/», che corrisponde alla home page dell'istanza del server: http://DNSName/.

Health check method (Metodo controllo stato)

Un HTTP metodo da utilizzare per verificare se le istanze funzionano. Il valore predefinito è OPTIONSe puoi anche specificare GETo HEAD. Per ulteriori informazioni, consulta httpchk.

Gruppi di sicurezza personalizzati

Questa impostazione viene visualizzata se si sceglie di non associare automaticamente un elemento integrato AWS OpsWorks Colloca il gruppo di sicurezza con i tuoi livelli. Devi specificare il gruppo di sicurezza da associare al livello. Assicurati che il gruppo abbia le impostazioni corrette per consentire il traffico tra livelli. Per ulteriori informazioni, consulta Creare un nuovo stack.

HAProxy layer configuration form with options for statistics and health check settings.
Nota

Registra la password per un uso successivo; AWS OpsWorks Stacks non consente di visualizzare la password dopo aver creato il layer. Tuttavia, puoi aggiornare la password. A tale scopo, passa alla pagina Edit (Modifica) del livello e fai clic su Update password (Aggiorna password) nella scheda General Settings (Impostazioni generali).

HAProxy layer settings interface with options for statistics, health checks, and auto healing.

Funzionamento dei livelli HAProxy

Per impostazione predefinita, HAProxy esegue le seguenti operazioni:

  • Ascolta le richieste sulle HTTPS porte HTTP and.

    Puoi configurare l'HAProxyascolto solo sulla HTTPS porta HTTP or sovrascrivendo il modello di configurazione Chef,. haproxy.cfg.erb

  • Instrada il traffico in entrata alle istanze membro di qualsiasi livello del server di applicazioni.

    Per impostazione predefinita, AWS OpsWorks Stacks si configura HAProxy per distribuire il traffico alle istanze che sono membri di qualsiasi livello di application server. Ad esempio, potresti avere uno stack con entrambi i livelli Rails App Server e PHP App Server e un HAProxy master distribuisce il traffico alle istanze in entrambi i livelli. Puoi configurare l'instradamento predefinito utilizzando una ricetta personalizzata.

  • Instrada il traffico tra più zone di disponibilità.

    Se una zona di disponibilità non è più raggiungibile, il sistema di bilanciamento del carico instrada il traffico in entrata alle istanze in altre zone, in modo che l'applicazione continui a funzionare senza interruzioni. Per questo motivo, si consiglia di distribuire i server di applicazioni su più zone di disponibilità.

  • Esegue periodicamente il metodo di controllo dello stato specificato su ogni istanza del server di applicazioni per valutarne lo stato di integrità.

    Se il metodo non viene restituito entro un periodo di timeout specificato, si presume che l'istanza abbia avuto esito negativo e HAProxy interrompe l'instradamento delle richieste verso l'istanza. AWS OpsWorks Stacks fornisce anche un modo per sostituire automaticamente le istanze fallite. Per ulteriori informazioni, consulta Utilizzo della diagnostica automatica. Puoi modificare il metodo di controllo dello stato quando crei il livello.

  • Raccoglie le statistiche e, facoltativamente, le visualizza in una pagina Web.

Importante

Affinché il controllo dello stato di salute funzioni correttamente con il OPTIONS metodo predefinito, l'app deve restituire un codice di stato 2xx o 3xx.

Per impostazione predefinita, quando aggiungete un'istanza a un livello, HAProxy AWS OpsWorks Stacks le assegna un indirizzo IP elastico per rappresentare l'applicazione, che è pubblico a livello mondiale. Poiché l'indirizzo IP elastico dell'HAProxyistanza è l'unico esposto pubblicamente dell'applicazioneURL, non è necessario creare e gestire nomi di dominio pubblico per le istanze sottostanti dell'Application Server. Per recuperare l'indirizzo, passa alla pagina Instances (Istanze) ed esamina l'indirizzo IP pubblico dell'istanza, come illustrato nella seguente figura. Un indirizzo seguito da (EIP) è un indirizzo IP elastico. Per ulteriori informazioni sugli indirizzi IP elastici, consulta Elastic IP Addresses (EIP).

HAProxy instance table showing hostname, status, and public IP address with EIP highlighted.

Quando interrompi un'HAProxyistanza, AWS OpsWorks Stacks conserva l'indirizzo IP elastico e lo riassegna all'istanza al riavvio. Se elimini un'HAProxyistanza, per impostazione predefinita, AWS OpsWorks Stacks elimina l'indirizzo IP dell'istanza. Per conservare l'indirizzo, deseleziona l'opzione Delete instance's Elastic IP (Elimina IP elastico istanza), come illustrato di seguito.

HAProxy instance deletion confirmation dialog with option to retain Elastic IP address.

Questa opzione ha effetti su cosa succede quando aggiungi una nuova istanza al livello per sostituire un'istanza eliminata:

  • Se hai mantenuto l'indirizzo IP elastico dell'istanza eliminata, AWS OpsWorks Stacks assegna l'indirizzo alla nuova istanza.

  • Altrimenti, AWS OpsWorks Stacks assegna un nuovo indirizzo IP elastico all'istanza e devi aggiornare le impostazioni del DNS registrar per mappare il nuovo indirizzo.

Quando le istanze dell'application server sono on line o disattivate, manualmente o come conseguenza del ridimensionamento automatico o della riparazione automatica, la configurazione del bilanciamento del carico deve essere aggiornata per indirizzare il traffico verso il set corrente di istanze online. Questa operazione viene gestita automaticamente dalle ricette predefinite del livello:

  • Quando nuove istanze sono online, AWS OpsWorks Stacks attiva un evento Configure lifecycle. Le ricette Configure integrate nel HAProxy layer aggiornano la configurazione del load balancer in modo che distribuisca anche le richieste a tutte le nuove istanze del server delle applicazioni.

  • Quando le istanze vanno fuori linea o un'istanza non supera un controllo di integrità, AWS OpsWorks Stacks attiva anche un evento Configure lifecycle. Le ricette HAProxy Configure aggiornano la configurazione del load balancer per indirizzare il traffico solo verso le restanti istanze online.

Infine, puoi anche utilizzare un dominio personalizzato con il HAProxy layer. Per ulteriori informazioni, consulta Utilizzo di domini personalizzati.

Pagina delle statistiche

Se hai abilitato la pagina delle statistiche, HAProxy viene visualizzata una pagina contenente una varietà di metriche in base a quanto specificatoURL.

Per visualizzare le statistiche HAProxy
  1. Ottieni il DNS nome pubblico dell'HAProxyistanza dalla pagina Dettagli dell'istanza e copialo.

  2. Nella pagina Layer, fate clic HAProxyper aprire la pagina dei dettagli del layer.

  3. Ottieni le statistiche URL dai dettagli del layer e aggiungile al DNS nome pubblico. Ad esempio, aggiungere http://ec2-54-245-102-172.us-west-2.compute.amazonaws.com/haproxy?stats.

  4. Incolla le URL informazioni del passaggio precedente nel browser e utilizza il nome utente e la password specificati al momento della creazione del layer per aprire la pagina delle statistiche.

    HAProxy statistics report showing process information and session data for frontend and backend servers.