Ottimizzazione del carico di lavoro
Questo articolo illustra la funzionalità di ottimizzazione del carico di lavoro all'interno di FinOps Framework e come implementare tale funzionalità in Microsoft Cloud.
Definizione
L'ottimizzazione del carico di lavoro si riferisce al processo di verifica dell'utilizzo e dell'ottimizzazione dei servizi cloud per ottimizzare il valore aziendale e ridurre al minimo l'utilizzo e la spesa sprecate.
Esaminare il modo in cui i servizi vengono usati e assicurarsi che ognuno di essi stia massimizzando il ritorno sugli investimenti. Valutare e implementare procedure consigliate e raccomandazioni.
Ogni costo deve essere tracciabile direttamente o indirettamente al valore aziendale. Eliminare le risorse completamente "ottimizzate" che non contribuiscono al valore aziendale.
Esaminare i modelli di utilizzo delle risorse e determinare se possono essere ridimensionati o addirittura arresti (per interrompere la fatturazione) durante le ore di minore attività. Per ridurre i costi, prendere in considerazione alternative più economiche. Evitare l'utilizzo e i costi non necessari che non contribuiscono alla missione, che a sua volta aumentano il ritorno sugli investimenti e sulla redditività.
Introduzione
Quando si inizia a usare un servizio o a gestire i costi nel cloud, assegnare priorità all'uso di strumenti nativi all'interno del portale per ottimizzare l'efficienza e ottimizzare i costi.
- Esaminare e implementare le procedure consigliate per i costi di Cloud Adoption Framework.
- Esaminare e implementare il materiale sussidiario relativo all'ottimizzazione dei costi di Azure Well-Architected Framework.
- Esaminare e implementare le raccomandazioni sui costi di Azure Advisor.
- Azure Advisor propone raccomandazioni di elevata attendibilità in base all'utilizzo. Azure Advisor rappresenta lo strumento ideale quando si cerca di ottimizzare i carichi di lavoro.
- Prendere in considerazione la possibilità di sottoscrivere gli avvisi di Azure Advisor per ricevere aggiornamenti in merito alle nuove raccomandazioni sui costi.
- Esaminare gli sconti relativi all'utilizzo e all'impegno di acquisto quando è opportuno.
- Usare Vantaggio Azure Hybrid per Windows, Linux e SQL Server.
- Acquisire familiarità con i servizi usati, le modalità di addebito dei costi e le opzioni di ottimizzazione dei costi specifiche del servizio.
- È possibile individuare i servizi usati nella pagina Tutte le risorse del portale di Azure o nella vista Servizi in Analisi dei costi.
- Per informazioni su come ogni servizio viene addebitato, esplorare le pagine dei prezzi di Azure e il calcolatore prezzi di Azure. Usare questi strumenti per identificare le opzioni in grado di ridurre i costi. Ad esempio, gli sconti relativi all'infrastruttura condivisa e all'impegno.
- Esaminare la documentazione del servizio specifico per informazioni sulle funzionalità correlate ai costi che consentono di ottimizzare l'ambiente o migliorare la visibilità dei costi. Di seguito alcuni esempi:
- Scegliere le macchine virtuali spot per carichi di lavoro con priorità bassa e interrompibili.
- Evitare il trasferimento dei dati tra aree.
- Determinare se i servizi possono essere sospesi o arrestati per interrompere l'addebito degli addebiti.
- Alcuni servizi supportano la funzionalità di arresto automatico a livello nativo, ad esempio Microsoft Dev Box, Azure DevTest Labs, Azure Lab Services e Test di carico di Azure.
- Se si usa un servizio che supporta l'arresto, ma non l'arresto automatico, è consigliabile usare un flusso leggero in Power Automate o App per la logica.
- Se il servizio non può essere arrestato, valutare le alternative per determinare se sono disponibili opzioni che possono essere arrestate per interrompere la fatturazione.
- Prestare particolare attenzione agli addebiti non di calcolo che potrebbero continuare a essere fatturati quando una risorsa viene arrestata in modo da non sorprendersi. L'archiviazione è un esempio comune di costo che continua a essere addebitato anche se una risorsa di calcolo che usa l'archiviazione non è più in esecuzione.
- Il servizio supporta l'elaborazione serverless?
- I livelli di elaborazione serverless possono ridurre i costi quando non sono attivi. Alcuni esempi: database SQL di Azure, servizio Azure SignalR, Cosmos DB, Synapse Analytics, Azure Databricks.
- Esaminare la documentazione del servizio specifico per informazioni sulle funzionalità correlate ai costi che consentono di ottimizzare l'ambiente o migliorare la visibilità dei costi. Di seguito alcuni esempi:
- Scegliere le macchine virtuali spot per carichi di lavoro con priorità bassa e interrompibili.
- Evitare il trasferimento dei dati tra aree.
- Determinare se i servizi supportano la scalabilità automatica.
- Se il servizio supporta la scalabilità automatica, configurarlo per la scalabilità in base alle esigenze dell'applicazione.
- La scalabilità automatica può funzionare in combinazione con l'arresto automatico per ottimizzare l'efficienza.
- Per evitare costi non necessari, è consigliabile arrestare e avviare manualmente le risorse non di produzione durante l'orario di lavoro.
- Evitare di avviare automaticamente risorse non di produzione che non vengono usate ogni giorno.
- Se si sceglie di eseguire l'avvio automatico, tenere presente le vacanze e le festività in cui le risorse potrebbero iniziare automaticamente ma non essere usate.
- Valutare la possibilità di assegnare tag manualmente alle risorse arrestate. Per assicurarsi che tutte le risorse vengano arrestate, salvare una query in Azure Resource Graph o una visualizzazione nell'elenco Tutte le risorse e aggiungerla al dashboard portale di Azure.
- Si considerino modelli architetturali come contenitori e serverless per usare le risorse solo quando sono necessarie e promuovere la massima efficienza nei servizi chiave.
- Usare la cartella di lavoro Ottimizzazione costi per valutare l'utilizzo delle risorse, ad esempio le risorse inattive e inutilizzate.
🏗️ Basandosi sulle nozioni di base
A questo punto, sono state implementate tutte le raccomandazioni di ottimizzazione dei costi di base e sono state ottimizzate le applicazioni per soddisfare le procedure consigliate più fondamentali. Per superare questa fase iniziale, considerare i seguenti punti:
- Automatizzare le raccomandazioni sui costi con Azure Resource Graph
- Rimanere sempre aggiornati sulle tecnologie emergenti, gli strumenti e le procedure consigliate del settore per ottimizzare ulteriormente l'utilizzo delle risorse.
- Automatizzare il processo di ridimensionamento o arresto automatico delle risorse che non supportano questa funzionalità o hanno requisiti più complessi.
- Prendere in considerazione l'uso di servizi di automazione, ad esempio Automazione di Azure o Funzioni di Azure.
- Assegnare un tag "Env" o Environment per identificare le risorse per lo sviluppo, il test, la gestione temporanea, la produzione e così via.
- Privilegiare l'assegnazione di tag a livello di sottoscrizione o gruppo di risorse. Abilitare quindi i criteri di ereditarietà dei tag per Criteri di Azure e l'ereditarietà dei tag di Gestione dei costi per coprire le risorse che non generano tag con i dati di utilizzo.
- Valutare la possibilità di configurare script automatizzati per arrestare le risorse con profili di attività specifici, ad esempio arrestare le macchine virtuali per sviluppatori durante le ore di minore attività se non sono state usate in 2 ore.
- Documentare le aspettative a livello di attività in base a valori di tag specifici e che cosa accade quando il tag non è presente.
- Usare Criteri di Azure per tenere traccia della conformità ai criteri dei tag.
- Usare Criteri di Azure per applicare regole di configurazione specifiche in base all'ambiente.
- Prendere in considerazione l'uso di tag "override" per ignorare i criteri standard quando necessario. Per garantire la responsabilità, tenere traccia dei costi e segnalarli agli stakeholder.
- Valutare la possibilità di definire e monitorare gli indicatori KPI per i carichi di lavoro con priorità bassa, ad esempio i server di sviluppo.
- Valutare la possibilità di distribuire altri strumenti per ottimizzare l'ambiente, ad esempio il motore di ottimizzazione di Azure disponibile nel toolkit FinOps fornito da Microsoft.
Altre informazioni su FinOps Foundation
Questa capacità fa parte di FinOps Framework di FinOps Foundation, un'organizzazione senza fine di lucro dedicata al progresso della gestione e dell'ottimizzazione dei costi del cloud. Per altre informazioni su FinOps, inclusi playbook utili, programmi di training e certificazione e altro ancora, vedere l'articolo Funzionalità di ottimizzazione del carico di lavoro nella documentazione di FinOps Framework.
Puoi anche trovare video correlati sul canale YouTube di FinOps Foundation:
Contenuto correlato
Funzionalità FinOps correlate:
Prodotti correlati:
- Azure Advisor
- Monitoraggio di Azure
- Azure Resource Graph
- Calcolatore prezzi di Azure
- Gestione costi
- Criteri di Azure
Soluzioni correlate:
Altre risorse: