Modifica gli attributi per il tuo Network Load Balancer - Sistema di bilanciamento del carico elastico

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à.

Modifica gli attributi per il tuo Network Load Balancer

Dopo aver creato un Network Load Balancer, puoi modificarne gli attributi.

Deletion protection (Protezione da eliminazione)

Per evitare che Network Load Balancer venga eliminato accidentalmente, puoi abilitare la protezione dall'eliminazione. Per impostazione predefinita, la protezione da eliminazione è disattivata per Network Load Balancer.

Se abiliti la protezione da eliminazione per il tuo Network Load Balancer, devi disabilitarla prima di poter eliminare Network Load Balancer.

Console
Per abilitare la protezione da eliminazione
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Selezionare Sistemi di bilanciamento del carico nel riquadro di navigazione.

  3. Seleziona il nome del Network Load Balancer per aprirne la pagina dei dettagli.

  4. Nella scheda Attributi, scegli Modifica.

  5. In Protezione, abilita la protezione da eliminazione.

  6. Scegli Save changes (Salva modifiche).

AWS CLI
Per abilitare la protezione da eliminazione

Usa il modify-load-balancer-attributescomando con l'deletion_protection.enabledattributo.

aws elbv2 modify-load-balancer-attributes \ --load-balancer-arn load-balancer-arn \ --attributes "Key=deletion_protection.enabled,Value=true"
CloudFormation
Per abilitare la protezione dall'eliminazione

Aggiorna la AWS::ElasticLoadBalancingV2::LoadBalancerrisorsa per includere l'deletion_protection.enabledattributo.

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-nlb Type: network Scheme: internal Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup LoadBalancerAttributes: - Key: "deletion_protection.enabled" Value: "true"

Bilanciamento del carico su più zone

Con i Network Load Balancer, il bilanciamento del carico tra zone è disattivato per impostazione predefinita a livello del sistema di bilanciamento del carico, ma puoi attivarlo in qualsiasi momento. Per i gruppi di destinazione, l'impostazione predefinita prevede l'utilizzo dell'impostazione del sistema di bilanciamento del carico, ma è possibile modificarla attivando o disattivando esplicitamente il bilanciamento del carico tra zone a livello di gruppo di destinazione. Per ulteriori informazioni, consulta Bilanciamento del carico tra zone per i gruppi di destinazioni.

Console
Per abilitare il bilanciamento del carico tra zone per un sistema di bilanciamento del carico
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, in Bilanciamento del carico, scegli Sistemi di bilanciamento del carico.

  3. Seleziona il nome del sistema di bilanciamento del carico per aprirne la pagina dei dettagli.

  4. Nella scheda Attributi, scegli Modifica.

  5. Nella pagina Modifica attributi del sistema di bilanciamento del carico, attiva o disattiva Bilanciamento del carico tra zone.

  6. Scegli Save changes (Salva modifiche).

AWS CLI
Per abilitare il bilanciamento del carico tra zone per un sistema di bilanciamento del carico

Usa il modify-load-balancer-attributescomando con l'attributo. load_balancing.cross_zone.enabled

aws elbv2 modify-load-balancer-attributes \ --load-balancer-arn load-balancer-arn \ --attributes "Key=load_balancing.cross_zone.enabled,Value=true"
CloudFormation
Per abilitare il bilanciamento del carico tra zone per un sistema di bilanciamento del carico

Aggiorna la AWS::ElasticLoadBalancingV2::LoadBalancer risorsa per includere l'attributo. load_balancing.cross_zone.enabled

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-nlb Type: network Scheme: internal Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup LoadBalancerAttributes: - Key: "load_balancing.cross_zone.enabled" Value: "true"

Affinità DNS della zona di disponibilità

Quando si utilizza la politica di routing client predefinita, le richieste inviate al nome DNS di Network Load Balancer riceveranno tutti gli indirizzi IP di Network Load Balancer integri. Ciò porta alla distribuzione delle connessioni client tra le zone di disponibilità del Network Load Balancer. Con le politiche di affinity routing della zona di disponibilità, le query DNS dei client privilegiano gli indirizzi IP di Network Load Balancer nella propria zona di disponibilità. Ciò contribuisce a migliorare la latenza e la resilienza, poiché i client non devono attraversare i confini della zona di disponibilità per connettersi alle destinazioni.

Le policy di instradamento per affinità della zona di disponibilità si applicano solo ai client che risolvono il nome DNS dei sistemi Network Load Balancer utilizzando il risolutore Route 53. Per maggiori informazioni, consulta Cos'è Amazon Route 53 Resolver? nella Guida per gli sviluppatori di Amazon Route 53

Policy di instradamento del client disponibili per i Network Load Balancer che utilizzano il risolutore Route 53:
  • Affinità della zona di disponibilità: affinità di zona al 100%

    Le query DNS dei client favoriranno l'indirizzo IP di Network Load Balancer nella propria zona di disponibilità. Le query possono essere indirizzate ad altre zone se non ci sono indirizzi IP di Network Load Balancer integri nella propria zona.

  • Affinità parziale della zona di disponibilità: affinità di zona all'85%

    L'85% delle query DNS dei client preferirà gli indirizzi IP di Network Load Balancer nella propria zona di disponibilità, mentre le query rimanenti si indirizzano a qualsiasi zona integra. Le interrogazioni possono indirizzarsi ad altre zone protette se nella rispettiva zona non è presente alcuna. IPs Se nessuna zona è integra, le interrogazioni vengono risolte IPs in qualsiasi zona.

  • Qualsiasi zona di disponibilità (impostazione predefinita): affinità di zona al 0%

    Le query DNS dei client vengono risolte tra indirizzi IP di Network Load Balancer integri in tutte le zone di disponibilità del Network Load Balancer.

L'affinità della zona di disponibilità consente di instradare le richieste dal client al Network Load Balancer, mentre il bilanciamento del carico tra zone viene utilizzato per indirizzare le richieste dal Network Load Balancer alle destinazioni. Quando si utilizza l'affinità Availability Zone, il bilanciamento del carico tra zone deve essere disattivato per garantire che il traffico di Network Load Balancer dai client alle destinazioni rimanga all'interno della stessa zona di disponibilità. Con questa configurazione, il traffico client viene inviato alla stessa zona di disponibilità di Network Load Balancer, pertanto si consiglia di configurare l'applicazione per scalare indipendentemente in ciascuna zona di disponibilità. Questa è una considerazione importante quando il numero di client per zona di disponibilità o il traffico per zona di disponibilità non sono gli stessi. Per ulteriori informazioni, consulta Bilanciamento del carico tra zone per i gruppi di destinazioni.

Quando una zona di disponibilità è considerata non integra o quando viene avviato uno spostamento zonale, l'indirizzo IP di zona viene considerato non integro e non viene restituito ai client a meno che non sia attivo il fail-open. L'affinità della zona di disponibilità viene mantenuta quando il record DNS è in modalità fail-open. Questo aiuta a mantenere indipendenti le zone di disponibilità e a prevenire potenziali errori tra zone.

Con l'affinità della zona di disponibilità si prevedono momenti di squilibrio tra le zone di disponibilità. Ti consigliamo di assicurarti che le destinazioni siano dimensionabili a livello di zona, per supportare il carico di lavoro delle zone di disponibilità. Nei casi in cui questi squilibri sono significativi, ti consigliamo di disattivare l'affinità della zona di disponibilità. Ciò consente una distribuzione uniforme delle connessioni client tra tutte le zone di disponibilità di Network Load Balancer entro 60 secondi o tra il DNS TTL.

Prima di utilizzare l'affinità della zona di disponibilità, tieni presente le considerazioni seguenti:
  • L'affinità della zona di disponibilità apporta modifiche a tutti i client dei sistemi Network Load Balancer che utilizzano il risolutore Route 53.

    • I client non sono in grado di decidere tra risoluzioni DNS di zona e multi-zona. Tale decisione viene presa dall'affinità della zona di disponibilità.

    • I client non dispongono di un metodo affidabile per determinare quando sono influenzati dall'affinità della zona di disponibilità o per sapere in quale zona di disponibilità si trova un determinato indirizzo IP.

  • Quando si utilizza l'affinità della zona di disponibilità con Network Load Balancers e Route 53 Resolver, consigliamo ai client di utilizzare l'endpoint in entrata Route 53 Resolver nella propria zona di disponibilità.

  • I client rimarranno assegnati all'indirizzo IP locale della zona fino a quando non saranno considerati completamente integri in base ai controlli dell'integrità del DNS e saranno rimossi dal DNS.

  • L'utilizzo dell'affinità della zona di disponibilità con il bilanciamento del carico tra zone di disponibilità attivo può portare a una distribuzione sbilanciata delle connessioni client tra le zone di disponibilità. Ti consigliamo di configurare lo stack di applicazioni in modo da dimensionarlo in modo indipendente in ciascuna zona di disponibilità, assicurandoti che sia in grado di supportare il traffico dei client della zona.

  • Se il bilanciamento del carico tra zone è attivo, il Network Load Balancer è soggetto all'impatto tra zone.

  • Il carico su ciascuna delle zone di disponibilità dei Network Load Balancer sarà proporzionale ai percorsi di zona delle richieste dei client. Se non configuri il numero di client in esecuzione in una determinata zona di disponibilità, dovrai dimensionare in modo indipendente ciascuna zona di disponibilità in modo reattivo.

Monitoraggio

Si consiglia di tenere traccia della distribuzione delle connessioni tra le zone di disponibilità, utilizzando le metriche zonali di Network Load Balancer. Puoi utilizzare i parametri per visualizzare il numero di connessioni nuove e attive per zona.

Ti consigliamo di monitorare i parametri seguenti:

  • ActiveFlowCount: il numero totale di flussi simultanei (o connessioni) da client a target.

  • NewFlowCount: il numero totale di nuovi flussi (o connessioni) stabiliti da client a target nel periodo di tempo.

  • HealthyHostCount: il numero di target considerati integri.

  • UnHealthyHostCount: il numero di target considerati non integri.

Per ulteriori informazioni, consulta CloudWatch metriche per il tuo Network Load Balancer

Abilita l'affinità tra le zone di disponibilità

Console
Per abilitare l'affinità con la zona di disponibilità
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Selezionare Sistemi di bilanciamento del carico nel riquadro di navigazione.

  3. Seleziona il nome del Network Load Balancer per aprirne la pagina dei dettagli.

  4. Nella scheda Attributi, scegli Modifica.

  5. In Configurazione del routing della zona di disponibilità, Politica di instradamento del client (record DNS), seleziona Affinità della zona di disponibilità o Affinità parziale della zona di disponibilità.

  6. Scegli Save changes (Salva modifiche).

AWS CLI
Per abilitare l'affinità tra le zone di disponibilità

Usa il modify-load-balancer-attributescomando con l'dns_record.client_routing_policyattributo.

aws elbv2 modify-load-balancer-attributes \ --load-balancer-arn load-balancer-arn \ --attributes "Key=dns_record.client_routing_policy,Value=partial_availability_zone_affinity"
CloudFormation
Per abilitare l'affinità tra le zone di disponibilità

Aggiorna la AWS::ElasticLoadBalancingV2::LoadBalancerrisorsa per includere l'dns_record.client_routing_policyattributo.

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-nlb Type: network Scheme: internal Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup LoadBalancerAttributes: - Key: "dns_record.client_routing_policy" Value: "partial_availability_zone_affinity"

Indirizzi IP secondari

Se riscontri errori di allocazione delle porte e non riesci ad aggiungere destinazioni al gruppo di destinazione per risolverli, puoi aggiungere indirizzi IP secondari alle interfacce di rete del sistema di bilanciamento del carico. Per ogni zona in cui è abilitato il load balancer, selezioniamo IPv4 gli indirizzi dalla sottorete del load balancer e li assegniamo all'interfaccia di rete corrispondente. Questi indirizzi IP secondari vengono utilizzati per stabilire connessioni con le destinazioni. Vengono utilizzati anche per i controlli sanitari del traffico. Ti consigliamo di aggiungere un indirizzo IP secondario per iniziare, monitorare la PortAllocationErrors metrica e aggiungere un altro indirizzo IP secondario solo se gli errori di allocazione delle porte non vengono risolti.

avvertimento

Dopo aver aggiunto gli indirizzi IP secondari, non puoi rimuoverli. L'unico modo per rilasciare gli indirizzi IP secondari è eliminare il sistema di bilanciamento del carico. Prima di aggiungere indirizzi IP secondari, verifica che ci siano abbastanza IPv4 indirizzi disponibili nelle sottoreti del sistema di bilanciamento del carico.

Console
Per aggiungere un indirizzo IP secondario
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Selezionare Sistemi di bilanciamento del carico nel riquadro di navigazione.

  3. Seleziona il nome del Network Load Balancer per aprirne la pagina dei dettagli.

  4. Nella scheda Attributi, scegli Modifica.

  5. Espandi gli attributi dei casi speciali, sblocca gli indirizzi IP secondari assegnati automaticamente per attributo di sottorete e scegli il numero di indirizzi IP secondari.

  6. Scegli Save changes (Salva modifiche).

AWS CLI
Per aggiungere un indirizzo IP secondario

Usa il modify-load-balancer-attributescomando con l'secondary_ips.auto_assigned.per_subnetattributo.

aws elbv2 modify-load-balancer-attributes \ --load-balancer-arn load-balancer-arn \ --attributes "Key=secondary_ips.auto_assigned.per_subnet,Value=1"

È possibile utilizzare il describe-network-interfacescomando per ottenere IPv4 gli indirizzi per le interfacce di rete del sistema di bilanciamento del carico. Il --filters parametro indirizza i risultati alle interfacce di rete per Network Load Balancer e il --query parametro trasferisce ulteriormente i risultati al load balancer con il nome specificato e visualizza solo i campi specificati. Se necessario, è possibile includere campi aggiuntivi.

aws elbv2 describe-network-interfaces \ --filters "Name=interface-type,Values=network_load_balancer" \ --query "NetworkInterfaces[?contains(Description,'my-nlb')].{ID:NetworkInterfaceId,AZ:AvailabilityZone,Addresses:PrivateIpAddresses[*]}"
CloudFormation
Per aggiungere un indirizzo IP secondario

Aggiorna la AWS::ElasticLoadBalancingV2::LoadBalancerrisorsa per includere l'secondary_ips.auto_assigned.per_subnetattributo.

Resources: myLoadBalancer: Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer' Properties: Name: my-nlb Type: network Scheme: internal Subnets: - !Ref subnet-AZ1 - !Ref subnet-AZ2 SecurityGroups: - !Ref mySecurityGroup LoadBalancerAttributes: - Key: "secondary_ips.auto_assigned.per_subnet" Value: "1"