Migrationsstrategien und -tools
Für eine erfolgreiche SQL Server-Migration ist eine sorgfältige Planung unerlässlich. Diese Migrationsplanung umfasst sowohl das Wie als auch das Warum.
- Das Verstehen des Warum bedeutet, die Vorteile nach Abschluss der Migration zu erkennen.
- Das Wie umfasst die Auswahl geeigneter Migrationstools und die Erarbeitung eines umfassenden Migrationsplans.
- Ein wichtiger Aspekt bei diesen Überlegungen ist die Länge der Downtime, die in der Organisation akzeptabel ist. Die Downtime muss während der Migration auf das absolute Minimum reduziert werden, damit die betriebliche Effizienz und Kontinuität gewahrt werden können.
Bei diesem Migrationsprojekt hat Ihr Team den Prozess mit einer Anfangsbesprechung begonnen. Ihre Rolle besteht darin, die Tools für die Migration einiger SQL Server-Instanzen zu untersuchen und die potenziellen Auswirkungen auf zukünftige SQL-Lizenzierungskosten zu präsentieren. Darüber hinaus müssen Sie eine Einigung über das akzeptable Ausmaß der Downtime erzielen. Die Projektmanagerin möchte auch eine Testphase integrieren, in der einige Server zu Testzwecken migriert werden, bevor die vollständige Migration erfolgt.
Verstehen der Vorteile der Migration
Sie arbeiten wahrscheinlich mit virtuellen Computern in Ihrer eigenen Infrastruktur, entweder mit Hyper-V oder mit virtuellen Computern anderer Hersteller. Daher sollte die Migration zu dieser Plattform für Sie keine steile Lernkurve darstellen.
Die Verwendung von virtuellen Computern (VMs) ermöglicht Ihnen die vollständige administrative Kontrolle über das Hostbetriebssystem und die SQL Server-Instanz. Sie können Hochverfügbarkeit, Notfallwiederherstellung und das Patchen für SQL Server einfacher konfigurieren und verwalten, als auf Ihren lokalen Computern. Sie können auch automatische Sicherungen und Updates einrichten, die Ihren gesamten Verwaltungsaufwand verringern. Für SQL Server in Azure Virtual Machines werden die folgenden SQL Server-Komponenten vollständig unterstützt:
- SQL Server-Transaktionsreplikation
- Always On-Verfügbarkeitsgruppen
- Integration Services
- Analysis Services
- Reporting Services
- Protokollversand
SQL Server ist für die Migration bestehender SQL Server-Anwendungen zu virtuellen Azure-Computern optimiert, wobei bis zu 256 TB Speicher unterstützt werden. Alle Versionen und Editionen von SQL Server sind verfügbar und bieten eine 100%ige Kompatibilität mit Ihren lokalen Versionen von SQL Server.
Lizenzierung
Es gibt drei Arten von Lizenzierungsmodellen, die für in Azure gehostete virtuelle SQL Server-Computer verwendet werden können. Bewerten Sie, welche für Ihr Migrationsszenario am besten geeignet ist.
Das Modell mit nutzungsbasierter Bezahlung bedeutet, dass die sekundengenauen Kosten für den Betrieb der Azure-VM die Kosten für die SQL Server-Lizenz enthalten.
Das Modell Bring-Your-Own-License (BYOL) ist auch als Azure-Hybridvorteil (Azure Hybrid Benefit, AHB) bekannt und ermöglicht die Verwendung Ihrer eigenen SQL Server-Lizenz mit einer VM, auf der SQL Server ausgeführt wird. Sie bezahlen dabei nur für die tatsächliche Nutzung der VM. Diese Option ist nur für Kunden verfügbar, die über ein Enterprise Agreement verfügen.
Das Lizenzmodell für Hochverfügbarkeit/Notfallwiederherstellung wird für das kostenlose Hochverfügbarkeits-/Notfallwiederherstellungsreplikat in Azure verwendet. Wenn Sie über Software Assurance verfügen, können Sie hybride Notfallwiederherstellungspläne mit SQL Server implementieren, ohne dass zusätzliche Lizenzierungskosten für die passive Notfallwiederherstellungsinstanz anfallen.
Tipp
Informationen zum Ändern des Lizenzmodells für einen virtuellen SQL-Computer in Azure finden Sie unter Ändern des Lizenzmodells für einen virtuellen SQL-Computer in Azure.
Netzwerk
Wenn Sie eine SQL Server-VM im Azure-Portal bereitstellen, haben Sie die Möglichkeit, die Art der SQL-Konnektivität festzulegen, die Folgendes umfasst:
- Öffentlich: Verbindung mit SQL Server über das Internet
- Privat: Verbindung mit SQL Server innerhalb des gleichen virtuellen Netzwerks
- Lokal: Lokale Verbindung mit SQL Server auf demselben virtuellen Computer
Wenn Sie eine Verbindung mit Ihrem SQL Server-Datenbankmodul über das Internet herstellen möchten, wählen Sie „Öffentlich“ aus. Das Portal führt automatisch folgende Schritte aus:
- Es aktiviert das TCP/IP-Protokoll für SQL Server.
- Es konfiguriert eine Firewallregel, um den SQL Server-TCP-Port (standardmäßig 1433) zu öffnen.
- Es aktiviert die für den öffentlichen Zugriff erforderliche SQL Server-Authentifizierung.
- Es konfiguriert die Netzwerksicherheitsgruppe auf dem virtuellen Computer für sämtlichen TCP-Datenverkehr am SQL Server-Port.
Wenn Sie im Portal für SQL-Konnektivität den Typ Privat auswählen, werden die meisten Einstellungen genau wie beim Typ Öffentlich konfiguriert. Der Unterschied besteht darin, dass es keine Netzwerksicherheitsgruppenregel gibt, die externen Datenverkehr am SQL Server-Port (standardmäßig 1433) zulässt. Sie können die Konnektivitätseinstellungen für Ihren virtuellen SQL-Computer im Azure-Portal ändern.
Schlüsselverwaltung
SQL Server bietet Verschlüsselungsfeatures, für die Sie die Kryptografieschlüssel verwalten und speichern müssen. Der Azure-Schlüsseltresor-Dienst (Azure Key Vault, AKV) ist dafür ausgelegt, die Sicherheit und Verwaltung dieser Schlüssel an einem sicheren und hoch verfügbaren Speicherort zu verbessern. Mit dem SQL Server-Connector kann SQL Server diese Schlüssel aus Azure Key Vault verwenden.
Sie können Zeit sparen, indem Sie das AKV-Integrationsfeature verwenden. Wenn dieses Feature aktiviert ist, wird der SQL Server-Connector automatisch installiert. Das Feature konfiguriert dann den Anbieter für die erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM) für den Zugriff auf den AKV und erstellt die Anmeldeinformationen, mit denen Sie auf Ihren Tresor zugreifen können.
Größenbestimmung virtueller Computer
Sie können ein Image des virtuellen SQL Server-Computers mit der gewünschten Version, Edition und dem Betriebssystem auswählen, um zu beginnen. Sie können außerdem die Anzahl der CPUs und des Arbeitsspeichers so konfigurieren, wie es für Ihre Workloads angemessen ist.
Viele der Optionen zur Optimierung der Datenbankleistung, die Sie verwenden, um sicherzustellen, dass Ihr SQL Server gute Leistungen für Ihre lokalen Workloads erbringt, gelten auch für die SQL Server-Instanz, die auf einer Azure-VM ausgeführt wird. Es gibt zusätzliche Faktoren, die Sie beachten müssen, einschließlich der Größe der VM und der Konfiguration der Datenträger. Verwenden Sie die folgende Prüfliste als Leitfaden, um sicherzustellen, dass Sie über die optimale Leistung für eine SQL Server-Instanz verfügen, die auf einem virtuellen Azure-Computer ausgeführt wird.
Leistungsmetrik | Optimierungsoption |
---|---|
Virtueller Computer |
|
Storage |
|
Datenträger |
|
E/A |
|
Möglicherweise gibt es bestimmte Leistungseinstellungen, die Sie anwenden möchten, die für Ihre Workload spezifisch sind. Stellen Sie sicher, dass die Einstellungen vor der Migration in einer Testumgebung getestet werden.
Nützliche Tools und Features für die Migration
Es gibt viele verschiedene Möglichkeiten, Ihre SQL Server-Instanz zu einer Azure-VM zu migrieren. Der erste Schritt in diesem Prozess ist die Bereitstellung einer Azure-VM, auf der SQL Server installiert ist.
Die beste Leistung bei der Datenübertragung erhalten Sie, wenn Sie die Datenbankdateien mithilfe einer komprimierten Sicherungsdatei zur Azure-VM migrieren.
Um die Downtime während des Datenbankmigrationsprozesses zu minimieren, verwenden Sie entweder die Option „Always On“ oder „Transaktionsreplikation“. Wenn es nicht möglich ist, eine der oben genannten Methoden zu verwenden, können Sie Ihre Datenbank immer noch manuell migrieren.
Dies sind die wichtigsten Tools und Features, mit denen Sie Ihre SQL Server-Datenbanken unterstützen und zu Azure-VMs migrieren können.
Azure SQL-Migrationserweiterung für Azure Data Studio: Die Azure SQL-Migrationserweiterung stützt sich auf die neueste Version von Azure Database Migration Service, hilft bei der Bewertung der Migrationsbereitschaft, bietet geeignete SKU-Empfehlungen für Azure-Ressourcen, erleichtert die Migration Ihrer SQL Server-Datenbank zu Azure und eignet sich ideal für kleine bis mittelgroße Datenbanken. Sie basiert auf der neuesten Version von Data Migration Services und bietet auch ein erweitertes Bewertungsfeature, das SQL Server-Datenbanken auswertet, die für die Migration zu Azure SQL bereit sind.
Sichern und Wiederherstellen mit Azure Blob Storage: Sie können eine Datenbank aus Azure Blob Storage in Ihrer SQL Server-Instanz wiederherstellen, die auf einem virtuellen Azure-Computer ausgeführt wird.
Trennen und Anfügen über eine URL: Sie können Ihre Datenbank und Protokolldateien trennen und in ein Azure Storage-Konto übertragen. Fügen Sie dann die Datenbank über die Blob-URL an Ihre Azure-VM an.
Protokollversand: Der Protokollversand ist eine Methode zum Migrieren einer SQL Server-Datenbank zu einer Azure-VM. Dabei wird kontinuierlich eine sekundäre Kopie der Datenbank auf dem Zielserver mithilfe der Transaktionsprotokollsicherungen vom Quellserver synchronisiert. Wenn alles bereit ist, wird die endgültige Protokollsicherung auf die Azure-VM angewendet, sodass eine nahtlose Migration mit minimaler Downtime ermöglicht wird.
Azure Migrate: Azure Migrate ist ein umfassender Migrationsdienst, der eine Vielzahl von Migrationsszenarios unterstützt, einschließlich der SQL Server-Migration. Azure Migrate bietet eine Suite von Tools, die für die Bewertung und Migration von lokalen Servern, Infrastrukturen, Anwendungen und Daten im großen Stil entwickelt wurden, um sie zu Azure zu migrieren.
Assistent für Datenbankexperimente: Verwenden Sie diesen Assistenten, um zu bewerten, ob Ihr Zielserver die Workload bewältigen kann, wenn Sie Bedenken hinsichtlich der Leistung haben. Sie können die Analysemetriken verwenden, um Vergleichsdaten zu erhalten, damit Sie entscheiden können, ob die angestrebte Version nach der Migration eine bessere Erfahrung bietet.
Datenmigrations-Assistent (DMA): Verwenden Sie diesen Assistenten, um Datenbankschemas, Daten, Benutzer, Serverrollen sowie SQL Server- und Windows-Anmeldeinformationen von einer lokalen SQL Server-Instanz zu einer SQL Server-Instanz auf einem virtuellen Azure-Computer zu migrieren. Das Tool führt zunächst eine Bewertung durch, die Sie auffordert, eventuelle Kompatibilitätsprobleme zu beheben. Sie können dann das gleiche Tool verwenden, um das bewertete Datenbankschema und die Daten zu Azure zu migrieren.
Hinweis
Der Database Migration Assistant ist zwar ein nützliches verfügbares Tool, es wird jedoch empfohlen, den Azure Database Migration Service für große Migrationen und eine verbesserte Gesamterfahrung zu verwenden.
Tipp
Informationen zum Bewerten lokaler SQL Server-Instanzen für die Migration zu Azure SQL und zu neuen Features auf der SQL Server-Zielplattform, von denen die Datenbank nach einem Upgrade profitieren kann, finden Sie im Modul Bewerten von SQL Server-Datenbanken für die Migration zu Azure SQL.
Definieren Ihres Migrationsansatzes
Es ist wichtig, die mit der Migration verbundenen Anforderungen an die Downtime des Unternehmens zu berücksichtigen. Unabhängig davon, ob Sie zu SQL Server auf einem virtuellen Computer oder zu einer Azure SQL-Datenbank migrieren.
Die gewählte Methode zur Migration der Datenbank ist in der Regel davon abhängig, wie lange die SQL Server-Datenbanken offline sein können. Ein weiterer Faktor bei Ihrer Entscheidung könnte sein, wie groß der Anteil der Automation an diesem Prozess sein soll, oder ob Sie die Migration manuell durchführen. Es gibt drei Migrationstypen, die sich nach der Downtime richten:
- Migration ohne Downtime
- Migration mit kleinem Wartungsfenster
- Migration mit großem Wartungsfenster
Migration ohne Downtime
Für unternehmenskritische Workloads sind normalerweise Migrationen ohne Downtime erforderlich. Sie können Always On-Verfügbarkeitsgruppen verwenden, um Daten aus einer SQL Server-Datenbank in SQL Server in Azure Virtual Machines zu replizieren.
Migration mit kleinem Wartungsfenster
Kleine Wartungsfenster werden häufig in Minuten gemessen. Verwenden Sie Azure Database Migration Service, um Daten aus einer lokalen SQL Server-Datenbank zu einem SQL Server, der auf einem virtuellen Azure-Computer ausgeführt wird, zu replizieren und zu migrieren.
Hinweis
Um eine gesamte Anwendung zu migrieren, sollten Sie die Verwendung von Azure Site Recovery erwägen.
Migration mit großem Wartungsfenster
Große Wartungsfenster werden oft in Stunden oder Tagen gemessen und eignen sich für Anwendungsdatenbanken, die sich nur selten ändern oder bei denen die Workload nicht unternehmenskritisch ist. Sie haben mehrere Möglichkeiten, die von der Verwendung von BACPAC-Export- und -Importdateien von SQL Server Management Studio oder der Verwendung eines Sicherungs- und Wiederherstellungsansatzes bis hin zum Trennen und anschließenden Anfügen der Datenbank reichen.