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à.
Guida introduttiva ai sistemi Gateway Load Balancer utilizzando AWS CLI
I Gateway Load Balancer semplificano distribuzione, dimensionamento e gestione delle appliance virtuali di terze parti, ad esempio quelle di sicurezza.
In questo tutorial implementeremo un sistema di ispezione utilizzando un Gateway Load Balancer e un endpoint del Gateway Load Balancer.
Indice
Panoramica di
Un endpoint Gateway Load Balancer è un endpoint VPC che fornisce connettività privata tra appliance virtuali nel VPC del provider di servizi e server delle applicazioni nel VPC consumer del servizio. Gateway Load Balancer viene distribuito nello stesso VPC delle appliance virtuali. Queste appliance vengono registrate come gruppo di destinazione del Gateway Load Balancer.
I server delle applicazioni vengono eseguiti in una sottorete (di destinazione) nel VPC del consumatore di servizi, mentre l'endpoint Gateway Load Balancer si trova in un'altra sottorete dello stesso VPC. Tutto il traffico che entra nel VPC dell'utente del servizio attraverso il gateway Internet viene innanzitutto instradato all'endpoint Gateway Load Balancer e poi instradato alla sottorete di destinazione.
Analogamente, tutto il traffico che esce dai server dell'applicazione (sottorete di destinazione) viene instradato sull'endpoint Gateway Load Balancer prima di essere instradato nuovamente attraverso Internet. Il seguente diagramma di rete è una rappresentazione visiva di come un endpoint del Gateway Load Balancer viene utilizzato per accedere a un servizio endpoint.
Gli articoli numerati di seguito evidenziano e spiegano gli elementi mostrati nell'immagine precedente.
Traffico in transito da Internet ai server dell'applicazione (frecce blu):
-
Il traffico entra nel VPC dell'utente del servizio attraverso il gateway Internet.
-
Il traffico viene inviato all'endpoint Gateway Load Balancer come risultato del routing in ingresso.
-
Il traffico viene inviato al Gateway Load Balancer che lo distribuisce a una delle appliance di sicurezza.
-
Il traffico viene inviato nuovamente all'endpoint Gateway Load Balancer dopo l'ispezione da parte dell'appliance di sicurezza.
-
Il traffico viene inviato ai server dell'applicazione (sottorete di destinazione).
Traffico in transito dall'applicazione a Internet (frecce arancioni):
-
Il traffico viene inviato all'endpoint Gateway Load Balancer come risultati dell'instradamento predefinito configurato nella sottorete del server dell'applicazione.
-
Il traffico viene inviato al Gateway Load Balancer che lo distribuisce a una delle appliance di sicurezza.
-
Il traffico viene inviato nuovamente all'endpoint Gateway Load Balancer dopo l'ispezione da parte dell'appliance di sicurezza.
-
Il traffico viene inviato al gateway Internet in base alla configurazione della tabella di instradamento.
-
Il traffico viene reindirizzato a Internet.
Routing
Questa tabella di routing per il gateway Internet deve disporre di una voce che invia il traffico destinato ai server dell'applicazione all'endpoint Gateway Load Balancer. Per specificare l'endpoint del Gateway Load Balancer utilizza l'ID dell'endpoint VPC. L'esempio seguente mostra le route per una configurazione dualstack.
| Destinazione | Target |
|---|---|
VPC IPv4 CIDR |
Locale |
VPC IPv6 CIDR |
Locale |
Subnet 1 IPv4 CIDR |
vpc-endpoint-id |
Subnet 1 IPv6 CIDR |
vpc-endpoint-id |
Questa tabella di routing per la sottorete con i server dell'applicazione deve disporre di voci che indirizzino tutto il traffico dai server dell'applicazione all'endpoint del Gateway Load Balancer.
| Destinazione | Target |
|---|---|
VPC IPv4 CIDR |
Locale |
VPC IPv6 CIDR |
Locale |
| 0.0.0. 0/0 | vpc-endpoint-id |
| ::/0 | vpc-endpoint-id |
La tabella di routing per la sottorete con l'endpoint del Gateway Load Balancer deve instradare il traffico dall'ispezione alla destinazione finale. Per il traffico proveniente da Internet, la route locale garantisce che raggiunga i server dell'applicazione. Per il traffico proveniente dai server dell'applicazione, aggiungi voci che indirizzino tutto il traffico al gateway Internet.
| Destinazione | Target |
|---|---|
VPC IPv4 CIDR |
Locale |
VPC IPv6 CIDR |
Locale |
| 0,0,0. 0/0 | internet-gateway-id |
| ::/0 | internet-gateway-id |
Prerequisiti
-
Installa AWS CLI o esegui l'aggiornamento alla versione corrente di AWS CLI se utilizzi una versione che non supporta Gateway Load Balancer. Per ulteriori informazioni, consulta Installazione dell’AWS CLI nella Guida per l’utente dell’AWS Command Line Interface.
-
Assicurati che il VPC consumatore del servizio disponga di almeno due sottoreti per ogni zona di disponibilità che contiene i server dell'applicazione. Una sottorete è destinata all'endpoint del Gateway Load Balancer e l'altra ai server dell'applicazione.
-
Assicurati che il VPC del fornitore di servizi disponga di almeno due sottoreti per ogni zona di disponibilità che contiene i server delle appliance. Una sottorete è destinata al Gateway Load Balancer e l'altra alle istanze.
-
Avvia almeno un'istanza dell'appliance di sicurezza in ogni sottorete nel VPC del provider di servizi. I gruppi di sicurezza per queste istanze devono permettere il traffico UDP sulla porta 6081.
Fase 1: creare un Gateway Load Balancer e registrare le destinazioni
Utilizza la procedura seguente per creare il sistema di bilanciamento del carico, l'ascoltatore, gruppi di destinazione e per registrare le istanze dell'appliance di sicurezza come destinazioni.
Creare un Gateway Load Balancer e registrare le destinazioni
-
Utilizzare il comando create-load-balancer per creare un sistema di bilanciamento del carico del tipo
gateway. È possibile specificare una sottorete per ogni zona di disponibilità nella quale sono state lanciate le istanze dell'appliance di sicurezza.aws elbv2 create-load-balancer --namemy-load-balancer--type gateway --subnetsprovider-subnet-idLa modalità predefinita supporta solamente gli indirizzi IPv4. Per il supporto di entrambi gli indirizzi IPv4 e IPv6, aggiungi l'opzione
--ip-address-type dualstack.L'output include il nome della risorsa Amazon (ARN) del sistema di bilanciamento del carico, con il formato illustrato nel seguente esempio.
arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/gwy/my-load-balancer/1234567890123456 -
Utilizza il comando create-target-group per creare un gruppo di destinazione, specificando il VPC del provider di servizi in cui hai avviato le tue istanze.
aws elbv2 create-target-group --namemy-targets--protocol GENEVE --port 6081 --vpc-idprovider-vpc-idL'output include l'ARN del gruppo di destinazione, con il seguente formato.
arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/0123456789012345 -
Utilizzare il comando register-target (registrare target) per registrare le istanze con il gruppo target.
aws elbv2 register-targets --target-group-arntargetgroup-arn--targets Id=i-1234567890abcdef0Id=i-0abcdef1234567890 -
Utilizza il comando create-listener per creare un ascoltatore per il sistema di bilanciamento del carico con una regola predefinita che inoltra le richieste verso il gruppo target:
aws elbv2 create-listener --load-balancer-arnloadbalancer-arn--default-actions Type=forward,TargetGroupArn=targetgroup-arnL'output contiene l'ARN dell'ascoltatore, con il formato seguente.
arn:aws:elasticloadbalancing:us-east-2:123456789012:listener/gwy/my-load-balancer/1234567890123456/abc1234567890123 -
(Facoltativo) È possibile verificare l'integrità delle destinazioni registrate per il gruppo target utilizzando il seguente comando describe-target-health.
aws elbv2 describe-target-health --target-group-arntargetgroup-arn
Fase 2: creare un endpoint del Gateway Load Balancer
Utilizza la procedura seguente per creare un endpoint del Gateway Load Balancer. Gli endpoint del Gateway Load Balancer sono zonali. È consigliabile creare un endpoint del Gateway Load Balancer per zona. Per ulteriori informazioni, consulta Accesso alle appliance virtuali tramite AWS PrivateLink nella Guida di .
Per creare un endpoint Gateway Load Balancer
-
Usa il comando create-vpc-endpoint-service-configuration per creare una configurazione del servizio di endpoint utilizzando il Gateway Load Balancer.
aws ec2 create-vpc-endpoint-service-configuration --gateway-load-balancer-arnsloadbalancer-arn--no-acceptance-requiredPer il supporto di entrambi gli indirizzi IPv4 e IPv6, aggiungi l'opzione
--supported-ip-address-types ipv4 ipv6.L'output contiene l'ID del servizio (ad esempio, vpce-svc-12345678901234567) e il nome del servizio (ad esempio, com.amazonaws.vpce.us-east-2.vpce-svc-12345678901234567).
-
Usa il comando modify-vpc-endpoint-service-permissions per consentire ai consumatori del servizio di creare un endpoint sul tuo servizio. Un consumatore del servizio può essere un utente, un ruolo IAM o Account AWS. L'esempio seguente aggiunge l'autorizzazione per il file specificato.Account AWS
aws ec2 modify-vpc-endpoint-service-permissions --service-idvpce-svc-12345678901234567--add-allowed-principalsarn:aws:iam::123456789012:root -
Usa il comando create-vpc-endpoint per creare l'endpoint del Gateway Load Balancer per il tuo servizio.
aws ec2 create-vpc-endpoint --vpc-endpoint-type GatewayLoadBalancer --service-namecom.amazonaws.vpce.us-east-2.vpce-svc-12345678901234567--vpc-idconsumer-vpc-id--subnet-idsconsumer-subnet-idPer il supporto di entrambi gli indirizzi IPv4 e IPv6, aggiungi l'opzione
--ip-address-type dualstack.L'output contiene l'ID dell'endpoint del Gateway Load Balancer (ad esempio, vpce-01234567890abcdef).
Fase 3: configurazione dell'instradamento
Configura le tabelle di routing per il VPC consumatore del servizio come segue. Ciò consente alle appliance di sicurezza di eseguire ispezioni sul traffico in entrata destinato ai server dell'applicazione.
Configurazione del routing
-
Usa il comando create-route per aggiungere voci alla tabella di routing per il gateway Internet che instrada il traffico destinato ai server dell'applicazione all'endpoint del Gateway Load Balancer.
aws ec2 create-route --route-table-idgateway-rtb--destination-cidr-blockSubnet 1 IPv4 CIDR--vpc-endpoint-idvpce-01234567890abcdefSe supporti IPv6, aggiungi la route seguente.
aws ec2 create-route --route-table-idgateway-rtb--destination-cidr-blockSubnet 1 IPv6 CIDR--vpc-endpoint-idvpce-01234567890abcdef -
Usa il comando create-route per aggiungere una voce alla tabella di routing per la sottorete con i server dell'applicazione che instradano tutto il traffico dai server dell'applicazione all'endpoint del Gateway Load Balancer.
aws ec2 create-route --route-table-idapplication-rtb--destination-cidr-block 0.0.0.0/0 --vpc-endpoint-idvpce-01234567890abcdefSe supporti IPv6, aggiungi la route seguente.
aws ec2 create-route --route-table-idapplication-rtb--destination-cidr-block ::/0 --vpc-endpoint-idvpce-01234567890abcdef -
Usa il comando create-route per aggiungere una voce alla tabella di routing per la sottorete con l'endpoint del Gateway Load Balancer che instrada tutto il traffico proveniente dai server dell'applicazione al gateway Internet.
aws ec2 create-route --route-table-idendpoint-rtb--destination-cidr-block 0.0.0.0/0 --gateway-idigw-01234567890abcdefSe supporti IPv6, aggiungi la route seguente.
aws ec2 create-route --route-table-idendpoint-rtb--destination-cidr-block ::/0 --gateway-idigw-01234567890abcdef -
Ripeti l'operazione per ogni tabella di routing della sottorete dell'applicazione in ogni zona.