Freigeben über


Modernisieren von ASP.NET-Web-Apps auf Azure Kubernetes Service (Vorschau)

In diesem Artikel erfahren Sie, wie Sie ASP.NET Web-Apps mit Azure Migrate zu Azure Kubernetes Service migrieren. Derzeit werden in diesem Prozess nur ASP.NET-Web-Apps unterstützt, die in VMware ausgeführt werden. Führen Sie für andere Umgebungen die folgenden Schritte aus.

Hinweis

In den Tutorials wird der einfachste Bereitstellungspfad für ein Szenario erläutert, damit Sie schnell einen Proof of Concept einrichten können. In den Tutorials werden nach Möglichkeit Standardoptionen verwendet und nicht alle möglichen Einstellungen und Pfade gezeigt.

In diesem Tutorial lernen Sie, wie Sie:

  • Wählen und bereiten Sie ASP.NET-Web-Apps mithilfe des integrierten Flows in Azure Migrate für die Migration zu Azure Kubernetes Service vor.
  • Konfigurieren Sie Zieleinstellungen, z. B. die Anzahl der Anwendungsinstanzen zum Ausführen und Replizieren Ihrer Anwendungen.
  • Führen Sie Testmigrationen aus, um sicherzustellen, dass Ihre Anwendungen ordnungsgemäß gestartet werden.
  • Führen Sie eine vollständige Migration Ihrer Anwendungen zu AKS aus.

Voraussetzungen

Bevor Sie mit diesem Tutorial beginnen, sollten Sie Folgendes bedenken:

Einschränkungen

  • Sie können ASP.NET-Anwendungen mithilfe von Microsoft .NET Framework 3.5 oder höher migrieren.
  • Sie können Anwendungsserver unter Windows Server 2012 R2 oder höher migrieren (auf Anwendungsservern muss PowerShell, Version 5.1, ausgeführt werden).
  • Anwendungen müssen mit Internetinformationsdienste (IIS), Version 7.5 oder höher, ausgeführt werden.

Aktivieren der Replikation

Sobald die Web-Apps bewertet wurden, können Sie sie mithilfe des integrierten Migrationsflows in Azure Migrate migrieren. Der erste Schritt in diesem Prozess besteht darin, die Replikation Ihrer Web-Apps zu konfigurieren und zu beginnen.

Angeben der Absicht

  1. Navigieren Sie zu Ihrem Azure Migrate-Projekt unter >Server, Datenbanken und Web-Apps>Migrationstools>Migration und Modernisierung, und wählen Sie Replizieren aus.

    Screenshot der ausgewählten Option

  2. Wählen Sie auf der Registerkarte " Absicht angeben ", >was möchten Sie migrieren?, wählen Sie ASP.NET Web-Apps aus der Dropdownliste aus.

  3. Wählen Sie unter "Wohin möchten Sie migrieren?" den Azure Kubernetes Service (AKS) aus.

  4. Wählen Sie im VirtualisierungstypVMware vSphere aus.

  5. Wählen Sie in der lokalen Appliance die Appliance aus, die Ihre gewünschten Web-Apps auf vSphere ermittelt hat.

  6. Wählen Sie "Weiter" aus.

    Screenshot der Registerkarte

Auswählen aus ermittelten Apps

In "Replikat>Web-Apps" können Sie eine Liste der in Ihrer Umgebung ermittelten ASP.NET-Apps sehen.

Screenshot der Registerkarte

  1. Wählen Sie eine oder mehrere Anwendungen aus, die repliziert werden sollen.

  2. Die Spalte "Modernisierungsstatus " gibt die Bereitschaft der Anwendung für die Ausführung auf AKS an. Dies kann einen der folgenden Werte annehmen: "Ready", "Error(s)", "Replikation in Bearbeitung".

  3. Wählen Sie die Anwendung aus, und wählen Sie den Link "App-Konfigurationen" aus, um die Registerkarte "Anwendungskonfigurationen" zu öffnen. Dadurch wird die Liste der Attribute bereitgestellt, die aus den ermittelten Konfigurationsdateien erkannt wurden. Geben Sie die erforderlichen Attributwerte ein, und wählen Sie "Speichern" aus. Diese Konfigurationen werden entweder als Geheimnisse direkt im Zielcluster gespeichert oder können mithilfe von Azure Key Vault eingebunden werden. Dies kann in den erweiterten Einstellungen konfiguriert werden.

    Screenshot der Registerkarte

  4. Wählen Sie die Anwendung aus, und wählen Sie den Link " App-Verzeichnisse " aus, um die Registerkarte "Anwendungsverzeichnisse" zu öffnen. Geben Sie den Pfad zu Ordnern/Dateien an, die kopiert werden müssen, damit die Anwendung ausgeführt werden kann, und wählen Sie "Speichern" aus. Basierend auf der in der Dropdownliste ausgewählten Option werden diese Artefakte entweder direkt in das Containerimage kopiert oder als persistentes Volume über die Azure-Dateifreigabe im Cluster eingebunden. Wenn ein persistentes Volume ausgewählt wird, kann das Ziel in den erweiterten Einstellungen konfiguriert werden.

    Screenshot der Registerkarte

  5. Für die Anwendungen, die die Windows-Authentifizierung verwenden, die durch den Authentifizierungstyp angegeben sind, können Sie gMSA V2 im Ziel-AKS-Cluster konfigurieren.

    Screenshot der Registerkarte

    Konfiguration Kommentare
    Kontoname Name des gMSA-Kontos, das verwendet werden soll. Ist kein Konto vorhanden, wird automatisch ein neues Konto mit diesem Namen erstellt.
    Kontobenutzername Benutzername des Standarddomänenbenutzers mit der Berechtigung, auf das für Ihren Domänencontroller konfigurierte gMSA zugreifen zu können. Ist der angegebene Benutzername nicht vorhanden, wird automatisch ein neuer Standarddomänenbenutzer erstellt.
    Kontokennwort Kennwort für den oben genannten Benutzer.
    DNS-Server der Domäne IP-Adresse des DNS-Servers, der den Namen Ihrer Active Directory-Domäne auflösen kann.
    FQDN der Domäne Vollqualifizierter Domänenname Ihrer Active Directory-Domäne.
    Adresse des Domänencontrollers IP-Adresse des Active Directory-Domänencontrollers. Die Verbindung wird hergestellt, um dem angegebenen Domänenbenutzer das Abrufen der Anmeldeinformationen für das angegebene gMSA per Remotezugriff zu erlauben.
    Benutzername des Domänenadministrators Benutzername eines Benutzers mit ausreichenden Berechtigungen für die Remoteüberprüfung des gMSA-Kontos und Domänenbenutzers.
    Domänenadministratorkennwort Kennwort für den oben genannten Administratorbenutzer.
  6. Wählen Sie "Weiter" aus.

Hinweis

Der Quellpfad und der Attributwert der App-Konfigurationen und App-Verzeichnisse dürfen zusammen nur maximal 2.999 Zeichen enthalten. Dies entspricht etwa 15 Einträgen (für Konfigurationen als auch Verzeichnisse) mit einer Länge von jeweils etwa 200 Zeichen.

Ziel-Einstellungen konfigurieren

In den Einstellungen " Ziel replizieren>" können Sie das Ziel konfigurieren, zu dem die Anwendungen migriert werden.

Screenshot der Registerkarte

  1. Wählen Sie das Abonnement, die Ressourcengruppe und die Containerregistrierungsressource aus, zu denen die App-Containerimages übertragen werden sollen.
  2. Wählen Sie die Abonnement-, Ressourcengruppen- und AKS-Clusterressource aus, für die die App bereitgestellt werden soll.
  3. Wählen Sie "Weiter" aus.

Hinweis

Es werden nur AKS-Cluster mit Windows-Knoten aufgeführt.

Konfigurieren von Bereitstellungseinstellungen

In den Bereitstellungseinstellungen für die > können Sie die Anwendung im AKS-Cluster konfigurieren.

Screenshot der Registerkarte

  1. Standardwerte werden basierend auf der App-Ermittlung angegeben.
  2. Wählen Sie in der Option "Replikat " die Anzahl der App-Instanzen für jede App aus.
  3. Wählen Sie in der Option "Lastenausgleich" die Option "Extern" aus, wenn über das Internet auf die App zugegriffen werden muss. Wenn "Intern" ausgewählt wird, kann nur innerhalb des virtuellen Netzwerks des AKS-Clusters auf die App zugegriffen werden.
  4. Wählen Sie "Weiter" aus.

Erweiterte Einstellungen konfigurieren

Wenn eine oder mehrere Apps App-Konfigurationen oder Verzeichnisse in Replizieren>von Web-Apps aktualisiert haben, wird "Erweitert replizieren>" verwendet, um zusätzliche erforderliche Konfigurationen bereitzustellen.

Screenshot der Registerkarte

  1. Wenn Anwendungskonfigurationen bereitgestellt wurden, wählen Sie aus, ob sie entweder als systemeigene Kubernetes-Geheimnisse oder im Azure Key Vault mit dem CSI-Treiber für geheime Speicher gespeichert werden sollen. Stellen Sie sicher, dass für den Zielcluster das Schlüsselspeichertreiber-Add-On aktiviert ist.
  2. Wenn Anwendungsverzeichnisse mit einer Option für dauerhaften Speicher bereitgestellt wurden, wählen Sie eine Azure-Dateifreigabe aus, um diese Dateien zu speichern.
  3. Wählen Sie "Weiter" aus.

Überprüfen und Starten der Replikation

Überprüfen Sie Ihre Auswahl, und nehmen Sie alle anderen erforderlichen Änderungen vor, indem Sie zur rechten Registerkarte auf der Registerkarte " Replizieren " navigieren. Wählen Sie nach der Überprüfung "Replizieren" aus.

Screenshot der Registerkarte

Vorbereiten der Migration

Nachdem Sie mit der Replikation begonnen haben, erstellt Azure Migrate einen Replikationsauftrag, auf den über Ihr Projekt zugegriffen werden kann.

  1. Navigieren Sie zu Ihren Azure Migrate-Projektservern >, Datenbanken und Web-Apps>Migrationstools>Migration und Modernisierung, und wählen Sie "Übersicht" aus.

    Screenshot der ausgewählten Option

  2. Wählen Sie Migration und Modernisierungshub>Modernisierung (Vorschau)>Jobs aus.

    Screenshot der Registerkarte

  3. Wählen Sie Azure Kubernetes Service (AKS) als Replikationsziel aus. Azure Migrate erstellt einen Replikationsauftrag für jede replizierte ASP.NET-App. Wählen Sie den Auftrag Workload-Bereitstellung erstellen oder aktualisieren vom Typ Workload-Bereitstellung aus.

    Screenshot der Auswahl der Replikationsaufträge.

  4. Wählen Sie die Zielressource aus. Hier können alle Schritte vor der Migration konfiguriert werden.

    Screenshot der Auswahl der Zielressource innerhalb des Replikationsauftrags.

  5. Nachdem die Replikation abgeschlossen wurde, wird der ReplikationsstatusAbgeschlossen sein, und der Gesamtstatus wird auf Imageerstellung ausstehend gesetzt.

Überprüfen des Containerimages und der Kubernetes-Manifeste

Auf der Registerkarte " Zieleinstellungen " werden Links zu der Docker-Datei und den Kubernetes-Manifesten bereitgestellt.

Screenshot der Zieleinstellungen in der Zielressource.

  1. Wählen Sie den Link "Docker-Dateiüberprüfung " aus, um den Editor zu öffnen. Nehmen Sie die Überprüfung und nach Bedarf Änderungen vor. Wählen Sie "Speichern" aus.

    Screenshot des Docker-Datei-Editors in den Zieleinstellungen.

  2. Wählen Sie den Überprüfungslink zu den Bereitstellungsspezifikationen aus, um den Editor zu öffnen. Er enthält die Kubernetes-Manifestdatei mit allen Ressourcen, die bereitgestellt werden, einschließlich StatefulSet, Service, ServiceAccount usw. Nehmen Sie die Überprüfung und nach Bedarf Änderungen vor. Wählen Sie "Speichern" aus.

    Screenshot des Kubernetes-Manifestdatei-Editors in den Zieleinstellungen.

  3. Wählen Sie auf der Registerkarte " Übersicht " die Option " Containerimage erstellen" aus, um das Containerimage in die bereitgestellte Containerregistrierung zu übertragen.

  4. Nachdem das Image erstellt wurde, ändert sich der Gesamtstatus in "Bereit für die Migration".

    Screenshot des Containerimages der Zielressource nach dem Erstellen.

Ausführen einer Testmigration

Wenn das Containerimage bereit ist, führen Sie eine Testmigration aus, um sicherzustellen, dass Ihre Anwendung in AKS ordnungsgemäß gestartet wird.

  1. Wählen Sie auf der Registerkarte " Übersicht " die Option " Migration testen" und dann " Ja " aus, um dies zu bestätigen.
  2. Überprüfen Sie nach Abschluss der Testmigration, ob die Workloads im AKS-Cluster ausgeführt werden. Wenn die Option „Externer Lastenausgleich“ während des Replikationsprozesses ausgewählt wurde, sollte Ihre Anwendung über einen Dienst vom Typ loadbalancer mit einer zugewiesenen öffentlichen IP-Adresse für das Internet verfügbar gemacht werden.
  3. Nachdem Sie überprüft haben, ob die Anwendung funktioniert, bereinigen Sie die Testmigration, indem Sie " Testmigration bereinigen" auswählen.

Bei Fehlern in der Testmigration:

  1. Navigieren Sie zum Migrations- und Modernisierungs-Hub>Modernisierung (Vorschau)>Aufträge.

  2. Wählen Sie den Auftrag Initiate test migrate aus, der fehlgeschlagen ist.

    Screenshot des Fehlgeschlagenen Testmigrationsauftrags.

  3. Wählen Sie den Link der fehlgeschlagenen Aufgabe aus, um mögliche Fehlerursachen und Empfehlungen anzuzeigen.

    Screenshot der fehlgeschlagenen Testmigrationsaufgabe.

Migrieren der Anwendungen zu AKS

Die Anwendung ist endlich bereit für die Migration:

  1. Wählen Sie auf der Registerkarte " Übersicht " die Option "Migrieren" und dann " Ja " aus, um dies zu bestätigen.

    Screenshot der Zielressource, die für die Migration bereit ist.

  2. Überprüfen Sie ähnlich wie beim Workflow der Testmigration, ob die Workloads im AKS-Cluster ausgeführt werden.

  3. Die Anwendung wurde nun erfolgreich migriert. Wenn Sie möchten, dass die Appliance sie erneut entdecken und für die Migration verfügbar macht, wählen Sie "Migration abschließen" aus.

Nächste Schritte

Nach der erfolgreichen Migration Ihrer Anwendungen zu AKS können Sie die folgenden Artikel lesen, um Ihre Apps für die Cloud zu optimieren: