Freigeben über


Verschieben von Azure SQL Managed Instance zwischen Subnetzen

Gilt für: Azure SQL Managed Instance

In diesem Artikel erfahren Sie, wie Sie Azure SQL Managed Instance aus einem Subnetz in ein anderes (im selben VNet oder in einem anderen) verschieben, ähnlich wie beim Skalieren virtueller Kerne oder Ändern der Dienstebene der Instanz. SQL Managed Instance ist während der Verschiebung verfügbar, mit Ausnahme einer kurzen Ausfallzeit, die durch ein Failover am Ende des Updates verursacht wird. Diese Ausfallzeit dauert in der Regel bis zu 10 Sekunden, auch wenn Transaktionen mit langer Ausführungszeit unterbrochen werden.

Das Verschieben der Instanz in ein anderes Subnetz löst die folgenden Vorgänge für virtuelle Cluster aus:

  • Der virtuelle Cluster erstellt die zugrunde liegende Infrastruktur im Zielsubnetz oder ändert ihre Größe.
  • Der virtuelle Cluster wird im Quellsubnetz entfernt oder defragmentiert.

Voraussetzungen und Einschränkungen

SQL Managed Instance muss in einem dedizierten Subnetz in einem virtuellen Azure-Netzwerk bereitgestellt werden. Die Anzahl der verwalteten Instanzen, die im Subnetz bereitgestellt werden können, hängt von der Größe des Subnetzes (dem Subnetzbereich) ab. Um eine verwaltete Instanz bereitzustellen oder in ein anderes Subnetz zu verschieben, muss das Zielsubnetz bestimmte Netzwerkanforderungen erfüllen.

Bevor Sie Ihre Instanz in ein anderes Subnetz verschieben, sollten Sie sich mit den folgenden Konzepten vertraut machen:

Subnetzbereitschaft

Vergewissern Sie sich vor dem Verschieben Ihrer verwalteten Instanz, dass das Subnetz als Bereit für verwaltete Instanz markiert ist.

In der Benutzeroberfläche des virtuellen Netzwerks im Azure-Portal werden virtuelle Netzwerke, die die Voraussetzungen für eine verwaltete Instanz erfüllen, als Bereit für verwaltete Instanz kategorisiert. Virtuelle Netzwerke mit Subnetzen mit verwalteten Instanzen, die bereits für sie bereitgestellt wurden, zeigen vor dem Namen des virtuellen Netzwerks ein SQL-verwaltete Instanz-Symbol an. Für leere Subnetze, die für eine verwaltete Instanz bereit sind, wird ein Symbol für das Subnetz des virtuellen Netzwerks angezeigt.

Subnetze, die als Nicht bereit gekennzeichnet sind, erfüllen nicht alle Anforderungen für die SQL Managed Instance-Bereitstellung. Verwenden Sie das Infosymbol rechts neben dem Subnetznamen, um zu erfahren, warum das Subnetz nicht bereit ist und ob das Subnetz die Netzwerkanforderungen erfüllen kann. Folgende Anforderungen müssen erfüllt sein:

  • Delegieren an den Ressourcenanbieter Microsoft.Sql/managedInstances
  • Anfügen einer Routingtabelle
  • Anfügen einer Netzwerksicherheitsgruppe

Für den Fall, dass das Subnetz Teil eines anderen Virtual Network ist, gilt die folgende zusätzliche Anforderung

  • Bidirektionales Peering zwischen dem aktuellen virtuellen Netzwerk und dem virtuellen Zielnetzwerk.
  • Aktuelle und Zielsubnetze verwenden separate Routingtabellen und Netzwerksicherheitsgruppen.

Nachdem alle Anforderungen erfüllt wurden, wechselt das Subnetz aus der Kategorie Nicht bereit in die Kategorie Bereit für verwaltete Instanz und kann für eine verwaltete Instanz verwendet werden.

Ein Subnetz, das bereits verwendet wird (für Instanzbereitstellungen verwendete Subnetze dürfen keine anderen Ressourcen enthalten), oder ein Subnetz, das über eine andere DNS-Zone (Einschränkung für die subnetzübergreifende Instanzverschiebung) verfügt, gehören immer zur Kategorie Nicht bereit.

Screenshot der Optionen „Azure SQL Managed Instance-Subnetz“.

Abhängig vom Subnetzstatus und -ziel können die folgenden Anpassungen am Zielsubnetz vorgenommen werden:

  • Bereit für verwaltete Instanz (enthält vorhandene SQL Managed Instance): Es werden keine Anpassungen vorgenommen. Diese Subnetze enthalten bereits verwaltete Instanzen, und jede Änderung am Subnetz kann sich auf vorhandene Instanzen auswirken.
  • Bereit für verwaltete Instanz (leer) : Der Workflow überprüft alle erforderlichen Regeln in der Netzwerksicherheitsgruppe und der Routingtabelle und fügt alle erforderlichen, aber fehlenden Regeln hinzu. 1

Hinweis

1 Der Konfiguration des Quellsubnetzes hinzugefügte benutzerdefinierte Regeln werden nicht in das Zielsubnetz kopiert. Jede Anpassung der Konfiguration des Quellsubnetzes muss manuell in das Zielsubnetz repliziert werden. Eine Möglichkeit, dies zu erreichen, ist die Verwendung derselben Routingtabelle und Netzwerksicherheitsgruppe für das Quell- und Zielsubnetz.

Einschränkungen des Zielsubnetzes

Beachten Sie bei der Auswahl eines Zielsubnetzes für eine vorhandene Instanz die folgenden Einschränkungen:

  • SQL Managed Instance kann in das Subnetz verschoben werden, das einem der folgenden Kriterien entspricht:

    • Das Subnetz befindet sich im selben virtuellen Netzwerk wie das derzeit verwendete.
    • Das Subnetz findest sich in einem virtuellen Netzwerk mit Peering, wenn Sie zu einem Subnetz in einem anderen virtuellen Netzwerk wechseln.
  • Die DNS-Zone der Instanzen im Zielsubnetz muss mit der DNS-Zone der zu verschiebenden Instanz übereinstimmen. Diese Einschränkung gilt, wenn Sie zu einem nicht leeren Subnetz wechseln möchten.

    • Sie können das Zielsubnetz speziell so vorbereiten, dass die DNS-Zone von SQL Managed Instance beibehalten wird, die verschoben wird. Zur Vorbereitung können Sie eine neue Instanz von SQL Managed Instance in einem leeren Subnetz erstellen und den dnsZonePartner-Parameter in der Erstellungsanforderung angeben. Dieser Parameter als Wert akzeptiert die ID von SQL Managed Instance, und in diesem Fall können Sie die Instanz verwenden, die später in das neue Subnetz verschoben wird1.

Hinweis

1 Abgesehen von diesem Ansatz gibt es keine andere Möglichkeit, die DNS-Zone von SQL Managed Instance zu bestimmen, da sie zufällig generiert wird. Außerdem gibt es derzeit keine Möglichkeit, die DNS-Zone einer bestehenden SQL Managed Instance-Instanz zu aktualisieren.

  • Wenn Sie eine SQL Managed Instance mit einer automatischen Failovergruppe migrieren möchten, gelten die folgenden Voraussetzungen:
    • Das Zielsubnetz muss dieselben Sicherheitsregeln aufweisen, die für die Failovergruppenreplikation wie das Quellsubnetz erforderlich sind: Öffnen Sie sowohl eingehende als auch ausgehende Ports 5022 und den Bereich 11000~11999 in der Netzwerksicherheitsgruppe (NSG) für Verbindungen aus dem anderen verwalteten Instanz-Subnetz (der einen, der das Failovergruppenreplikat enthält), um Replikationsdatenverkehr zwischen den beiden Instanzen zu ermöglichen.
    • Das Zielsubnetz kann keinen überlappenden Adressbereich mit dem Subnetz haben, das das sekundäre Instanzreplikat der Failovergruppe enthält. Wenn sich MI1 beispielsweise in Subnetz S1 befindet, ist die sekundäre Instanz in der Failovergruppe MI2 in Subnetz S2. Wir möchten MI1 in Subnetz S3 verschieben. Subnetz S3 kann keinen überlappenden Adressbereich mit Subnetz S2 aufweisen.

Weitere Informationen zum Konfigurieren des Netzwerks für Failovergruppen finden Sie unter Aktivieren der Georeplikation zwischen verwalteten Instanzen.

Auszuführende Schritte

Das Verschieben einer Instanz von einem Subnetz zu einem anderen umfasst eine Reihe von Schritten. Je nachdem, wie Ihre SQL-verwaltete Instanz konfiguriert ist, kann es zwischen 30 Minuten und 6 Stunden dauern.

In der folgenden Tabelle werden die Vorgangsschritte aufgeführt, die während des Instanzverschiebevorgangs ausgeführt werden:

Schrittname Beschreibung des Schritts
Anforderungsvalidierung Überprüft die übermittelten Parameter. Wenn eine Fehlkonfiguration erkannt wird, schlägt der Vorgang mit einer Fehlermeldung fehl.
Änderung der Größe/Erstellung eines virtuellen Clusters Je nach Status des Zielsubnetzes wird der virtuelle Cluster entweder erstellt oder seine Größe geändert.
Start der neuen Instanz Der SQL-Prozess wird im bereitgestellten virtuellen Cluster im Zielsubnetz gestartet.
Seeding/Anfügen von Datenbankdateien Je nach Dienstebene wird entweder Seeding für die Datenbank ausgeführt, oder die Datenbankdateien werden angefügt.
Failovervorbereitung und -durchführung Nachdem das Seeding der Daten ausgeführt oder die Datenbankdateien erneut angefügt wurden, bereitet das System das Failover vor. Wenn alles bereit ist, führt das System ein Failover mit einer kurzen Ausfallzeit aus, die in der Regel weniger als 10 Sekunden beträgt.
Bereinigung der alte SQL-Instanz Entfernt den alten SQL-Prozess aus dem virtuellen Quellcluster.
Löschung eines virtuellen Clusters Wenn es sich um die letzte Instanz innerhalb des Quellsubnetzes handelt, wird der virtuelle Cluster im letzten Schritt synchron gelöscht. Andernfalls wird der virtuelle Cluster asynchron defragmentiert.

Eine ausführliche Erläuterung der Vorgangsschritte finden Sie in der Übersicht über Azure SQL Managed Instance-Verwaltungsvorgänge

Verschieben der Instanz

Eine subnetzübergreifende Instanzverschiebung ist Teil des Instanzaktualisierungsvorgangs. Die vorhandene Instanzaktualisierungs-API, Azure PowerShell und Azure CLI-Befehle wurden um eine Subnetz-ID-Eigenschaft erweitert.

Verwenden Sie im Azure-Portal das Subnetzfeld im Bereich Netzwerk, um die Instanz in das Zielsubnetz zu verschieben. Wenn Sie Azure PowerShell oder die Azure CLI verwenden, geben Sie im Aktualisierungsbefehl eine andere Subnetz-ID an, um die Instanz aus einem vorhandenen Subnetz in das Zielsubnetz zu verschieben.

Eine vollständige Referenz der Instanzverwaltungsbefehle finden Sie unter Verwaltungs-API-Referenz für Azure SQL Managed Instance.

Die Option zum Auswählen des Instanzsubnetzes befindet sich im Bereich Netzwerk des Azure-Portals. Der Instanzverschiebevorgang wird gestartet, wenn Sie ein Subnetz auswählen und Ihre Änderungen speichern.

Der erste Schritt des Verschiebevorgangs besteht darin, das Zielsubnetz für die Bereitstellung vorzubereiten. Dies kann einige Minuten dauern. Sobald das Subnetz bereit ist, wird der Verwaltungsvorgang zum Verschieben der Instanz gestartet und wird im Azure-Portal sichtbar.

Auswählen des Subnetzes im Bereich „Netzwerk“von SQL Managed Instance

Überwachen Sie Instanzverschiebevorgänge im Bereich Übersicht des Azure-Portals. Wählen Sie die Benachrichtigung aus, um einen zusätzlichen Bereich mit Informationen zum aktuellen Schritt, den Gesamtschritten und einer Schaltfläche zum Abbrechen des Vorgangs zu öffnen.

Screenshot der Seite „Übersicht“, auf der Sie die Verschiebungsoperation überwachen und abbrechen können.

Nächste Schritte