Esempio: VPC per server Web e di database - Amazon Virtual Private Cloud

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

Esempio: VPC per server Web e di database

Questo esempio spiega come creare un VPC da utilizzare per un'architettura a due livelli in un ambiente di produzione. Per migliorare la resilienza, implementerai i server in due zone di disponibilità.

Panoramica

Nel diagramma seguente viene fornita una panoramica delle risorse incluse in questo esempio. Il VPC dispone di sottoreti pubbliche e private in due zone di disponibilità. I server Web vengono eseguiti nelle sottoreti pubbliche e ricevono traffico dai client tramite un sistema di bilanciamento del carico. Il gruppo di sicurezza dei server Web consente il traffico dal sistema di bilanciamento del carico. I server di database vengono eseguiti nelle sottoreti private e ricevono traffico dai server Web. Il gruppo di sicurezza dei server Web consente il traffico dai server Web. I server di database possono connettersi ad Amazon S3 utilizzando un endpoint VPC gateway.

Un VPC con sottoreti in due zone di disponibilità.

Routing

Quando crei questo VPC utilizzando la console Amazon VPC, creiamo una tabella di routing per le sottoreti pubbliche con percorsi locali e percorsi verso il gateway Internet, nonché una tabella di routing per ogni sottorete privata con percorsi locali e un percorso verso l'endpoint VPC del gateway.

Di seguito è riportato un esempio di tabella di routing per le sottoreti pubbliche, con percorsi sia per IPv4 sia per IPv6. Se crei sottoreti solo IPv4 anziché sottoreti a doppio stack, la tabella di routing include solo i percorsi IPv4.

Destinazione Target
10,0,0/16 locale
2001:db8:1234:1a00::/56 locale
0.0.0.0/0 igw-id
::/0 igw-id

Di seguito è riportato un esempio di tabella di routing per le sottoreti private, con percorsi sia per IPv4 sia per IPv6. Se hai creato sottoreti solo IPv4, la tabella di instradamento include solo il percorso IPv4. L'ultimo percorso invia il traffico destinato ad Amazon S3 all'endpoint VPC del gateway.

Destinazione Target
10,0,0/16 locale
2001:db8:1234:1a00::/56 local
s3- prefix-list-id s3-gateway-id

Sicurezza

Per questa configurazione di esempio, crei un gruppo di sicurezza per il sistema di bilanciamento del carico, un gruppo di sicurezza per i server Web e uno per i server di database.

Sistema di bilanciamento del carico (load balancer)

Il gruppo di sicurezza dell'Application Load Balancer o Network Load Balancer deve consentire il traffico in entrata dai client sulla porta ascoltatore del sistema di bilanciamento del carico. Per accettare traffico da qualunque punto di Internet, specifica 0.0.0.0/0 come origine. Il gruppo di sicurezza del sistema di bilanciamento del carico deve inoltre permettere il traffico in entrata dal sistema di bilanciamento del carico alle istanze di destinazione sulla porta dell'ascoltatore dell'istanza e sulla porta di controllo dell'integrità.

Server Web

Le seguenti regole per il gruppo di sicurezza consentono ai server Web di ricevere traffico HTTP e HTTPS dal sistema di bilanciamento del carico. Facoltativamente, puoi consentire ai server Web di ricevere traffico SSH o RDP dalla tua rete. I server Web possono inviare traffico SQL o MySQL ai server di database.

In entrata
Crea Protocollo Intervallo porte Descrizione
L'ID del gruppo di sicurezza per il sistema di bilanciamento del carico TCP 80 Consente l'accesso HTTP in entrata dal sistema di bilanciamento del carico
L'ID del gruppo di sicurezza per il sistema di bilanciamento del carico TCP 443 Consente l'accesso HTTP in entrata dal sistema di bilanciamento del carico
Intervallo di indirizzi IPv4 pubblici della rete TCP 22 (Facoltativo) Autorizza l'accesso SSH in entrata dagli indirizzi IP IPv4 nella rete
Intervallo di indirizzi IPv6 della rete TCP 22 (Facoltativo) Autorizza l'accesso SSH in entrata dagli indirizzi IP IPv6 nella rete
Intervallo di indirizzi IPv4 pubblici della rete TCP 3389 (Facoltativo) Autorizza l'accesso RDP in entrata dagli indirizzi IP IPv4 nella rete
Intervallo di indirizzi IPv6 della rete TCP 3389 (Facoltativo) Autorizza l'accesso RDP in entrata dagli indirizzi IP IPv6 nella rete
In uscita
Destinazione Protocollo Intervallo porte Descrizione
ID del gruppo di sicurezza per le istanze che eseguono Microsoft SQL Server

TCP

1433

Consente l'accesso Microsoft SQL Server in uscita ai server di database

ID del gruppo di sicurezza per le istanze che eseguono MySQL

TCP

3306

Consente l'accesso a MySQL in uscita ai server di database

Server di database

Le regole del gruppo di sicurezza seguente consentono ai server di database di ricevere richieste di lettura e scrittura dai server Web.

In entrata
Crea Protocollo Intervallo porte Commenti
ID del gruppo di sicurezza del server Web TCP 1433 Consente l'accesso Microsoft SQL Server in entrata dai server Web
ID del gruppo di sicurezza del server Web TCP 3306 Consente l'accesso MySQL Server in entrata dai server Web
In uscita
Destinazione Protocollo Intervallo porte Commenti
0.0.0.0/0 TCP 80 Consente l'accesso HTTP in uscita a Internet su IPv4
0.0.0.0/0 TCP 443 Consente l'accesso HTTPS in uscita a Internet su IPv4

Per maggiori informazioni sui gruppi di sicurezza per le istanze di Amazon RDS DB, consulta Controllo dell'accesso con i gruppi di sicurezza nella Guida dell'utente di Amazon RDS.

1. Creazione del VPC

Utilizza la procedura seguente per creare un VPC con una sottorete pubblica e una sottorete privata in due zone di disponibilità.

Per creare il VPC
  1. Apri alla console Amazon VPC all'indirizzo https://console.aws.amazon.com/vpc/.

  2. Nel pannello di controllo, scegli Crea VPC.

  3. Per Risorse da creare, scegli VPC e altro.

  4. Configura il VPC:

    1. Mantieni selezionata la generazione automatica dei tag Nome per creare i tag Nome per le risorse VPC o deselezionala per fornire i tuoi tag Nome per le risorse VPC.

    2. Per Blocco CIDR IPv4, mantieni il suggerimento predefinito o, in alternativa, inserisci il blocco CIDR richiesto dall'applicazione o dalla rete. Per ulteriori informazioni, consulta Blocchi CIDR del VPC.

    3. (Facoltativo) Se l'applicazione comunica utilizzando indirizzi IPv6, scegli Blocco CIDR IPv6, Blocco CIDR IPv6 fornito da Amazon.

    4. Scegli un'opzione di tenancy. Questa opzione definisce se le istanze EC2 avviate nel VPC verranno eseguite su hardware condiviso con altri Account AWS o su hardware dedicato esclusivamente all'uso personale. Se scegli la tenancy del VPC, le istanze EC2 Default avviate in questo VPC utilizzeranno l'attributo di tenancy specificato all'avvio dell'istanza. Per ulteriori informazioni, consulta Launch an instance using defined parameters nella Amazon EC2 User Guide. Se scegli che la tenancy del VPC sia Dedicated, le istanze verranno sempre eseguite come Istanze dedicate su un hardware dedicato per il tuo utilizzo.

  5. Configura le sottoreti:

    1. Per Numero di zone di disponibilità, scegli 2, in modo da poter avviare le istanze in due zone di disponibilità per migliorare la resilienza.

    2. Per Number of public subnets (Numero di sottoreti pubbliche), scegli 2.

    3. Per Number of private subnets (Numero di sottoreti private), scegli 2.

    4. È possibile mantenere i blocchi CIDR predefiniti per le sottoreti o, in alternativa, espandere i blocchi CIDR di Customize subnet e inserire un blocco CIDR. Per ulteriori informazioni, consulta Blocchi CIDR di sottorete.

  6. Per Gateway NAT, mantieni il valore predefinito, Nessuno.

  7. Per Endpoint VPC, mantieni il valore predefinito, Gateway S3. Sebbene non vi sia alcun effetto a meno che non si acceda a un bucket S3, l'attivazione di questo endpoint VPC non comporta alcun costo.

  8. Mantieni selezionate entrambe le opzioni in Opzioni DNS. Di conseguenza, i server Web riceveranno nomi host DNS pubblici che corrispondono ai loro indirizzi IP pubblici.

  9. Seleziona Crea VPC.

2. Distribuzione dell'applicazione

Idealmente, hai già testato i server Web e i server di database in un ambiente di sviluppo o test e hai creato gli script o le immagini che utilizzerai per implementare l'applicazione in produzione.

Puoi utilizzare le istanze EC2 per i tuoi server web. È possibile implementare le istanze EC2 in diversi modi. Per esempio:

Per migliorare la disponibilità, puoi utilizzare Dimensionamento automatico Amazon EC2 per implementare server in più zone di disponibilità e mantenere la capacità minima del server che è richiesta dalla tua applicazione.

Puoi utilizzare Elastic Load Balancing per distribuire il traffico in modo uniforme tra i tuoi server. Puoi collegare un sistema di bilanciamento del carico al gruppo con scalabilità automatica.

Puoi utilizzare le istanze EC2 per i tuoi server di database o uno dei nostri tipi di database dedicati. Per ulteriori informazioni, consulta Databases on: How to choose. AWS

3. Test della configurazione

Dopo aver completato l'implementazione dell'applicazione, potrai testarla. Se l'applicazione non è in grado di inviare o ricevere il traffico previsto, puoi utilizzare Sistema di analisi della reperibilità per risolvere i problemi. Ad esempio, Sistema di analisi della reperibilità può identificare i problemi di configurazione relativi alle tabelle di instradamento o ai gruppi di sicurezza. Per ulteriori informazioni, consulta la Guida di Reachability Analyzer.

4. Eliminazione

Quando la configurazione non è più necessaria, è possibile eliminarla. Prima di eliminare il VPC, è necessario terminare le istanze ed eliminare il sistema di bilanciamento del carico. Per ulteriori informazioni, consulta Eliminazione del VPC.