Convalidare gli aggiornamenti del servizio per evitare interruzioni nelle istanze di API Management di produzione
SI APPLICA A: Tutti i livelli di Gestione API
"Una delle proposte di valore del cloud è che sta migliorando continuamente, offrendo nuove funzionalità e funzionalità, nonché miglioramenti alla sicurezza e all'affidabilità. Tuttavia, poiché la piattaforma è in continua evoluzione, il cambiamento è inevitabile." - Mark Russinovich, CTO, Azure
Microsoft usa un framework di procedure di distribuzione sicure per testare, monitorare e convalidare accuratamente gli aggiornamenti del servizio e quindi distribuirli nelle aree di Azure usando un approccio in più fasi. Anche in questo caso, gli aggiornamenti del servizio che raggiungono le istanze di API Management potrebbero introdurre rischi imprevisti per i carichi di lavoro di produzione e interrompere i consumer di API. Informazioni su come applicare l'approccio alla distribuzione sicura per ridurre i rischi convalidando gli aggiornamenti prima di raggiungere gli ambienti di API Management di produzione.
Che cos'è il framework delle procedure di distribuzione sicure di Azure?
Azure distribuisce gli aggiornamenti per un determinato servizio in una serie di passaggi di pre-produzione e produzione usando un framework SDP (Safe Deployment Practices). Questo framework è illustrato in forma semplificata nell'immagine seguente:
Le fasi di distribuzione includono:
Sviluppo e test: i team di progettazione di Azure eseguono l'iterazione e convalidano gli aggiornamenti per i propri servizi in ambienti di sviluppo e test, con controlli di qualità rigorosi.
Un'attenta analisi, convalida e test completi per le regressioni durante queste fasi riduce il rischio che le modifiche software influiscano negativamente sui carichi di lavoro di Azure dei clienti nell'ambiente di produzione.
Produzione: gli aggiornamenti pronti per la produzione vengono quindi introdotti nei servizi di Azure dei clienti in una pipeline di implementazione di produzione in più fasi:
Le aree Canary ricevono prima gli aggiornamenti. Queste aree, note formalmente come Programmi di accesso agli aggiornamenti anticipato (EUAP), sono ambienti completi a livello di produzione in cui gli scenari possono essere convalidati su larga scala dai team di progettazione di Azure e dai clienti invitati. Attualmente, le aree Canary di Azure sono Stati Uniti orientali 2 (EUAP) e Stati Uniti centrali (EUAP).
Nota
Anche se le aree EUAP sono pronte per la produzione, la capacità può essere limitata e i servizi possono essere interrotti di tanto in tanto dalle esercitazioni sul ripristino di emergenza e da altri test da parte dei team di progettazione di Azure.
Un'area pilota supportata per l'uso in produzione con un contratto di servizio riceve gli aggiornamenti successivi. Attualmente, l'area pilota è Stati Uniti centro-occidentali.
Dopo un periodo di osservazione nell'area pilota, gli aggiornamenti del servizio vengono introdotti gradualmente nelle aree rimanenti, ampliando l'esposizione dei clienti.
Come si distribuiscono gli aggiornamenti in modo sicuro alle istanze di API Management?
I clienti di Azure non sono in grado di controllare quando applicare gli aggiornamenti del servizio alle istanze di API Management. Gli aggiornamenti vengono applicati automaticamente. Tuttavia, per ridurre al minimo i rischi, è possibile usare una strategia per distribuire le istanze non critiche nelle aree che ricevono gli aggiornamenti prima delle aree che eseguono le istanze di produzione.
L'istanza che riceve prima gli aggiornamenti è effettivamente la distribuzione canary.
Usare questa istanza per monitorare eventuali problemi causati dagli aggiornamenti rispetto alle istanze di produzione di base. Con il monitoraggio, identificare e attenuare potenziali regressioni prima che i servizi di produzione siano interessati.
Importante
Se l'istanza canary riscontra problemi associati al processo di aggiornamento, aprire una richiesta di supporto di Azure il prima possibile.
Dopo aver convalidato la distribuzione canary, si ha maggiore attendibilità negli aggiornamenti che verranno venire in un secondo momento nelle istanze di produzione.
Vedere strategie di esempio per creare e usare una distribuzione canary di API Management, più avanti in questo articolo.
Sapere quando le istanze ricevono gli aggiornamenti
Come primo passaggio, assicurarsi di conoscere gli aggiornamenti del servizio previsti o in corso.
Gli aggiornamenti di API Management vengono annunciati nel repository GitHub di API Management. È consigliabile sottoscrivere per ricevere notifiche da questo repository per sapere quando iniziano le implementazioni degli aggiornamenti.
Monitorare gli aggiornamenti del servizio che si verificano nell'istanza di API Management usando il Log attività di Azure. L'evento "Manutenzione pianificata" viene generato all'inizio di un aggiornamento.
Per ricevere automaticamente le notifiche, configurare un avviso nel Log attività.
Gli aggiornamenti vengono implementati nelle aree nelle fasi seguenti: Aree EUAP di Azure, seguite dagli Stati Uniti centro-occidentali, seguite dalle aree rimanenti in diverse fasi successive. La sequenza di aree aggiornate nelle fasi di distribuzione successive differisce dal servizio al servizio. È possibile prevedere almeno 24 ore tra ogni fase dell'implementazione di produzione.
All'interno di un'area, le istanze di API Management nel livello Premium ricevono gli aggiornamenti diverse ore dopo quelli in altri livelli di servizio.
Suggerimento
Se l'istanza di API Management viene distribuita in più posizioni (aree), la tempistica degli aggiornamenti viene determinata dalla posizione primaria dell'istanza.
Strategie di distribuzione Canary
Ecco alcune strategie di esempio per usare un'istanza di API Management come distribuzione canary che riceve gli aggiornamenti precedenti alle istanze di produzione.
Distribuire nell'area EUAP : se si ha accesso a un'area EUAP di Azure, è possibile usare un'istanza per convalidare gli aggiornamenti non appena vengono rilasciati alla pipeline di produzione. Informazioni sul processo di richiesta di accesso all'area di Azure.
Nota
A causa dei vincoli di capacità nelle aree EUAP, potrebbe non essere possibile ridimensionare le istanze di API Management in base alle esigenze.
Distribuire nell'area pilota: usare un'istanza negli Stati Uniti centro-occidentali per simulare l'ambiente di produzione o usarla nell'ambiente di produzione per il traffico API non critico. Anche se questa area riceve gli aggiornamenti dopo le aree EUAP, è più probabile che una distribuzione identifichi regressioni specifiche della configurazione del servizio.
Distribuire istanze duplicate in un'area: se il carico di lavoro di produzione è un'istanza di livello Premium in un'area specifica, valutare la possibilità di distribuire un'istanza configurata in modo analogo in un livello inferiore che riceve gli aggiornamenti in precedenza. Ad esempio, configurare un'istanza di pre-produzione nel livello Developer per convalidare gli aggiornamenti.
Contenuto correlato
- Informazioni su come monitorare l'istanza di API Management.
- Informazioni su altre opzioni per osservare l'istanza di API Management.