Übung: Bereitstellen einer Web-App mithilfe von Bereitstellungsslots

Abgeschlossen

Wenn Sie für den Tausch zweier Slots bereit sind, müssen Sie sicherstellen, dass die richtige Konfiguration auf die getauschten Slots angewendet wird.

Angenommen, Sie haben die Tests für Version 2 der Web-App für soziale Medien abgeschlossen. Nun möchten Sie diese Version in der Produktionsumgebung bereitstellen. Sie möchten außerdem die Bereitstellung weiter optimieren, indem Sie für künftige Versionen der App den automatischen Tausch verwenden.

Hier erfahren Sie, wie der Wechsel manuell und automatisch erfolgt.

Konfigurieren einer Sloteinstellung

Bevor Sie Version 2 der Web-App bereitstellen, konfigurieren Sie eine Sloteinstellung. Die Einstellungen, die Sie hier konfigurieren, wirken sich nicht auf Ihre Demo-App aus. Der Zweck dieser Übung ist nur zu prüfen, wie die Konfigurationen funktionieren, wenn Sie Slots tauschen.

So konfigurieren Sie Sloteinstellungen

  1. Navigieren Sie im Azure-Portal über die Ansicht Alle Ressourcen zur Seite Übersicht des Produktionsslots der Web-App.

  2. Navigieren Sie zum Bereich Konfiguration für den Bereitstellungsslot.

  3. Wählen Sie + Neue Anwendungseinstellung aus. Fügen Sie eine neue Einstellung mit dem Namen ENVIRONMENT_NAME und dem Wert Production hinzu. Aktivieren Sie das Kontrollkästchen Bereitstellungssloteinstellung, um diese als Sloteinstellung auszuwählen. Klicken Sie auf OK.

  4. Fügen Sie eine weitere Einstellung mit dem Namen APP_VERSION hinzu, und geben Sie den Wert 1 ein. Legen Sie diese Einstellung nicht als Sloteinstellung fest. Klicken Sie auf OK.

  5. Wählen Sie in der oberen Menüleiste Speichern und dann Weiter aus.

  6. Wiederholen Sie die vorherigen Schritte für den Stagingslot, wobei Sie folgende Werte verwenden:

    Name Wert Bereitstellungssloteinstellung
    ENVIRONMENT_NAME staging Ja
    APP_VERSION 2 Nein

Tauschen der Slots

Nachdem Sie Version 2 der Web-App im Stagingslot getestet haben, können Sie sie bereitstellen, indem Sie die Slots tauschen. Führen Sie die folgenden Schritte aus:

  1. Klicken Sie auf Alle Ressourcen, und wählen Sie dann den Produktionsslot der Web-App aus, um sicherzustellen, dass Sie den Produktionsslot konfigurieren.

  2. Klicken sie im linken Menübereich unter Bereitstellung auf Bereitstellungsslots>Tauschen.

    Screenshot of starting a swap.

  3. Stellen Sie sicher, dass Sie im Begriff sind, Staging- und Produktionsslot zu tauschen. Beachten Sie, wie sich der Tausch auf Einstellungen auswirkt. Der Wert der Einstellung „APP_VERSION“ wird zwischen den Slots getauscht, der Wert der Sloteinstellung „ENVIRONMENT“ dagegen nicht. Klicken Sie auf Tauschen.

    Screenshot of completing a swap.

  4. Wenn der Wechsel abgeschlossen ist, navigieren Sie zur Seite Übersicht des Produktionsslots der Web-App und klicken auf Durchsuchen. Die Web-App wird in einer neuen Browserregisterkarte angezeigt. Beachten Sie, dass sich Version 2 der Web-App jetzt in der Produktionsumgebung befindet.

  5. Schließen Sie die Browserregisterkarte.

Konfigurieren des automatischen Tauschs für den Stagingslot

Da Sie nun Bereitstellungsslots verwenden, nehmen wir einmal an, dass Sie Continuous Deployment aktivieren möchten. Dazu müssen Sie das Feature „Automatisch tauschen“ für Ihre Web-App verwenden. Der automatische Tausch in einem System bedeutet, dass beim Bereitstellen von neuem Code im Stagingslot automatisch ein Aufwärmvorgang von Azure dafür ausgeführt und der Code in der Produktionsumgebung bereitgestellt wird, indem Staging- und Produktionsslot getauscht werden. Gehen Sie zum Konfigurieren des automatischen Tauschs wie folgt vor:

  1. Wechseln Sie zum Bereich Konfiguration der Web-App des Stagingslots, und navigieren Sie zur Registerkarte Allgemeine Einstellungen.

  2. Setzen Sie Automatischer Tausch aktiviert auf Ein.

  3. Wählen Sie in der Liste Bereitstellungsslot für automatischen Tausch die Option Produktion und dann Speichern und Weiter aus.

    Screenshot of configuring auto swap.

Bereitstellen von neuem Code und automatischer Tausch in die Produktionsumgebung

Jetzt ändern Sie den Code, um Version 3 der Web-App zu erstellen. Bei ihrer Bereitstellung im Stagingslot können Sie den automatischen Tausch in Aktion sehen. Führen Sie die folgenden Schritte aus:

  1. Starten Sie rechts neben Cloud Shell den Editor neu, wenn er noch nicht ausgeführt wird.

    cd ~/demoapp/app-service-web-dotnet-get-started/
    code .
    
  2. Erweitern Sie im Code-Editor in der Dateiliste auf der linken Seite den Eintrag aspnet-get-started>Ansichten>Startseite, und klicken Sie dann auf Index.cshtml.

  3. Suchen Sie den folgenden Code.

    <h1>Web App Version 2</h1>
    
  4. Ersetzen Sie diesen Code durch den folgenden Code.

    <h1>Web App Version 3</h1>
    
  5. Zum Speichern Ihrer Änderungen drücken Sie STRG+S.

  6. Führen Sie in Cloud Shell die folgenden Befehle aus. Geben Sie, wenn Sie dazu aufgefordert werden, Ihr Bereitstellungskennwort ein.

    git add .
    git commit -m "Third version of web app."
    git push staging
    

    Warten Sie, bis die Bereitstellung abgeschlossen ist. Am Ende der Textausgabe sehen Sie eine Nachricht, die angibt, dass die Bereitstellung einen automatischen Tausch in den Produktionsslot angefordert hat.

  7. Navigieren Sie im Azure-Portal zur Seite Übersicht für den Produktionsslot der Web-App, und klicken Sie auf Durchsuchen. Die dritte Version der Web-App wird auf einer neuen Browserregisterkarte angezeigt. Wenn die alte Version angezeigt wird, müssen Sie möglicherweise kurz warten und dann die Seite aktualisieren. Der Austauschvorgang ist atomisch und erfolgt sofort, aber App Service braucht etwas Zeit, bis der Austauschvorgang vorbereitet ist, bevor er ausgeführt werden kann.

Rollback der neuen Version

Angenommen, bei der Bereitstellung von Version 3 der App in der Produktionsumgebung hat sich ein unerwartetes Problem ergeben. Zur schnellen Behebung können Sie durch erneutes Tauschen der Slots ein Rollback zur vorherigen Version der Website ausführen.

  1. Navigieren Sie zum Bereich Bereitstellungsslots des Produktionsslots der Web-App.

  2. Tauschen Sie Staging- und Produktionsslot.

  3. Wenn der Tausch abgeschlossen ist, klicken Sie auf der Seite Übersicht auf die Schaltfläche Durchsuchen, um die App ein letztes Mal anzuzeigen. Sie sehen, dass Version 2 wieder in der Produktionsumgebung bereitgestellt wurde.