Networking per l'implementazione di applicazioni rivolte a internet: architetture di riferimento

Last reviewed 2023-11-13 UTC

Questo documento fa parte di una serie che descrive le architetture di networking e sicurezza per le aziende che eseguono la migrazione dei carichi di lavoro dei data center su Google Cloud.

La serie è composta dai seguenti documenti:

Google offre una serie di prodotti e funzionalità che semplificano la protezione e la scalabilità delle applicazioni più importanti rivolte a internet. La Figura 1 mostra un'architettura che utilizza i servizi Google Cloud per eseguire il deployment di un'applicazione web con più livelli.

Applicazione web multilivello tipica di cui è stato eseguito il deployment su Google Cloud.

Figura 1. Applicazione web multilivello tipica di cui è stato eseguito il deployment su Google Cloud.

Architettura lift and shift

Quando le applicazioni rivolte a internet vengono spostate sul cloud, devono essere scalabili e avere controlli di sicurezza e visibilità equivalenti a quelli dell'ambiente on-premise. Puoi fornire questi controlli utilizzando gli appliance virtuali di rete disponibili nel marketplace.

Applicazione di cui è stato eseguito il deployment con un bilanciatore del carico esterno basato su appliance.

Figura 2. Applicazione di cui è stato eseguito il deployment con un bilanciatore del carico esterno basato su appliance.

Queste appliance virtuali offrono funzionalità e visibilità coerenti con i tuoi ambienti on-premise. Quando utilizzi un'appliance virtuale di rete, esegui il deployment dell'immagine dell'appliance software utilizzando gruppi di istanze gestite con scalabilità automatica. Spetta a te monitorare e gestire l'integrità delle istanze VM che eseguono l'appliance, nonché gestire gli aggiornamenti software dell'appliance.

Dopo aver eseguito il passaggio iniziale, potresti volere passare dalle appliance virtuali di rete self-managed ai servizi gestiti. Google Cloud offre una serie di servizi gestiti che semplificano la pubblicazione di applicazioni su larga scala.

La Figura 2 mostra un'appliance virtuale di rete configurata come frontend di un'applicazione di livello web. Per un elenco delle soluzioni dell'ecosistema dei partner, consulta la pagina Google Cloud Marketplace nella console Google Cloud.

Architettura di servizi ibridi

Google Cloud offre i seguenti approcci per semplificare la gestione su larga scala delle applicazioni rivolte a internet:

  • Utilizza la rete globale di server dei nomi DNS anycast di Google che offrono alta disponibilità e bassa latenza per tradurre le richieste dei nomi di dominio in indirizzi IP.
  • Utilizza il parco globale di bilanciatori del carico delle applicazioni esterni di Google per instradare il traffico a un'applicazione ospitata in Google Cloud, on-premise o in un altro cloud pubblico. Questi bilanciatori del carico si adattano automaticamente al tuo traffico e assicurano che ogni richiesta venga indirizzata a un backend funzionante. Configurando gruppi di endpoint di rete di connettività ibrida, puoi offrire i vantaggi delle funzionalità di rete di bilanciatori del carico delle applicazioni esterni ai servizi in esecuzione sulla tua infrastruttura esistente al di fuori di Google Cloud. La rete on-premise o le altre reti cloud pubblico sono connesse in privato alla rete Google Cloud tramite un tunnel VPN o Cloud Interconnect.
  • Utilizza altri servizi perimetrali di rete come Cloud CDN per distribuire i contenuti, Google Cloud Armor per proteggerli e Identity-Aware Proxy (IAP) per controllare l'accesso ai tuoi servizi.

    La Figura 3 mostra la connettività ibrida che utilizza l'Application Load Balancer esterno.

    Configurazione della connettività ibrida mediante bilanciatori del carico delle applicazioni esterni e servizi di edge della rete.

    Figura 3. Configurazione della connettività ibrida mediante bilanciatori del carico delle applicazioni esterni e servizi di edge della rete.

    La Figura 4 mostra un'opzione di connettività diversa: l'utilizzo di gruppi di endpoint di rete con connettività ibrida.

    Configurazione di bilanciatori del carico delle applicazioni esterni che utilizzano gruppi di endpoint di rete con connettività ibrida.

    Figura 4. Configurazione di bilanciatori del carico delle applicazioni esterni che utilizzano gruppi di endpoint di rete con connettività ibrida.

  • Utilizza un bilanciatore del carico delle applicazioni (HTTP/HTTPS) per instradare le richieste in base ai loro attributi, ad esempio l'URI (Uniform Resource Identifier) HTTP. Utilizza un bilanciatore del carico di rete proxy per implementare l'offload TLS, il proxy TCP o il supporto per il bilanciamento del carico esterno verso i backend in più regioni. Utilizza un bilanciatore del carico di rete passthrough per preservare gli indirizzi IP di origine dei client, per evitare l'overhead dei proxy e per supportare ulteriori protocolli come UDP, ESP e ICMP.

  • Proteggi il tuo servizio con Google Cloud Armor. Questo prodotto è una soluzione di sicurezza WAF e di difesa DDoS di primo livello ed è disponibile per tutti i servizi a cui si accede tramite un bilanciatore del carico delle applicazioni esterno globale.

  • Utilizza certificati SSL gestiti da Google. Puoi riutilizzare i certificati e le chiavi private che utilizzi già per altri prodotti Google Cloud. In questo modo non è più necessario gestire certificati separati.

  • Abilita la memorizzazione nella cache nella tua applicazione per sfruttare l'impronta della distribuzione delle applicazioni distribuita di Cloud CDN.

  • Utilizza le appliance virtuali di rete per ispezionare e filtrare il traffico nord-sud (da e verso internet) ed est-ovest (da e verso la rete on-premise o le reti VPC), come mostrato nella figura 5.

    Configurazione di un'appliance virtuale di rete ad alta disponibilità che utilizza il bilanciatore del carico interno e il peering di rete VPC per ispezionare il traffico.

    Figura 5. Configurazione di un'appliance virtuale di rete ad alta disponibilità mediante un bilanciatore del carico di rete passthrough interno e il peering di rete VPC per ispezionare il traffico.

  • Utilizza Cloud IDS per rilevare le minacce nel traffico nord-sud, come mostrato nella figura 6.

    Configurazione di Cloud IDS per eseguire il mirroring e ispezionare tutto il traffico internet e interno.

    Figura 6. Configurazione di Cloud IDS per eseguire il mirroring e ispezionare tutto il traffico di internet e interno.

Architettura distribuita Zero Trust

Puoi espandere l'architettura distribuita Zero Trust in modo da includere il caricamento delle applicazioni da internet. In questo modello, il bilanciatore del carico delle applicazioni esterno di Google fornisce un bilanciamento del carico globale tra i cluster GKE che hanno mesh Cloud Service Mesh in cluster distinti. Per questo scenario, adotta un modello di importazione composito. Il bilanciatore del carico di primo livello fornisce la selezione del cluster, mentre un gateway di ingresso gestito da Cloud Service Mesh fornisce il bilanciamento del carico e la sicurezza di ingresso specifici del cluster. Un esempio di questo Ingresso multi-cluster è l'architettura di riferimento di Cymbal Bank come descritto nel blueprint dell'applicazione aziendale. Per ulteriori informazioni sull'Ingress edge di Cloud Service Mesh, consulta Da dispositivi periferici a mesh: esposizione delle applicazioni di mesh di servizi mediante GKE Ingress.

La Figura 7 mostra una configurazione in cui un bilanciatore del carico delle applicazioni esterno indirizza il traffico da internet al mesh di servizi tramite un gateway di ingresso. Il gateway è un proxy dedicato nel mesh di servizi.

Deployment delle applicazioni in un ambiente di microservizi zero trust.

Figura 7. Deployment delle applicazioni in un ambiente di microservizi zero trust.

Passaggi successivi