Importieren großer Sammlungen

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Für Datenbanken, deren Datenmigrationstool zu groß ist, ist ein anderer Ansatz für die Datenpaketerstellung erforderlich, um zu Azure DevOps Services zu migrieren. Wenn Sie nicht sicher sind, ob Ihre Sammlung den Größenschwellenwert überschreitet, sollten Sie eine Überprüfung des Datenmigrationstools für die Sammlung ausführen. Bei der Überprüfung erfahren Sie, ob Sie die SQL Azure VM-Methode für den Import verwenden müssen.

Ermitteln, ob Sie die Sammlungsgröße reduzieren können

Bevor Sie fortfahren, sollten Sie überprüfen, ob Ihre alten Daten bereinigt werden können. Im Laufe der Zeit können Sammlungen große Datenmengen erstellen. Dieses Wachstum ist ein natürlicher Teil des DevOps-Prozesses, aber Möglicherweise müssen Sie nicht alle Daten aufbewahren. Einige gängige Beispiele für nicht mehr relevante Daten sind ältere Arbeitsbereiche und Buildergebnisse.

Das Bereinigen älterer, nicht mehr relevanter Artefakte könnte viel mehr Speicherplatz als erwartet entfernen und bestimmen, ob Sie die DACPAC-Importmethode oder eine SQL Azure VM verwenden.

Wichtig

Nachdem Sie ältere Daten gelöscht haben, können sie nur wiederhergestellt werden, wenn Sie eine ältere Sicherung der Sammlung wiederherstellen.

Wenn Sie unter dem DACPAC-Schwellenwert liegen, befolgen Sie die Anweisungen zum Generieren einer DACPAC-Datei für den Import. Wenn Sie die Datenbank immer noch nicht unter dem DACPAC-Schwellenwert abrufen können, müssen Sie eine SQL Azure VM einrichten, die in Azure DevOps Services importiert werden soll.

Einrichten einer SQL Azure VM zum Importieren in Azure DevOps Services

Im Folgenden erfahren Sie, wie Sie dies erreichen. Auf hoher Ebene werden Sie:

  • Richten Sie einen SQL Azure virtuellen Computer ein.
  • (Optional) Beschränken Sie den Zugriff nur auf Azure DevOps Services IP-Adressen.
  • Konfigurieren sie IP-Firewallausnahmen.
  • Stellen Sie Ihre Datenbank auf dem virtuellen Computer wieder her.
  • Konfigurieren Sie Ihre Sammlung für den Import.
  • Konfigurieren der Importspezifikationsdatei für die VM

Einrichten einer SQL Azure-VM

Sie können eine SQL Azure VM über die Azure-Portal mit nur wenigen Klicks einrichten. Informationen dazu finden Sie unter Verwenden der Azure-Portal zum Bereitstellen eines virtuellen Windows-Computers mit SQL Server.

Hinweis

Beachten Sie beim Einrichten Ihres SQL Azure virtuellen Computers, dass die Leistung des virtuellen Computers und der angefügten Datenträger erhebliche Auswirkungen auf die Leistung des Imports hat. Aus diesem Grund empfehlen wir dringend :

  • Auswählen einer VM-Größe auf D8s_v5_* oder höher
  • Verwenden verwalteter Datenträger
  • Beratung der Leistung virtueller Computer und Datenträger. Stellen Sie sicher, dass Ihre Infrastruktur so konfiguriert ist, dass weder die VM-IOPS noch die Speicher-IOPS zu einem Engpass bei der Leistung des Imports werden. Stellen Sie beispielsweise sicher, dass die Anzahl der An Ihren virtuellen Computer angefügten Datenträger ausreicht, um die IOPS von der VM zu unterstützen.

Azure DevOps Services ist in mehreren Azure-Regionen auf der ganzen Welt verfügbar. Diese sind in der folgenden Tabelle zu sehen.

Wichtig

Um sicherzustellen, dass der Import erfolgreich gestartet wird, ist es wichtig, Ihre Daten in der richtigen Region zu platzieren. Wenn Sie Ihre SQL Azure VM an einem anderen Ort als den in der folgenden Tabelle aufgeführten Regionen einrichten, kann der Import nicht gestartet werden.

Wenn Sie diese Importmethode verwenden, bestimmen Sie, wo Ihre SQL Azure VM erstellt werden soll, indem Sie auf die folgende Tabelle verweisen. Das Erstellen Ihres virtuellen Computers in einer anderen Region als der in dieser Liste aufgeführten wird für die Ausführung eines Imports nicht unterstützt.

Gewünschte Importregion SQL Azure VM-Region
Zentrale USA USA (Mitte)
Europa, Westen Europa, Westen
Australien (Osten) Australien (Osten)
Brasilien Süd Brasilien Süd
Indien (Süden) Indien (Süden)
Kanada, Mitte Kanada, Mitte
Asien-Pazifik Asien, Südosten (Singapur)
UK, Süden UK, Süden

Obwohl Azure DevOps Services in mehreren Regionen in den USA verfügbar ist, akzeptiert nur die Region Central USA neue Organisationen. Unternehmen können ihre Daten derzeit nicht in andere Azure-Regionen der USA importieren.

Hinweis

DACPAC-Kunden sollten die Regionstabelle im Abschnitt "Schritt 3: Hochladen der DACPAC-Datei" lesen. Die oben genannten Richtlinien gelten nur für SQL Azure VMs.

Im Folgenden finden Sie einige weitere SQL Azure VM-Konfigurationen, die wir empfehlen:

  • Konfigurieren Sie die temporäre SQL-Datenbank so, dass sie ein anderes Laufwerk als Laufwerk C verwendet. Idealerweise sollte das Laufwerk über ausreichend freien Speicherplatz verfügen. entspricht mindestens der größten Tabelle Ihrer Datenbank.
  • Wenn Ihre Quelldatenbank nach der Verkleinerung immer noch über 1 Terabyte (TB) verfügt, müssen Sie zusätzliche 1-TB-Datenträger anfügen und zu einer einzelnen Partition kombinieren, um Ihre Datenbank auf dem virtuellen Computer wiederherzustellen.
  • Wenn Ihre Sammlungsdatenbanken mehr als 1 TB groß sind, sollten Sie eine SSD sowohl für die temporäre Datenbank als auch für die Sammlungsdatenbank verwenden. Erwägen Sie außerdem die Verwendung größerer VMs mit 16 virtuellen CPUs (vCPUs) und 128 GB RAM.
  • Sie benötigen eine öffentlich zugängliche IP-Adresse, damit der Dienst diesen Computer erreichen kann.

Beschränken des Zugriffs auf Azure DevOps Services IP-Adressen

Weitere Details finden Sie auf der Seite "Zugriff auf Nur Azure DevOps Services-IPs einschränken".

Wiederherstellen der Datenbank auf dem virtuellen Computer

Nachdem Sie eine Azure-VM eingerichtet und konfiguriert haben, müssen Sie Die getrennten Sicherungen von Ihrer Azure DevOps Server-Instanz auf Ihren virtuellen Azure-Computer durchführen. Azure verfügt über mehrere dokumentierte Methoden zum Ausführen dieser Aufgabe. Die Sammlungsdatenbank muss auf Ihrer SQL-Instanz wiederhergestellt werden, und es muss keine Azure DevOps Server auf dem virtuellen Computer installiert werden.

Konfigurieren Der Sammlung für den Import

Nachdem Ihre Sammlungsdatenbank auf Ihrem virtuellen Azure-Computer wiederhergestellt wurde, konfigurieren Sie eine SQL-Anmeldung, damit Azure DevOps Services eine Verbindung mit der Datenbank herstellen können, um die Daten zu importieren. Diese Anmeldung ermöglicht nur Lesezugriff auf eine einzelne Datenbank.

Öffnen Sie zunächst SQL Server Management Studio auf dem virtuellen Computer, und öffnen Sie dann ein neues Abfragefenster für die zu importierende Datenbank.

Legen Sie die Wiederherstellung der Datenbank auf einfach fest:

ALTER DATABASE [<Database name>] SET RECOVERY SIMPLE;

Erstellen Sie einen SQL-Anmeldenamen für die Datenbank, und weisen Sie dieser Anmeldung die "TFSEXECROLE" zu:

USE [<database name>]
CREATE LOGIN <pick a username> WITH PASSWORD = '<pick a password>'
CREATE USER <username> FOR LOGIN <username> WITH DEFAULT_SCHEMA=[dbo]
EXEC sp_addrolemember @rolename='TFSEXECROLE', @membername='<username>'

Nach unserem Fabrikam-Beispiel wären die beiden SQL-Befehle wie folgt:

ALTER DATABASE [Foo] SET RECOVERY SIMPLE;

USE [Foo]
CREATE LOGIN fabrikam WITH PASSWORD = 'fabrikamimport1!'
CREATE USER fabrikam FOR LOGIN fabrikam WITH DEFAULT_SCHEMA=[dbo]
EXEC sp_addrolemember @rolename='TFSEXECROLE', @membername='fabrikam'

Hinweis

Achten Sie darauf, SQL Server und Windows-Authentifizierung Modus in SQL Server Management Studio auf der VM zu aktivieren. Wenn Sie den Authentifizierungsmodus nicht aktivieren, schlägt der Import fehl.

Konfigurieren der Importspezifikationsdatei für die VM

Aktualisieren Sie die Importspezifikationsdatei, um Informationen zum Herstellen einer Verbindung mit der SQL Server-Instanz einzuschließen. Öffnen Sie ihre Importspezifikationsdatei, und nehmen Sie die folgenden Aktualisierungen vor:

  1. Entfernen Sie den DACPAC-Parameter aus dem Quelldateiobjekt.

    Die Importspezifikation vor der Änderung wird im folgenden Code angezeigt:

    Screenshot der Importspezifikation vor der Änderung.

    Die Importspezifikation nach der Änderung wird im folgenden Code angezeigt:

    Screenshot der Importspezifikation nach der Änderung.

  2. Füllen Sie die erforderlichen Parameter aus, und fügen Sie das folgende Eigenschaftenobjekt in Ihrem Quellobjekt in der Spezifikationsdatei hinzu.

    "Properties":
    {
        "ConnectionString": "Data Source={SQL Azure VM Public IP};Initial Catalog={Database Name};Integrated Security=False;User ID={SQL Login Username};Password={SQL Login Password};Encrypt=True;TrustServerCertificate=True" 
    }
    

Nach dem Fabrikam-Beispiel sieht die Importspezifikation nach dem Anwenden der Änderungen wie folgt aus:

Screenshot der Importspezifikation, die auf eine SQL Azure VM verweist.

Ihre Importspezifikation ist jetzt für die Verwendung eines SQL Azure virtuellen Computers für den Import konfiguriert. Fahren Sie mit den restlichen Vorbereitungsschritten fort, um sie in Azure DevOps Services zu importieren. Nachdem der Import abgeschlossen ist, stellen Sie sicher, dass Sie die SQL-Anmeldung löschen oder das Kennwort rotieren. Microsoft behält die Anmeldeinformationen nach Abschluss des Imports nicht mehr bei.