Warum dauert die Azure-Bereitstellung so lange?

143

Ich versuche zu verstehen, warum die Bereitstellung einer kleinen Anwendung in Azure zwischen 20 und 60 Minuten dauern kann (mithilfe der Konfigurations- / Paket-Upload-Methode, nicht innerhalb von VS).

Ich habe diese und jene Situation durchgelesen , bin mir aber immer noch ein wenig unklar - gibt es ein seltsames Ritual ohne Technologie, das während der Verteilung der Instanzen stattfindet, wie jemand bei Microsoft, der eine Kerze anzündet oder einen Tanz macht?

leeres Set
quelle
12
Dies ist genau der Grund, warum ich immer noch EC2 verwende, obwohl ich die Abstraktion von der von Azure bereitgestellten Betriebssystemverwaltung liebe.
Stepanian
12
In der Zwischenzeit sind wir fast 3 Jahre weiter und immer noch sehr langsam.
Staccata
@ Staccata-Websites lassen sich viel schneller bereitstellen. Verwenden Sie sie daher, wenn Sie können.
Casey
Es ist schwer zu ergründen, dass 5 Jahre vergangen sind, aber die Startzeit ist immer noch dieselbe.
rks
4
Jetzt ist Ende 2017 und das ist immer noch super langsam. Manchmal denke ich darüber nach, einen Computer zu entpacken, dann das Betriebssystem zu installieren und die App manuell bereitzustellen.
Hoangpx

Antworten:

58

Als anderer Azure-Benutzer teile ich Ihre Schmerzen - die Bereitstellung ist nicht "schnell" / "schmerzlos" - und dies tut besonders weh, wenn Sie sich in einem Entwicklungszyklus befinden und Entwickler-Iterationen in Azure testen möchten. Im Allgemeinen sollten Bereitstellungen jedoch weniger als 60 Minuten dauern - und auch weniger als 20 Minuten.

Steve Marx gab einen kurzen Überblick über die mit der Bereitstellung verbundenen Schritte: http://blog.smarx.com/posts/what-happens-when-you-deploy-on-windows-azure

Und er verweist auf eine ausführlichere Erklärung unter: http://channel9.msdn.com/blogs/pdc2008/es19

Stuart
quelle
9
Ist diese Antwort für 2018 noch angemessen? Ich versuche, einen Redis-Cache in Azure bereitzustellen. Mein erster Service auf Azure - habe jetzt 25 Minuten gewartet und kann nicht glauben, dass dies normal / akzeptabel ist.
Soße
1
@Gravy Ich benutze seit Jahren viel und ja, Bereitstellungen (insbesondere von VMs) können manchmal schmerzhaft langsam sein. Im Allgemeinen suchen Sie zwischen 10 und 60 Minuten.
Cocowalla
26

Hinter den Kulissen passiert viel, wenn Sie eine Anwendung in der Azure-Cloud bereitstellen. Ich habe keinen besonderen Einblick in das, was sich hinter dem Vorhang abspielt, aber nachdem ich an den VS-Tools gearbeitet habe, um Projekte in die Azure-Cloud hochzuladen, sind dies meine Eindrücke als Außenseiter:

Unter anderem:

  1. Die Hardware muss aus dem verfügbaren Serverpool zugewiesen werden
  2. Die virtuelle Festplatte des Kernbetriebssystems muss auf den Computer hochgeladen werden
  3. Eine VM-Instanz muss initialisiert und von diesem VHD-Image gestartet werden
  4. Ihr Anwendungspaket muss auf die VM kopiert und installiert werden
  5. Der VM-Monitor muss warten, bis Ihr Dienst gestartet wird oder fehlschlägt
  6. Der Load Balancer und die Firewall des Rechenzentrums müssen über die Service-Endpunkte Ihrer Anwendung informiert werden
  7. Sobald dies alles synchronisiert ist, ist Ihre App über das Web zugänglich.

Das VHD-Image ist wahrscheinlich Gigabyte groß und viel größer als der App-Upload. Selbst in einem superschnellen Rechenzentrumsnetzwerk dauert es einige Zeit, bis so viel Material in die VM verschoben, entpackt und von dort gestartet wurde. Außerdem sind der Load Balancer und die Firewall wahrscheinlich so optimiert, dass Routing-Anforderungen die höchste Priorität haben. Die Neukonfiguration der Firewall und des Load Balancers hat eine niedrigere Priorität und muss ohne Unterbrechung des Verkehrsflusses erfolgen.

Beachten Sie auch, dass all diese Arbeiten nur für eine neue Bereitstellung ausgeführt werden müssen. Das Aktualisieren einer vorhandenen Bereitstellung erfolgt viel schneller - 2 bis 3 Minuten statt 20 bis 30 Minuten.

dthorpe
quelle
2
Interessante Punkte, aber wenn man bedenkt, dass wir heutzutage die schnellste aller verfügbaren Optionen haben. Sollte uns das nicht erlauben, dies alles in Sekunden zu tun, wenn nicht ms?
Afr0
"Diese Tage" ist jetzt 5 Jahre später, als mein ursprünglicher Kommentar geschrieben wurde. Ich bin sicher, dass sich die Leistung der Azure-Bereitstellung seit 2011 verbessert hat:>
dthorpe
7
immer noch nicht in Sekunden Ich kann das bestätigen
afr0
definitiv nicht.
Philippeback
4
Ja, es dauert immer noch ungefähr 10 Minuten für eine neue Bereitstellung. Ehrlich gesagt bin ich ein wenig überrascht, dass Azure einige VMs nicht in Schritt 4 dieser Liste warten lässt, um ihre Kundenerfahrung zu verbessern.
Fls'Zen
18

Schauen Sie sich dieses PDC10-Video von Mark Russinovich an. Er geht detailliert auf die Vorgänge in Azure ein und gibt Einblicke in den (zugegebenermaßen langsamen) Bereitstellungsprozess.

Der ursprüngliche Link funktioniert nicht mehr. Hier ist ein weiterer Link zu einer Version derselben Präsentation: https://channel9.msdn.com/events/Build/BUILD2011/SAC-853T

BrentDaCodeMonkey
quelle
5
Toller Link, aber noch keine +1: Das Video ist länger als eine Stunde, also wäre es enorm praktisch gewesen, wenn Sie eine kleine Zusammenfassung der Höhepunkte gepostet hätten. Wenn du das tust: +1 von mir.
Jeroen Wiert Pluimers
3
Um fair zu sein, hat BrentDaCodeMonkey gesagt, dass er "sehr detailliert" ist. Trotzdem ein gutes Video!
Jamie Keeling
32
Wow .. Dieses Video ist eine lange Windows Azure-Bereitstellung.
André Pena
1
Zugegeben, es war eine ziemlich alte (in Cloud-Begriffen) Aufnahme. Ich habe mit einem neuen Link zu derselben Sitzung von Russinovich von einer anderen Veranstaltung aktualisiert.
BrentDaCodeMonkey