DE112016001295T5 - Neusynchronisieren auf ein erstes Speichersystem durch Spiegeln des ersten Speichersystems nach einem Failover zu einem zweiten Speichersystem - Google Patents

Neusynchronisieren auf ein erstes Speichersystem durch Spiegeln des ersten Speichersystems nach einem Failover zu einem zweiten Speichersystem Download PDF

Info

Publication number
DE112016001295T5
DE112016001295T5 DE112016001295.0T DE112016001295T DE112016001295T5 DE 112016001295 T5 DE112016001295 T5 DE 112016001295T5 DE 112016001295 T DE112016001295 T DE 112016001295T DE 112016001295 T5 DE112016001295 T5 DE 112016001295T5
Authority
DE
Germany
Prior art keywords
storage system
storage
response
storage device
failover
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112016001295.0T
Other languages
English (en)
Inventor
John Glenn Thompson
David Petersen
Gail Andrea Spear
Alan George McClure
Daniel Roman
Michael Frankenberger
Michael BRANDNER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112016001295T5 publication Critical patent/DE112016001295T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2069Management of state, configuration or failover
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2082Data synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time

Abstract

Es werden ein Computerprogrammprodukt, ein System und ein Verfahren bereitgestellt zum Ausführen eines Failover zwischen einem ersten Speichersystem und einem zweiten Speichersystem. Daten werden zwischen dem ersten Speichersystem und dem zweiten Speichersystem synchronisiert. Ein Failover wird von dem ersten Speichersystem zu dem zweiten Speichersystem als Reaktion auf ein Failover-Ereignis in dem ersten Speichersystem ausgeführt, während die Daten synchronisiert werden. Als Reaktion auf das Failover-Ereignis wird festgestellt, dass eine erste Speichereinheit des ersten Speichersystems nicht funktionsfähig ist und eine zweite Speichereinheit des ersten Speichersystems funktionsfähig ist. Als Reaktion auf ein Feststellen, dass die zweite Speichereinheit funktionsfähig ist, wird ein Neusynchronisieren ausgelöst zum Kopieren von Updates zu einer zweiten Speicherenheit des ersten Speichersystems durch Spiegeln der zweiten Speichereinheit des zweiten Speichersystems zu der zweiten Speichereinheit des ersten Speichersystems.

Description

  • HINTERGRUND DER ERFINDUNG
  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich auf ein Computerprogrammprodukt, ein System und ein Verfahren zum Neusynchronisieren auf ein erstes Speichersystem nach einem Failover (einer Funktionsübernahme) zu einem zweiten Speichersystem, wobei das erste Speichersystem gespiegelt wird.
  • BESCHREIBUNG DER VERWANDTEN TECHNIK
  • Bei einer Speicherumgebung kann eine Speichersteuereinheit Spiegelkopie-Beziehungen führen, wobei ein primärer Datenträger in einer Spiegelkopie-Beziehung den Speicher oder die Datenträger aufweist, von denen Daten physisch zu einem sekundären Speicher oder Datenträger kopiert werden. Failover-Programme wie beispielsweise HyperSwap® der International Business Machine Corporation (IBM), bei dem es sich um eine Funktion in dem Betriebssystem z/OS® handelt, stellen eine ständige Verfügbarkeit bei Plattenfehlern bereit, indem die Spiegelkopie-Beziehungen geführt werden, um synchrone Kopien aller primärer Platten-Datenträger in einem oder mehreren primären Speichersystemen für ein oder mehrere Ziel-(oder sekundäre)Speichersysteme bereitzustellen. (Bei HyperSwap und z/OS handelt es sich um weltweit eingetragene Warenzeichen von IBM). Wenn ein Plattenfehler erkannt wird, kennzeichnet ein Code im Betriebssystem durch HyperSwap verwaltete Datenträger, und anstelle des Zurückweisens der E/A-Anforderung schaltet HyperSwap Informationen in internen Steuerblöcken um (oder tauscht diese aus), so dass die E/A-Anforderung an den sekundären Datenträger der Spiegelkopie-Beziehung gerichtet wird. Der Failover wird sehr schnell ausgeführt und bringt lediglich eine sehr geringe Auswirkung auf die Host-Anwendungen mit sich. Host-Anwendungen werden nicht über den Fehler der primären Platte benachrichtigt und sind sich dessen nicht bewusst, dass ihr Zugriff auf die sekundäre Kopie der Daten umgeschaltet wurde. Da es sich bei dem sekundären Datenträger um eine identische Kopie des primären Datenträgers vor dem Failover handelt, ist die E/A-Anforderung erfolgreich ohne Auswirkung auf das Programm, das die E/A-Anforderung ausgibt, bei dem es sich um ein Anwendungsprogramm oder ein Teil des Betriebssystems handeln könnte. Das maskiert daher den Plattenfehler vor dem Programm und vermeidet eine Anwendungs- und/oder Systemunterbrechung.
  • Wenn ein Fehler einer primären Platte auftritt, wechselt die Failover-Funktion automatisch das Zugreifen der Host Systeme von der Steuereinheit der fehlerhaften primären Platte zu der sekundären Steuereinheit, die die sekundäre Kopie von Daten enthält. Wenn ein Failover erfolgt, wird ein Spiegeln zwischen den beiden Speichersystem-Paaren unterbrochen, was bedeutet, dass Updates (Aktualisierungen), die durch die Anwendungen an der momentanen primären Kopie ausgeführt werden, nicht zu der sekundären Kopie gespiegelt werden. In diesem unterbrochenen Zustand ist eine weitere Failover-Operation nicht möglich. Dadurch bleibt der Kunde durch einen weiteren Ausfall beliebiger Art gefährdet, der die einzige verbleibende intakte Kopie der Daten beeinträchtigt.
  • Zum Zurückführen des primären und des sekundären Datenträgers in einen Zustand, der ein Failover zulässt, sammelt und analysiert im Stand der Technik ein Administrator oder Benutzer Diagnoseinformationen von dem fehlerhaften primären Speichersystem und führt bei Bedarf Reparaturen aus. Der Administrator/Benutzer kann dann ein Neusynchronisieren der Daten von der momentanen sekundären Stelle wieder auf den primären Speicher auslösen, bei dem der Failover aufgetreten ist. Der Administrator/Benutzer kann die Operation Neusynchronisieren ausführen, indem Point-in-Time-(”PiT-”)Kopien der primären Speichereinheit ausgelöst werden, um eine konsistente Kopie der Daten bereitzustellen. Bis das Neusynchronisieren beendet ist, sind die Einheiten des primären Speichersystems nicht konsistent und daher für ein Wiederherstellen nutzlos. Die Point-in-Time-Kopie schützt vor einem Ausfall des sekundären Speichersystems, der während eines Neusynchronisierens auftritt.
  • Wenn bei einer der Einheiten des primären Speichers (als Folge des Ausfalls) ein Datenverlust aufgetreten ist, werden die fehlerhaften Einheiten neu synchronisiert durch Ausführen einer vollständigen Kopie von den Einheiten des sekundären Speichersystems, die den fehlerhaften Einheiten des primären Speichersystems entsprechen. Bei Einheiten des primären Speichersystems, die keinen Datenverlust erlitten haben, werden während des Neusynchronisierens lediglich aktualisierte Spuren des sekundären Speichersystems zurück in das primäre Speichersystem kopiert. Wenn die Operation Neusynchronisieren beendet ist, sind die gespiegelten Paare wieder aufeinander synchronisiert.
  • Der vom Administrator/Benutzer verwaltete Prozess des Neusynchronisierens kann viele Stunden oder sogar Tage dauern. Bis der Prozess beendet ist, ist der Kunde durch einen zweiten Ausfall gefährdet.
  • KURZDARSTELLUNG
  • Ein Computerprogrammprodukt, ein System und ein Verfahren zum Ausführen eines Failover zwischen einem ersten Speichersystem und einem zweiten Speichersystem werden bereitgestellt. Daten werden zwischen dem ersten Speichersystem und dem zweiten Speichersystem synchronisiert. Ein Failover wird von dem ersten Speichersystem zu dem zweiten Speichersystem ausgeführt als Reaktion auf ein Failover-Ereignis in dem ersten Speichersystem beim Synchronisieren der Daten, wobei Eingabe/Ausgabe-(E/A-)Anforderungen an das erste Speichersystem als Teil des Failover zu dem zweiten Speichersystem umgeleitet werden. Es wird festgestellt, dass eine erste Speichereinheit des ersten Speichersystems als Reaktion auf das Failover-Ereignis nicht betriebsfähig ist und eine zweite Speichereinheit des ersten Speichersystems als Reaktion auf das Failover-Ereignis betriebsfähig ist. Als Reaktion auf das Feststellen, dass die zweite Speichereinheit betriebsfähig ist, wird ein Neusynchronisieren ausgelöst, um Updates in eine zweite Speichereinheit des ersten Speichersystems zu kopieren, indem die zweite Speichereinheit des zweiten Speichersystems in die zweite Speichereinheit des ersten Speichersystems gespiegelt wird, wobei E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  • Indem der sekundäre Replikationsmanager Updates an den zweiten Speichereinheiten zu diesen betriebsfähigen ersten Speichereinheiten als Teil des Neusynchronisierens während des Failover zu dem zweiten Speichersystem automatisch asynchron kopiert, werden die Daten in den ersten Speichereinheiten möglichst aktuell gehalten, so dass das Neusynchronisieren des ersten Speichersystems schneller ausgeführt werden kann, wenn das erste Speichersystem repariert wurde und voll funktionsfähig ist.
  • Bei weiteren Ausführungsformen wird das Synchronisieren der Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem in der Betriebsart Synchrones Kopieren ausgeführt, und das Kopieren der Updates beim Neusynchronisieren, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden, wird in der Betriebsart Asynchrones Kopieren ausgeführt.
  • Bei noch weiteren Ausführungsformen weist das Feststellen, dass die erste Speichereinheit nicht betriebsfähig ist, ein Auslösen einer Point-in-Time-Kopie der ersten Speichereinheit des ersten Speichersystems und ein Feststellen auf, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist. Als Reaktion auf die Feststellung, dass die erste Speichereinheit nicht funktionsfähig ist, wird festgestellt, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist. Des Weiteren weist das Feststellen, dass die zweite Speichereinheit funktionsfähig ist, ein Auslösen einer Point-in-Time-Kopie der zweiten Speichereinheit des ersten Speichersystems und ein Feststellen auf, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich war, wobei als Reaktion auf die Feststellung, dass die zweite Speichereinheit funktionsfähig ist, festgestellt wird, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgt ist.
  • Durch Erstellen der Point-in-Time-Kopie der funktionsfähigen zweiten Speichereinheit wird die Kopie der zugänglichen Daten in dem ersten Speichersystem geführt.
  • Bei nochmals weiteren Ausführungsformen wird für das erste Speichersystem ein Zustand Soft-Fence eingerichtet, um einen E/A-Zugriff auf die Speichereinheiten des ersten Speichersystems als Reaktion auf das Failover-Ereignis zu verhindern, wobei die Point-in-Time-Kopien mit einem Befehl ausgelöst werden, der einen Parameter hat, damit die Point-in-Time-Kopieroperationen während des Zustands Soft-Fence des ersten Speichersystems ablaufen können.
  • Bei noch weiteren Ausführungsformen weist das Neusynchronisieren ein erstes Neusynchronisieren auf, und eine Abfrage auf Funktionsfähigkeit wird an das erste Speichersteuereinheit ausgegeben, um zu ermitteln, ob das erste Speichersystem voll funktionsfähig ist. Die erste und die zweite Speichereinheit des ersten Speichersystems sind funktionsfähig, wenn das erste Speichersystem voll funktionsfähig ist. Updates an der ersten Speichereinheit des zweiten Speichersystems werden auf die erste Speichereinheit des zweiten Speichersystems neusynchronisiert als Reaktion auf ein Feststellen, dass die Antwort auf die Abfrage auf Funktionsfähigkeit lautet, dass das erste Speichersystem voll funktionsfähig ist.
  • Bei nochmals weiteren Ausführungsformen weisen die ersten Speichereinheiten erste Datenträger des ersten und des zweiten Speichersystems auf, und die zweiten Speichereinheiten weisen zweite Datenträger des ersten und des zweiten Speichersystems auf. Der erste Datenträger, bei dem festgestellt wird, dass er nicht funktionsfähig ist, enthält eine Teilmenge von Spuren, bei denen Datenverlust aufgetreten ist. Wenn die Abfrage auf Funktionsfähigkeit ergibt, dass das erste Speichersystem voll funktionsfähig ist, führt das Neusynchronisieren des Weiteren ein Kopieren einer Teilmenge von Spuren in dem ersten Datenträger des zweiten Speichersystems zu den entsprechenden Teilmengen von Spuren in dem ersten Datenträger in dem ersten Speichersystem aus. Spuren in dem ersten Datenträger in dem ersten Speichersystem, bei denen kein Datenverlust aufgetreten ist und die nicht Spuren in dem ersten Datenträger in dem zweiten Speichersystem entsprechen, die aktualisiert werden, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden, sind nicht Gegenstand des Neusynchronisierens.
  • Nach Reparatur und Wiederherstellung müssen lediglich Spuren in dem wiederhergestellten, nichtfunktionsfähigen ersten Datenträger synchronisiert werden, die während des Failover aktualisiert wurden oder bei denen ein Datenverlust aufgetreten ist. Durch Beginnen des Neusynchronisierens während des Failover für Datenträger, die funktionsfähig sind, wird des Weiteren das Synchronisieren nach dem Wiederherstellen des ersten Speichersystems viel schneller ausgeführt, da ein Großteil der Daten möglicherweise bereits neu synchronisiert wurde.
  • Bei weiteren Ausführungsformen wird das Neusynchronisieren der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem vor der Antwort auf die Abfrage auf Funktionsfähigkeit, die angibt, dass das erste Speichersystem voll funktionsfähig ist, in der Betriebsart Asynchrones Kopieren ausgeführt. Das Neusynchronisieren der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem wird als Reaktion auf die Abfrage, die angibt, dass das erste Speichersystem voll funktionsfähig ist, auf die Betriebsart Synchrones Kopieren umgestellt.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Ausführungsformen der vorliegenden Erfindung werden jetzt lediglich beispielhaft unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, in denen:
  • 1 eine Ausführungsform einer Umgebung zur Speicherreplikation veranschaulicht.
  • 2 eine Ausführungsform einer Kopie-Beziehung veranschaulicht.
  • 3 eine Ausführungsform eines Befehls Point-in-Time-Kopie veranschaulicht.
  • 4 eine Ausführungsform von Operationen zum Ausführen einer Failover-Operation veranschaulicht.
  • 5 eine Ausführungsform von Operationen veranschaulicht, die zurück auf das wiederhergestellte primäre Speichersystem neu synchronisieren.
  • 6 eine Datenverarbeitungsumgebung veranschaulicht, bei der die Komponenten von 1 umgesetzt werden können.
  • GENAUE BESCHREIBUNG
  • Die beschriebenen Ausführungsformen stellen Techniken bereit zum Neusynchronisieren von Daten bei einem Failover von einem primären Speichersystem zu einem sekundären Speichersystem. Als Reaktion auf den Failover werden für diejenigen primären Datenträger oder Speichereinheiten, die funktionsfähig sind, Updates für die entsprechenden sekundären Datenträger auf die funktionsfähigen primären Datenträger neu synchronisiert, bevor das primäre Speichersystem wiederhergestellt wird. Für diejenigen Datenträger des primären Speichersystems, die nicht funktionsfähig sind oder bei denen ein Datenverlust aufgetreten ist, werden Updates an den entsprechenden sekundären Datenträgern angegeben wie beispielsweise in einer Änderungen aufzeichnende Bitzuordnung (change recording bitmap), und sie werden anschließend wieder auf die primären Datenträger neu synchronisiert, nachdem das primäre Speichersystem wiederhergestellt oder repariert wurde.
  • Bei den beschriebenen Ausführungsformen beginnt unverzüglich ein automatisches programmgesteuertes Neusynchronisieren der Daten zurück auf funktionsfähige Datenträger des fehlerhaften primären Speichersystems, um die Zeitspanne auf einen minimalen Wert zu bringen, die erforderlich ist, um das primäre Speichersystem vollständig zu synchronisieren und zum Abwickeln eines zweiten Failover in dem sekundären Speichersystem zur Verfügung zu stellen. Nachdem das primäre Speichersystem wiederhergestellt wurde, sind auf diese Weise möglichst viele funktionsfähige primäre Datenträger gemäß einem Prozess zum automatisierten Neusynchronisieren bereits neu synchronisiert worden, wodurch die Zeitspanne zum Neusynchronisieren nach dem Wiederherstellen des primären Speichersystems verringert wird.
  • 1 veranschaulicht eine Ausführungsform einer Datenspiegelungs- und Failover-Umgebung mit einem Host-System 100, das mit einem primären Speichersystem 102a und einem sekundären Speichersystem 102b verbunden ist. Das primäre Speichersystem 102a enthält einen primären Speicher 104a mit Datenträgern 106a, die in entsprechenden Datenträgern 106b in dem sekundären Speichersystem 102b in einem Spiegelpaar oder einer Kopie-Beziehung gespiegelt werden. Der Host 100 und die Speichersysteme 102a und 102b können über ein Netzwerk 108 Daten austauschen. Es gibt möglicherweise (nicht gezeigte) zusätzliche Hosts, die Eingabe/Ausgabe-(E/A-)Anforderungen an die primären und sekundären Datenträger 106a und 106b bereitstellen.
  • Das primäre und das sekundäre Speichersystem 102a und 102b enthalten Eingabe/Ausgabe-(E/A-)Manager 112a, 112b zum Verwalten von E/A-Operationen, die an die primären und sekundären Datenträger 106a bzw. 106b gerichtet sind. Das Host-System 100 enthält einen Replikationsmanager 114 zum Einrichten von Spiegel-Kopier-Beziehungen 200 zwischen den verschiedenen Datenträgern 106a, 106b. Die Speichersysteme 102a, 102b enthalten Replikationsmanager 114a, 114b zum Verwalten des Replizierens oder des Spiegelns von Daten zwischen dem primären und dem sekundären Datenträger 106a, 106b und zum Koordinieren des Replizierens mit dem Host-Replikationsmanager 114.
  • Der Host 100 enthält einen Failover-Manager 116 zum Verwalten des Failover von E/A-Operationen von dem primären Speichersystem 102a zu dem sekundären Speichersystem 102b als Reaktion auf ein Failover-Ereignis wie beispielsweise ein Speicher- oder Komponentenausfall in dem primären Speichersystem 102a und zum Verwalten des Failover von dem sekundären Speichersystem 102b zu dem primären Speichersystem 102a, wenn das sekundäre Speichersystem 102b E/A-Operationen verwaltet und ein Fehler auftritt. Das primäre und das sekundäre Speichersystem 102a, 102b enthalten Failover-Manager 116a bzw. 116b zum Umsetzen der Failover-Operationen in Abstimmung mit dem Host-Failover-Manager 116.
  • Das primäre und das sekundäre Speichersystem 102a, 102b führen Informationen über die Kopier-Beziehungen 200a, 200b, die von dem Host-Replikationsmanager 114 eingerichtet werden. Wenn das primäre Speichersystem 102a funktioniert und E/A-Operationen verwaltet, die an die Datenträger 106a gerichtet sind, geben Kopier-Beziehungen 200, 200a, 200b an, dass Daten von den primären Datenträgern 106a zu den entsprechenden sekundären Datenträgern 106a gespiegelt oder auf diese synchronisiert werden. Bei einer Ausführungsform können die Daten von den primären Datenträgern 106a als eine Konsistenz-Gruppe gespiegelt werden, von der Daten in der Betriebsart Synchrones Kopieren zu den entsprechenden sekundären Datenträgern 106b kopiert werden, wobei der Schreibvorgang erst beendet wird, wenn der Schreibvorgang in dem sekundären Speicher 104b als gespeichert bestätigt wird.
  • Bei einem Failover-Ereignis koordinieren die Failover-Manager 116, 116a, 116b den Failover zu dem sekundären Speichersystem 102b, wobei das sekundäre Speichersystem 102b das Verwalten von E/A-Anforderungen an die sekundären Datenträger 106b übernimmt, die Daten enthalten, die von den primären Datenträgern 106a repliziert wurden. Nach dem Failover kann der Host-Replikationsmanager 114 Kopie-Beziehungen 200b in dem sekundären Speichersystem 102b erzeugen, um Updates an den sekundären Datenträgern 106b zurück auf die primären Datenträger 106a neu zu synchronisieren. Wenn sie an dem sekundären Speicher 104b erzeugt werden, synchronisiert daher der sekundäre Replikationsmanager 114b Updates auf sekundäre Datenträger 106b neu, die funktionsfähigen primären Datenträgern 106a in dem primären Speichersystem 102a entsprechen.
  • Bei einer Ausführungsform werden die Kopie-Beziehungen 200 durch den Host-Replikationsmanager 114 erzeugt und dem primären und dem sekundären Speichersystem 102a und 102b als lokale Kopien der Kopie-Beziehungen 200a und 200b bereitgestellt. Auf diese Weise verwaltet der Host 100 Replikations-, Failover- und Neusynchronisierungs-Operationen des primären und des sekundären Speichersystems 102a, 102b. Bei einer alternativen Ausführungsform können das primäre Speichersystem 102a und das sekundäre Speichersystem 102b Replikation und Failover ohne Teilnahme des Host 100 selbst verwalten.
  • Die Speichersysteme 102a und 102b können eine Speichersteuereinheit/einen Server eines Unternehmens aufweisen, die bzw. der zum Verwalten des Zugriffs auf angeschlossene Speichereinheiten geeignet ist wie beispielsweise das D58000®-Speichersystem der International Business Machine Corporation („IBM”) oder andere in der Technik bekannte handelsübliche Speicherserver, ohne darauf beschränkt zu sein. (Bei DS8000 handelt es sich um ein weltweit eingetragenes Warenzeichen der IBM). Bei einer Ausführungsform weisen die Replikationsmanager 114, 114a, 114b Programme zum Verwalten der systemübergreifenden Spiegelung von Datenträgern wie beispielsweise die Spiegelungsprogramme von IBM Geographically Dispersed Parallel Sysplex (GDPS®) und Tivoli® Storage Productivity Center for Replication (TPC-R), die eine Replikationssitzung und Kopie-Paare 200 definieren, ohne darauf beschränkt zu sein. Unterschiedliche Typen von Techniken können zum Kopieren der Daten gewählt werden wie beispielsweise synchrones Spiegeln, asynchrones Spiegeln oder Point-in-Time-Kopieren oder Kombinationen von mehreren dieser unterschiedlichen Spiegelungstypen. Die Failover-Manager 116, 116a, 116b können ein Programm aufweisen, das zum Handhaben des Failover von einem der Speichersysteme 102a, 102b zum anderen geeignet ist wie beispielsweise das Produkt HyperSwap von IBM®, das Failover-Sitzungen von den eingerichteten Kopie-Paaren einrichtet, ohne darauf beschränkt zu sein. (Bei IBM, GDPS, Tivoli und HyperSwap handelt es sich um weltweit eingetragene Warenzeichen von IBM).
  • Das Netzwerk 108 kann ein Speicherbereich-Netzwerk (SAN), ein Lokalbereich-Netzwerk (LAN), ein Intranet, das Internet, ein Weitbereich-Netzwerk (WAN), ein Peer-to-Peer-Netzwerk, ein drahtloses Netzwerk, ein Arbitrated-Loop-Netzwerk usw. aufweisen. Die Speicher 104a, 104b können jeweils in einer oder mehreren Speichereinheiten oder in einem Array von Speichereinheiten umgesetzt sein, die als Just a Bunch of Disks (JBOD), Direktzugriff-Speichereinheit (DASD), RAID-Array (Redundantes Array unabhängiger Platten), Virtualisierungseinheit, Bandspeicher, Flash-Speicher usw. eingerichtet sind. Die Speichereinheiten können Festplattenlaufwerke, Festkörper-Speichereinheiten (SSD) mit Festkörper-Elektronik, EEPROMs (elektrisch löschbare programmierbare Festwertspeicher), Flash-Speicher, Flash-Plattenspeicher, Direktzugriffsspeicher (RAM), Speicherklassen-Speicher (SCM) usw., Phasenwechsel-Speicher (SCM), Resistive Direktzugriffsspeicher (RRAM), Spin-Transfer-Torque-Speicher (STM-RAM), Conductive-Bridging-RAMs (CBRAM), magnetische Festplattenlaufwerke, optische Plattenspeicher, Bandspeicher usw. aufweisen. Zwar wird eine bestimmte Anzahl von Instanzen der Elemente wie beispielsweise Knotengruppen, verwaltete Komponenten, Mailboxes usw. gezeigt, es kann jedoch jede beliebige Anzahl dieser Komponenten vorhanden sein.
  • 2 veranschaulicht eine Ausführungsform einer Instanz einer Kopie-Beziehung 200i, die eine Instanz der Kopie-Beziehungen 200, 200a, 200b aufweisen kann, die eine Kopie-Paar-Kennung (ID) 202; einen primären Datenträger 204, von dem Daten kopiert werden (der einen der Datenträger 106a oder 106b aufweisen kann); einen sekundären Datenträger 206, zu dem Daten gespiegelt werden (der einen der Datenträger 106a oder 106b aufweisen kann); und eine Änderungen aufzeichnende Bitzuordnung 208 aufweisen kann, die Dateneinheiten oder Datenspuren in dem primären Datenträger 204 angibt, die kopiert oder auf den sekundären Datenträger 206 synchronisiert werden müssen. Wenn alle Updates, die in der Änderungen aufzeichnenden Bitzuordnung 208 angegeben sind, in den sekundären Datenträger 206 kopiert wurden, erreicht die Kopie-Beziehung 200i einen Duplex- oder synchronisierten Zustand. Die Änderungen aufzeichnende Bitzuordnung 208 kann initialisiert werden, damit sie angibt, dass keine Spuren synchronisiert werden müssen. Wenn Spuren aktualisiert werden, wird das entsprechende Bit in der Bitzuordnung 208 gesetzt, um anzugeben, dass Spuren in den sekundären Datenträger 206 kopiert werden müssen.
  • 3 veranschaulicht eine Ausführungsform eines Befehls 300 Point-in-Time-Kopie mit dem Befehlsoperator 302 Point-in-Time-Kopie, einem Quellen-Datenträger 304, der der Operation PiT-Kopie unterzogen wird; und einem Soft-Fence-Überschreibbefehl 306, der den E/A-Manager 112a, 112b anweist, ein Ausführen des Befehls PiT-Kopie zuzulassen, selbst wenn der Quellen-Datenträger 304 von E/A-Operationen abgegrenzt ist. Ein Quellen-Datenträger 304 kann abgegrenzt sein, wenn es an dem Quellen-Datenträger 304 ein Failover zu dem entsprechenden Datenträger in einem anderen Speichersystem gibt. Ein Zustand fenced-off (abgegrenzt) blockiert Lese- und Schreibvorgänge an den Datenträgern 304 in Abhängigkeit von dem Zustand. Der Parameter 306 ermöglicht ein Ausführen des Befehls Point-in-Time-Kopie, selbst wenn der Quellen-Datenträger 304 dem Zustand fenced-off unterliegt. Wenn der Parameter 306 nicht angibt, dass ein Ausführen des Befehls Point-in-Time-Kopie zugelassen ist, wenn sich der Quellen-Datenträger 304 im Zustand fenced-off befindet, kann der Befehl Point-in-Time durch den Zustand fenced-off blockiert werden.
  • Ein Befehl Point-in-Time-Kopie repliziert Daten in einer Weise, die als unmittelbar erscheint, und ermöglicht einem Host, auf den Quellen-Datenträger weiterhin zuzugreifen, während anstehende Datentransfers zu dem Kopie-Datenträger auf einen späteren Zeitpunkt verschoben werden. Der Befehl Point-in-Time-Kopie erscheint als unmittelbar, da Eingabe/Ausgabe („E/A”) als Reaktion auf ein Erzeugen der Beziehungs-Datenstrukturen als beendet an die Kopie-Operation zurückgegeben wird, ohne die Daten von dem Quellen- zu dem Ziel-Datenträger zu kopieren. Bei Techniken mit Point-in-Time-Kopie wird üblicherweise der Transfer der Daten in dem Quellen-Datenträger an dem Zeitpunkt, an dem die Beziehung Point-in-Time-Kopie eingerichtet wurde, zu dem Kopie-Ziel-Datenträger verschoben, bis eine Schreiboperation zu diesem Datenblock in dem Quellen-Datenträger angefordert wird. Datentransfers können außerdem als Hintergrund-Kopie-Prozess bei minimalen Auswirkungen auf die System-Leistungsfähigkeit ausgeführt werden. Die Beziehungen Point-in-Time-Kopie, die als Reaktion auf den Befehl Point-in-Time-Kopie unmittelbar eingerichtet werden, enthalten eine Bitzuordnung (bitmap) oder eine andere Datenstruktur, die die Position von Blöcken in dem Datenträger entweder im Quellen-Datenträger oder im Ziel-Datenträger angibt. Die Point-in-Time-Kopie weist die Kombination aus den Daten in dem Quellen-Datenträger und den Daten auf, die durch die Updates überschrieben werden, die zu dem Ziel-Datenträger übertragen werden.
  • 4 veranschaulicht eine Ausführungsform von Operationen, die durch die Komponenten in dem Host 100, dem primären Speichersystem 102a und dem sekundären Speichersystem 102b ausgeführt werden, Komponenten zum Ausführen eines Failover von dem primären Speichersystem 102a zu dem sekundären Speichersystem 102b. Das System 102b kann als das primäre Speichersystem wirken, und das System 102a kann als das sekundäre Speichersystem für ein Failover wirken. Die Steuerung beginnt, wenn der Host-Replikationsmanager 114 (im Block 400) Spiegel-Kopie-Operationen auslöst, um Daten zwischen den primären Datenträgern 106a und sekundären Datenträgern 106b zu synchronisieren. Der Host-Replikationsmanager 114 kann (im Block 402) eine Kopie-Beziehung 200 zwischen primären Speicher-Datenträgern 106a und entsprechenden sekundären Speicher-Datenträgern 106b einrichten, um Daten und Updates von den primären Datenträgern 106a zu den entsprechenden sekundären Datenträgern 106b in einer Betriebsart synchrone Kopie zu spiegeln. Die Kopie-Beziehungen 200 werden dem primären Replikationsmanager 114a zum Verwenden beim Spiegeln/Synchronisieren der Daten bereitgestellt. In der Betriebsart Synchrone Kopie wird das Kopieren von Daten erst als beendet angegeben, wenn das sekundäre Speichersystem 102a bestätigt, dass die Daten in den entsprechenden sekundären Datenträgern 106b gespeichert wurden. Bei einer Ausführungsform können die Daten von den primären Datenträgern 106a zu den sekundären Datenträgern 106b in der Betriebsart Konsistenzgruppe gespiegelt werden, so dass Daten in den sekundären Datenträgern 106b zu einem Point-of-Time mit den Daten in den primären Datenträgern 106 als konsistent geführt werden.
  • Der Failover-Manager 116a kann (im Block 404) ein Failover-Ereignis in dem primären Speichersystem 102a erkennen wie beispielsweise einen Ausfall von einer oder mehreren Komponenten des primären Speichersystems 102a, darunter Speichereinheiten des primären Datenträgers 104a. Beim Erkennen (im Block 404) des Failover-Ereignisses kann der primäre Failover-Manager 116a oder der Host-Failover-Manager 16a (im Block 406) Spuren in primären Datenträgern 105 ermitteln, in denen ein Datenverlust aufgetreten ist, und diese fehlerhaften Spuren in dem primären Speichersystem 102a aufzeichnen. Das primäre Speichersystem 102a kann daraufhin die Informationen zu den fehlerhaften Spuren an den Host 116 oder den sekundären Failover-Manager 116b berichten für eine Verwendung während des Neusynchronisierens von dem sekundären Speichersystem 102b zurück auf das primäre Speichersystem 102a. Die Spuren in den nichtfunktionsfähigen primären Datenträgern 106a können eine Teilmenge von Spuren in den Datenträgern aufweisen, wobei bei anderen Spuren möglicherweise kein Datenverlust aufgetreten ist.
  • Der Host-Failover-Manager 116 kann anschließend mit dem primären und dem sekundären Failover-Manager 116a und 116b zusammenwirken, um (im Block 408) einen Failover von den primären Datenträgern 106a in dem primären Speichersystem 102a auszulösen, um E/A-Anforderungen an die entsprechenden sekundären Datenträger 106b in dem sekundären Speichersystem 102b umzuleiten. Als Teil des Failover kann der Host-Replikationsmanager 144 Kopie-Beziehungen 200a aufheben, die Daten von den primären Datenträgern 106a zu den sekundären Datenträgern 106 synchronisieren. Der Host-Failover-Manager 116 kann des Weiteren (im Block 410) einen Zustand Soft-Fence für die primären Datenträger 106 einrichten. Der Zustand Soft-Fence verhindert E/A-Operationen an einem oder mehreren primären Datenträgern 106a, die zu den sekundären Datenträgern 106b umgelenkt wurden, um einen unbeabsichtigten Zugriff auf diese Datenträger 106a nach dem Failover zu verhindern.
  • Der Host-Replikationsmanager 114 oder der Failover-Manager 116 kann daraufhin eine Schleife von Operationen in den Blöcken 412 bis 422 für jeden primären Datenträger i in dem primären Speichersystem 102a ausführen. Für den primären Datenträger i kann der Host-Replikationsmanager 114 oder der Failover-Manager 116 (im Block 414) eine Operation PiT-Kopie für den Datenträger i auslösen, wobei der Parameter 306 Soft-Fence-Überschreiben so eingestellt ist, dass er angibt, dass die Operation PiT-Kopie fortgesetzt werden sollte, auch wenn ein Zustand Soft-Fence für den Datenträger i aktiv ist. Der Host-Replikationsmanager 114 oder der Failover-Manager 116 ermittelt (im Block 416), ob der Datenträger i funktionsfähig ist. Bei einer Ausführungsform erfolgt dieses Ermitteln durch Auslösen eines Befehls 300 Point-in-Time-Kopie, bei dem der Parameter 306 Soft-Fence-Überschreiben so eingerichtet ist, dass er festlegt, dass ein Ablaufen des Befehls 300 Point-in-Time zugelassen wird, wenn der Datenträger i dem Zustand Soft-Fence unterworfen ist, was als Ergebnis der Operation im Block 406 der Fall wäre. Wenn die Operation Point-in-Time-Kopie in Bezug auf den Datenträger i erfolgreich ist, wird festgestellt, dass der Datenträger funktionsfähig ist, wenn dagegen die Operation Point-in-Time-Kopie fehlschlägt, wird festgestellt, dass der Datenträger i nicht funktionsfähig ist. Durch das Erhalten von Point-in-Time-Kopien von funktionsfähigen primären Datenträgern 106a werden die Daten für diese primären Datenträger 106a für den Point-in-Time des Failover-Ereignisses aufbewahrt. Diese Point-in-Time-Kopien können zur Daten-Wiederherstellung verwendet werden, wenn andere Wiederherstellungsoptionen fehlschlagen. Andere Techniken können als Teil der Operation im Block 414 verwendet werden, um zu ermitteln, ob die primären Datenträger 106 funktionsfähig sind.
  • Wenn der primäre Datenträger i (im Block 416) funktionsfähig ist, erzeugt der Host-Replikationsmanager 114 (oder der Failover-Manager 116) (im Block 418) eine Kopie-Beziehung 200i zum Auslösen von Neusynchronisierungsoperationen von dem sekundären Datenträger i in dem sekundären Speichersystem 102b, der dem primären Datenträger entspricht, um Updates an dem sekundären Datenträger i zu dem primären Datenträger i in einer Betriebsart Asynchrone Kopie für Updates zu übertragen, die in der Änderungen aufzeichnenden Bitzuordnung angegeben sind. Wenn ein Update an dem sekundären Datenträger 106b empfangen wird, wird das entsprechende Bit in der Änderungen aufzeichnenden Bitzuordnung 208 für den sekundären Datenträger i gesetzt. Der sekundäre Replikationsmanager 114b tastet die Änderungen aufzeichnende Bitzuordnungen 208 nach Updates an den sekundären Datenträgern 106b ab zum Neusynchronisieren oder Kopieren zu den entsprechenden primären Datenträgern 106a, die während des Failover funktionsfähig bleiben. Bei einer Betriebsart Asynchrone Kopie wird das Kopieren ausgeführt, ohne dass von dem primären Datenträger i eine Bestätigung empfangen werden muss, dass die Daten empfangen wurden. Bei einer Ausführungsform kann die asynchrone Betriebsart eine Betriebsart Nichtkonsistenzgruppe (CGM) aufweisen, so dass bei den Daten nicht sichergestellt ist, dass sie zwischen dem sekundären und dem primären Datenträger 106b, 106a konsistent sind. Indem der sekundäre Replikationsmanager 114 Updates an den sekundären Datenträgern 106b zu diesen funktionsfähigen primären Datenträgern 106a als Teil des Neusynchronisierens während des Failover zu dem sekundären Speichersystem 102b automatisch asynchron kopiert, werden die Daten in den primären Datenträgern 106a möglichst auf einem aktuellen Zustand gehalten, so dass das Neusynchronisieren des primären Speichersystems 102a schneller ausgeführt werden kann, sobald das primäre Speichersystem 102a repariert wurde und voll funktionsfähig ist. Bei den beschriebenen Ausführungsformen wird das Neusynchronisieren wieder auf die funktionsfähigen Datenträger durch den Failover-Prozess automatisch ausgelöst, der durch den Failover-Manager 116 oder 116b gesteuert wird.
  • Des Weiteren werden beim Neusynchronisieren durch asynchrones Kopieren die Beeinträchtigungen der Leistungsfähigkeit bei Host-Anwendungen, bei denen auf die sekundären Datenträger zugegriffen wird, im Vergleich zum Ausführen eines synchronen Kopierens erheblich verringert. Des Weiteren kann das asynchrone Kopieren unmittelbar nach dem Failover ausgelöst werden, bevor (bei Bedarf) Ausfallanalysen und Reparaturen an der Ausrüstung ausgeführt werden.
  • Wenn (im Block 416) der Datenträger i nicht funktionsfähig ist, erzeugt der Host Replikations- oder Failover-Manager 114, 116 (im Block 420) eine ausgesetzte Kopie-Beziehung 200i zum Neusynchronisieren von dem sekundären Datenträger i zu dem primären Datenträger i und aktualisiert die Änderungen aufzeichnende Bitzuordnung 208 für den Datenträger i, damit alle Spuren, bei denen ein Datenverlust berichtet wurde, als aktualisiert angegeben werden. Das Angeben der Spuren im Datenträger i, bei denen ein Datenverlust aufgetreten ist, in der Änderungen aufzeichnenden Bitzuordnung 208 als aktualisiert bewirkt, dass der sekundäre Replikations-Manager 114b die Daten für die Spuren, bei denen Datenverlust aufgetreten ist, unabhängig davon, ob sie während des Failover aktualisiert wurden, während eines nachfolgenden Neusynchronisierens umkopiert, nachdem der Datenträger i repariert wurde und funktionsfähig ist.
  • Das Ergebnis der Operationen von 4 besteht darin, dass nach dem Failover das sekundäre Speichersystem 102b unverzüglich damit beginnt, Updates an den sekundären Datenträgern 106b für die primären Datenträger 106a, die funktionsfähig bleiben, neu zu synchronisieren. Für primäre Datenträger 106a, die nicht funktionsfähig sind, wird die Änderungen aufzeichnende Bitzuordnung 208 für den entsprechenden sekundären Datenträger 106b so gesetzt, dass sie die Spuren, bei denen ein Datenverlust aufgetreten ist, als aktualisiert angibt, und das Neusynchronisieren wird ausgesetzt, bis bei den nichtfunktionsfähigen primären Datenträgern festgestellt wird, dass sie funktionsfähig sind. Durch Neusynchronisieren dieser primären Datenträger, die während des Failover funktionsfähig sind, ist das primäre Speichersystem schneller für ein Failover bereit, nachdem das primäre Speichersystem 102a voll funktionsfähig wird, da möglicherweise ein beträchtlicher Umfang der Updates bei dem sekundären Speichersystem 102b während des Failover bei dem sekundären Speichersystem 102b bereits auf die primären Datenträger 106a neu synchronisiert wurde.
  • Bei den Operationen von 4 wird die Funktionsfähigkeit in Bezug auf Datenträger eines Speichersystems ermittelt. Bei alternativen Ausführungsformen können das Spiegeln und die Funktionsfähigkeit in Bezug auf andere Speichereinheiten als Datenträger ermittelt werden wie beispielsweise Speichereinheiten, logische Partitionen, physische Partitionen, logische Laufwerke usw.
  • 5 veranschaulicht eine Ausführungsform von Operationen, die durch den Host-Replikationsmanager 114 und den Failover-Manager 116 zum Wiederherstellen des primären Speichersystems 102a nach einem Ausfallereignis ausgeführt werden. Der Host-Failover-Manager 114 gibt (im Block 500) eine Abfrage auf Funktionsfähigkeit nach einer im Voraus festgelegten Verzögerung nach dem Failover an das primäre Speichersystem 102a aus, um zu ermitteln, ob das primäre Speichersystem 102a funktionsfähig ist. Bei vielen Ausfalltypen kann das primäre Speichersystem 102a, nachdem eine bestimmte Zeit verstrichen ist, durch interne Wiederherstellungs-Operationen und Prozeduren wiederhergestellt worden sein. Wenn beim Empfangen (im Block 502) der Antwort auf die Abfrage auf Funktionsfähigkeit von dem primären Speichersystem 102a die Antwort (im Block 504) lautet, dass das primäre Speichersystem 102a voll funktionsfähig ist, kann der Host Replikationsmanager 114 (im Block 506) eine Operation Point-in-Time-Kopie von allen sekundären Datenträgern 106b ausführen, die einem zuvor nichtfunktionsfähigen primären Datenträger 106a entsprechen, um eine konsistente Kopie bereitzustellen, die bei Bedarf zum Wiederherstellen verwendet werden kann. Der Host-Replikationsmanager 114 löst (im Block 508) ein Neusynchronisieren auf synchron kopierte Daten aus, die in der Änderungen aufzeichnenden Bitzuordnung 208 für jeden sekundären Datenträger 106b als aktualisiert angegeben sind, der einem primären Datenträger 106a entspricht, der zuvor als nichtfunktionsfähig angegeben wurde. Das Neusynchronisieren kann ausgelöst werden, indem das Aussetzen der Kopie-Beziehung 200b aufgehoben wird, um den sekundären Datenträger auf den zuvor nichtfunktionsfähigen primären Datenträger 106a neu zu synchronisieren. Die Änderungen aufzeichnende Bitzuordnung 208 für das Neusynchronisieren auf den zuvor nichtfunktionsfähigen primären Datenträger 106a gibt Spuren in dem entsprechenden sekundären Datenträger 106b, die aktualisiert wurden, und Spuren in dem nichtfunktionsfähigen primären Datenträger, von denen berichtet wurde, dass bei ihnen Datenverlust auftritt, als aktualisierte Spuren an. Auf diese Weise wird beim Neusynchronisieren für die wiederhergestellten nichtfunktionsfähigen primären Datenträger 106a lediglich aktualisierte Daten und Daten für Spuren, bei denen Datenverlust auftritt, kopiert und nicht der gesamte wiederhergestellte nichtfunktionsfähige Datenträger umkopiert. Das beschleunigt ein Neusynchronisieren durch Vermeiden des Kopierens von Spuren in dem sekundären Datenträger, die Spuren in dem wiederhergestellten primären Datenträger 106a entsprechen, die während des Failover nicht aktualisiert wurden und bei denen kein Datenverlust aufgetreten ist.
  • Der sekundäre Replikationsmanager 114b setzt des Weiteren (im Block 514) das Neusynchronisieren von Updates für die funktionsfähigen Datenträger, die seit dem Beginn des Failover asynchron kopiert wurden, während E/A-Anforderungen zu dem sekundären Speichersystem 102b umgeleitet werden, in eine Betriebsart synchrone Kopie um, so dass die restlichen Daten, die neu zu synchronisieren sind, nachdem das primäre Speichersystem 102a wiederhergestellt wurde, synchron kopiert werden.
  • Wenn (im Block 504) die Antwort auf die Abfrage auf Funktionsfähigkeit lautet, dass das primäre Speichersystem 102a nicht voll funktionsfähig ist, erfasst der Host-Failover-Manager 114 (im Block 510) Diagnoseinformationen für Reparaturen an dem primären Speichersystem 102a zum Berichten an einen Administrator. Der Administrator kann dann zum Reparieren des fehlerhaften primären Speichersystems 102a auf der Grundlage der erfassten Diagnoseinformationen übergehen, beispielsweise durch Ersetzen und/oder Reparieren von Einheiten, Komponenten und Speichereinheiten in dem primären Speichersystem 102a. Nach dem Ausführen von Reparaturen kann der Administrator einen Befehl Neusynchronisieren auslösen, um ein Neusynchronisieren auszuführen. Im Block 512 kann der Host-Replikationsmanager 114 oder der sekundäre Replikationsmanager 114b den Befehl manuelles Neusynchronisieren vom Administrator empfangen und dann zum Block 506 gehen, um ein Neusynchronisieren für die Datenträger auszulösen, die zuvor als nichtfunktionsfähig bezeichnet wurden.
  • Bei den beschriebenen Ausführungsformen müssen nach Reparatur und Wiederherstellung lediglich Spuren in dem wiederhergestellten nichtfunktionsfähigen primären Datenträger 106a synchronisiert werden, die während des Failover aktualisiert wurden oder bei denen Datenverlust aufgetreten ist, die in der Änderungen aufzeichnenden Bitzuordnung für die Kopie-Beziehung 200 angegeben sind, die für den fehlerhaften Datenträger 106a aufgestellt wurde. Des Weiteren wird nach Wiederherstellen des primären Speichersystems 102a durch Beginnen des Neusynchronisierens während des Failover für primäre Datenträger 106a, die funktionsfähig sind, das Synchronisieren viel schneller ausgeführt, da ein Großteil der Daten möglicherweise bereits neu synchronisiert wurde.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder Medien) mit darin befindlichen computerlesbaren Programmbefehlen enthalten, um zu bewirken, dass ein Prozessor Aspekte der vorliegenden Erfindung ausführt.
  • Bei dem computerlesbaren Speichermedium kann es sich um eine materielle Einheit handeln, die Befehle zum Verwenden durch eine Befehlsausführungseinheit halten und speichern kann. Bei dem computerlesbaren Speichermedium kann es sich beispielsweise um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination der Vorhergehenden handeln, ist jedoch nicht auf diese beschränkt. Eine nichterschöpfende Liste von spezielleren Beispielen des computerlesbaren Speichermediums enthält Folgendes: eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren programmierbaren Festwertspeicher (EPROM oder Flash-Speicher), einen statischen Direktzugriffsspeicher (SRAM), einen tragbaren Compactdisk-Festwertspeicher (CD-ROM), eine digitale Versatile-Disk (DVD), einen Speicherstick, eine Diskette (Floppy Disk), eine mechanisch codierte Einheit wie beispielsweise Lochkarten oder erhabene Strukturen in einer Nut, in denen Befehle aufgezeichnet sind, oder jede geeignete Kombination des Vorhergehenden. Ein hier verwendetes computerlesbares Speichermedium sollte nicht so ausgelegt werden, dass es sich dabei per se um vergängliche Signale handelt wie beispielsweise Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z. B. Lichtimpulse, die ein Lichtwellenleiterkabel durchlaufen) oder elektrische Signale, die durch eine Leitung übertragen werden.
  • Computerlesbare Programmbefehle, die hier beschrieben werden, können von einem computerlesbaren Speichermedium zu betreffenden Datenverarbeitungs/Verarbeitungs-Einheiten oder über ein Netzwerk, z. B. das Internet, ein Lokalbereichsnetz, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk zu einem externen Computer oder einer externen Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupfer-Übertragungskabel, Lichtwellenleiter, drahtlose Übertragungen, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerk-Adapterkarte oder eine Netzwerk-Schnittstelle in jeder Datenverarbeitungs/Verarbeitungs-Einheit empfängt computerlesbare Programmbefehle von dem Netzwerk und leitet die computerlesbaren Programmbefehle zum Speichern in einem computerlesbaren Speichermedium in der betreffenden Datenverarbeitungs/Verarbeitungs-Einheit weiter.
  • Bei computerlesbaren Programmbefehlen zum Ausführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Befehle, Befehle mit Befehlssatz-Architektur (ISA), Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, Zustandseinstellungsdaten oder Quellencode bzw. Objektcode handeln, die in jeder Kombination aus einer oder mehreren Programmiersprachen geschrieben sind, darunter eine objektorientierte Programmiersprache wie Smalltalk, C++ oder dergleichen und herkömmliche prozedurale Programmiersprachen wie etwa die Programmiersprache ”C” oder ähnliche Programmiersprachen. Die computerlesbaren Programmbefehle können nur auf dem Computer eines Benutzers, teilweise auf dem Computer eines Benutzers, als ein eigenständiges Software-Paket, teilweise auf dem Computer eines Benutzers und teilweise auf einem fernen Computer oder nur auf dem fernen Computer oder Server ausgeführt werden. In dem zuletzt genannten Szenario kann der ferne Computer mit dem Computer des Benutzers durch jeden Netzwerktyp verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer (z. B. über das Internet unter Verwendung eines Internet-Dienstanbieters) hergestellt werden. Bei einigen Ausführungsformen können elektronische Schaltungsanordnungen, darunter beispielsweise eine programmierbare logische Schaltungsanordnung, vor Ort programmierbare Gate-Arrays (FPGA) oder programmierbare Logik-Arrays (PLA) die computerlesbaren Programmbefehle ausführen, indem Zustandsinformationen der computerlesbaren Programmbefehle genutzt werden, um die elektronische Schaltungsanordnung zu personalisieren, um Aspekte der vorliegenden Erfindung auszuführen.
  • Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Ablaufplan-Darstellungen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es ist klar, dass jeder Block der Ablaufplan-Darstellungen und/oder Blockschaltbilder und Kombinationen von Blöcken in den Ablaufplan-Darstellungen und/oder Blockschaltbildern durch computerlesbare Programmbefehle umgesetzt werden können.
  • Diese computerlesbaren Programmbefehle können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu bilden, so dass Befehle, die über den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Umsetzen der Funktionen/Wirkungen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds spezifiziert sind, erzeugen. Diese computerlesbaren Programmbefehle können außerdem in einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten anweisen kann, in einer bestimmten Weise zu funktionieren, so dass das computerlesbare Speichermedium mit darin gespeicherten Befehlen einen Herstellungsgegenstand aufweist, der Befehle enthält, die Aspekte der Funktion/Wirkung umsetzen, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds spezifiziert sind.
  • Die computerlesbaren Programmbefehle können außerdem in einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um eine Reihe von Operationsschritten zu bewirken, die auf dem Computer, der anderen programmierbaren Datenverarbeitungsvorrichtung oder der anderen Einheit ausgeführt werden sollen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, so dass die Befehle, die auf dem Computer, der anderen programmierbaren Vorrichtung oder der anderen Einheit ausgeführt werden, die Funktionen/Wirkungen, die in dem Block oder Blöcken des Ablaufplans und/oder Blockschaltbilds spezifiziert sind, umsetzen.
  • Der Ablaufplan und die Blockdarstellungen in den Figuren veranschaulichen die Architektur, Funktionalität und Operation von möglichen Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedener Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in dem Ablaufplan oder in Blockdarstellungen ein Modul, Segment oder Abschnitt von Befehlen repräsentieren, der einen oder mehrere ausführbare Befehle zum Umsetzen der spezifizierten logischen Funktion(en) aufweist. Bei einigen alternativen Umsetzungen können die in dem Block angegebenen Funktionen möglicherweise nicht in der in den Figuren angegebenen Reihenfolge auftreten. Zum Beispiel können zwei Blöcke, die nacheinander gezeigt sind, tatsächlich im Wesentlichen gleichzeitig ausgeführt werden oder die Blöcke können gelegentlich in Abhängigkeit von der beteiligten Funktionalität in der umgekehrten Reihenfolge ausgeführt werden. Es wird außerdem angemerkt, dass jeder Block in den Blockdarstellungen und/oder Ablaufplan-Darstellungen und Kombinationen von Blöcken in den Blockdarstellungen und/oder der Ablaufplan-Darstellung durch Systeme, die auf spezieller Hardware beruhen, die die spezifizierten Funktionen oder Wirkungen ausführen, oder Kombinationen aus spezieller Hardware und Computerbefehlen umgesetzt werden können.
  • Die Datenverarbeitungskomponenten von 1, darunter die Hosts 100 und Speichersysteme 102a, 102b, können in einem oder mehreren Computersystemen umgesetzt werden wie beispielsweise das in 6 gezeigte Computersystem 602. Das Computersystem/der Server 602 kann im allgemeinen Kontext als durch ein Computersystem ausführbare Befehle wie beispielsweise Programmmodule beschrieben werden, die durch ein Computersystem ausgeführt werden. Programmmodule können im Allgemeinen Routinen, Programme, Objekte, Komponenten, Logikschaltungen, Datenstrukturen, usw. enthalten, die bestimmte Tasks ausführen oder bestimmte abstrakte Datentypen umsetzen. Das Computersystem/der Server 602 kann in verteilten Cloud-Datenverarbeitungsumgebungen realisiert werden, bei denen Tasks durch ferne Verarbeitungseinheiten ausgeführt werden, die über ein Datenverarbeitungsnetzwerk verknüpft sind. Bei einer verteilten Cloud-Datenverarbeitungsumgebung können sich Programmmodule sowohl in lokalen als auch fernen Computersystem-Speichermedien befinden, darunter Speichereinheiten des Arbeitsspeichers. Bei einer Cloud-Datenverarbeitungsumgebung können die Speichersysteme 102a, 102b beispielsweise Cloud-Datenverarbeitungsknoten aufweisen, die Speicherdienste als cloudgestützte Dienste bereitstellen.
  • Wie in 6 gezeigt ist das Computersystem/der Server 602 in Form einer Universal-Datenverarbeitungseinheit gezeigt. Die Komponenten des Computersystems/des Servers 602 können einen oder mehrere Prozessoren oder Verarbeitungseinheiten 604, einen Systemspeicher 606 und einen Bus 608 enthalten, der zahlreiche Systemkomponenten, darunter der Systemspeicher 606, mit dem Prozessor 604 verbindet, ohne jedoch auf diese beschränkt zu sein. Der Bus 608 repräsentiert einen oder mehrere von verschiedenen Typen von Busstrukturen, darunter einen Speicherbus oder eine Speichersteuereinheit, einen peripheren Bus, einen beschleunigten Grafikanschluss und einen Prozessor- oder lokalen Bus unter Verwendung einer aus einer Vielfalt von Busarchitekturen. Lediglich beispielhaft und nicht einschränkend gehören zu derartigen Architekturen Industry-Standard-Architecture-(ISA-)Bus, Micro-Channel-Architecture-(MCA-)Bus, Enhanced-ISA-(EISA-)Bus, Video-Electronics-Standards-Association-(VESA-)Lokalbus und Peripheral-Component-Interconnects-(PCI-)Bus.
  • Das Computersystem/der Server 602 enthält üblicherweise eine Vielfalt von durch das Computersystem lesbaren Medien. Bei derartigen Medien kann es sich jedes verfügbare Medium handeln, auf das durch das Computersystem/den Server 602 gegriffen werden kann, und es enthält sowohl flüchtige und nichtflüchtige Medien als auch Wechsel- und Nichtwechsel-Medien.
  • Der Systemspeicher 606 kann durch ein Computersystem lesbare Medien in der Form eines flüchtigen Speichers wie z. B. ein Direktzugriffsspeicher (RAM) 610 und/oder einen Cache-Speicher 612 enthalten. Das Computersystem/der Server 602 kann ferner andere flüchtige/nichtflüchtige Wechsel/Nichtwechsel-Speichermedien des Computersystems enthalten. Lediglich beispielhaft kann das Speichersystem 613 zum Lesen von und zum Schreiben auf Nichtwechsel-, nichtflüchtige magnetische Medien bereitgestellt werden (die nicht gezeigt sind und üblicherweise als „Festplattenlaufwerk” bezeichnet werden). Obwohl nicht gezeigt können ein magnetisches Plattenlaufwerk zum Lesen von und zum Schreiben auf eine nichtflüchtige magnetische Wechselplatte (z. B. eine „Diskette”) und ein optisches Plattenlaufwerk zum Lesen von und zum Schreiben auf eine nichtflüchtige optische Wechselplatte wie z. B. ein CD-ROM, DVD-ROM oder ein anderes optisches Medium bereitgestellt werden. Bei derartigen Fällen kann jedes Medium mit dem Bus 608 durch eine oder mehrere Datenmedien-Schnittstellen verbunden sein. Wie weiter im Folgenden dargestellt und beschrieben wird, kann der Speicher 606 wenigstens ein Programmprodukt mit einer Gruppe von Programmmodulen (z. B. wenigstens einem Programmmodul) enthalten, die so eingerichtet sind, dass sie die Funktionen von Ausführungsformen der Erfindung ausführen.
  • Nicht nur das Programm/Dienstprogramm 614, das eine Gruppe von Programmmodulen 616 (wenigstens ein Programmmodul) aufweist, sondern beispielhaft und nicht als Einschränkung können auch ein Betriebssystem, ein oder mehrere Anwendungsprogramme und Programmdaten in einem Speicher 606 gespeichert sein. In jedem Betriebssystem, einem oder mehreren Anwendungsprogrammen, anderen Programmmodulen und Programmdaten oder bestimmten Kombinationen hiervon kann eine Vernetzungsumgebung realisiert werden. Die Komponenten des Computers 602 können als Programmmodule 616 umgesetzt sein, die im Allgemeinen die Funktionen und/oder Verfahrensweisen von hier beschriebenen Ausführungsformen der Erfindung ausführen. Die Systeme von 1 können in einem oder mehreren Computersystemen 602 umgesetzt sein, wobei die Computersysteme über ein Netzwerk Daten austauschen können, wenn sie in mehreren Computersystemen 602 umgesetzt sind.
  • Das Computersystem/der Server 602 kann außerdem mit einer oder mehreren externen Einheiten 618 wie z. B. eine Tastatur, eine Zeigeeinheit, eine Anzeige 620 usw.; mit einer oder mehreren Einheiten, die ein Zusammenwirken eines Benutzers mit dem Computersystem/Server 602 ermöglichen; und/oder mit allen Einheiten (z. B. Netzwerkkarte, Modem usw.) Daten austauschen, die dem Computersystem/Server 602 einen Datenaustausch mit einer oder mehreren anderen Datenverarbeitungseinheiten ermöglichen. Ein derartiger Datenaustausch kann über Eingabe/Ausgabe-(E/A-)Schnittstellen 622 erfolgen. Des Weiteren kann das Computersystem/der Server 602 mit einem oder mehreren Netzwerken wie z. B. einem lokalen Netz (LAN), einem allgemeinen Weitverkehrsnetz (WAN) und/oder einem öffentlichen Netzwerk (z. B. das Internet) über einen Netzwerkadapter 624 Daten austauschen. Wie dargestellt tauscht der Netzwerkadapter 624 Daten mit den anderen Komponenten von Computersystem/Server 602 über einen Bus 608 aus. Obwohl nicht gezeigt sollte klar sein, dass in Verbindung mit dem Computersystem/Server 602 weitere Hardware- und/oder Software-Komponenten verwendet werden könnten. Zu Beispielen gehören, sind jedoch nicht beschränkt auf: Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerk-Arrays, RAID-Systeme, Bandlaufwerke und Datenarchiv-Speichersysteme usw.
  • Die hier verwendeten Bezugszeichen wie beispielsweise i werden zum Bezeichnen einer veränderlichen Anzahl von Instanzen eines Elements verwendet, die die gleichen oder unterschiedliche Werte darstellen kann oder bei Verwendung bei unterschiedlichen oder gleichen Elementen in verschiedenen beschriebenen Instanzen den gleichen oder einen anderen Wert darstellen kann.
  • Die Formulierungen „eine Ausführungsform”, „Ausführungsform”, „Ausführungsformen”, „die Ausführungsform”, „die Ausführungsformen”, „eine oder mehrere Ausführungsformen”, „einige Ausführungsformen” und „eine Ausführungsform” bedeuten „eine oder mehrere (jedoch nicht alle) Ausführungsformen der vorliegenden Erfindung(en)”, sofern nicht ausdrücklich anders festgelegt.
  • Die Formulierungen „enthaltend”, „aufweisend”, „mit” und deren Variationen bedeuten „darunter, jedoch nicht darauf beschränkt”, sofern nicht ausdrücklich anders festgelegt.
  • Die nummerierte Auflistung von Elementen bedeutet nicht, dass einige oder alle Elemente sich gegenseitig ausschließen, sofern nicht ausdrücklich anders festgelegt.
  • Die Formulierungen „ein” und „der, die, das” bedeuten „ein oder mehrere”, sofern nicht ausdrücklich anders festgelegt.
  • Einheiten, die untereinander Daten austauschen, müssen nicht ständig miteinander verbunden sein, sofern nicht ausdrücklich anders festgelegt. Außerdem können Einheiten, die untereinander Daten austauschen, Daten direkt oder indirekt über eine oder mehrere Zwischenstellen austauschen.
  • Eine Beschreibung einer Ausführungsform mit mehreren Komponenten, die untereinander Daten austauschen, bedeutet nicht, dass alle derartigen Komponenten erforderlich sind. Im Gegenteil können eine Vielzahl von optionalen Komponenten beschrieben werden, um die große Vielfalt von möglichen Ausführungsformen der vorliegenden Erfindung zu veranschaulichen.
  • Wenn hier eine einzelne Einheit oder ein einzelner Gegenstand beschrieben wird, ist offensichtlich, dass mehr als eine Einheit/ein Gegenstand (die möglicherweise zusammenwirken) anstelle einer einzelnen Einheit/eines einzelnen Gegenstands verwendet werden können. Wenn hier in ähnlicher Weise mehr als eine Einheit oder ein Gegenstand beschrieben wird (die möglicherweise zusammenwirken), ist offensichtlich, dass eine einzelne Einheit/ein einzelner Gegenstand anstelle von mehr als einer Einheit oder mehr als einem Gegenstand oder eine andere Anzahl von Einheiten/Gegenständen anstelle der gezeigten Anzahl von Einheiten oder Programmen verwendet werden kann. Die Funktionalität und/oder die Merkmale einer Einheit können alternativ durch eine oder mehrere andere Einheiten verkörpert werden, die nicht explizit so beschrieben werden, dass sie diese Funktionalität/Merkmale enthalten. Daher müssen andere Ausführungsformen der vorliegenden Erfindung die eigentliche Einheit nicht beinhalten.
  • Die vorhergehende Beschreibung verschiedener Ausführungsformen der Erfindung wurde für Zwecke der Erläuterung und Beschreibung präsentiert. Sie soll nicht erschöpfend sein oder die Erfindung auf die präzise Form beschränken, die offenbart wurde. Viele Modifikationen und Variationen sind unter Berücksichtigung der oben genannten Lehren möglich. Es ist beabsichtigt, dass der Umfang der Erfindung nicht durch diese genaue Beschreibung, sondern durch die hier angefügten Ansprüche beschränkt ist. Die oben genannte Spezifikation, die Beispiele und Angaben stellen eine vollständige Beschreibung der Herstellung und Verwendung der Struktur der Erfindung bereit. Da viele Ausführungsformen der Erfindung erfolgen können, ohne vom Erfindungsgeist und Umfang der Erfindung abzuweichen, liegt die Erfindung in den nachfolgend angefügten Ansprüchen.

Claims (26)

  1. Computerprogrammprodukt zum Ausführen eines Failover zwischen einem ersten Speichersystem und einem zweiten Speichersystem, wobei das Computerprogrammprodukt ein computerlesbares Speichermedium mit Programmbefehlen aufweist, die darin verkörpert sind, wobei die Programmbefehle durch einen Prozessor ausführbar sind, um Operationen zu bewirken, wobei die Operationen aufweisen: Synchronisieren von Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem; Ausführen eines Failover von dem ersten Speichersystem zu dem zweiten Speichersystem als Reaktion auf ein Failover-Ereignis in dem ersten Speichersystem, während die Daten synchronisiert werden, wobei Eingabe/Ausgabe-(E/A-)Anforderungen an das erste Speichersystem als Teil des Failover zu dem zweiten Speichersystem umgeleitet werden; Feststellen, dass eine erste Speichereinheit des ersten Speichersystems nicht funktionsfähig ist, als Reaktion auf das Failover-Ereignis; Feststellen, dass eine zweite Speichereinheit des ersten Speichersystems funktionsfähig ist, als Reaktion auf das Failover-Ereignis; und als Reaktion auf das Feststellen, dass die zweite Speichereinheit funktionsfähig ist, Auslösen eines Neusynchronisierens zum Kopieren von Updates zu einer zweiten Speichereinheit des ersten Speichersystems durch Spiegeln der zweiten Speichereinheit des zweiten Speichersystems zu der zweiten Speichereinheit des ersten Speichersystems, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  2. Computerprogrammprodukt nach Anspruch 1, wobei das Synchronisieren der Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem in einer Betriebsart Synchrone Kopie ausgeführt wird und wobei das Kopieren der Updates während des Neusynchronisierens in einer Betriebsart Asynchrone Kopie ausgeführt wird, während Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  3. Computerprogrammprodukt nach Anspruch 1, wobei das Feststellen, dass die erste Speichereinheit nicht funktionsfähig ist, aufweist: Auslösen einer Point-in-Time-Kopie der ersten Speichereinheit des ersten Speichersystems; und Feststellen, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist, wobei die Feststellung, dass die erste Speichereinheit nicht funktionsfähig ist, als Reaktion auf das Feststellen erfolgt, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist; wobei das Feststellen, dass die zweite Speichereinheit funktionsfähig ist, aufweist: Auslösen einer Point-in-Time-Kopie der zweiten Speichereinheit des ersten Speichersystems; und Feststellen, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich war, wobei die Feststellung, dass die zweite Speichereinheit funktionsfähig ist, als Reaktion auf das Feststellen erfolgt, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich war.
  4. Computerprogrammprodukt nach Anspruch 3, wobei die Operationen ferner aufweisen: Auslösen eines Zustands Soft-Fence für das erste Speichersystem, um einen E/A-Zugriff auf die Speichereinheiten in dem ersten Speichersystem als Reaktion auf das Failover-Ereignis zu verhindern, wobei die Point-in-Time-Kopien mit einem Befehl ausgelöst werden, der einen Parameter enthält, um zuzulassen, dass die Operationen Point-in-Time-Kopie während des Zustands Soft-Fence des ersten Speichersystems ablaufen.
  5. Computerprogrammprodukt nach Anspruch 3, wobei die ersten Speichereinheiten erste Datenträger des ersten und des zweiten Speichersystems aufweisen und wobei die zweiten Speichereinheiten zweite Datenträger des ersten und des zweiten Speichersystems aufweisen.
  6. Computerprogrammprodukt nach Anspruch 1, wobei das Neusynchronisieren ein erstes Neusynchronisieren aufweist, wobei die Operationen des Weiteren aufweisen: Ausgeben einer Abfrage auf Funktionsfähigkeit an das erste Speichersystem zum Ermitteln, ob das erste Speichersystem voll funktionsfähig ist, wobei sowohl die erste als auch die zweite Speichereinheit des ersten Speichersystems funktionsfähig sind, wenn das erste Speichersystem voll funktionsfähig ist; und Neusynchronisieren von Updates an die erste Speichereinheit des zweiten Speichersystems auf die erste Speichereinheit des ersten Speichersystems als Reaktion auf ein Feststellen, dass die Antwort auf die Abfrage Funktionsfähigkeit lautet, dass das erste Speichersystem voll funktionsfähig ist.
  7. Computerprogrammprodukt nach Anspruch 6, wobei die Abfrage auf Funktionsfähigkeit nach einer vorgegebenen Zeitperiode nach Ausführen des Failover ausgegeben wird.
  8. Computerprogrammprodukt nach Anspruch 6, wobei die ersten Speichereinheiten erste Datenträger des ersten und des zweiten Speichersystems aufweisen und wobei die zweiten Speichereinheiten zweite Datenträger des ersten und des zweiten Speichersystems aufweisen, wobei der erste Datenträger, bei dem festgestellt wird, dass er nicht funktionsfähig ist, eine Teilmenge von Spuren enthält, bei denen Datenverlust auftritt, wobei das Neusynchronisieren ferner als Reaktion auf die Abfrage auf Funktionsfähigkeit ausgeführt wird, die angibt, dass das erste Speichersystem voll funktionsfähig ist: Kopieren einer Teilmenge von Spuren in dem ersten Datenträger des zweiten Speichersystems zu der entsprechenden Teilmenge von Spuren in dem ersten Datenträger in dem ersten Speichersystem, wobei Spuren in dem ersten Datenträger in dem ersten Speichersystem, bei denen kein Datenverlust auftritt und die nicht Spuren in dem ersten Datenträger in dem zweiten Speichersystem entsprechen, die aktualisiert werden, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden, nicht Gegenstand des Neusynchronisierens sind.
  9. Computerprogrammprodukt nach Anspruch 6, wobei das Neusynchronisieren der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem vor der Antwort auf die Abfrage auf Funktionsfähigkeit, die lautet, dass das erste Speichersystem voll funktionsfähig ist, in einer Betriebsart Asynchrone Kopie ausgeführt wird, wobei die Operationen ferner aufweisen: Umstellen des Neusynchronisierens der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem auf die Betriebsart synchrone Kopie als Reaktion auf die Abfrage, die angibt, dass das erste Speichersystem voll funktionsfähig ist.
  10. Computerprogrammprodukt nach Anspruch 9, wobei die Operationen ferner aufweisen: Auslösen einer Point-in-Time-Kopie der ersten Speichereinheit des ersten Speichersystems als Reaktion auf die Abfrage auf Funktionsfähigkeit, die angibt, dass die erste Speichereinrichtung funktionsfähig ist, wobei die Operationen des synchronen Neusynchronisierens als Reaktion auf das Feststellen ausgeführt werden, dass die Point-in-Time-Kopie erfolgreich ist.
  11. Computerprogrammprodukt nach Anspruch 6, wobei die Operationen ferner aufweisen: Erfassen von Diagnoseinformationen für Reparaturen an dem ersten Speichersystem als Reaktion auf die Abfrage auf Funktionsfähigkeit, die angibt, dass das erste Speichersystem nicht voll funktionsfähig ist; und Empfangen eines Befehls Neusynchronisieren, der von einem Administrator des ersten Speichersystems als Reaktion auf Reparaturen ausgegeben wird, die an dem ersten Speichersystem auf der Grundlage der erfassten Diagnoseinformationen ausgeführt werden, wobei der empfangene Befehl Neusynchronisieren das Kopieren von Updates an der ersten Speichereinheit des zweiten Speichersystems zu der ersten Speichereinheit des ersten Speichersystems auslöst.
  12. Computerprogrammprodukt nach Anspruch 1, wobei Updates an einer ersten Speichereinheit des zweiten Speichersystems, bei denen die erste Speichereinheit des ersten Speichersystems gespiegelt werden, nicht zu der ersten Speichereinheit des ersten Speichersystems gespiegelt werden, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  13. System zum Ausführen eines Failover zwischen einem ersten Speichersystem und einem zweiten Speichersystem, das aufweist: wenigstens einen Prozessor; und ein computerlesbares Speichermedium mit Programmbefehlen, die durch den wenigstens einen Prozessor zum Ausführen von Operationen ausgeführt werden, wobei die Operationen aufweisen: Synchronisieren von Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem; Ausführen eines Failover von dem ersten Speichersystem zu dem zweiten Speichersystem als Reaktion auf ein Failover-Ereignis in dem ersten Speichersystem während des Synchronisierens der Daten, wobei Eingabe/Ausgabe-(E/A-)Anforderungen an das erste Speichersystem als Teil des Failover zu dem zweiten Speichersystem umgeleitet werden; Feststellen, dass eine erste Speichereinheit des ersten Speichersystems als Reaktion auf das Failover-Ereignis nicht funktionsfähig ist; Feststellen, dass eine zweite Speichereinheit des ersten Speichersystems als Reaktion auf das Failover-Ereignis funktionsfähig ist; und als Reaktion auf das Feststellen, dass die zweiten Speichereinheit funktionsfähig ist, Auslösen eines Neusynchronisierens, um Updates zu einer zweiten Speichereinheit des ersten Speichersystems zu kopieren durch Spiegeln der zweiten Speichereinheit des zweiten Speichersystems zu der zweiten Speichereinheit des ersten Speichersystems, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  14. System nach Anspruch 13, wobei das Synchronisieren der Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem in einer Betriebsart Synchrone Kopie ausgeführt wird und wobei das Kopieren der Updates während des Neusynchronisierens in einer Betriebsart Asynchrone Kopie ausgeführt wird, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  15. System nach Anspruch 13, wobei das Feststellen, dass die erste Speichereinheit nicht funktionsfähig ist, aufweist: Auslösen einer Point-in-Time-Kopie der ersten Speichereinheit des ersten Speichersystems; und Feststellen, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist, wobei die Feststellung, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist, als Reaktion auf das Feststellen erfolgt, dass die erste Speichereinheit nicht funktionsfähig ist; wobei das Feststellen, dass die zweiten Speichereinheit funktionsfähig ist, aufweist: Auslösen einer Point-in-Time-Kopie der zweiten Speichereinheit des ersten Speichersystems; und Feststellen, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich ist, wobei die Feststellung, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich ist, als Reaktion darauf erfolgt, dass die zweite Speichereinheit funktionsfähig ist.
  16. System nach Anspruch 15, wobei die Operationen ferner aufweisen: Auslösen eines Zustands Soft-Fence für das erste Speichersystem zum Verhindern eines E/A-Zugriffs auf die Speichereinheiten in dem ersten Speichersystem als Reaktion auf das Failover-Ereignis, wobei die Point-in-Time-Kopien mit einem Befehl ausgelöst werden, der einen Parameter enthält, um zuzulassen, dass die Point-in-Time-Operationen während des Zustands Soft-Fence des ersten Speichersystems ablaufen.
  17. System nach Anspruch 13, wobei das Neusynchronisieren ein erstes Neusynchronisieren aufweist, wobei die Operationen ferner aufweisen: Ausgeben einer Abfrage auf Funktionsfähigkeit an das erste Speichersystem zum Ermitteln, ob das erste Speichersystem voll funktionsfähig ist, wobei sowohl die erste als auch die zweite Speichereinheit des ersten Speichersystems funktionsfähig sind, wenn das erste Speichersystem voll funktionsfähig sind; und Neusynchronisieren von Updates an die erste Speichereinheit des zweiten Speichersystems auf die erste Speichereinheit des ersten Speichersystems als Reaktion auf ein Feststellen, dass die Abfrage auf Funktionsfähigkeit angibt, dass das erste Speichersystem voll funktionsfähig ist.
  18. System nach Anspruch 17, wobei die ersten Speichereinheiten erste Datenträger des ersten und des zweiten Speichersystems aufweisen und wobei die zweiten Speichereinheiten zweite Datenträger des ersten und des zweiten Speichersystems aufweisen, wobei der erste Datenträger, der als nichtfunktionsfähig ermittelt wurde, eine Teilmenge von Spuren enthält, bei denen ein Datenverlust auftritt, wobei das Neusynchronisieren ferner als Reaktion auf die Abfrage auf Funktionsfähigkeit ausgeführt wird, die angibt, dass das erste Speichersystem voll funktionsfähig ist; Kopieren einer Teilmenge von Spuren in dem ersten Datenträger des zweiten Speichersystems zu der entsprechenden Teilmenge von Spuren in dem ersten Datenträger in dem ersten Speichersystem, wobei Spuren in dem ersten Datenträger in dem ersten Speichersystem, bei denen kein Datenverlust auftritt und die nicht Spuren in dem ersten Datenträger in dem zweiten Speichersystem entsprechen, die aktualisiert werden, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden, nicht Gegenstand des Neusynchronisierens sind.
  19. System nach Anspruch 17, wobei das Neusynchronisieren der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem vor der Antwort auf die Abfrage auf Funktionsfähigkeit, die angibt, dass das erste Speichersystem voll funktionsfähig ist, in einer Betriebsart Asynchrone Kopie ausgeführt wird, wobei die Operationen ferner aufweisen: Wechseln des Neusynchronisierens der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem in die Betriebsart synchrone Kopie als Reaktion auf die Abfrage, die angibt, dass das erste Speichersystem voll funktionsfähig ist.
  20. Verfahren zum Ausführen eines Failover zwischen einem ersten Speichersystem und einem zweiten Speichersystem, das aufweist: Synchronisieren von Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem; Ausführen eines Failover von dem ersten Speichersystem zu dem zweiten Speichersystem als Reaktion auf ein Failover-Ereignis in dem ersten Speichersystem während des Synchronisierens der Daten, wobei Eingabe/Ausgabe-(E/A-)Anforderungen an das erste Speichersystem als Teil des Failover zu dem zweiten Speichersystem umgeleitet werden; Feststellen, dass eine erste Speichereinheit des ersten Speichersystems als Reaktion auf das Failover-Ereignis nicht funktionsfähig ist; Feststellen, dass eine zweite Speichereinheit des ersten Speichersystems als Reaktion auf das Failover-Ereignis funktionsfähig ist; und als Reaktion auf das Feststellen, dass die zweite Speichereinheit funktionsfähig ist, Auslösen eines Neusynchronisierens zum Kopieren von Updates zu einer zweiten Speichereinheit des ersten Speichersystems durch Spiegeln der zweiten Speichereinheit des zweiten Speichersystems zu der zweiten Speichereinheit des ersten Speichersystems, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden.
  21. Verfahren nach Anspruch 20, wobei das Synchronisieren der Daten zwischen dem ersten Speichersystem und dem zweiten Speichersystem in einer Betriebsart Synchrone Kopie ausgeführt wird und wobei das Kopieren der Updates während des Neusynchronisierens, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden, in einer Betriebsart Asynchrone Kopie ausgeführt wird.
  22. Verfahren nach Anspruch 20, wobei das Feststellen, dass die erste Speichereinheit nicht funktionsfähig ist, aufweist: Auslösen einer Point-in-Time-Kopie der ersten Speichereinheit des ersten Speichersystems; und Feststellen, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist, wobei die Feststellung, dass die erste Speichereinheit nicht funktionsfähig ist, als Reaktion auf das Feststellen erfolgt, dass die Point-in-Time-Kopie der ersten Speichereinheit fehlgeschlagen ist; wobei das Feststellen, dass die zweite Speichereinheit funktionsfähig ist, ein Auslösen einer Point-in-Time-Kopie der zweiten Speichereinheit des ersten Speichersystems aufweist; und Feststellen, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich ist, wobei die Feststellung, dass die zweite Speichereinheit funktionsfähig ist, als Reaktion auf ein Feststellen erfolgt, dass die Point-in-Time-Kopie der zweiten Speichereinheit erfolgreich ist.
  23. Verfahren nach Anspruch 23, das ferner aufweist: Auslösen eines Zustands Soft-Fence für das erste Speichersystem zum Verhindern eine E/A-Zugriffs auf die Speichereinheiten in dem ersten Speichersystem als Reaktion auf das Failover-Ereignis, wobei die Point-in-Time-Kopien mit einem Befehl ausgelöst werden, der einen Parameter enthält, um zu ermöglichen, dass die Operationen Point-in-Time-Kopie während des Zustands Soft-Fence des ersten Speichersystems ablaufen.
  24. Verfahren nach Anspruch 20, wobei das Neusynchronisieren ein erstes Neusynchronisieren aufweist und ferner aufweist: Ausgeben einer Abfrage auf Funktionsfähigkeit an das erste Speichersystem zum Ermitteln, ob das erste Speichersystem voll funktionsfähig ist, wobei sowohl die erste als auch die zweite Speichereinheit des ersten Speichersystems funktionsfähig sind, wenn das erste Speichersystem voll funktionsfähig ist, und Neusynchronisieren von Updates für die erste Speichereinheit des zweiten Speichersystems auf die erste Speichereinheit des ersten Speichersystems als Reaktion auf das Feststellen, dass die Antwort auf die Abfrage auf Funktionsfähigkeit lautet, dass das erste Speichersystem voll funktionsfähig ist.
  25. Verfahren nach Anspruch 24, wobei die ersten Speichereinheiten erste Datenträger des ersten und des zweiten Speichersystems aufweisen und wobei die zweiten Speichereinheiten zweite Datenträger des ersten und des zweiten Speichersystems aufweisen, wobei der erste Datenträger, der als nichtfunktionsfähig ermittelt wird, eine Teilmenge von Spuren enthält, bei denen Datenverlust auftritt, wobei das Neusynchronisieren ferner als Reaktion auf die Abfrage auf Funktionsfähigkeit ausgeführt wird, die angibt, dass das erste Speichersystem voll funktionsfähig ist, Kopieren einer Teilmenge von Spuren in dem ersten Datenträger des zweiten Speichersystems zu der entsprechenden Teilmenge von Spuren in dem ersten Datenträger in dem ersten Speichersystem, wobei Spuren in dem ersten Datenträger des ersten Speichersystems, bei denen kein Datenverlust auftritt und die nicht Spuren in dem ersten Datenträger in dem zweiten Speichersystem entsprechen, die aktualisiert werden, während E/A-Anforderungen zu dem zweiten Speichersystem umgeleitet werden, nicht Gegenstand des Neusynchronisierens sind.
  26. Verfahren nach Anspruch 24, wobei das Neusynchronisieren der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem vor der Antwort auf die Abfrage auf Funktionsfähigkeit, die angibt, dass das erste Speichersystem voll funktionsfähig ist, in einer Betriebsart Asynchrone Kopie ausgeführt wird, das ferner aufweist: Wechseln des Neusynchronisierens der zweiten Speichereinheit des zweiten Speichersystems auf das erste Speichersystem zu der Betriebsart Synchrone Kopie als Reaktion auf die Abfrage, die angibt, dass das erste Speichersystem voll funktionsfähig ist.
DE112016001295.0T 2015-05-05 2016-05-03 Neusynchronisieren auf ein erstes Speichersystem durch Spiegeln des ersten Speichersystems nach einem Failover zu einem zweiten Speichersystem Pending DE112016001295T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/704,893 2015-05-05
US14/704,893 US10133643B2 (en) 2015-05-05 2015-05-05 Resynchronizing to a first storage system after a failover to a second storage system mirroring the first storage system
PCT/IB2016/052502 WO2016178138A1 (en) 2015-05-05 2016-05-03 Resynchronizing to first storage system after failover to second storage system mirroring first storage system

Publications (1)

Publication Number Publication Date
DE112016001295T5 true DE112016001295T5 (de) 2017-12-14

Family

ID=57217591

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016001295.0T Pending DE112016001295T5 (de) 2015-05-05 2016-05-03 Neusynchronisieren auf ein erstes Speichersystem durch Spiegeln des ersten Speichersystems nach einem Failover zu einem zweiten Speichersystem

Country Status (6)

Country Link
US (2) US10133643B2 (de)
JP (1) JP6734866B2 (de)
CN (1) CN107533499B (de)
DE (1) DE112016001295T5 (de)
GB (1) GB2554605B (de)
WO (1) WO2016178138A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10133643B2 (en) * 2015-05-05 2018-11-20 International Business Machines Corporation Resynchronizing to a first storage system after a failover to a second storage system mirroring the first storage system
US10423588B2 (en) * 2015-08-25 2019-09-24 International Business Machines Corporation Orchestrated disaster recovery
US10083099B2 (en) * 2016-06-20 2018-09-25 International Business Machines Corporation After swapping from a first storage to a second storage, mirroring data from the second storage to the first storage for data in the first storage that experienced data errors
US10078566B2 (en) * 2016-06-20 2018-09-18 International Business Machines Corporation Managing health conditions to determine when to restart replication after a swap triggered by a storage health event
US10769040B2 (en) * 2016-11-21 2020-09-08 Sap Se Logical equivalent replication with snapshot based fallback of database systems
US10572357B2 (en) * 2017-03-29 2020-02-25 International Business Machines Corporation Switching over from using a first primary storage to using a second primary storage when the first primary storage is in a mirror relationship
US10394641B2 (en) * 2017-04-10 2019-08-27 Arm Limited Apparatus and method for handling memory access operations
JP6901677B2 (ja) * 2017-04-17 2021-07-14 富士通株式会社 管理プログラム、管理装置および管理方法
CN107153589B (zh) * 2017-06-14 2020-08-04 苏州浪潮智能科技有限公司 一种镜像数据的读写方法
US10496674B2 (en) * 2017-08-07 2019-12-03 International Business Machines Corporation Self-describing volume ancestry for data synchronization
JP6782210B2 (ja) * 2017-09-01 2020-11-11 株式会社日立製作所 計算機システム、データ管理方法、及びデータ管理プログラム
US10579285B2 (en) 2018-02-07 2020-03-03 International Business Machines Corporation Automatic data healing by I/O
US10585767B2 (en) 2018-02-07 2020-03-10 International Business Machines Corporation Automatic data healing using a storage controller
US10437517B2 (en) 2018-02-15 2019-10-08 International Business Machines Corporation Enhanced soft fence of devices
JP2019191843A (ja) * 2018-04-24 2019-10-31 富士通株式会社 接続制御プログラム、接続制御方法、及び接続制御装置
US11099934B2 (en) * 2018-08-24 2021-08-24 International Business Machines Corporation Data rebuilding
US11061750B2 (en) * 2018-09-06 2021-07-13 International Business Machines Corporation Corrupted track analyzer
US11132339B2 (en) 2018-11-13 2021-09-28 Netapp Inc. Synchronous replication for synchronous mirror copy guarantee
CN111858143A (zh) * 2019-04-24 2020-10-30 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机可读存储介质
US11164650B2 (en) 2019-08-30 2021-11-02 International Business Machines Corporation Scrub management in storage class memory
US10997084B2 (en) 2019-08-30 2021-05-04 International Business Machines Corporation Virtual to physical translation and media repair in storage class memory
KR102323844B1 (ko) * 2020-02-20 2021-11-08 엘에스일렉트릭(주) 휴먼 머신 인터페이스 시스템에서 저장장치의 교체 방법
US11327858B2 (en) * 2020-08-11 2022-05-10 Seagate Technology Llc Preserving data integrity during controller failure
US11665046B2 (en) * 2021-01-15 2023-05-30 Western Digital Technologies, Inc. Failover port forwarding between peer storage nodes
CN117234811B (zh) * 2023-11-14 2024-02-20 苏州元脑智能科技有限公司 数据备份方法、装置、设备及存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000330731A (ja) 1999-05-19 2000-11-30 Toshiba Corp 記録媒体制御装置
US6785838B2 (en) 2001-02-13 2004-08-31 Sun Microsystems, Inc. Method and apparatus for recovering from failure of a mirrored boot device
US7631066B1 (en) * 2002-03-25 2009-12-08 Symantec Operating Corporation System and method for preventing data corruption in computer system clusters
US7278049B2 (en) 2003-09-29 2007-10-02 International Business Machines Corporation Method, system, and program for recovery from a failure in an asynchronous data copying system
US7376859B2 (en) 2003-10-20 2008-05-20 International Business Machines Corporation Method, system, and article of manufacture for data replication
JP4583075B2 (ja) 2004-06-11 2010-11-17 インターナショナル・ビジネス・マシーンズ・コーポレーション サイト間でデータをミラーリングする方法、システム、およびプログラム
US20060015764A1 (en) * 2004-07-13 2006-01-19 Teneros, Inc. Transparent service provider
US7941602B2 (en) 2005-02-10 2011-05-10 Xiotech Corporation Method, apparatus and program storage device for providing geographically isolated failover using instant RAID swapping in mirrored virtual disks
US7437601B1 (en) 2005-03-08 2008-10-14 Network Appliance, Inc. Method and system for re-synchronizing an asynchronous mirror without data loss
US7877628B2 (en) 2006-06-08 2011-01-25 International Business Machines Corporation Mirroring data between primary and secondary sites
US7627729B2 (en) 2006-09-07 2009-12-01 International Business Machines Corporation Apparatus, system, and method for an improved synchronous mirror swap
US7793148B2 (en) * 2007-01-12 2010-09-07 International Business Machines Corporation Using virtual copies in a failover and failback environment
US8020037B1 (en) * 2008-09-23 2011-09-13 Netapp, Inc. Creation of a test bed for testing failover and failback operations
US8099623B1 (en) * 2008-10-08 2012-01-17 Netapp, Inc. Efficient distributed hot sparing scheme in a parity declustered RAID organization
US9203900B2 (en) * 2011-09-23 2015-12-01 Netapp, Inc. Storage area network attached clustered storage system
US9904721B1 (en) * 2013-01-25 2018-02-27 Gravic, Inc. Source-side merging of distributed transactions prior to replication
US9052833B2 (en) 2013-03-11 2015-06-09 International Business Machines Corporation Protection of former primary volumes in a synchronous replication relationship
WO2016025321A1 (en) * 2014-08-13 2016-02-18 OneCloud Labs, Inc. Replication of virtualized infrastructure within distributed computing environments
US9639439B2 (en) * 2015-04-14 2017-05-02 Sap Se Disaster recovery framework for cloud delivery
CN106155846B (zh) * 2015-04-15 2019-06-28 伊姆西公司 对块对象执行批量故障回复的方法和装置
US10133643B2 (en) 2015-05-05 2018-11-20 International Business Machines Corporation Resynchronizing to a first storage system after a failover to a second storage system mirroring the first storage system

Also Published As

Publication number Publication date
CN107533499A (zh) 2018-01-02
JP6734866B2 (ja) 2020-08-05
US20160328303A1 (en) 2016-11-10
US10936447B2 (en) 2021-03-02
CN107533499B (zh) 2020-09-08
GB2554605A (en) 2018-04-04
US20190012243A1 (en) 2019-01-10
GB2554605B (en) 2018-09-26
JP2018518734A (ja) 2018-07-12
GB201719444D0 (en) 2018-01-10
US10133643B2 (en) 2018-11-20
WO2016178138A1 (en) 2016-11-10

Similar Documents

Publication Publication Date Title
DE112016001295T5 (de) Neusynchronisieren auf ein erstes Speichersystem durch Spiegeln des ersten Speichersystems nach einem Failover zu einem zweiten Speichersystem
DE112011103666B4 (de) Speicherverwaltung in Cluster-Datenverarbeitungssystemen
DE112013001421B4 (de) Auf Richtlinien beruhendes Verwalten von Speicherfunktionen in Datenreplikationsumgebungen
DE112018003084B4 (de) Asynchrones lokales und entfernt angeordnetes erzeugen von konsistenten zeitpunkt-momentkopien in konsistenzgruppen
DE602004005344T2 (de) Verfahren, system und programm zur handhabung eines failover zu einem fernspeicherort
DE112011100112B4 (de) Pufferspeicher-platte in blitzkopie-kaskade
US9892002B1 (en) Incremental continuous data protection
DE69911930T2 (de) Hochverfügbare dateiprozessoren
DE60112462T2 (de) Wiederherstellung von dateisystemdaten in dateiservern mit gespiegelten dateisystemvolumen
DE112011100534B4 (de) Mehrstufiger Sicherungsprozess
US9256605B1 (en) Reading and writing to an unexposed device
DE60317383T2 (de) Datenwiederherstellungsvorrichtung unter Verwendung von Journaldaten und Identifikationsinformation
DE602005003490T2 (de) Verteiltes System mit Quorumredundanz und Verfahren dafür
DE112014006156B4 (de) Speichersystem und Datenmigrationsverfahren
DE102013209528A1 (de) Benutzergesteuerte Replikation in einem System für synchronisierte Objektreplikationen
DE112013005758T5 (de) Verfahren und Vorrichtung zur Notfallwiederherstellungsvirtualisierung
DE60313468T2 (de) Speicherdienste und -systeme
DE102013210642A1 (de) Vorrichtung zum Wiederherstellen von Redundanz
DE112012000282B4 (de) Anwendungswiederherstellung in einem Dateisystem
DE112020002834T5 (de) Spiegeln von schreiboperationen zwischen datenspeichereinheiten
DE112012001267T5 (de) Verfahren, Systeme und Computerprogrammprodukte zur abgestimmten Notfallwiederherstellung
DE69927223T2 (de) Ausfallsicherheit eines Mehrrechnersystems
US11354268B2 (en) Optimizing snapshot creation
US20210271556A1 (en) Automated targetless snapshots
DE102011116866A1 (de) Clustersystem und Verfahren zum Ausführen einer Mehrzahl von virtuellen Maschinen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence