Deployment Azure da best practices grazie ad Azure Advisor

In Azure è disponibile la soluzione Advisor in grado di fornire delle raccomandazioni utili per ottimizzare i deployment presenti nel proprio ambiente. Azure Advisor analizza la configurazione delle risorse presenti nelle subscription Azure ed il relativo utilizzo, e mette in evidenza gli aspetti da tenere in considerazione al fine di ottimizzare i costi, le performance, l’alta disponibilità e la sicurezza. In questo articolo vengono riportate le principali caratteristiche e funzionalità della soluzione.

Azure Advisor è una soluzione totalmente gratuita ed inclusa in Azure che consente facilmente di ottimizzare le risorse presenti nei propri deployment, offrendo delle raccomandazioni specifiche per le seguenti categorie:

  • Alta disponibilità: riporta delle indicazioni su come è possibile aumentare la disponibilità delle proprie applicazioni business-critical, al fine di garantire una maggiore continuità del servizio.
  • Sicurezza: riporta come proteggere al meglio le risorse Azure da minacce di security.
  • Performance: grazie ad una costante analisi delle risorse utilizzate, la soluzione è in grado di riportare informazioni utili per aumentare la velocità e responsività delle applicazioni.
  • Costi: fornisce delle indicazioni per massimizzare il ritorno economico degli investimenti in Azure, grazie ad accorgimenti che possono ridurre ed ottimizzare i costi.

Tutte queste raccomandazioni sono proattive e, per facilitarne l’attuazione, contengono delle proposte di azioni concrete da effettuare.

Azure Advisor è accessibile dal portale Azure e nella schermata di overview raggruppa le raccomandazioni delle quattro macro-categorie citate:

Figura 1 – Azure Advisor overview

Tutte le indicazioni fornite dalla soluzione è possibile scaricarle in due differenti formati (.pdf e .csv), per rendere più agevole la consultazione e per mantenerle documentate.

Selezionando ogni singola categoria si viene rimandati alla sezione di dettaglio, dove è possibile verificare per ogni raccomandazione fornita, quali risorse sono impattate e il relativo livello di criticità (alto, medio, basso).

Figura 2 – High Availability raccomandations

Le raccomandazioni in ambito security sono integrate con Azure Security Center e si viene rimandati alla sezione specifica del Security Center.

Figura 3 – Security raccomandations

Nella soluzione è contemplata anche l’integrazione con Azure SQL DB Advisor, per ottenere utili consigli anche relativi al miglioramento delle performance dei datatabase.

Figura 4 – Performance raccomandations

Figura 5 – Cost raccomandations

Nel caso specifico, per ottimizzare i costi delle risorse Azure, viene consigliato l’acquisto di Virtual Machine Reserved Instances (VM RIs), stimando l’effettivo risparmio che si potrebbe ottenere adottando VM RIs a 3 anni.

Per facilitarne la consultazione, è possibile applicare dei filtri che consentono di visualizzare solo le raccomandazioni relative alle risorse presenti in specifiche subscription e in determinati resource group, con la possibilità di selezionare solo le categorie desiderate.

Figura 6 – Azure Advisor Resources configuration

Risulta inoltre possibile modificare, al momento per la sola rule relativa alla CPU, la soglia di utilizzo delle macchine virtuali da tenere in considerazione nelle relative valutazioni.

Figura 7 – Azure Advisor Rules configuration

Azure Advisor fornisce delle raccomandazioni per macchine virtuali, availability set, application gateway, Service App, SQL Server e Redis Cache. La soluzione esegue le proprie valutazioni in background e intercetta automaticamente le nuove risorse create. Dal momento della creazione di nuove risorse possono essere necessarie fino a 24 ore per ricevere le relative raccomandazioni.

Ogni singola raccomandazione è possibile posticiparla o ignorarla per un determinato periodo di tempo.

Figura 8 – Gestione delle raccomandazioni

Conclusioni

Si tratta di uno strumento di supporto molto utile per verificare a posteriori che siano state rispettate le principali best practices di implementazione in ambiente Azure e per indirizzarti nell’intraprendere le opportune azioni correttive. Azure Advisor consente di accentrare in un’unica soluzione le differenti raccomandazioni provenienti da servizi Azure diversi, per avere una visuale globale e migliorare le implementazioni in ambiente Azure.