Un'infrastruttura affidabile è un requisito fondamentale per i carichi di lavoro nel cloud. In qualità di Cloud Architect, per progettare un'infrastruttura affidabile per i tuoi carichi di lavoro, devi avere una buona conoscenza delle funzionalità di affidabilità del tuo provider cloud preferito. Questo documento descrive i componenti di base dell'affidabilità in Google Cloud (zone, regioni e risorse basate sulla località) e i livelli di disponibilità che forniscono. Questo documento fornisce inoltre linee guida per la valutazione dei requisiti di affidabilità dei carichi di lavoro e presenta consigli di architettura per la creazione e la gestione di un'infrastruttura affidabile in Google Cloud.
Questo documento è suddiviso nelle seguenti parti:
- Panoramica dell'affidabilità (questa parte)
- Componenti di affidabilità in Google Cloud
- Valuta i requisiti di affidabilità per i tuoi carichi di lavoro cloud
- Progettare un'infrastruttura affidabile per i carichi di lavoro in Google Cloud
- Gestire il traffico e il carico per i carichi di lavoro in Google Cloud
- Gestisci e monitora la tua infrastruttura Google Cloud
Se hai già letto questa guida e vuoi sapere cosa è cambiato, consulta le note di rilascio.
Panoramica dell'affidabilità
Un'applicazione o un carico di lavoro è affidabile quando soddisfa i tuoi obiettivi attuali per la disponibilità e la resilienza agli errori.
La disponibilità (o tempo di attività) è la percentuale di tempo in cui un'applicazione è utilizzabile. Ad esempio, per un'applicazione con un target di disponibilità del 99,99%, il tempo di inattività totale non deve superare 8,64 secondi in un periodo di 24 ore. A volte, la disponibilità viene misurata come la proporzione di richieste gestite correttamente dall'applicazione durante un determinato periodo. Ad esempio, per un'applicazione con un obiettivo di disponibilità del 99,99%, per ogni 100.000 richieste ricevute, non più di dieci richieste possono non andare a buon fine. La disponibilità è spesso espressa come numero di nove nella percentuale. Ad esempio, la disponibilità del 99,99% viene espressa come "4 nove".
A seconda dello scopo dell'applicazione, potresti avere diversi set di indicatori per valutare la sua affidabilità. Di seguito sono riportati alcuni esempi di questi indicatori di affidabilità:
- Per le applicazioni che pubblicano contenuti, disponibilità, latenza e throughput sono indicatori importanti di affidabilità. Indicano se l'applicazione può rispondere alle richieste, il tempo necessario per rispondere alle richieste e quante richieste l'applicazione può elaborare correttamente in un determinato periodo.
- Per i database e i sistemi di archiviazione, la latenza, il throughput, la disponibilità e la durabilità (il livello di protezione dei dati da perdita o corruzione) sono indicatori di affidabilità. Indicano il tempo necessario al sistema per leggere o scrivere i dati e se è possibile accedere ai dati su richiesta.
- Per i carichi di lavoro di big data e analisi, come le pipeline di elaborazione dei dati, la consistenza delle prestazioni della pipeline (velocità effettiva e latenza) è essenziale per garantire l'aggiornamento dei prodotti dati ed è un importante indicatore di affidabilità. Indica la quantità di dati che possono essere elaborati e il tempo necessario per far avanzare la pipeline dall'importazione dati all'elaborazione dei dati.
- La maggior parte delle applicazioni ha la correttezza dei dati come indicatore di affidabilità essenziale.
Per ulteriori linee guida per definire gli obiettivi di affidabilità per le tue applicazioni, consulta Valutare i requisiti di affidabilità per i workload cloud.
Fattori che influiscono sull'affidabilità delle applicazioni
L'affidabilità di un'applicazione di cui è stato eseguito il deployment in Google Cloud dipende dai seguenti fattori:
- Il design interno dell'applicazione.
- Le applicazioni o i componenti secondari da cui dipende l'applicazione.
- Risorse dell'infrastruttura Google Cloud come calcolo, networking, archiviazione, database e sicurezza su cui l'applicazione viene eseguita e il modo in cui l'applicazione utilizza l'infrastruttura.
- La capacità dell'infrastruttura di cui esegui il provisioning e la modalità di scalabilità della capacità.
- I processi e gli strumenti DevOps che utilizzi per creare, eseguire il deployment e manutenere l'applicazione, le sue dipendenze e l'infrastruttura Google Cloud.
Questi fattori sono riassunti nel seguente diagramma:
Come mostrato nel diagramma precedente, l'affidabilità di un'applicazione di cui è stato eseguito il deployment in Google Cloud dipende da più fattori. L'obiettivo di questa guida è l'affidabilità dell'infrastruttura Google Cloud.
Passaggi successivi
- Componenti di affidabilità in Google Cloud
- Valuta i requisiti di affidabilità per i tuoi carichi di lavoro cloud
- Progettare un'infrastruttura affidabile per i carichi di lavoro in Google Cloud
- Gestire il traffico e il carico per i carichi di lavoro in Google Cloud
- Gestisci e monitora la tua infrastruttura Google Cloud
Collaboratori
Autori:
- Nir Tarcic | UTL SRE del ciclo di vita del cloud
- Kumar Dhanagopal | Sviluppatore di soluzioni cross-product
Altri collaboratori:
- Alok Kumar | Distinguished Engineer
- Andrew Fikes | Engineering Fellow, Reliability
- Chris Heiser | SRE TL
- David Ferguson | Director, Site Reliability Engineering
- Joe Tan | Senior Product Counsel
- Krzysztof Duleba | Principal Engineer
- Narayan Desai | SRE principale
- Sailesh Krishnamurthy | VP, Engineering
- Steve McGhee | Proponente dell'affidabilità
- Sudhanshu Jain | Product Manager
- Yaniv Aknin | Software Engineer