MSSQL Semi-Cluster Aware Backups mit ZWC

Dieser Artikel ist für Amanda Unternehmen (AE)

Amanda Enterprise (im Folgenden als AE bezeichnet) kann in Zusammenarbeit mit dem Zmanda Windows-Client (im Folgenden als ZWC bezeichnet) Sicherungen eines SQL Server-Clusters erstellen. Da Amanda Enterprise jedoch nicht vollständig „clusterfähig“ ist, müssen bestimmte Einschränkungen beachtet und Anforderungen erfüllt werden. Der ZWC teilt den Code mit dem voll funktionsfähigen Windows Server-Sicherungsprogramm Carbonite Server Backup unserer Muttergesellschaft Carbonite. Aus diesem Grund werden "ZWC-Service" oder "ZWC-Datenbank" manchmal als "Carbonite Server Backup Controller" bzw. "Carbonite Server Database" aufgeführt. Behandeln Sie diese Carbonite-Services genauso wie die ZWC-Services in dieser Anleitung.

Einrichtung

Der ZWC muss auf allen Knoten im Cluster installiert sein.

  1. Installieren Sie den ZWC auf dem Knoten, der der bevorzugte (primäre) Eigentümer für die SQL Cluster-Ressource ist.
    1. Ein neuer Registrierungsschlüssel mit dem Namen Clustername (Typ = Zeichenfolge) muss in erstellt werden HKLM \ Software \ Zmanda \ ZWC \ 1.0 \ Engine \. Der Schlüsselwert muss der Name des SQL-Clusters sein.
    2. Öffnen Sie das Menü Dienste und starten Sie den Carbonite Server-Datenbankdienst neu. Dadurch werden beide Dienste neu gestartet.
  2. Konfigurieren Sie einen SQL Server-Sicherungssatz in AE.
    1. Sicherungen auf dem Primärknoten können als VOLLSTÄNDIGE und UNTERSCHIEDLICHE Sicherungen konfiguriert werden. Bitte sehen Sie Differenzielle Sicherungen in einem SQL Server-Cluster unten.
  3. Verschieben Sie die SQL-Instanz auf einen anderen Knoten und wiederholen Sie die Installation und Konfiguration von ZWC.
    1. Deaktivieren Sie den neuen SQL-Sicherungssatz. Klicken Sie mit der rechten Maustaste auf den Sicherungssatz und wählen Sie Deaktivieren.
    2. Konfigurieren Sie nur vollständige Sicherungen auf allen anderen Knoten. Bitte sehen Sie Differenzielle Sicherungen in einem SQL Server-Cluster unten.
  4. Wiederholen Sie Schritt 3 für alle Knoten im Cluster.
  5. Verschieben Sie die SQL-Instanz zurück zum bevorzugten (primären) Knoten.

Verschieben der SQL-Instanz zwischen Clusterknoten nach der Ersteinrichtung

Wenn Sie die SQL-Instanz nach der Ersteinrichtung vom primären Clusterknoten auf einen anderen Knoten verschieben, müssen Sie auch Ihre AE- und ZWC-Konfiguration anpassen, es sei denn, Sie planen, die Ressource vor der geplanten Sicherung zurückzuschieben.

  1. Deaktivieren Sie zunächst den SQL-Sicherungssatz auf dem aktuellen Knoten.
  2. Verschieben Sie die SQL-Instanz auf einen anderen Knoten.
  3. Aktivieren Sie den Sicherungssatz auf dem neuen Knoten.

Differenzielle Sicherungen in einem SQL Server-Cluster

Da AE nicht vollständig clusterfähig ist, müssen Sie bei der Verwendung von differenziellen Sicherungen in einer Clusterumgebung große Vorsicht walten lassen. Stellen Sie sich folgendes Szenario vor:

  1. Ihre erste vollständige Sicherung wird auf Knoten 1 (dem bevorzugten Eigentümer) bei Transaktion / Datensatz 100 erstellt. SQL Server zeichnet auf, dass eine vollständige Sicherung durchgeführt wird.
    1. Diese Sicherung würde Transaktionen / Datensätze 1 - 100 enthalten. Typ = Vollständig.
  2. Ihre nächste Sicherung, die sich noch auf Knoten 1 befindet, ist eine differenzielle Sicherung, die bei Transaktion 150 erstellt wurde. SQL Server zeichnet auf, dass eine differenzielle Sicherung erstellt wird.
    1. Diese Sicherung würde die Transaktionen 101 - 150 enthalten. Typ = Differential. Entsprechend voll ist 1-100.
  3. Jetzt verschieben Sie SQL Server bei Transaktion 2 auf Knoten 200 und erstellen eine Sicherung. AE und ZWC auf diesem Knoten kennen die Sicherungen auf dem anderen Knoten nicht, daher müssen Sie eine weitere vollständige Sicherung durchführen.
    1. Diese Sicherung würde die Transaktionen 1 bis 200 enthalten. SQL Server zeichnet auf, dass bei Transaktion 200 eine vollständige Sicherung durchgeführt wird.
  4. Zu diesem Zeitpunkt verschieben Sie SQL zurück zu Knoten 1 und führen bei Transaktion 250 eine differenzielle Sicherung durch. SQL Server hat aufgezeichnet, dass die letzte vollständige Sicherung bei Transaktion 200 war.
    1. Diese Sicherung würde die Transaktionen 201 - 250 enthalten.
    2. Die letzte vollständige Sicherung auf diesem Knoten enthält jedoch nur die Transaktionen 1 bis 100.
  5. Jetzt gibt es ein Problem. Transaktionen fehlen in der Sicherungskette. Es können nur die vollständigen Sicherungen wiederhergestellt werden.
    1. Eine Wiederherstellung der vollständigen Sicherung auf Knoten 1 würde nur die Datensätze 1 bis 100 enthalten. Die einzige differenzielle Sicherung, die wiederhergestellt werden kann, ist die mit den Transaktionen 101 bis 150. Die Transaktionen 151 bis 250 gehen verloren.
    2. Eine Wiederherstellung der vollständigen Sicherung auf Knoten 2 würde nur die Datensätze 1 bis 200 enthalten. Die differenzielle Sicherung von Knoten 1 kann nicht auf Knoten 2 wiederhergestellt werden. Die Transaktionen 201 bis 250 gehen verloren.

Um Probleme wie die oben genannten zu vermeiden, empfehlen wir:

  1. Verwenden Sie vollständige oder differenzielle Sicherungen nur auf dem einzelnen Primärknoten, dh auf dem bevorzugten Eigentümer der SQL-Instanzclusterressource.
  2. Verwenden Sie vollständige Sicherungen nur auf allen anderen Knoten.
  3. Wenn SQL-Daten gesichert wurden, während sie sich auf einem anderen als dem primären Knoten befinden, muss die erste Sicherung eine vollständige Sicherung sein, wenn Sie die SQL-Instanz zurück auf den primären Knoten verschieben.

Wenn die SQL-Instanz nur für kurze Zeit auf andere Knoten des Clusters verschoben wird, z. B. zur Wartung, können Sie Ihr Sicherungsschema vereinfachen, indem Sie ZWC nur auf einem einzelnen Primärknoten installieren und konfigurieren.

Wir empfehlen Ihnen, den folgenden Artikel im MSDN-Blog zu lesen: Welche Daten sollten Sie von Ihrem SQL Server-Cluster sichern?