Ottimizza continuamente

Last reviewed 2024-09-25 UTC

Questo principio del pilastro di ottimizzazione dei costi dell'Google Cloud Architecture Framework fornisce consigli per aiutarti a ottimizzare il costo dei tuoi deployment cloud in base a obiettivi commerciali in continua evoluzione e cambiamento.

Man mano che la tua attività cresce ed evolve, i tuoi carichi di lavoro cloud devono adattarsi alle variazioni dei requisiti delle risorse e dei pattern di utilizzo. Per ottenere il massimo valore dalla spesa per il cloud, devi mantenere l'efficienza in termini di costi continuando a supportare gli scopi commerciali. Ciò richiede un approccio proattivo e adattabile incentrato sul miglioramento e sull'ottimizzazione continui.

Panoramica dei principi

Per ottimizzare continuamente i costi, devi monitorare e analizzare in modo proattivo il tuo ambiente cloud e apportare le modifiche necessarie per soddisfare i requisiti attuali. Concentra le tue attività di monitoraggio sugli indicatori chiave di prestazione (KPI) che influiscono direttamente sull'esperienza degli utenti finali, sono in linea con i tuoi obiettivi commerciali e forniscono approfondimenti per il miglioramento continuo. Questo approccio ti consente di identificare e risolvere le inefficienze, adattarti alle esigenze in evoluzione e allineare continuamente la spesa per il cloud agli obiettivi commerciali strategici. Per bilanciare l'osservabilità completa con l'efficacia in termini di costi, comprendi i costi e i vantaggi del monitoraggio dell'utilizzo delle risorse e utilizza strategie di ottimizzazione e miglioramento dei processi appropriate.

Consigli

Per monitorare in modo efficace il tuo Google Cloud ambiente e ottimizzare continuamente i costi, prendi in considerazione i seguenti consigli.

Concentrati sulle metriche pertinenti per l'attività

Un monitoraggio efficace inizia con l'identificazione delle metriche più importanti per la tua attività e i tuoi clienti. Queste metriche includono:

  • Metriche sull'esperienza utente: le metriche relative a latenza, percentuali di errore, throughput e soddisfazione del cliente sono utili per comprendere l'esperienza degli utenti finali quando utilizzano le tue applicazioni.
  • Metriche relative ai risultati aziendali: le entrate, la crescita dei clienti e il coinvolgimento possono essere correlate all'utilizzo delle risorse per identificare opportunità di ottimizzazione dei costi.
  • Metriche DevOps Research & Assessment (DORA): metriche come frequenza di deployment, tempo di risposta per le modifiche, tasso di errore delle modifiche e tempo per il ripristino forniscono informazioni sull'efficienza e sull'affidabilità del processo di distribuzione del software. Migliorando queste metriche, puoi aumentare la produttività, ridurre il tempo di riposo e ottimizzare i costi.
  • Metriche di Site Reliability Engineering (SRE): i budget di errore aiutano i team a quantificare e gestire il livello accettabile di interruzione del servizio. Stabilendo aspettative chiare in termini di affidabilità, i budget di errore consentono ai team di innovare e implementare le modifiche con maggiore sicurezza, conoscendo il loro margine di sicurezza. Questo approccio proattivo promuove un equilibrio tra innovazione e stabilità, contribuendo a evitare costi operativi eccessivi associati a interruzioni gravi o a tempi di riposo prolungati.

Utilizzare l'osservabilità per l'ottimizzazione delle risorse

Di seguito sono riportati alcuni consigli per utilizzare l'osservabilità per identificare i colli di bottiglia delle risorse e le risorse sottoutilizzate nei deployment cloud:

  • Monitora l'utilizzo delle risorse: utilizza le metriche di utilizzo delle risorse per identificare leGoogle Cloud risorse sottoutilizzate. Ad esempio, utilizza metriche come l'utilizzo della CPU e della memoria per identificare le risorse VM inattive. Per Google Kubernetes Engine (GKE), puoi visualizzare una disaggregazione dettagliata dei costi e le metriche di ottimizzazione relative ai costi. Per Google Cloud VMware Engine, esamina l'utilizzo delle risorse per ottimizzare le CUD, il consumo di spazio di archiviazione e il dimensionamento corretto di ESXi.
  • Utilizza i consigli sul cloud: Active Assist è un portafoglio di strumenti intelligenti che ti aiutano a ottimizzare le operazioni cloud. Questi strumenti forniscono suggerimenti utili per ridurre i costi, aumentare le prestazioni, migliorare la sicurezza e persino prendere decisioni incentrate sulla sostenibilità. Ad esempio, le informazioni sul dimensionamento corretto delle VM possono aiutarti a ottimizzare l'allocazione delle risorse ed evitare spese non necessarie.
  • Correla l'utilizzo delle risorse con il rendimento: analizza la relazione tra l'utilizzo delle risorse e il rendimento dell'applicazione per determinare se puoi eseguire il downgrade a risorse meno costose senza influire sull'esperienza utente.

Trovare il giusto equilibrio tra le esigenze di risoluzione dei problemi e i costi

I dati di osservabilità dettagliati possono essere utili per diagnosticare e risolvere i problemi. Tuttavia, l'archiviazione di quantità eccessive di dati di osservabilità o l'esportazione di dati non necessari in strumenti di monitoraggio esterni può comportare costi non necessari. Per una risoluzione dei problemi efficiente, prendi in considerazione i seguenti consigli:

  • Raccogli dati sufficienti per la risoluzione dei problemi: assicurati che la tua soluzione di monitoraggio acquisisca dati sufficienti per diagnosticare e risolvere in modo efficiente i problemi quando si verificano. Questi dati possono includere log, tracce e metriche a vari livelli di granularità.
  • Utilizza il campionamento e l'aggregazione: bilancia la necessità di dati dettagliati con le considerazioni sui costi utilizzando tecniche di campionamento e aggregazione. Questo approccio consente di raccogliere dati rappresentativi senza costi di archiviazione eccessivi.
  • Comprendi i modelli di prezzi degli strumenti e dei servizi di monitoraggio: valuta diverse soluzioni di monitoraggio e scegli le opzioni in linea con le esigenze specifiche, il budget e i pattern di utilizzo del tuo progetto. Quando effettui la selezione, tieni conto di fattori come il volume di dati, i requisiti di conservazione e le funzionalità richieste.
  • Rivedi regolarmente la configurazione del monitoraggio: evita di raccogliere dati eccessivi rimuovendo metriche o log non necessari.

Personalizza la raccolta dei dati in base ai ruoli e imposta criteri di conservazione specifici per ruolo

Tieni conto delle esigenze specifiche dei dati dei diversi ruoli. Ad esempio, gli sviluppatori potrebbero aver bisogno principalmente di accedere alle tracce e ai log a livello di applicazione, mentre gli amministratori IT potrebbero concentrarsi sui log di sistema e sulle metriche dell'infrastruttura. Personalizzando la raccolta dei dati, puoi ridurre i costi di archiviazione non necessari ed evitare di sovraccaricare gli utenti con informazioni irrilevanti.

Inoltre, puoi definire criteri di conservazione in base alle esigenze di ciascun ruolo e a eventuali requisiti normativi. Ad esempio, gli sviluppatori potrebbero aver bisogno di accedere a log dettagliati per un periodo più breve, mentre gli analisti finanziari potrebbero richiedere dati di più lungo periodo.

Considera i requisiti normativi e di conformità

In alcuni settori, i requisiti normativi richiedono la conservazione dei dati. Per evitare rischi legali e finanziari, devi assicurarti che le tue pratiche di monitoraggio e conservazione dei dati ti aiutino a rispettare le normative vigenti. Allo stesso tempo, devi mantenere l'efficienza in termini di costi. Prendi in considerazione i seguenti consigli:

  • Determina i requisiti specifici di conservazione dei dati per il tuo settore o la tua regione e assicurati che la tua strategia di monitoraggio soddisfi questi requisiti.
  • Implementa meccanismi di archiviazione e recupero dei dati appropriati per soddisfare le esigenze di audit e conformità, riducendo al minimo i costi di archiviazione.

Implementare avvisi intelligenti

Gli avvisi consentono di rilevare e risolvere i problemi in modo tempestivo. Tuttavia, è necessario trovare un equilibrio tra un approccio che ti tiene al corrente e uno che ti sommerge di notifiche. Progettando sistemi di avviso intelligenti, puoi dare la priorità ai problemi critici che hanno un impatto maggiore sull'attività. Prendi in considerazione i seguenti consigli:

  • Dai la priorità ai problemi che interessano i clienti: progetta avvisi che si attivano rapidamente per problemi che influiscono direttamente sull'esperienza dei clienti, come interruzioni del servizio del sito web, tempi di risposta lenti o errori di transazione.
  • Ottimizzazione per problemi temporanei: utilizza soglie e meccanismi di ritardo appropriati per evitare avvisi non necessari per problemi temporanei o di sistema di riparazione automatica che non interessano i clienti.
  • Personalizza la gravità degli avvisi: assicurati che i problemi più urgenti ricevano l'attenzione immediata distinguendo tra avvisi critici e non critici.
  • Utilizza i canali di notifica con saggezza: scegli i canali appropriati per le notifiche di avviso (email, SMS o paging) in base alla gravità e all'urgenza degli avvisi.