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à.
Bilanciamento del carico di un livello
Importante
Il AWS OpsWorks Stacks il 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 Squadra su AWS Re:post o tramite
AWS OpsWorks Stacks offre due opzioni di bilanciamento del carico, Elastic Load Balancing HAProxy
- SSLTerminazione
-
Il HAProxy livello integrato non gestisce la SSL terminazione; è necessario terminare sui serverSSL. Il vantaggio di questo approccio è che il traffico rimane crittografato finché non raggiunge i server. Tuttavia, i server devono gestire la decrittografia e ciò aumenta il carico dei server. Inoltre, è necessario inserire i SSL certificati sui server delle applicazioni, che sono più accessibili agli utenti.
Con Elastic Load Balancing, puoi terminare SSL con il sistema di bilanciamento del carico. Ciò riduce il carico sui server delle applicazioni, ma il traffico tra il load balancer e il server non è crittografato. Elastic Load Balancing consente anche di terminare SSL dal server, ma è piuttosto complicato da configurare.
- Dimensionamento
-
Se il traffico in entrata supera la capacità di un sistema di bilanciamento del HAProxy carico, è necessario aumentarne la capacità manualmente.
Elastic Load Balancing si ridimensiona automaticamente per gestire il traffico in entrata. Per assicurarti che un load balancer Elastic Load Balancing abbia una capacità sufficiente per gestire il carico previsto quando è online per la prima volta, puoi preriscaldarlo.
- Errore del sistema di bilanciamento del carico
-
Se l'istanza che ospita il HAProxy server si guasta, l'intero sito potrebbe essere offline fino al riavvio dell'istanza.
Elastic Load Balancing è più resistente ai guasti di. HAProxy Ad esempio, fornisce nodi di bilanciamento del carico in ogni zona di disponibilità con istanze registrateEC2. Se il servizio in una regione in una zona viene interrotto, gli altri nodi continuano a gestire il traffico in entrata. Per ulteriori informazioni, consulta Elastic Load Balancing Concepts.
- Tempo di inattività
-
Entrambi i sistemi di bilanciamento del carico terminano una connessione se un server è inattivo per un periodo maggiore del valore del timeout di inattività specificato.
-
HAProxy— Il valore del timeout di inattività non ha un limite massimo.
-
Elastic Load Balancing: il valore di timeout di inattività predefinito è 60 secondi, con un massimo di 3600 secondi (60 minuti).
Il limite di inattività di Elastic Load Balancing è sufficiente per la maggior parte degli scopi. Ti consigliamo di utilizzarlo HAProxy se hai bisogno di un timeout di inattività più lungo. Per esempio:
-
Una HTTP connessione a lunga durata utilizzata per le notifiche push.
-
Un'interfaccia di amministrazione che puoi utilizzare per eseguire attività che potrebbero richiedere più di 60 minuti.
-
- URLmappatura basata
-
Potresti voler fare in modo che un sistema di bilanciamento del carico inoltri una richiesta in entrata a un server particolare in base alla richiesta. URL Ad esempio, supponiamo che tu abbia un gruppo di dieci server di applicazioni che supportano un'applicazione di commercio online. Otto server gestiscono il catalogo e due server gestiscono i pagamenti. Desideri indirizzare tutte le HTTP richieste relative ai pagamenti ai server di pagamento, in base alla richiesta. URL In questo caso, dovresti indirizzare tutto ciò URLs che include «pagamento» o «checkout» a uno dei server di pagamento.
ConHAProxy, è possibile utilizzare la mappatura URL basata per indirizzare il URLs contenuto di una stringa specificata a server particolari. Per utilizzare la URL mappatura basata con AWS OpsWorks Stacks, devi creare un file di HAProxy configurazione personalizzato sovrascrivendo il
haproxy-default.erb
modello nel ricettariohaproxy
integrato. Per ulteriori informazioni, consulta il Manuale di HAProxyconfigurazionee. Utilizzo di modelli personalizzati Non è possibile utilizzare la mappatura URL basata sulle HTTPS richieste. Una HTTPS richiesta è crittografata, quindi non HAProxy è possibile esaminarla. URL Elastic Load Balancing ha un supporto limitato per URL la mappatura. Per ulteriori informazioni, consulta Configurazioni del listener per Elastic Load Balancing.
Raccomandazione: ti consigliamo di utilizzare Elastic Load Balancing per il bilanciamento del carico a meno che tu non abbia requisiti che possono essere gestiti solo da. HAProxy In tal caso, l'approccio migliore potrebbe essere quello di combinare le due cose utilizzando Elastic Load Balancing come sistema di bilanciamento del carico front-end che distribuisce il traffico in entrata a un set di server. HAProxy Per farlo:
-
Configura un'HAProxyistanza in ciascuna delle zone di disponibilità dello stack per distribuire le richieste ai server delle applicazioni della zona.
-
Assegna le HAProxy istanze a un sistema di bilanciamento del carico Elastic Load Balancing, che quindi distribuisce le richieste in entrata ai sistemi di bilanciamento del carico. HAProxy
Questo approccio consente di utilizzare la mappatura URL basata sulla mappatura per distribuire diversi tipi HAProxy di richieste ai server applicativi appropriati. Tuttavia, se uno dei HAProxy server va offline, il sito continuerà a funzionare perché il load balancer Elastic Load Balancing distribuisce automaticamente il traffico in entrata ai server integri. HAProxy Tieni presente che devi utilizzare Elastic Load Balancing come load balancer front-end; un HAProxy server non può distribuire richieste ad altri server. HAProxy