Perché la distribuzione di Azure impiega così tanto tempo?


143

Sto cercando di capire perché possono essere necessari dai 20 ai 60 minuti per distribuire una piccola applicazione in Azure (usando il metodo di caricamento della configurazione / pacchetto, non da VS).

Ho letto questa situazione e questa, ma non sono ancora chiaro: c'è uno strano rituale non tecnologico che si verifica mentre le istanze si stanno distribuendo, come qualcuno che Microsoft accende una candela o balla?


12
Questo è esattamente il motivo per cui utilizzo ancora EC2 anche se adoro l'astrazione lontana dall'amministrazione del sistema operativo fornita da Azure.
stepanian

12
Nel frattempo siamo passati quasi 3 anni e siamo ancora molto lenti.
staccata l'

I siti Web @staccata sono molto più veloci da distribuire, quindi usali se puoi.
Casey,

Difficile capire che sono trascorsi 5 anni, ma il tempo di avvio è sempre lo stesso.
rks,

4
ora è la fine del 2017 e questo è ancora super lento. A volte penso di decomprimere un computer, quindi installare il sistema operativo quindi distribuire l'app manualmente è più veloce di così.
hoangpx,

Risposte:


58

Come collega utente di Azure, condivido il tuo dolore - la distribuzione non è "rapida" / "indolore" - e questo fa male soprattutto quando sei in un ciclo di sviluppo e vuoi testare le iterazioni di sviluppo su Azure. Tuttavia, in generale le implementazioni dovrebbero richiedere molto meno di 60 minuti e anche meno di 20 minuti.

Steve Marx ha fornito una breve panoramica delle fasi coinvolte nella distribuzione: http://blog.smarx.com/posts/what-happens-when-you-deploy-on-windows-azure

E fa riferimento a una spiegazione di livello più approfondito su: http://channel9.msdn.com/blogs/pdc2008/es19


9
Questa risposta è ancora appropriata per il 2018? Sto cercando di distribuire una cache redis su Azure. Il mio primo servizio su azzurro - stavo aspettando 25 minuti ora e non riesco a credere che questo sia normale / accettabile.
Sugo

1
@Gravy Sto usando molto da anni ormai, e sì, le implementazioni (specialmente delle VM) a volte possono essere dolorosamente lente. Generalmente stai cercando tra 10 e 60 minuti.
Cocowalla,

26

C'è molto che succede dietro le quinte quando si distribuisce un'applicazione nel cloud di Azure. Non ho alcuna visione speciale di ciò che sta accadendo dietro il sipario, ma avendo lavorato sugli strumenti VS per caricare progetti nel cloud di Azure, queste sono le mie impressioni come un estraneo che guarda dentro:

Tra le altre cose:

  1. L'hardware deve essere allocato dal pool di server disponibile
  2. Il disco rigido virtuale del sistema operativo principale deve essere caricato sulla macchina
  3. Un'istanza di macchina virtuale deve essere inizializzata e avviata dall'immagine VHD
  4. Il pacchetto dell'applicazione deve essere copiato nella macchina virtuale e installato
  5. Il monitor VM deve attendere l'avvio o la mancata riuscita del servizio
  6. Il bilanciamento del carico del data center e il firewall devono essere informati degli endpoint di servizio dell'applicazione
  7. Una volta sincronizzato tutto ciò, l'app è accessibile dal Web.

L'immagine del disco rigido virtuale ha probabilmente una dimensione di gigabyte, molto più grande del caricamento dell'app. Anche su una rete di datacenter superveloce, ci vuole tempo per spostare tutta quella roba nella VM, decomprimerla e avviarla. Inoltre, il bilanciamento del carico e il firewall sono probabilmente ottimizzati per rendere le richieste di routing la massima priorità. La riconfigurazione del firewall e del bilanciamento del carico ha una priorità inferiore e deve essere eseguita senza interrompere il flusso di traffico.

Si noti inoltre che tutto questo lavoro deve essere fatto solo per una nuova distribuzione. L'aggiornamento di una distribuzione esistente viene distribuito molto più rapidamente: da 2 a 3 minuti anziché da 20 a 30 minuti.


2
Punti interessanti, ma considerando che al giorno d'oggi abbiamo la più veloce di tutte le opzioni disponibili. Questo non dovrebbe permetterci di fare tutto questo in pochi secondi se non in ms?
afr0

"Oggigiorno" sono trascorsi 5 anni da quando è stato scritto il mio commento originale. Sono sicuro che le prestazioni di provisioning di Azure sono migliorate dal 2011.:>
dthorpe,

7
ancora non in pochi secondi posso confermare che
afr0

sicuramente no.
Philippe

4
Sì, ci vogliono ancora circa 10 minuti per una nuova distribuzione. Onestamente, sono un po 'sorpreso che Azure non mantenga alcune VM in attesa al passaggio 4 in questo elenco per migliorare l'esperienza dei clienti.
Fls'Zen,

18

Guarda questo video PDC10 di Mark Russinovich. Egli approfondisce dettagliatamente cosa sta succedendo all'interno di Azure con alcuni approfondimenti sul processo di distribuzione (certamente lento).

Il link originale non funziona più. Ecco un altro link a una versione della stessa presentazione: https://channel9.msdn.com/events/Build/BUILD2011/SAC-853T


5
Ottimo collegamento, ma ancora nessun +1: il video dura più di un'ora, quindi sarebbe stato straordinariamente utile se tu avessi pubblicato un leggero riassunto delle luci. Se lo fai: +1 da parte mia.
Jeroen Wiert Pluimers,

3
Ad essere sinceri, BrentDaCodeMonkey ha detto che va in "grande dettaglio" .. un buon video comunque!
Jamie Keeling,

32
Wow .. Questo video è una distribuzione lunga di Windows Azure.
André Pena,

1
Certo, era una registrazione piuttosto vecchia (in termini di cloud). Ho aggiornato con un nuovo link alla stessa sessione di Russinovich di un evento diverso.
BrentDaCodeMonkey l'
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.