Monitorare e ottimizzare nel tempo

Completato
Investimenti di dimensioni continuamente corrette man mano che il carico di lavoro si evolve con l'ecosistema.

Quello che era importante ieri potrebbe non essere importante oggi. Man mano che si apprende la valutazione dei carichi di lavoro di produzione, si prevedono cambiamenti nell'architettura, nei requisiti aziendali, nei processi e anche nella struttura del team. Le procedure SDLC (Software Development Lifecycle) potrebbero dover evolversi. Anche i fattori esterni possono cambiare, ad esempio la piattaforma cloud, le relative risorse e i contratti.

È consigliabile valutare attentamente l'impatto di tutte le modifiche sui costi. Monitorare le modifiche e la tendenza del ROI a cadenza regolare e valutare se è necessario modificare i requisiti funzionali e non funzionali.

Scenario di esempio

Contoso Air offre una soluzione di rilevamento bagagli per le compagnie aeree. Il carico di lavoro è ospitato in Azure ed è in esecuzione nel servizio Azure Kubernetes con Cosmos DB per il database e usa Hub eventi per la messaggistica. Il carico di lavoro viene distribuito negli Stati Uniti occidentali e nelle aree Stati Uniti orientali.

Valutare e ottimizzare continuamente l'ambiente e i costi di supporto.

Usando il sistema di rilevamento dei costi, valutare e ottimizzare continuamente i costi di risorse, dati e supporto a pagamento. Sono presenti risorse sottoutilizzate che possono essere ritirate, sostituite, ricompilate o sottoposte a refactoring?

Si ridurranno i costi evitando di pagare le risorse che non vengono usate completamente. Comprendere le metriche dei prezzi consente di prendere decisioni più allineate al modello di costo. Può anche impedire la fatturazione non autorizzata. Il ridimensionamento o la rimozione di risorse sottoutilizzate, o anche la modifica degli SKU, possono ridurre i costi.

Potresti anche essere in grado di risparmiare alcuni costi valutando l'uso dei contratti di supporto con i tuoi fornitori di tecnologie e ridimensionandoli correttamente.

Sfida di Contoso

  • Il team del carico di lavoro è sempre sotto budget, quindi l'ottimizzazione per l'efficienza dei costi non è stata una priorità.
  • Si prevede di migliorare l'affidabilità del carico di lavoro il prossimo anno e di sapere che in questo modo i costi di Azure aumenteranno, probabilmente spingendo il carico di lavoro sul budget. Stanno prendendo in considerazione la richiesta di un aumento del budget per il prossimo anno.

Applicazione dell'approccio e dei risultati

  • Il team decide che prima di richiedere più denaro, valuterà i costi correnti di Azure e di supporto per cercare potenziali opportunità di risparmio. Esaminano le suddivisioni per risorsa, per gruppo di risorse e per tag dei costi nel sistema di rilevamento dei costi esistente e notano una spesa imprevista.
  • Il team scopre che nel proprio ambiente sono in esecuzione macchine virtuali che sono state usate per un sistema di compilazione deprecato e non sono più necessarie, c'è una quantità significativa di dati obsoleti in Archiviazione di Azure che possono essere spostati in un livello meno costoso e pagano per un contratto di supporto con il proprio provider di servizi cloud che include ore di lavoro che sono in uso.
  • Il team ottimizza i costi di Azure eliminando le macchine virtuali inutilizzate e spostando i dati precedenti nell'archivio di archiviazione. Iniziano a lavorare più strettamente con il provider di servizi cloud per sfruttare al meglio i propri servizi di consulenza.
  • Il team aggiunge un'attività ricorrente al backlog per eseguire valutazioni dei costi del carico di lavoro in futuro.

Esaminare e perfezionare continuamente il carico di lavoro

Modificare continuamente le decisioni di progettazione dell'architettura, le risorse, il codice e i flussi di lavoro in base ai dati ROI.

Le revisioni regolari delle metriche, dei dati sulle prestazioni, dei report di fatturazione e dell'utilizzo delle funzionalità possono causare un'ottimizzazione che può ridurre i costi.

Sfida di Contoso

  • Dal momento che il team è rimasto sotto budget storicamente, non hanno esaminato approcci alternativi alle funzionalità esistenti. La maggior parte della pianificazione è invece incentrata sulla creazione di nuove funzionalità.
  • Dopo aver trovato rifiuti attraverso la valutazione iniziale, decidono di esaminare il resto dei componenti correnti per cercare opportunità di ottimizzazione.

Applicazione dell'approccio e dei risultati

  • Il team rileva che hanno allocato più risorse di quelle necessarie per i flussi con priorità bassa e possono ridurre in modo sicuro la velocità effettiva allocata, mantenendo al contempo i requisiti di prestazioni. In particolare, possono allontanarsi dall'over-provisioning per gestire i carichi di picco e implementare invece un sistema di livellamento del carico basato su coda.
  • Si scopre anche che una nuova funzionalità è stata aggiunta allo SKU selezionato nella piattaforma di calcolo che sostituisce il codice di autenticazione. L'uso di questa funzionalità comporta un minor numero di codice da gestire e testare.

Ottimizzare gli ambienti di distribuzione

Gestire diversi ambienti SDLC in modo diverso e distribuire il numero corretto di ambienti. Gli ambienti di produzione devono essere il driver di costo principale.

È possibile risparmiare denaro comprendendo che non tutti gli ambienti devono simulare la produzione. Gli ambienti non di produzione possono avere funzionalità, SKU, conteggi delle istanze e persino registrazione.

È anche possibile risparmiare sui costi creando ambienti di preproduzione su richiesta e rimuovendoli quando non sono più necessari.

Sfida di Contoso

  • Il team del carico di lavoro spende più in ambienti di preproduzione rispetto a quelli degli ambienti di produzione. Anche se questo può essere importante per alcuni scenari, sembra eccessivo per questo carico di lavoro.
  • Gli ambienti di preproduzione sono stati creati in modo che corrispondano molto strettamente all'ambiente di produzione. Il team del carico di lavoro apprezza la presenza di un'approssimazione molto vicina dell'ambiente di produzione negli ambienti inferiori, in quanto offre un elevato grado di attendibilità che i comportamenti nell'ambiente di produzione corrispondano agli ambienti inferiori.

Applicazione dell'approccio e dei risultati

  • Dopo un'attenta valutazione, il team decide di accettare il compromesso di un po ' di rischio aggiuntivo per realizzare risparmi sui costi che derivano da una certa differenza tra gli ambienti.
  • Il team decide di raggruppare alcuni ambienti di test nella stessa infrastruttura e di arrestare gli ambienti inutilizzati durante la notte.
  • Il team trova anche opportunità di spostarsi a sinistra ed eseguire lo sviluppo e il test dei cicli interni nelle workstation di sviluppo locali.
  • Trovando modi per fare piccoli compromessi negli ambienti di preproduzione e nelle procedure di sviluppo, hanno liberato budget che verranno messi a buon uso nelle attività di automazione.

Verificare le conoscenze

1.

Quali tipi di costi di Azure possono essere visualizzati nel sistema di rilevamento dei costi che è possibile ottimizzare?

2.

Quale degli aspetti seguenti del carico di lavoro non è consigliabile perfezionare in base ai dati roi?

3.

Gli sviluppatori Contoso Air stanno valutando la possibilità di distribuire un nuovo ambiente di sviluppo/test in Azure. Quale delle seguenti decisioni di progettazione sarebbe più conveniente?