2 Stimmen

Windows Azure - Persistenz der OS-Einstellungen bei Verwendung von WebRoles

Ich habe mir einige Videos von der Build-Konferenz angesehen: Inside Windows Azure usw. Aus einem davon habe ich mitgenommen, dass ich alle Systemeinstellungen, die ich vorgenommen habe, verlieren würde, wenn die Instanz nicht heruntergefahren oder wiederverwendet wird, es sei denn, ich lade eine vorkonfigurierte VHD in eine virtuelle Maschinenrolle.

Ich habe zum Beispiel ein einziges Konto mit 2 Web-Rollen, auf denen mehrere (kleine) Websites laufen. Um dies zu ermöglichen, musste ich die Einstellungen in der Hosts-Datei anpassen. Ich weiß, dass meine Websites im Falle eines Ausfalls übernommen werden, weil sie in der Datei ServiceConfiguration.csfg definiert sind, aber werden meine Einstellungen in der Hosts-Datei im Falle eines Ausfalls auch auf eine neue Instanz übertragen?

d.h. wie tief/umfassend ist meine "Vorlage" mit einer Webrolle?

2voto

Jeremy McGee Punkte 24034

Les hosts Datei wird bei jeder vollständigen Neuverteilung oder Neukopie rekonstruiert.

Im Allgemeinen sollten Sie es vermeiden, sich auf Änderungen an jede Datei, die vom Betriebssystem erstellt wird. Wenn Ihre Anwendung auf einen anderen Server migriert wird, wird sie auf einer neuen virtuellen Maschine mit einer eigenen neuen Kopie von Windows ausgeführt, so dass die Änderungen plötzlich verschwunden zu sein scheinen.

Das Gleiche passiert, wenn Sie eine Bereitstellung in der Azure "Staging"-Umgebung durchführen und dann einen "Swap VIP" durchführen: Die "Staging"-Umgebung wird die Änderungen an der Betriebssystemdatei nicht erhalten.

Microsoft veröffentlicht absichtlich keine inneren Details darüber, wie Azure-Images aussehen, da sie sich in Zukunft höchstwahrscheinlich ändern werden, aber derzeit

  • Laufwerk C: enthält die Boot-Partition, Protokolle, temporäre Daten und ist klein
  • Laufwerk D: enthält ein Windows-Abbild
  • Laufwerk E: oder F: enthält Ihre Anwendung

Bei einer vollständigen Bereitstellung oder einem Re-Image erhalten Sie eine neue virtuelle Maschine, sodass alle drei Laufwerke neu erstellt werden. Bei einem Upgrade läuft die virtuelle Maschine weiter, aber der Load Balancer leitet den Datenverkehr ab, während die neue Version der Anwendung auf Laufwerk F: bereitgestellt wird. Laufwerk E: wird dann entfernt.

Um Ihre Frage direkt zu beantworten: Die "Vorlage" gilt für das Laufwerk E: - alles andere kann sich ohne Ihr Wissen ändern und ist unzuverlässig.

1voto

Steven Punkte 781

Azure bietet Startskripte, mit denen Sie beim Start der Instanz Konfigurationsänderungen vornehmen können. Diese werden häufig verwendet, um zusätzliche Betriebssystemkomponenten zu installieren oder IIS-Konfigurationsänderungen vorzunehmen (z. B. Deaktivieren von Leerlaufzeitüberschreitungen).

Véase http://blogs.msdn.com/b/lucascan/archive/2011/09/30/using-a-Windows-azure-startup-script-to-prevent-your-site-from-being-shutdown.aspx für ein Beispiel.

1voto

user94559 Punkte 57151

Die vorhandenen Antworten sind technisch korrekt und beantworten die Frage, aber das Hosten mehrerer Websites in einer einzigen Webrolle erfordert überhaupt keine Bearbeitung der hosts-Datei. Definieren Sie einfach mehrere Websites (mit unterschiedlichen Host-Headern) in Ihrer ServiceDefinition.csdef, siehe http://msdn.microsoft.com/en-us/library/gg433110.aspx

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X