DE602004002858T2 - Vorrichtung und Verfahren zur Datenarchivierung in einem Clustersystem - Google Patents
Vorrichtung und Verfahren zur Datenarchivierung in einem Clustersystem Download PDFInfo
- Publication number
- DE602004002858T2 DE602004002858T2 DE602004002858T DE602004002858T DE602004002858T2 DE 602004002858 T2 DE602004002858 T2 DE 602004002858T2 DE 602004002858 T DE602004002858 T DE 602004002858T DE 602004002858 T DE602004002858 T DE 602004002858T DE 602004002858 T2 DE602004002858 T2 DE 602004002858T2
- Authority
- DE
- Germany
- Prior art keywords
- application
- archiving
- cluster
- client
- node
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Circuits Of Receivers In General (AREA)
- Hardware Redundancy (AREA)
Description
- FACHGEBIET DER ERFINDUNG
- Die vorliegende Erfindung betrifft allgemein die Archivierung von Computerdaten. Insbesondere betrifft die vorliegende Erfindung die Archivierung von Computerdaten in einer Cluster-Netzwerkumgebung.
- HINTERGRUND DER ERFINDUNG
- Seit einigen Jahrzehnten ist Information zwischen Computern in vielen verschiedenen Formen ausgetauscht worden. Eine beliebte Form, die den Informationsaustausch unterstützt, ist als das Client/Server-Modell bekannt, das im allgemeinen als ein Client/Server-Netzwerk verwirklicht wird. In einem Client/Server-Netzwerk ist eine Serveranwendung ein Software-Programm (das sich in einem oder mehreren Teilen der Computerhardware befindet) und Anforderungen von einer beliebigen Anzahl von Client-Anwendungen erwartet und erfüllt. Serveranwendungen wickeln häufig die Speicherung von Daten ab, auf die eine oder mehrere Client-Anwendungen einen sicheren Zugriff haben.
- In dem Maße, wie das Client/Server-Netzwerk an Beliebtheit zunahm, hat sich auch die Technologie weiterentwickelt, um einer großen Anzahl von Client-Anwendungen den Zugriff auf eine einzelne Serveranwendung zu ermöglichen. Diese Fähigkeit erhöhte auch die Abhängigkeit von der Serveranwendung und den Bedarf, Serverausfälle zu verringern. Die Technologie hat sich weiter entwickelt, um die nahtlose Aktivierung eines Sekundär-Serversystems im Fall eines Ausfalls des Haupt-Serversystems zu ermöglichen. Dieser nahtlose Aktivierungsprozess übergibt alle aktiven Anwendungen vom Haupt-Serversystem an das Sekundär-Serversystem, ohne dass der Client etwas davon merkt. Dieser Übergabeprozess ist normalerweise in der Technik als "Ausfallsicherung" oder "Übergabe bei Ausfall" bekannt, was im US-Patent Nr. 6360331 mit dem Titel "Method and System for Transparently Failing Over Application Configuration Information in a Server Cluster" gelehrt wird. Die Anwendungen, die dafür konfiguriert sind, bei einem Ausfall von einem Haupt-Serversystem auf ein Sekundär-Serversystem (oder von einem ersten Knoten auf einen zweiten Knoten) überzugehen, sind in der Fachwelt als "Cluster-Anwendungen" bekannt. Eine Cluster-Anwendung ist dafür konfiguriert, als eine gemeinsam genutzte Ressource mit einer virtuellen Internetprotokoll-("IP"-)Adresse zugeordnet zu werden. Die virtuelle IP-Adresse ändert sich nicht und hängt nicht vom physischen Standort ab, was eine fortgesetzte Client-Kommunikation mit einer Cluster-Anwendung trotz des Auftretens eines Betriebsausfalls ermöglicht.
- Der Prozess der Übergabe bei einem Ausfall erhöht die Schwierigkeit, Daten genau zu archivieren und wiederherzustellen. Während des Archivierungsprozesses plant das Archivierungssystem das, was in der Fachwelt als ein "Sicherungsauftrag" bekannt ist, was eine bestimmte Anwendung, ein Dateisystem, ein Laufwerk oder dergleichen zur Archivierung angibt. Wenn ein Sicherungsauftrag aktiviert wird, muss das Archivierungssystem Kenntnis vom physischen Standort und der spezifischen Konfiguration der zu archivierenden Anwendung haben. Deshalb schlägt ein Archivierungsauftrag fehl, wenn der Sicherungsauftrag aktiviert wird, um eine Anwendung auf dem Knoten A zu archivieren, und die Anwendung bei Ausfall auf den Knoten B übergeht, weil die Anwendung nicht länger auf dem Knoten A aktiv ist.
- Dementsprechend besteht Bedarf an einem Datenarchivierungssystem und -verfahren, das die Archivierung von Cluster-Anwendungen ermöglicht.
- In der Erläuterung des Hintergrundes beschreibt US 2003/120751 die Verwendung mehrerer Speichervorrichtungen bzw. -medien als eine virtuelle Speichervorrichtung, die an ein Computernetzwerk angeschlossen ist. Jedes/jede Speichermedium/vorrichtung speichert einige Daten. Der verbleibende freie Platz jedes/jeder Speichermediums/vorrichtung wird zu einem gemeinsam genutzten Speicherlaufwerk zusammengefasst, das dann von jedem Computer im Netzwerk angemeldet werden kann. Dies kann nach Art eines Peer-to-Peer-Systems implementiert werden, so dass der freie Platz in den Speichervorrichtungen oder den Speichermedien in jedem Computer verwendet wird, um ein gemeinsam genutztes Speicherlaufwerk zu erzeugen. Es werden Vorkehrungen getroffen, um mehrere Kopien jedes Teils der Daten auf dem gemeinsam genutzten Speicherlaufwerk über mehrere Computer zu speichern. Dies bringt Redundanz in das System. Wenn ein Laufwerk ausfällt, das Bestandteil des gemeinsam genutzten Laufwerks ist, dann werden die gemeinsam genutzten Daten, die auf diesem Laufwerk gespeichert wurden, stattdessen von einer der Kopien abgerufen.
- "High-Availability Clustering Capabilities" (Kosacek et al; Power Solutions, (online), Mai 2003 (2003-05), Seite 51–55) beschreibt die Verwendung von Microsoft Windows Server 2003, wenn er auf Clustern von Dell-"Power Edge"-Servern läuft. Die in dem Artikel beschriebenen Verbesserungen weisen die höhere Verfügbarkeit auf, die erreicht wird, indem Anwendungen oder Dienste von einem ausgefallenen Knoten zu einem anderen Knoten im Cluster verschoben werden. Eine andere beschriebene Verbesserung ist die größere Skalierbarkeit, die durch eine erhöhte Anzahl von Knoten pro Cluster ermöglicht wird. Außerdem beschreibt der Artikel die Verbesserung, dass zur gleichen Zeit ein Cluster von Knoten statt eines einzelnen Knotens verwaltet werden kann, um einfachere Verwaltungsmöglichkeiten bereitzustellen.
- Der Microsoft-Clusterdienst, der beschrieben wird, ermöglicht einem virtuellen Server, bei einem Ausfall zwischen mehreren physischen Servern überzugehen, auf denen der Clusterdienst läuft. Durch die Verwendung einer virtuellen IP-Adresse kann der verwendete physische Knoten bei Ausfall an andere Knoten übergeben werden, ohne dass der Endanwender beeinträchtigt wird. Manuelle "Ausfallübergabe" kann verwendet werden, um bei Bedarf die Wartung der Knoten zu ermöglichen.
- Außerdem werden die Sicherungs- und Wiederherstellungskonfigurationen beschrieben, die durch die Hardware/Software-Kombination ermöglicht werden. Das Sicherungs-Hilfsprogramm kann die Cluster-Konfiguration sichern und diese Konfiguration sowohl lokal als auch auf allen Cluster-Knoten wiederherstellen. Auch können Cluster-Knoten automatisch wiederhergestellt werden, wenn ihre lokale Cluster-Datenbasis beschädigt ist oder wenn das Systemlaufwerk versagt oder fehlerhaft wird. Dieser automatische Prozess kann auch dabei helfen, gemeinsam benutzte Laufwerke wiederherzustellen.
- KURZE ZUSAMMENFASSUNG DER ERFINDUNG
- Ausführungsformen der vorliegenden Erfindung umfassen ein Verfahren zur Archivierung von Daten für eine Cluster-Anwendung nach Anspruch 1 und ein entsprechendes System nach Anspruch 8 und ein Computerprogramm-Erzeugnis nach Anspruch 10.
- Ein praktisches Datenarchivierungssystem gemäß der vorliegenden Erfindung weist mindestens eine Archivierungs-Clientanwendung, mindestens eine entsprechende Archivierungs-Serveranwendung und mindestens eine entsprechende virtuelle Client-Anwendung auf. Insbesondere nutzt das Archivierungssystem eine virtuelle Client-Anwendung, die die Konfiguration und den Prozess unterstützt, in denen die Archivierung für eine spezifische Cluster-Anwendung durchgeführt wird. Die Verwendung einer virtuellen Client-Anwendung für eine Cluster-Anwendung befähigt die Cluster-Anwendung, bei Ausfall auf einen neuen Knoten überzugehen, während die Fähigkeit bewahrt wird, die nach dem Ausfall übergegangene Cluster-Anwendung zu archivieren. In der Praxis erzeugt der Einrichtungsprozess des Archivierungssystems die virtuelle Client-Anwendung, so dass die virtuelle Client-Anwendung eine virtuelle IP-Adresse enthält, auf die durch jede Archivierungs-Clientanwendung im Archivierungssystem Bezug genommen werden kann.
- Die oben genannten und weitere Aspekte der vorliegenden Erfindung können in einer Form durch ein Verfahren zur Archivierung von Daten für eine Cluster-Anwendung in einer Cluster-Netzwerkumgebung ausgeführt werden. Das Verfahren umfasst: Erzeugen einer Standortanfrage für die Cluster-Anwendung, wobei die Standortanfrage eine symbolische Kennung für die Cluster-Anwendung aufweist; Erlangen einer Kennung des physischen Standorts für die Cluster-Anwendung als Antwort auf die Standortanfrage; Zugreifen auf Archivierungs-Konfigurationsdateien für die Cluster-Anwendung; und Archivieren von Daten für die Cluster-Anwendung gemäß den Archivierungs-Konfigurationsdateien.
- KURZBESCHREIBUNG DER ZEICHNUNGEN
- Ein vollständigeres Verständnis der vorliegenden Erfindung kann durch Bezugnahme auf die ausführliche Beschreibung und die Ansprüche abgeleitet werden, wenn sie in Verbindung mit den folgenden Figuren betrachtet werden, in denen gleiche Bezugszeichen überall in den Figuren gleichartige Elemente bezeichnen, wobei diese folgendes zeigen:
-
1 ist eine schematische Darstellung einer beispielhaften Cluster-Netzwerkumgebung; -
2 ist eine schematische Darstellung eines Abschnitts eines beispielhaften Archivierungssystems, das in einer Cluster-Netzwerkumgebung eingesetzt werden kann; -
3 ist eine schematische Darstellung einer beispielhaften Serverkomponente, die in einem Archivierungssystem genutzt werden kann; -
4 ist eine schematische Darstellung einer beispielhaften virtuellen Client-Anwendung, die in einem Archivierungssystem genutzt werden kann; -
5 ist eine schematische Darstellung einer beispielhaften Client-Anwendung, die in einem Archivierungssystem genutzt werden kann; und -
6 ist ein Ablaufplan eines Sicherungsprozesses für Cluster-Anwendungen, der durch ein Archivierungssystem durchgeführt werden kann. - AUSFÜHRLICHE BESCHREIBUNG EINER BEVORZUGTEN AUSFÜHRUNGSFORM
- Die vorliegende Erfindung kann hierin anhand von Funktionsblock-Komponenten und verschiedenen Verarbeitungsschritten beschrieben werden. Man sollte anerkennen, dass solche Funktionsblöcke durch eine beliebige Anzahl von Hardware-, Software- und/oder Firmware-Komponenten verwirklicht werden können, die dafür konfiguriert sind, die festgelegten Funktionen durchzuführen. Zum Beispiel kann die vorliegende Erfindung verschiedene integrierte Schaltkreiskomponenten, Speicherkomponenten, Logikkomponenten, Verweistabellen und dergleichen verwenden, die eine Vielfalt von Funktionen unter der Steuerung eines oder mehrerer Mikroprozessoren oder anderer Steuervorrichtungen durchführen können. Außerdem wird der Fachmann anerkennen, dass die vorliegende Erfindung in Verbindung mit einer beliebigen Anzahl von praktischen Computerhardware- Implementierungen in die Praxis umgesetzt werden kann und dass die hierin beschriebene besondere Systemarchitektur nur eine beispielhafte Anwendung für die Erfindung ist.
- Man sollte anerkennen, dass die hierin gezeigten und beschriebenen besonderen Implementierungen zur Veranschaulichung der Erfindung und ihrer besten Ausführung dienen und nicht dazu bestimmt sind, den Schutzbereich der Erfindung anderweitig auf irgendeine Weise zu begrenzen. Allerdings kann es der Kürze halber sein, dass herkömmliche Methoden und Aspekte von Computervorrichtungen, Computernetzwerken, Datenübertragung, Datenarchivierung, Datenkommunikation und -speicherung und anderen funktionellen Aspekten der Systeme (und der einzelnen Betriebskomponenten der Systeme) hierin nicht ausführlich beschrieben werden. Außerdem sind die Verbindungslinien, die in den hierin enthaltenen verschiedenen Figuren gezeigt werden, dazu bestimmt, beispielhafte funktionale Beziehungen und/oder physische Kopplungen zwischen den verschiedenen Elementen darzustellen. Man beachte, dass in einer praktischen Ausführungsform viele alternative oder zusätzliche funktionale Beziehungen oder physische Verbindungen vorhanden sein können.
-
1 ist eine schematische Darstellung einer beispielhaften Cluster-Netzwerkumgebung100 , die die vorliegende Erfindung aufnehmen kann. Zur Erleichterung der Darstellung stellt die Cluster-Netzwerkumgebung100 eine vereinfachte Architektur dar; eine praktische Architektur kann zusätzliche und/oder alternative physische und logische Elemente haben. Die Cluster-Netzwerkumgebung100 weist grundsätzlich ein Archivierungs-Serversystem102 , eine Anzahl von Client-Komponenten104 ,106 ,108 ,110 ,112 und114 und eine Anzahl von Speichermedienvorrichtungen116 ,118 ,120 und122 auf. Eine oder mehrere der Speichermedienvorrichtungen können einem Netzwerkspeicher ("NAS")124 zugeordnet sein. Alternativ (oder zusätzlich) können eine oder mehrere der Speichermedienvorrichtungen einem Speichernetzwerk ("SAN")126 zugeordnet sein. Wie bei herkömmlichen SAN-Anordnungen nutzen die Client-Komponente110 und die Client-Komponente112 Speicherressourcen über einen FC-Switch128 gemeinsam. - In
1 stellen das Archivierungs-Serversystem102 , die Client-Komponenten und die Speichermedienvorrichtungen physische Hardwarekomponenten dar. Das Archivierungs-Serversystem102 ist ein Computer, der dafür konfiguriert ist, die hierin beschriebenen Aufgaben der Archivierungs-Serveranwendung (und möglicherweise andere Aufgaben) durchzuführen, während die Client-Komponenten Computer sind, die dafür konfiguriert sind, Aufgaben durchzuführen, die irgendeiner Anzahl von Cluster-Anwendungen zugeordnet sind, die eine Datenarchivierung (Sicherung) erfordern. Die Client-Komponenten können ebenfalls dafür konfiguriert sein, die hierin beschriebenen Aufgaben der Archivierungs-Serveranwendung (und möglicherweise andere Aufgaben) durchzuführen. Zum Beispiel kann die Client-Komponente104 der primäre Knoten für eine Cluster-Email-Serveranwendung sein, die Client-Komponente106 kann ein Ausfallübergabeknoten für die Cluster-Email-Serveranwendung sein, und das Archivierungs-Serversystem102 kann für die Sicherungs- und Wiederherstellungsprozeduren für die Cluster-Email-Serveranwendung verantwortlich sein. Eine einzelne Cluster-Anwendung kann durch eine beliebige Anzahl von Client-Komponentenknoten unterstützt werden, jedoch hat in den meisten praktischen Anordnungen jede Cluster-Anwendung einen für sie bestimmten primären Knoten und einen für sie bestimmten Ausfallübergabeknoten. Für die Zwecke der hierin beschriebenen beispielhaften Ausführungsform befinden sich keine Cluster-Anwendungen im Archivierungs-Serversystem102 . Eine praktische Ausführungsform muss jedoch nicht derartig begrenzt sein. - Wie hierin verwendet, bezeichnet ein "Knoten" einen physischen Verarbeitungsstandort in der Netzwerkumgebung. Dabei kann ein Knoten ein Computer oder irgendeine andere Vorrichtung sein, wie etwa ein Drucker. In praktischen Netzwerken hat jeder Knoten eine eindeutige Netzwerkadresse, die manchmal als Datenverbindungssteuerungs-(DLC-)Adresse oder als Medienzugriffssteuerungs-(MAC-)Adresse bezeichnet wird.
- Ein "Server" wird oft als eine Rechenvorrichtung oder -system bezeichnet, die dafür konfiguriert ist, eine beliebige Anzahl von Funktionen und Betriebsabläufen durchzuführen, die mit der Verwaltung, Verarbeitung, Recherche und/oder Zustellung von Daten verbunden sind, insbesondere in einer Netzwerkumgebung. Alternativ kann ein "Server" oder eine "Serveranwendung" Software bezeichnen, die solche Prozesse, Verfahren und/oder Methoden durchführt. Wie in den meisten kommerziell erhältlichen Mehrzweckservern kann eine praktische Serverkomponente, die das Archivierungssystem der Erfindung unterstützt, dafür konfiguriert werden, auf jedem geeigneten Betriebssystem zu laufen, wie etwa Unix, Linux, dem Betriebssystem des Apple Macintosh oder irgendeiner Variante von Microsoft Windows, und es kann eine beliebige Anzahl von Mikroprozessorvorrichtungen verwenden, zum Beispiel die Pentium-Prozessorfamilie von Intel oder die Prozessorvorrichtungen, die von Advanced Micro Devices, IBM, Sun Microsystems oder Motorola kommerziell erhältlich sind.
- Die Serverprozessoren kommunizieren mit einem Systemspeicher (zum Beispiel einem geeigneten Umfang an Direktzugriffsspeicher) und einem angemessenen Umfang an Speichervorrichtung oder "Langzeitspeicher". Der Langzeitspeicher kann eine oder mehrere Festplatten, Disketten, CD-ROM, DVD-ROM, Magnetbänder, Wechselmedien, Festkörper-Speichervorrichtungen oder Kombinationen davon aufweisen. Gemäß bekannten Methoden befinden sich die Betriebssystemprogramme und die Server-Anwendungsprogramme im Langzeitspeicher, und Abschnitte davon können während des Betriebs in den Systemspeicher geladen werden. Gemäß der Gepflogenheiten von Fachleuten auf dem Gebiet der Computerprogrammierung wird die vorliegende Erfindung nachstehend mit Bezug auf symbolische Darstellungen von Betriebsabläufen beschrieben, die durch die verschiedenen Serverkomponenten oder die Client-Komponenten durchgeführt werden können. Solche Betriebsabläufe werden mitunter als computerausführbar, computerisiert, software-implementiert oder computer-implementiert bezeichnet. Man wird anerkennen, dass Betriebsabläufe, die symbolisch dargestellt sind, die durch die verschiedenen Mikroprozessorvorrichtungen erfolgende Manipulation an elektrischen Signalen einschließen, die Datenbits an Speicherstellen im Systemspeicher darstellen, sowie andere Verarbeitung von Signalen. Die Speicherstellen, wo Datenbits aufbewahrt werden, sind physische Standorte, die bestimmte elektrische, magnetische, optische oder organische Eigenschaften haben, die den Datenbits entsprechen.
- Wenn sie in Software implementiert werden, sind verschiedene Elemente der vorliegenden Erfindung (die sich in den Client-Vorrichtungen oder im Archivierungs-Serversystem
102 befinden können) im wesentlichen die Codesegmente, die die verschiedenen Aufgaben durchführen. Die Programm- oder Codesegmente können in einem prozessorlesbaren Medium gespeichert oder durch ein Computerdatensignal übertragen werden, das in einer Trägerwelle über ein Übertragungsmedium oder einen Kommunikationsweg verkörpert wird. Das "prozessorlesbare Medium" oder das "maschinenlesbare Medium" können jedes Medium einschließen, das Information speichern oder übermitteln kann. Beispiele für das prozessorlesbare Medium weisen eine elektrische Schaltung, eine Halbleiter-Speichervorrichtung, einen ROM, einen Flashspeicher, einen löschbaren ROM (EROM), eine Diskette, eine CD-ROM, ein optische Speicherplatte, eine Festplatte, ein Glasfasermedium, eine Funkfrequenz-(RF-)Übertragungsstrecke oder dergleichen auf Das Computersignal kann jedes Signal aufweisen, das sich über ein Übertragungsmedium, wie etwa elektronische Netzwerkkanäle, optische Fasern, Luft, elektromagnetische Wege oder RF-Übertragungsstrecken ausbreiten kann. Die Codesegmente können über Computernetzwerke, wie etwa das Internet, ein Intranet, ein LAN oder dergleichen heruntergeladen werden. - In praktischen Anwendungen können das Archivierungs-Serversystem und die Client-Komponenten gemäß jeder bekannten Computerplattform konfiguriert sein, zum Beispiel Compaq Alpha Tru64, FreeBSD, HP-UX, IBM AIX, Linux, NCR MP-RAS, SCO OpenServer, SCO Unixware, SGI Irix, Solaris (Sparc), Solaris (Intel), Windows 2000, Windows NT und Novell Netware. In praktischen Anwendungen können die Speichermedienvorrichtungen gemäß jeder bekannten Bandtechnologie (DLT, 8 mm, 4-mm-DAT, DTF, LTO, AIT-3, SuperDLT, DTF2 und M2) oder jeder bekannten optischen Speicherplattentechnologie (DVD-RAM, CD oder dergleichen) konfiguriert sein. In praktischen Anwendungen kann die Cluster-Netzwerkumgebung
100 eine Anzahl von SAN/NAS-Vorrichtungen, zum Beispiel Ancor, Brocade, Chaparral, Crossroads, EMC, FalconStor, Gadzoox, Network Appliance und Vixel, unterstützen. Der Kürze halber werden diese herkömmlichen Vorrichtungen und Plattformen hierin nicht beschrieben. - Wie in herkömmlichen Cluster-Netzwerkumgebungen sind die Betriebssysteme des Archivierungs-Serversystems
102 und die Client-Komponenten imstande, Cluster-Anwendungen zu verwalten. Mit anderen Worten, eine Cluster-Anwendung kann bei Ausfall von einem Client-Knoten auf einen anderen Client-Knoten übergehen (angenommen, dass der Ausfallübergabeknoten diese Cluster-Anwendung unterstützt), und die Cluster-Anwendung wird durch eine symbolische Kennung, die sich nicht mit ihrem physischen Standort ändert, eindeutig gekennzeichnet. In praktischen Anwendungen ist diese symbolische Kennung eine virtuelle IP-Adresse, die der Cluster-Anwendung zugewiesen ist, und diese virtuelle IP-Adresse kennzeichnet die bestimmte Cluster-Anwendung unabhängig von ihrem physischen Standort. "IP-Adresse" wird hierin in ihrem herkömmlichen Sinn verwendet, nämlich, dass eine IP-Adresse eine Kennung für einen Computer oder eine Vorrichtung in einem TCP/IP-kompatiblen Netzwerk ist. Nachrichten werden innerhalb solcher Netzwerke unter Verwendung der IP-Adresse des erwünschten Bestimmungsorts weitergeleitet. Gemäß den gegenwärtigen Standards ist das Format einer IP-Adresse eine numerische Adresse von 32 Bits, die als vier durch Punkte voneinander getrennte Zahlen geschrieben wird, wobei jede Zahl 0 bis 255 sein kann. Zum Beispiel könnte 1.234.56.789 eine IP-Adresse sein. -
2 ist eine schematische Darstellung eines Abschnitts eines beispielhaften Archivierungssystems200 , das in einer Cluster-Netzwerkumgebung verwendet werden kann. Der in2 gezeigte Abschnitt stellt die Funktionskomponenten dar, die die Archivierung einer einzelnen Cluster-Anwendung202 unterstützen, die durch mindestens zwei Client-Komponentenknoten unterstützt wird: Knoten A (Bezugszeichen204 ) und Knoten B (Bezugszeichen206 ). Die folgende Beschreibung des Archivierungssystems200 kann ausgeweitet werden, um eine beliebige Anzahl von kompatiblen Client- Knoten in Betracht zu ziehen. Außerdem kann eine praktische Implementierung eine beliebige Anzahl von unterschiedlichen Cluster-Anwendungen unterstützen. - Das Archivierungssystem
200 weist im allgemeinen ein Archivierungs-Serversystem208 , einen Client-Knoten204 und einen Client-Knoten206 auf, die alle miteinander zur Datenkommunikation gemäß bekannten Standards und Protokollen verbunden sind. In einer praktischen Ausführungsform ist das Archivierungssystem200 mit der Internetprotokoll-(IP-)Suite von Protokollen zur Kommunikation zwischen dem Archivierungs-Serversystem208 und den Client-Knoten204 /206 und zwischen dem Client-Knoten204 und dem Client-Knoten206 kompatibel. Natürlich können das Archivierungssystem200 und/oder die Cluster-Netzwerkumgebung zusätzliche oder alternative Kommunikationsmethoden, -protokolle oder -verfahren für die Archivierung oder andere Zwecke nutzen. - In der beispielhaften Ausführungsform ist das Archivierungs-Serversystem
208 auf einem physischen Knoten implementiert. Das Archivierungs-Serversystem208 weist eine Archivierungs-Serveranwendung210 und eine virtuelle Client-Anwendung212 für die Cluster-Anwendung202 auf. Das Archivierungs-Serversystem208 weist vorzugsweise ein oder mehrere geeignet konfigurierte Speichermedien-Elemente (siehe1 ) auf, die archivierte Daten zusätzlich zu anderen durch das System genutzten Daten speichern können, oder kommuniziert mit ihnen. Die Archivierungs-Serveranwendung210 ist geeignet konfiguriert, um mit den verschiedenen Archivierungs-Clientanwendungen zu kommunizieren und ansonsten die hierin beschriebenen Archivierungsaufgaben abzuwickeln. Wie nachstehend ausführlicher beschrieben, kann ein praktisches Archivierungs-Serversystem208 eine Vielzahl von virtuellen Client-Anwendungen für eine ähnliche Vielzahl von Cluster-Anwendungen aufweisen. In der beispielhaften Ausführungsform wird für jede unterschiedliche durch das Archivierungs-Serversystem208 versorgte Cluster-Anwendung eine andere virtuelle Client-Anwendung erzeugt. - Für die Zwecke dieses Beispiels wird der Client-Knoten
204 als der "primäre" oder "normale" Betriebsknoten für die Cluster-Anwendung202 betrachtet, während der Client-Knoten206 als Ausfallübergabeknoten betrachtet wird. Mit anderen Worten, die Cluster-Anwendung202a wird normalerweise auf dem Client-Knoten204 ausgeführt, und die Cluster-Anwendung202b wird in der Ausfallübergabe-Betriebsart auf dem Client-Knoten206 ausgeführt. Gemäß bekannten Cluster-Methoden kann die Cluster-Anwendung202 redundant auf beiden Client-Knoten204 /206 installiert sein, und bei Feststellung einer Ausfallübergabe kann die Cluster-Anwendung202b aktiviert werden. Im Kontext des hierin beschriebenen Archivierungssystems können die Client-Knoten204 /206 in Konfiguration und Funktion identisch sein. - Der Client-Knoten
204 weist eine Archivierungs-Clientanwendung214 auf, die geeignet konfiguriert ist, um Archivierungs-, Sicherungs- und Wiederherstellungsfunktionen in Verbindung mit dem Archivierungs-Serversystem208 durchzuführen. Dazu ist die Archivierungs-Clientanwendung214 speziell dafür konfiguriert, die Archivierungs-, Sicherungs- und Wiederherstellungsbedürfnisse der Cluster-Anwendung202 zu unterstützen. Außerdem ist die Archivierungs-Clientanwendung214 imstande, eine beliebige Anzahl von unterschiedlichen Cluster-Anwendungen zu unterstützen. Als Antwort auf eine Ausfallübergabe der Cluster-Anwendung202a wird der Client-Knoten206 zum aktiven Knoten, und die Cluster-Anwendung202b wird auf dem Client-Knoten206 aktiviert. An dieser Stelle wickelt die Archivierungs-Clientanwendung214 nicht länger die Archivierungs-, Sicherungs- und Wiederherstellungsbedürfnisse der Cluster-Anwendung202 ab. Stattdessen übernimmt eine Archivierungs-Clientanwendung216 , die sich auf dem Client-Knoten206 befindet, die Verantwortung für diese Bedürfnisse. Wie nachstehend ausführlicher beschrieben wird, kann die Archivierungs-Clientanwendung216 auf dem Client-Knoten206 vorinstalliert und zur Aktivierung bei einer Ausfallübergabe bereit sein. Alternativ kann die Archivierungs-Clientanwendung216 als Antwort auf die Ausfallübergabe "fliegend" von jedem geeigneten Standort in der Cluster-Netzwerkumgebung aus installiert werden. Die Verwendung von unterschiedlichen Archivierungs-Clientanwendungen ist erwünscht, damit das Archivierungssystem200 Archivierungsaufträge mit den Archivierungs-Clientanwendungen unabhängig vom physischen Standort der Cluster-Anwendung202 durchführen kann und damit das Archivierungssystem200 auf modulare Art und Weise eingesetzt werden kann. Gemäß bekannten Cluster-Methoden und -Prozeduren kann die Cluster-Anwendung202 bei einem Ausfall jederzeit (auch während eines Sicherungs- oder Wiederherstellungsprozesses) zwischen den Client-Knoten204 /206 übergeben und zurückübergeben. - In der beispielhaften Ausführungsform kann die Archivierungs-Serveranwendung
210 oder die virtuelle Client-Anwendung212 Archivierungs-Clientanwendungen auf jedem Knoten installieren oder aktivieren, der eine Cluster-Anwendung aufnehmen kann die durch das Archivierungssystem200 unterstützt wird. Die virtuelle Client-Anwendung212 und/oder die Archivierungs-Serveranwendung210 unterstützt die Speicherung und Verwaltung der Archivierungs-Konfigurationsdateien durch das Archivierungs-Serversystem208 . Die Archivierungs-Konfigurationsdateien werden der jeweiligen Cluster-Anwendung zugeordnet (die Archivierungs-Konfigurationsdateien für eine Cluster-Anwendung schreiben die Art und Weise vor, in der diese Cluster-Anwendung durch das Archivierungssystem200 archiviert oder gesichert wird). Außerdem unterstützt die virtuelle Client-Anwendung212 und/oder die Archivierungs-Serveranwendung210 die Speicherung und Verwaltung der Daten der Cluster-Anwendung, das heißt, der tatsächlich zu archivierenden und/oder wiederherzustellenden Daten. Die tatsächliche Archivierung, Sicherung und Wiederherstellung der Daten der Cluster-Anwendung wird durch die Archivierungs-Serveranwendung210 verwaltet und durch die entsprechende Archivierungs-Clientanwendung gemäß den jeweiligen Archivierungs-Konfigurationsdateien ausgeführt, auf die die virtuelle Client-Anwendung212 zugreift. - Wenn ein Archivierungsauftrag aktiviert wird, erlangt die Archivierungs-Serveranwendung
210 die symbolische Kennung für die spezifische Cluster-Anwendung202 von der virtuellen Client-Anwendung212 . Das Archivierungs-Serversystem200 sendet dann eine Standortanforderung für die Cluster-Anwendung202 . In praktischen Ausführungsformen weist diese Standortanforderung die symbolische Kennung der spezifischen Cluster-Anwendung202 auf. Da die symbolische Kennung sich mit der Cluster-Anwendung bewegt, ist die Archivierungs-Clientanwendung, die auf die Standortanforderung antwortet, diejenige Archivierungs-Clientanwendung, die sich am gleichen physischen Standort wie die Cluster-Anwendung202 befindet. Das Archivierungssystem200 bewirkt dann, dass die entsprechende Archivierungs-Clientanwendung gespeicherte Konfigurationsdateien für die Cluster-Anwendung nutzt, wodurch der Bedarf beseitigt wird, zu bestimmen, ob sich der aktuelle Client-Knoten geändert hat oder ob eine Ausfallübergabe stattgefunden hat. - In dem in
2 gezeigten Beispiel befindet sich das Archivierungssystem208 auf einem physischen Rechenknoten, während sich die Cluster-Anwendung gegenwärtig auf dem Knoten204 befindet, der für den normalen Betrieb der Cluster-Anwendung202 konfiguriert ist. Die Cluster-Anwendung202 ist imstande, bei Ausfall auf einen dritten physischen Knoten206 überzugehen, der für den Ausfallübergabe-Betrieb der Cluster-Anwendung202 konfiguriert ist. Während der erstmaligen Konfigurierung des Archivierungssystems200 erzeugt die Archivierungs-Serveranwendung210 die virtuelle Client-Anwendung212 entsprechend der Cluster-Anwendung202 . Wie nachstehend ausführlicher beschrieben wird, enthält die virtuelle Client-Anwendung212 vorzugsweise einen Namen des virtuellen Clients, den Namen der Cluster-Anwendung202 , eine Namensgebungsadresse, die der Cluster-Anwendung202 zugewiesen ist, und eine Liste der verfügbaren Ausfallübergabeknoten für die Cluster-Anwendung202 . In praktischen Ausführungsformen ist die virtuelle Client-Anwendung212 eine relativ "schlanke" Anwendung, und sie muss nicht dafür konfiguriert werden, die tatsächlichen Archivierungs- und Wiederherstellungsaufgaben abzuwickeln, die ansonsten durch die Archivierungs-Clientanwendungen214 /216 ausgeführt werden. Vielmehr wird die virtuelle Client-Anwendung212 vorrangig dafür genutzt, die Speicherung von Daten für das Archivierungssystem zu verwalten und den physischen Standort der entsprechenden Cluster-Anwendung zu überwachen. - Die Archivierungs-Serveranwendung
210 konfiguriert die Archivierungs-Clientanwendung2l4 auf dem Knoten204 und die Archivierungs-Clientanwendung216 auf dem Knoten206 . Mit anderen Worten, die entsprechenden Archivierungs-Clientanwendungen werden auf ihren Client-Knoten installiert oder aktiviert. Das Archivierungssystem200 kann außerdem eine Liste der konfigurierten Archivierungs-Clientanwendungen aktualisieren, die in der virtuellen Client-Anwendung212 enthalten ist. Sobald der Sicherungsauftrag konfiguriert ist, kann die Archivierungs-Serveranwendung210 mit der virtuellen Client-Anwendung212 kommunizieren, die wiederum versucht, den aktuellen physischen Standort der Cluster-Anwendung202 zu bestimmen. Wenn die Archivierungs-Clientanwendung, die sich auf dem gleichen Knoten wie die Cluster-Anwendung202 befindet, eine geeignete Nachricht empfängt, die als Antwort auf eine Sicherungsauftrag-Anforderung erzeugt wurde, antwortet sie der Archivierungs-Serveranwendung210 mit Information in bezug auf ihren physischen Standort. - Wie oben beschrieben, ist die virtuelle Client-Anwendung
212 zweckmäßig dafür konfiguriert, von einem der verfügbaren Client-Knoten eine Kennung des physischen Standorts (zum Beispiel den dem Knoten zugeordneten Maschinennamen, eine physische IP-Adresse für den Knoten oder irgendeine andere eindeutige Kennung für den Knoten) für die Cluster-Anwendung202 zu erlangen. Danach kann die virtuelle Client-Anwendung212 auf die Archivierungs-Konfigurationsdateien (und möglicherweise andere Information) für die Cluster-Anwendung zugreifen. Dieses Verfahren befähigt die Archivierungs-Serveranwendung210 , den physischen Standort des Knotens der Cluster-Anwendung202 herauszufinden, ohne ständig eine Überwachung in bezug auf eine Änderung des physischen Standorts des Knotens oder eine Ausfallübergabe durchführen zu müssen. Genauer gesagt, kommuniziert die Archivierungs-Serveranwendung210 mit der virtuellen Client-Anwendung212 , die den physischen Knoten der Cluster-Anwendung212 auflöst, so dass in dem Fall, wo der Knoten204 ausfällt und die Cluster-Anwendung202 auf den Knoten206 übergeht, das Archivierungs-Serversystem208 nicht beeinträchtigt wird. -
3 ist eine schematische Darstellung eines beispielhaften Archivierungs-Serversystems300 , das im Archivierungssystem200 genutzt werden kann oder in der Cluster-Netzwerkumgebung100 genutzt werden kann. Wie oben in Verbindung mit dem Archivierungs-Serversystem208 beschrieben wurde, weist das System300 eine Archivierungs-Serveranwendung302 auf, die die hierin beschriebenen Archivierungs-, Sicherungs- und Wiederherstellungsfunktionen abwickelt. In einer praktischen Implementierung kann ein einzelnes Archivierungssystem flexibel konfiguriert sein, um eine beliebige Anzahl von Cluster-Anwendungen (und Nicht-Cluster-Anwendungen) zu unterstützen. Dementsprechend ist das Archivierungs-Serversystem300 mit einer Vielzahl von virtuellen Client-Anwendungen304 dargestellt. In einer beispielhaften Ausführungsform unterstützt das Archivierungs-Serversystem300 N unterschiedliche Cluster-Anwendungen mit N unterschiedlichen Client-Anwendungen304 , und jede virtuelle Client-Anwendung304 ist geeignet für das Zusammenwirken mit nur einer Cluster-Anwendung konfiguriert. Eine solche Auslegung ermöglicht einen skalierbaren Betrieb in kleinen oder großen Umgebungen, erleichtert eine modulare Verteilung der Archivierungs-Clientanwendungen und erleichtert die Kommunikation zwischen einer Cluster-Anwendung und ihrer virtuellen Client-Anwendung (die in praktischen Ausführungsformen einen gemeinsamen Namen tragen). - Das Archivierungs-Serversystem
300 weist auch einen Netzwerkmanager306 und einen Medienmanager308 auf. Der Netzwerkmanager306 wickelt die Kommunikation mit anderen Systemen, Teilsystemen und Komponenten in der Cluster-Netzwerkumgebung über eine(n) oder mehrere Netzwerkwege, Kommunikationsübertragungsstrecken und dergleichen ab. Netzwerkmanager sind dem Fachmann bekannt und Einzelheiten ihrer Arbeitsweise werden hierin nicht angesprochen. Der Medienmanager308 verwaltet die verschiedenen Medienspeichervorrichtungen in der Cluster-Netzwerkumgebung. Zum Beispiel überwacht und/oder verwaltet der Medienmanager308 die Verfügbarkeit der Speichervorrichtungen, die Art der durch die Vorrichtungen genutzten Speichermedien, den physischen Standort der Speichervorrichtungen, welche Client-Knoten Zugriff auf die Speichervorrichtungen haben und wie die Daten der Cluster-Anwendungen am besten tatsächlich zu speichern sind. Diese Elemente können durch die Archivierungs-Serveranwendung302 und/oder durch das Betriebssystem gesteuert werden, die bzw. das sich auf dem Knoten befindet, auf dem das Archivierungs-Serversystem300 installiert ist. -
4 ist eine schematische Darstellung einer beispielhaften virtuellen Client-Anwendung400 , die in einem Archivierungssystem wie etwa dem System200 genutzt werden kann. Für die Zwecke dieser Beschreibung ist die virtuelle Client-Anwendung400 dazu vorgesehen, nur eine Cluster-Anwendung in der Netzwerkumgebung zu unterstützen. Wie oben erwähnt, befindet sich die virtuelle Client-Anwendung400 vorzugsweise am gleichen Knotenstandort wie die entsprechende Archivierungs-Serveranwendung. Die virtuelle Client-Anwendung400 führt eine Vielfalt von Funktionen virtueller Clients401 durch, wie sie hierin beschrieben werden. Zum Beispiel speichert die virtuelle Client-Anwendung400 den Namen der Cluster-Anwendung, speichert die symbolische IP-Adresse der Cluster-Anwendung, speichert Information bezüglich der Cluster-Anwendung (wie etwa die Art der Cluster-Anwendung), speichert eine Liste der Knoten, auf denen Archivierungs-Clientanwendungen installiert sind, und ist imstande, intelligent über gespeicherte Daten zu berichten. - Die virtuelle Client-Anwendung
400 weist eine Tabelle oder Liste402 der Client-Knoten auf, die mit einer mit dem Archivierungssystem kompatiblen Archivierungs-Clientanwendung konfiguriert wurden, verwaltet sie oder greift auf sie zu. Die Liste402 kann eine beliebige Anzahl von Einträgen haben, und sie kann eine statische Liste sein, die zum Zeitpunkt der Installation/Einrichtung erzeugt wurde, eine dynamische Liste, die erzeugt und aktualisiert wird, wenn Archivierungs-Clientanwendungen als Antwort auf einen Sicherungs-/Wiederherstellungsauftrag "fliegend" installiert werden, oder eine Kombination aus beidem. Zum Beispiel ist der Client-Knoten A eindeutig durch eine physische IP-Adresse und/oder einen ersten Maschinennamen gekennzeichnet und Client-Knoten B ist eindeutig durch eine andere physische IP-Adresse und/oder einen zweiten Maschinennamen gekennzeichnet. Die Liste402 befähigt die virtuelle Client-Anwendung400 , den physischen Knoten für eine Cluster-Anwendung auf der Grundlage der physischen IP-Adresse oder des Maschinennamens des Knotens herauszufinden. - Die virtuelle Client-Anwendung
400 kann auch andere durch das Archivierungssystem genutzte Information, Daten, Dateien und/oder Kennungen aufweisen, verwalten oder darauf zugreifen. Zum Beispiel können die folgenden Elemente in geeigneter Form der virtuellen Client-Anwendung400 zugeordnet sein: ein Name des virtuellen Clients404 , eine Kennung des virtuellen Clients (zum Beispiel eine IP-Adresse)406 , der Name408 der entsprechenden Cluster-Anwendung, eine symbolische Kennung (zum Beispiel eine IP-Adresse)410 für die jeweilige(n) Cluster-Anwendung, Anwendungsdaten und/oder Dateikennungen, die archivierte Daten/Dateien für die Cluster-Anwendung (Bezugszeichen412 ) darstellen, und Archivierungs-Konfigurationsdateien414 für die Cluster-Anwendung. Der Name des virtuellen Clients404 kann ein einfacher alphanumerischer Name für den virtuellen Client400 sein, zum Beispiel ein Wort oder eine Wortgruppe, das bzw. die den virtuellen Client400 eindeutig kennzeichnet. Die Kennung des virtuellen Clients406 ist eine Kennung auf einer niederen Ebene, zum Beispiel eine IP-Adresse, die für die Kompatibilität mit den in der Cluster-Netzwerkumgebung verwendeten Kommunikationsprotokollen formatiert ist. Die Kennung des virtuellen Clients406 befähigt die Archivierungs-Clientanwendungen in der Cluster-Netzwerkumgebung, die richtige virtuelle Client-Anwendung herauszufinden und mit ihr zu kommunizieren (eine einzelne Archivierungs-Clientanwendung kann eine beliebige Anzahl von Cluster-Anwendungen unterstützen und darum mit einer beliebigen Anzahl von virtuellen Client-Anwendungen kommunizieren). Wie oben beschrieben kann die symbolische Kennung410 eine virtuelle IP-Adresse sein, die die Cluster-Anwendung eindeutig kennzeichnet. Die virtuelle Client-Anwendung400 nutzt die symbolische Kennung410 , um den physischen Standort der entsprechenden Cluster-Anwendung zu bestimmen. Der Name408 und/oder die symbolische Kennung410 der Cluster-Anwendung befähigen außerdem eine einzelne Archivierungs-Clientanwendung, mit einer Vielzahl von virtuellen Client-Anwendungen zu kommunizieren. - Die Archivierungs-Konfigurationsdateien für die Cluster-Anwendung
414 geben die Art und Weise vor, in der die Daten der Cluster-Anwendung gesichert und/oder wiederhergestellt werden, beschreiben Protokolle zur Durchführung der Sicherung/Wiederherstellung, geben den Status der letzten Sicherung und/oder Wiederherstellung an und können anderer in der Fachwelt bekannten üblichen Funktionalität zugeordnet sein. In der Praxis sind einige der Sicherungskonfigurationsdateien414 von statischem Charakter, während andere von dynamischem Charakter sind, weil sie jedes Mal modifiziert werden, wenn das Archivierungssystem einen Auftrag durchführt. Letztendlich sind die Daten der Cluster-Anwendung die Information, die durch das Archivierungssystem archiviert und/oder wiederhergestellt wird. Die virtuelle Client-Anwendung400 unterstützt bei Bedarf die physische Speicherung und Wiederherstellung der Daten der Cluster-Anwendung, wie sie durch die Archivierungs-Serveranwendung abgewickelt wird. -
5 ist eine schematische Darstellung einer beispielhaften Archivierungs-Clientanwendung500 , die in einem Archivierungssystem genutzt werden kann, wie hierin beschrieben. In praktischen Anwendungen muss sich eine aktive Archivierungs-Clientanwendung500 auf dem gleichen Knoten befinden, auf dem sich die Cluster-Anwendung befindet. Dementsprechend kann in einer beispielhaften Anordnung die Archivierungs-Clientanwendung500 anfangs auf jedem primären oder "normalen" Betriebsknoten für jede durch das Netzwerk unterstützte Cluster-Anwendung und auf jedem potentiellen Ausfallübergabeknoten für diese Cluster-Anwendungen installiert werden. Alternativ ist es möglich, dass die Archivierungs-Clientanwendung500 nur bei Bedarf dynamisch installiert oder zu einem Knoten "geschoben" wird. In bevorzugten praktischen Ausführungsformen befindet sich die Archivierungs-Clientanwendung500 auf einem anderen Knoten als die entsprechende Archivierungs-Serveranwendung. Die Archivierungs-Clientanwendung500 führt eine Vielfalt von Archivierungsclient-Funktionen502 durch, wie sie hierin beschrieben sind. Zum Beispiel kann die Archivierungs-Clientanwendung500 mit anderen Anwendungen oder Prozessen im Archivierungssystem kommunizieren, zur Unterstützung der Archivierungsprozeduren mit spezifischen Anwendungen, Betriebssystemen und Hardware kommunizieren, Daten von spezifischen Anwendungen, Betriebssystemen oder Hardware an einen Geräte-Handler übergeben und Einzelheiten von Sicherungsaufträgen an einen Auftragsmanager melden, der im Archivierungs-Serversystem geführt wird. - Die Archivierungs-Clientanwendung
500 weist eine Tabelle oder Liste504 von Namen virtueller Clients506 und der entsprechender Kennungen der virtuellen Clients508 auf, verwaltet sie oder greift darauf zu. Die Liste504 kann eine beliebige Anzahl von Einträgen haben, und sie kann eine statische Liste sein, die zum Zeitpunkt der Installation bzw. Einrichtung erzeugt wurde, eine dynamische Liste, die erzeugt und aktualisiert wird, wenn virtuelle Clientanwendungen durch das Archivierungssystem erzeugt werden, oder eine Kombination aus beidem. Zum Beispiel ist der virtuelle Client 1 durch eine erste IP-Adresse eindeutig gekennzeichnet, der virtuelle Client 2 ist durch eine zweite IP-Adresse eindeutig gekennzeichnet und so weiter. Die Liste504 befähigt eine Archivierungs-Clientanwendung500 , die richtige virtuelle Client-Anwendung für die auf ihr befindlichen Cluster-Anwendungen herauszufinden und mit ihr zu kommunizieren. - Ein Name des virtuellen Clients
506 kann ein einfacher alphanumerischer Name für die jeweilige virtuelle Client-Anwendung sein, zum Beispiel ein Wort oder eine Wortgruppe, das bzw. die die virtuelle Client-Anwendung eindeutig kennzeichnet. Die Kennung des virtuellen Clients508 ist eine Kennung auf einer niederen Ebene, zum Beispiel eine IP-Adresse, die für die Kompatibilität mit den in der Cluster-Netzwerkumgebung verwendeten Kommunikationsprotokollen formatiert ist. Die Kennung des virtuellen Clients508 befähigt die Archivierungs-Clientanwendung500 , die richtige virtuelle Client-Anwendung herauszufinden und mit ihr zu kommunizieren (wie oben erwähnt, kann eine Archivierungs-Clientanwendung eine beliebige Anzahl von Cluster-Anwendungen unterstützen und darum mit einer beliebigen Anzahl von virtuellen Client-Anwendungen kommunizieren). - Die Archivierungs-Clientanwendung
500 weist auch einen Netzwerkmanager510 auf, der die Kommunikation mit anderen Systemen, Teilsystemen und Komponenten in der Cluster-Netzwerkumgebung über eine(n) oder mehrere Netzwerkwege, Kommunikationsübertragungsstrecken oder dergleichen abwickelt. Zum Beispiel unterstützt der Netzwerkmanager510 die Kommunikation zwischen der Archivierungs-Clientanwendung500 und der Archivierungs-Serveranwendung, dem Betriebssystem des Archivierungs-Serverknotens, den virtuellen Client-Anwendungen und dergleichen. Netzwerkmanager sind dem Fachmann bekannt, und Einzelheiten ihrer Arbeitsweise werden hierin nicht angesprochen. -
6 ist ein Ablaufplan eines Sicherungsprozesses für eine Cluster-Anwendung600 , der durch ein Archivierungssystem durchgeführt werden kann, wie hierin beschrieben. Die verschiedenen in Verbindung mit dem Prozess600 durchgeführten Aufgaben werden durch Software, Hardware, Firmware oder jedwede Kombination daraus durchgeführt. In praktischen Ausführungsformen können Abschnitte des Prozesses600 durch unterschiedliche Elemente des Archivierungssystems durchgeführt werden, zum Beispiel durch die Archivierungs-Serveranwendung, die virtuelle Client-Anwendung, die Archivierungs-Clientanwendung, die Betriebssysteme der jeweiligen Knoten und dergleichen. Man sollte anerkennen, dass der Prozess600 eine beliebige Anzahl von zusätzlichen oder alternativen Aufgaben einschließen kann, dass die in6 gezeigten Aufgaben nicht in der dargestellten Reihenfolge durchgeführt werden müssen und dass der Prozess600 in einen umfassenderen Archivierungsprozess oder ein Programm mit zusätzlicher, hierin nicht ausführlich beschriebener Funktionalität einbezogen sein kann. - Die folgende Beschreibung des Prozesses
600 geht davon aus, dass die zu archivierende Cluster-Anwendung als Cluster-Anwendung AA bezeichnet wird, was sie von anderen Cluster-Anwendungen im Netzwerk unterscheidet. Die folgende Beschreibung geht außerdem davon aus, dass die Archivierungs-Serveranwendung auf einem geeigneten Netzwerkknoten installiert wird und dass eine virtuelle Client-Anwendung erzeugt und für die Cluster-Anwendung AA konfiguriert worden ist. - Der Sicherungsprozess für die Cluster-Anwendung
600 kann mit einer Aufgabe602 beginnen, die einen Sicherungsauftrag für die Cluster-Anwendung AA anfordert. Die ursprüngliche Sicherungsanforderung kann durch ein geeignetes Zeitplanungsprogramm, das durch das Archivierungssystem verwaltet wird, oder als Antwort auf eine Benutzereingabe erzeugt werden. In der praktischen Ausführungsform fordert die Archivierungs-Serveranwendung den Sicherungsauftrag an, und die Anforderung identifiziert die Cluster-Anwendung AA. Als Antwort auf die Auftragsanforderung können Einzelheiten des Sicherungsauftrags von einem passenden Speicherstandort abgerufen werden (Aufgabe604 ). Solche Information wird schließlich durch die antwortende Archivierungs-Clientanwendung verwendet, wenn sie den Sicherungsauftrag durchführt. - Schließlich erzeugt die Archivierungs-Serveranwendung oder die virtuelle Client-Anwendung für die Cluster-Anwendung AA eine Standortanforderung, die die symbolische Kennung oder die virtuelle IP-Adresse für die Cluster-Anwendung AA aufweist (Aufgabe
606 ). Die Standortanforderung kann auch die während der Aufgabe604 abgerufenen Einzelheiten des Sicherungsauftrags, den Namen der Cluster-Anwendung AA und/oder den Namen des entsprechenden virtuellen Clients enthalten. In dieser Hinsicht sind die Archivierungs-Serveranwendung, die jeweilige virtuelle Client-Anwendung und ihre entsprechenden Software-Elemente, einzeln oder in Kombination, beispielhafte Mittel zur Erzeugung einer Standortanforderung für die Cluster-Anwendung AA. In der Praxis kann diese Standortanforderung durch ein herkömmliches Programm gemäß bekannten Methodiken für Cluster-Netzwerke erzeugt werden. Diese Standortanforderung stellt einen Versuch durch die virtuelle Client-Anwendung dar, den gegenwärtigen physischen Standort der Cluster-Anwendung AA zu bestimmen. - Angenommen, dass die Cluster-Anwendung AA sich tatsächlich irgendwo im Netzwerk befindet, dann empfängt der Client-Knoten, auf dem sich die Cluster-Anwendung AA befindet, die Standortanforderung, und die auf diesem Knoten befindliche Archivierungs-Clientanwendung antwortet auf die Anforderung (Aufgabe
608 ). In der beispielhaften Ausführungsform kann Aufgabe608 durch das Betriebssystem des Client-Knotens oder durch die auf dem Client-Knoten befindliche Archivierungs-Clientanwendung durchgeführt werden. Die Antwort oder Bestätigung vom Client-Knoten gibt den physischen Standort des Client-Knotens an, der wiederum den gegenwärtigen Standort der Cluster-Anwendung AA angibt. In der praktischen Ausführungsform verwendet das Archivierungssystem eine Namensgebungsvereinbarung, die den verschiedenen Knoten innerhalb der Netzwerkumgebung unterschiedliche "Maschinennamen" zuweist. Dementsprechend weist die Antwort vom Client-Knoten den eindeutigen Maschinennamen für diesen bestimmten Knoten auf. Der bzw. die Netzwerkmanager und/oder andere Komponenten des Systems können die Übersetzung eines Maschinennamens in eine Adresskennung (zum Beispiel eine IP-Adresse), die mit dem Netzwerk oder den Betriebssystemen kompatibel ist, abwickeln. Die Antwort vom Client-Knoten wird an die entsprechende virtuelle Client-Anwendung unter Verwendung der IP-Adresse der virtuellen Client-Anwendung zurückgesendet. Dies befähigt die virtuelle Client-Anwendung, den physischen Standort der Cluster-Anwendung AA (Aufgabe610 ) zu erlangen. In dieser Hinsicht sind die Archivierungs-Serveranwendung, die jeweilige virtuelle Client-Anwendung, die jeweilige Archivierungs-Clientanwendung, der jeweilige Client-Knoten und ihre entsprechenden Software-Elemente und Betriebssysteme, einzeln oder in Kombination, beispielhafte Mittel zum Erlangen einer Kennung des physischen Standorts für die Cluster-Anwendung AA. - Wie oben in Verbindung mit
4 beschrieben, verwaltet jede virtuelle Client-Anwendung eine Liste der Client-Knoten mit aktiven Archivierungs-Clientanwendungen. In der praktischen Ausführungsform muss sich eine aktive Archivierungs-Clientanwendung auf dem physischen Client-Knoten befinden, bevor die tatsächliche Datenarchivierung beginnen kann. Dementsprechend kann das Archivierungssystem eine Anfrageaufgabe612 durchführen, um zu bestimmen, ob zur Zeit eine Archivierungs-Clientanwendung auf diesem Knoten aktiv ist, und/oder um zu bestimmen, ob sich auf diesem Client-Knoten eine ruhende Archivierungs-Clientanwendung befindet. In der praktischen Ausführungsform wird die Anfrageaufgabe612 durch die jeweilige virtuelle Client-Anwendung durchgeführt. Wenn die Anfrageaufgabe612 bestimmt, dass sich auf dem Knoten keine aktive Archivierungs-Clientanwendung befindet, dann löst das Archivierungssystem eine Aufgabe614 aus. Während der Aufgabe614 kann das Archivierungssystem eine aktive Archivierungs-Clientanwendung auf dem Client-Knoten installieren (wenn sich keine solche Anwendung auf dem Knoten befindet) oder eine ruhende Archivierungs-Clientanwendung aktivieren, die bereits auf dem Client-Knoten installiert ist. In der Praxis kann die Archivierungs-Serveranwendung "Schiebe"-Methoden verwenden, um die Archivierungs-Clientanwendung je nach Bedarf dynamisch zu installieren, oder sie kann eine geeignete Nachricht erzeugen, um die ruhende Archivierungs-Clientanwendung auf dem Knoten zu aktivieren. - Nach der Aufgabe
614 oder wenn die Anfrageaufgabe612 bestimmt, dass sich auf dem Client-Knoten eine aktive Archivierungs-Clientanwendung befindet, kann das Archivierungssystem mit den tatsächlichen Sicherungs-/Archivierungsprozeduren fortfahren. Insbesondere greift das Archivierungssystem auf die Archivierungs-Konfigurationsdateien zu (Aufgabe616 ), die der Cluster- Anwendung AA entsprechen. In der Praxis speichert das Archivierungssystem die Archivierungs-Konfigurationsdateien, so dass diese Dateien bei Bedarf den Archivierungs-Clientanwendungen vorgelegt werden können (unabhängig vom physischen Standort der Cluster-Anwendung AA). In dieser Hinsicht sind die Archivierungs-Serveranwendung, die jeweilige virtuelle Client-Anwendung, die jeweilige Archivierungs-Clientanwendung, der jeweilige Client-Knoten und ihre entsprechenden Software-Elemente und Betriebssysteme, einzeln oder in Kombination, beispielhafte Mittel für den Zugriff auf die Archivierungs-Konfigurationsdateien. - Die Konfigurationsdateien geben die tatsächlichen Sicherungsprozeduren vor. In der beispielhaften Ausführungsform greift die Archivierungs-Serveranwendung auf diese Konfigurationsdateien mittels der virtuellen Client-Anwendung zu. Diese Konfigurationsdateien wurden oben in Verbindung mit
4 beschrieben. - Eine Funktion der Archivierungs-Konfigurationsdateien besteht darin, das Archivierungssystem zu befähigen, mindestens eine Speichermedienvorrichtung zur Speicherung der Sicherungsdaten anzugeben (Aufgabe
618 ). Zum Beispiel kann die Archivierungs-Serveranwendung ein spezifisches Bandlaufwerk angeben, das sich in unmittelbarer physischer Nähe zum Client-Knoten befindet, oder sie kann ein Bandlaufwerk angeben, das einen großen Betrag an verfügbarem Speicherraum hat. Danach führt das Archivierungssystem eine Sicherung (Aufgabe620 ) der aktuellen Datei (oder Dateien) auf einer geeigneten Speichermedienvorrichtung, zum Beispiel einer der in Aufgabe618 angegebenen Medienvorrichtungen, durch. Dabei sind die Archivierungs-Serveranwendung, die jeweilige virtuelle Client-Anwendung, die jeweilige Archivierungs-Clientanwendung, der jeweilige Client-Knoten und ihre entsprechenden Software-Elemente und Betriebssysteme, einzeln oder in Kombination, beispielhafte Mittel zur Abwicklung der Archivierung der Daten für die Cluster-Anwendung AA gemäß den Archivierungs-Konfigurationsdateien. - Die tatsächliche Sicherungs- oder Archivierungsprozedur speichert Daten für die Cluster-Anwendung AA gemäß den Archivierungs-Konfigurationsdateien, die durch die virtuelle Client-Anwendung verwaltet werden. Das Archivierungssystem kann an diesem Punkt des Prozesses eine beliebige Anzahl der Dateien archivieren. Im hierin ausführlich beschriebenen beispielhaften Prozess
600 werden die Dateien der Cluster-Anwendung AA jedoch einzeln archiviert, so dass die Sicherungsaufträge auch dann ausgeführt werden können, wenn die Cluster-Anwendung AA bei Ausfall übergeht. Dieses Merkmal ist höchst wünschenswert, weil ein Archivierungsauftrag im Fall einer Ausfallübergabe der Cluster-Anwendung nicht zurückgesetzt oder wiederholt werden muss. - Der Sicherungsprozess für die Cluster-Anwendung
600 kann eine Anfrageaufgabe622 aufweisen, die prüft, ob noch mehr Dateien für die Cluster-Anwendung AA zu sichern sind. Wenn nicht, dann ist der Archivierungsprozess für diese Wiederholung abgeschlossen, und der Prozess600 endet. Wenn ja, dann wird der Prozess600 in Aufgabe606 wiederaufgenommen, so dass eine andere Standortanforderung erzeugt werden kann. Auf diese Weise kann der Großteil des Prozesses600 für jede einzelne Datei wiederholt werden (oder alternativ wiederholt werden, nachdem eine beliebige Anzahl von Daten gesichert worden ist). Mit anderen Worten, der Prozess600 bestätigt periodisch den aktuellen physischen Standort der Cluster-Anwendung AA und ist imstande, die Daten für die Cluster-Anwendung AA unabhängig von ihrem tatsächlichen physischen Standort zu sichern. Somit kann, wenn der aktualisierte physische Standort der gleiche wie der letzte physische Standort ist, die Archivierungsprozedur den gleichen Satz von Konfigurationsdateien verwenden. Wenn sich hingegen der physische Standort verändert hat, dann kann die Archivierungsprozedur einen neuen Satz von Konfigurationsdateien nutzen, um die aktuellen Daten zu sichern, oder den gleichen Satz von Konfigurationsdateien nutzen, aber für eine andere Archivierungs-Clientanwendung, die auf einem anderen Knoten installiert ist. - Die vorliegende Erfindung ist oben mit Bezug auf eine bevorzugte Ausführungsform beschrieben worden. Jedoch wird der Fachmann, nachdem er diese Offenbarung gelesen hat, erkennen, dass Änderungen und Modifikationen an der bevorzugten Ausführungsform möglich sind, ohne vom Schutzbereich der vorliegenden Erfindung abzuweichen. Es ist beabsichtigt, dass diese und andere Veränderungen oder Modifikationen in den Schutzbereich der vorliegenden Erfindung eingeschlossen sind, wie er in den beigefügten Ansprüchen ausgedrückt ist.
Claims (10)
- Verfahren zur Archivierung von Daten für eine Cluster-Anwendung (
202 ) in einer Cluster-Netzwerkumgebung, wobei das Verfahren die folgenden Schritte umfasst: Erzeugen (606 ) einer Standortanfrage für die Cluster-Anwendung (202 ), wobei die Standortanfrage eine symbolische Kennung (410 ) für die Cluster-Anwendung aufweist; Erlangen (610 ) einer Kennung des physischen Standorts für die Cluster-Anwendung (202 ) als Antwort auf die Standortanfrage; Zugreifen (616 ) auf Archivierungs-Konfigurationsdateien für die Cluster-Anwendung; und Archivieren (620 ) von Daten für die Cluster-Anwendung gemäß den Archivierungs-Konfigurationsdateien. - Verfahren nach Anspruch 1, wobei die Kennung des physischen Standorts einen Maschinennamen für einen Knoten in der Cluster-Netzwerkumgebung umfasst.
- Verfahren nach Anspruch 2, wobei die symbolische Kennung (
410 ) eine virtuelle IP-Adresse umfasst, die für die Cluster-Anwendung eindeutig ist. - Verfahren nach Anspruch 1, wobei die Kennung des physischen Standorts einen Knoten (
204 ,206 ) in der Cluster-Netzwerkumgebung bezeichnet. - Verfahren nach Anspruch 4, ferner mit den folgenden Schritten: Bestimmen (
612 ) als Antwort auf die Kennung des physischen Standorts, dass auf dem Knoten keine aktive Archivierungsclient-Anwendung läuft; und als Antwort auf den Bestimmungsschritt, Installieren (614 ) einer aktiven Archivierungsclient-Anwendung (500 ) auf dem Knoten vor dem aktive Archivierungsschritt. - Verfahren nach Anspruch 4, ferner mit den folgenden Schritten: Bestimmen (
612 ) als Antwort auf die Kennung des physischen Standorts, dass eine aktive Archivierungsclient-Anwendung (500 ) auf dem Knoten im Ruhezustand ist; und als Antwort auf den Bestimmungsschritt, Aktivieren (614 ) der Archivierungsclient-Anwendung auf dem Knoten. - Verfahren nach Anspruch 1, wobei der Archivierungsschritt mindestens eine Speichermedienvorrichtung für die Daten identifiziert.
- System zur Archivierung von Daten für eine Cluster-Anwendung in einer Cluster-Netzwerkumgebung, wobei das System umfasst: Mittel (
200 ) zur Erzeugung einer Standortanfrage für die Cluster-Anwendung (202 ), wobei die Standortanfrage eine symbolische Kennung für die Cluster-Anwendung aufweist; Mittel (214 ,216 ) zur Erlangung einer Kennung des physischen Standorts für die Cluster-Anwendung (202 ) als Antwort auf die Standortanfrage; Mittel (212 ) zum Zugriff auf Archivierungs-Konfigurationsdateien für die Cluster-Anwendung; und Mittel (210 ) zur Abwicklung der Archivierung von Daten für die Cluster-Anwendung gemäß den Archivierungs-Konfigurationsdateien. - System nach Anspruch 8, wobei die Mittel zur Erzeugung, die Mittel zur Erlangung, die Mittel zum Zugriff und die Mittel zur Abwicklung in Software implementiert sind.
- Computerprogramm-Erzeugnis mit durch einen Prozessor ausführbaren Anweisungen, die betriebsfähig sind, einem oder mehreren Computern zu ermöglichen, das Verfahren nach einem der Ansprüche 1 bis 7 durchzuführen.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US845734 | 1986-03-28 | ||
| US10/845,734 US20050267920A1 (en) | 2004-05-13 | 2004-05-13 | System and method for archiving data in a clustered environment |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE602004002858D1 DE602004002858D1 (de) | 2006-11-30 |
| DE602004002858T2 true DE602004002858T2 (de) | 2007-05-31 |
Family
ID=35426656
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE602004002858T Expired - Lifetime DE602004002858T2 (de) | 2004-05-13 | 2004-07-29 | Vorrichtung und Verfahren zur Datenarchivierung in einem Clustersystem |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20050267920A1 (de) |
| EP (1) | EP1615131B1 (de) |
| AT (1) | ATE343174T1 (de) |
| DE (1) | DE602004002858T2 (de) |
Families Citing this family (38)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7124171B1 (en) * | 2002-05-23 | 2006-10-17 | Emc Corporation | In a networked computing cluster storage system and plurality of servers sharing files, in the event of server unavailability, transferring a floating IP network address from first server to second server to access area of data |
| US8224786B2 (en) * | 2004-06-01 | 2012-07-17 | Inmage Systems, Inc. | Acquisition and write validation of data of a networked host node to perform secondary storage |
| US8055745B2 (en) * | 2004-06-01 | 2011-11-08 | Inmage Systems, Inc. | Methods and apparatus for accessing data from a primary data storage system for secondary storage |
| US7979656B2 (en) | 2004-06-01 | 2011-07-12 | Inmage Systems, Inc. | Minimizing configuration changes in a fabric-based data protection solution |
| US7676502B2 (en) * | 2006-05-22 | 2010-03-09 | Inmage Systems, Inc. | Recovery point data view shift through a direction-agnostic roll algorithm |
| US9209989B2 (en) * | 2004-06-01 | 2015-12-08 | Inmage Systems, Inc. | Causation of a data read operation against a first storage system by a server associated with a second storage system according to a host generated instruction |
| US8949395B2 (en) | 2004-06-01 | 2015-02-03 | Inmage Systems, Inc. | Systems and methods of event driven recovery management |
| US7698401B2 (en) * | 2004-06-01 | 2010-04-13 | Inmage Systems, Inc | Secondary data storage and recovery system |
| US8868858B2 (en) * | 2006-05-19 | 2014-10-21 | Inmage Systems, Inc. | Method and apparatus of continuous data backup and access using virtual machines |
| US7434218B2 (en) * | 2005-08-15 | 2008-10-07 | Microsoft Corporation | Archiving data in a virtual application environment |
| US8601225B2 (en) * | 2005-09-16 | 2013-12-03 | Inmage Systems, Inc. | Time ordered view of backup data on behalf of a host |
| US8683144B2 (en) * | 2005-09-16 | 2014-03-25 | Inmage Systems, Inc. | Causation of a data read against a first storage system to optionally store a data write to preserve the version to allow viewing and recovery |
| US7464151B1 (en) * | 2006-01-25 | 2008-12-09 | Sprint Communications Company L.P. | Network centric application failover architecture |
| US7761595B1 (en) | 2006-01-25 | 2010-07-20 | Sprint Communications Company L.P. | Dynamic server addition using virtual routing |
| US8321377B2 (en) | 2006-04-17 | 2012-11-27 | Microsoft Corporation | Creating host-level application-consistent backups of virtual machines |
| US8554727B2 (en) * | 2006-05-19 | 2013-10-08 | Inmage Systems, Inc. | Method and system of tiered quiescing |
| US8838528B2 (en) * | 2006-05-22 | 2014-09-16 | Inmage Systems, Inc. | Coalescing and capturing data between events prior to and after a temporal window |
| US8527721B2 (en) * | 2008-12-26 | 2013-09-03 | Rajeev Atluri | Generating a recovery snapshot and creating a virtual view of the recovery snapshot |
| US8527470B2 (en) | 2006-05-22 | 2013-09-03 | Rajeev Atluri | Recovery point data view formation with generation of a recovery view and a coalesce policy |
| US7634507B2 (en) * | 2006-08-30 | 2009-12-15 | Inmage Systems, Inc. | Ensuring data persistence and consistency in enterprise storage backup systems |
| US8060709B1 (en) * | 2007-09-28 | 2011-11-15 | Emc Corporation | Control of storage volumes in file archiving |
| US8326805B1 (en) * | 2007-09-28 | 2012-12-04 | Emc Corporation | High-availability file archiving |
| US8918603B1 (en) | 2007-09-28 | 2014-12-23 | Emc Corporation | Storage of file archiving metadata |
| US9583130B2 (en) * | 2007-10-05 | 2017-02-28 | Imation Corp. | Methods for control of digital shredding of media |
| US8250088B2 (en) * | 2007-10-05 | 2012-08-21 | Imation Corp. | Methods for controlling remote archiving systems |
| US8103616B2 (en) * | 2007-10-05 | 2012-01-24 | Imation Corp. | Methods for implementation of information audit trail tracking and reporting in a storage system |
| US8615491B2 (en) * | 2007-10-08 | 2013-12-24 | International Business Machines Corporation | Archiving tool for managing electronic data |
| US8078649B2 (en) * | 2008-04-07 | 2011-12-13 | Installfree, Inc. | Method and system for centrally deploying and managing virtual software applications |
| US8305706B2 (en) | 2008-07-11 | 2012-11-06 | Imation Corp. | Disk library system including array of removable disk cartridges and movable connector system |
| US8028194B2 (en) * | 2008-07-25 | 2011-09-27 | Inmage Systems, Inc | Sequencing technique to account for a clock error in a backup system |
| US8069227B2 (en) * | 2008-12-26 | 2011-11-29 | Inmage Systems, Inc. | Configuring hosts of a secondary data storage and recovery system |
| US8290912B1 (en) * | 2010-01-29 | 2012-10-16 | Symantec Corporation | Endpoint virtualization aware backup |
| US9817739B1 (en) * | 2012-10-31 | 2017-11-14 | Veritas Technologies Llc | Method to restore a virtual environment based on a state of applications/tiers |
| US10432703B2 (en) * | 2012-11-26 | 2019-10-01 | Facebook, Inc. | On-demand session upgrade in a coordination service |
| US9558078B2 (en) | 2014-10-28 | 2017-01-31 | Microsoft Technology Licensing, Llc | Point in time database restore from storage snapshots |
| US10339016B2 (en) | 2017-08-10 | 2019-07-02 | Rubrik, Inc. | Chunk allocation |
| US10819656B2 (en) * | 2017-07-24 | 2020-10-27 | Rubrik, Inc. | Throttling network bandwidth using per-node network interfaces |
| WO2019055628A1 (en) | 2017-09-15 | 2019-03-21 | Iron Mountain Incorporated | PROTECTION AND RECOVERY OF SECURE DATA |
Family Cites Families (52)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5435003A (en) * | 1993-10-07 | 1995-07-18 | British Telecommunications Public Limited Company | Restoration in communications networks |
| WO1996032685A1 (en) * | 1995-04-11 | 1996-10-17 | Kinetech, Inc. | Identifying data in a data processing system |
| US5978933A (en) * | 1996-01-11 | 1999-11-02 | Hewlett-Packard Company | Generic fault tolerant platform |
| US5852724A (en) * | 1996-06-18 | 1998-12-22 | Veritas Software Corp. | System and method for "N" primary servers to fail over to "1" secondary server |
| US6134673A (en) * | 1997-05-13 | 2000-10-17 | Micron Electronics, Inc. | Method for clustering software applications |
| US6363497B1 (en) * | 1997-05-13 | 2002-03-26 | Micron Technology, Inc. | System for clustering software applications |
| US6101508A (en) * | 1997-08-01 | 2000-08-08 | Hewlett-Packard Company | Clustered file management for network resources |
| US7082553B1 (en) * | 1997-08-25 | 2006-07-25 | At&T Corp. | Method and system for providing reliability and availability in a distributed component object model (DCOM) object oriented system |
| US6173420B1 (en) * | 1997-10-31 | 2001-01-09 | Oracle Corporation | Method and apparatus for fail safe configuration |
| US6360331B2 (en) * | 1998-04-17 | 2002-03-19 | Microsoft Corporation | Method and system for transparently failing over application configuration information in a server cluster |
| US6243825B1 (en) * | 1998-04-17 | 2001-06-05 | Microsoft Corporation | Method and system for transparently failing over a computer name in a server cluster |
| US6789114B1 (en) * | 1998-08-05 | 2004-09-07 | Lucent Technologies Inc. | Methods and apparatus for managing middleware service in a distributed system |
| EP1030494B1 (de) * | 1999-02-17 | 2006-06-28 | Sony Deutschland GmbH | Kommunikationseinheit und Kommunikationsverfahren mit Profilverwaltung |
| US6523130B1 (en) * | 1999-03-11 | 2003-02-18 | Microsoft Corporation | Storage system having error detection and recovery |
| US6192417B1 (en) * | 1999-03-30 | 2001-02-20 | International Business Machines Corporation | Multicast cluster servicer for communicating amongst a plurality of nodes without a dedicated local area network |
| US6446218B1 (en) * | 1999-06-30 | 2002-09-03 | B-Hub, Inc. | Techniques for maintaining fault tolerance for software programs in a clustered computer system |
| US6374297B1 (en) * | 1999-08-16 | 2002-04-16 | International Business Machines Corporation | Method and apparatus for load balancing of web cluster farms |
| US6895400B1 (en) * | 1999-10-05 | 2005-05-17 | Veritas Operating Corporation | Dynamic symbolic link resolution |
| US7210147B1 (en) * | 1999-10-05 | 2007-04-24 | Veritas Operating Corporation | IP virtualization |
| US6934269B1 (en) * | 2000-04-24 | 2005-08-23 | Microsoft Corporation | System for networked component address and logical network formation and maintenance |
| US7010617B2 (en) * | 2000-05-02 | 2006-03-07 | Sun Microsystems, Inc. | Cluster configuration repository |
| US6854069B2 (en) * | 2000-05-02 | 2005-02-08 | Sun Microsystems Inc. | Method and system for achieving high availability in a networked computer system |
| US6718383B1 (en) * | 2000-06-02 | 2004-04-06 | Sun Microsystems, Inc. | High availability networking with virtual IP address failover |
| US6687849B1 (en) * | 2000-06-30 | 2004-02-03 | Cisco Technology, Inc. | Method and apparatus for implementing fault-tolerant processing without duplicating working process |
| US6865591B1 (en) * | 2000-06-30 | 2005-03-08 | Intel Corporation | Apparatus and method for building distributed fault-tolerant/high-availability computed applications |
| US6675199B1 (en) * | 2000-07-06 | 2004-01-06 | Microsoft | Identification of active server cluster controller |
| US6973491B1 (en) * | 2000-08-09 | 2005-12-06 | Sun Microsystems, Inc. | System and method for monitoring and managing system assets and asset configurations |
| US6609213B1 (en) * | 2000-08-10 | 2003-08-19 | Dell Products, L.P. | Cluster-based system and method of recovery from server failures |
| EP1323040A4 (de) * | 2000-09-08 | 2005-08-03 | Goahead Software Inc | System und verfahren zur verwaltung von clustern mit mehreren knoten |
| US7426566B2 (en) * | 2001-01-17 | 2008-09-16 | International Business Machines Corporation | Methods, systems and computer program products for security processing inbound communications in a cluster computing environment |
| JP4131781B2 (ja) * | 2001-03-30 | 2008-08-13 | 株式会社東芝 | 分散処理型データベース管理システム |
| US6976039B2 (en) * | 2001-05-25 | 2005-12-13 | International Business Machines Corporation | Method and system for processing backup data associated with application, querying metadata files describing files accessed by the application |
| US6944785B2 (en) * | 2001-07-23 | 2005-09-13 | Network Appliance, Inc. | High-availability cluster virtual server system |
| US6948038B2 (en) * | 2001-07-24 | 2005-09-20 | Microsoft Corporation | System and method for backing up and restoring data |
| US6934880B2 (en) * | 2001-11-21 | 2005-08-23 | Exanet, Inc. | Functional fail-over apparatus and method of operation thereof |
| US7139809B2 (en) * | 2001-11-21 | 2006-11-21 | Clearcube Technology, Inc. | System and method for providing virtual network attached storage using excess distributed storage capacity |
| US7124171B1 (en) * | 2002-05-23 | 2006-10-17 | Emc Corporation | In a networked computing cluster storage system and plurality of servers sharing files, in the event of server unavailability, transferring a floating IP network address from first server to second server to access area of data |
| US7124320B1 (en) * | 2002-08-06 | 2006-10-17 | Novell, Inc. | Cluster failover via distributed configuration repository |
| US20040107199A1 (en) * | 2002-08-22 | 2004-06-03 | Mdt Inc. | Computer application backup method and system |
| US20040059735A1 (en) * | 2002-09-10 | 2004-03-25 | Gold Russell Eliot | Systems and methods for enabling failover in a distributed-object computing environment |
| US7194652B2 (en) * | 2002-10-29 | 2007-03-20 | Brocade Communications Systems, Inc. | High availability synchronization architecture |
| US7076689B2 (en) * | 2002-10-29 | 2006-07-11 | Brocade Communication Systems, Inc. | Use of unique XID range among multiple control processors |
| US20040193953A1 (en) * | 2003-02-21 | 2004-09-30 | Sun Microsystems, Inc. | Method, system, and program for maintaining application program configuration settings |
| US7451208B1 (en) * | 2003-06-28 | 2008-11-11 | Cisco Technology, Inc. | Systems and methods for network address failover |
| US7526549B2 (en) * | 2003-07-24 | 2009-04-28 | International Business Machines Corporation | Cluster data port services for clustered computer system |
| US7234075B2 (en) * | 2003-12-30 | 2007-06-19 | Dell Products L.P. | Distributed failover aware storage area network backup of application data in an active-N high availability cluster |
| US7246256B2 (en) * | 2004-01-20 | 2007-07-17 | International Business Machines Corporation | Managing failover of J2EE compliant middleware in a high availability system |
| US20050283636A1 (en) * | 2004-05-14 | 2005-12-22 | Dell Products L.P. | System and method for failure recovery in a cluster network |
| US20060015773A1 (en) * | 2004-07-16 | 2006-01-19 | Dell Products L.P. | System and method for failure recovery and load balancing in a cluster network |
| US7320088B1 (en) * | 2004-12-28 | 2008-01-15 | Veritas Operating Corporation | System and method to automate replication in a clustered environment |
| US7668962B2 (en) * | 2005-02-07 | 2010-02-23 | Symantec Operating Corporation | System and method for connection failover using redirection |
| JP2008140221A (ja) * | 2006-12-04 | 2008-06-19 | Hitachi Ltd | ストレージシステム及び管理方法並びに管理装置 |
-
2004
- 2004-05-13 US US10/845,734 patent/US20050267920A1/en not_active Abandoned
- 2004-07-29 DE DE602004002858T patent/DE602004002858T2/de not_active Expired - Lifetime
- 2004-07-29 EP EP04254555A patent/EP1615131B1/de not_active Expired - Lifetime
- 2004-07-29 AT AT04254555T patent/ATE343174T1/de not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| ATE343174T1 (de) | 2006-11-15 |
| EP1615131B1 (de) | 2006-10-18 |
| EP1615131A1 (de) | 2006-01-11 |
| DE602004002858D1 (de) | 2006-11-30 |
| US20050267920A1 (en) | 2005-12-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE602004002858T2 (de) | Vorrichtung und Verfahren zur Datenarchivierung in einem Clustersystem | |
| DE69904190T2 (de) | Verfahren und programm zum verarbeiten der verwaltungsanfragen einer verteilten netzwerkanwendung in einer gruppierten rechnerumgebung | |
| DE10134492B4 (de) | Ausfallübernahme des Dateimanagementsystems in einem Rechnercluster | |
| DE602004008028T2 (de) | Verfahren zum dynamischen Transferieren zwischen Servern für virtuelle Dateiserver | |
| DE69728178T2 (de) | Vorrichtung und verfahren zur fernen datenrückgewinnung | |
| DE60316783T2 (de) | Erkennung von Speichermangel und Feinabschaltung | |
| DE60018803T2 (de) | Verfahren und apparat zur verwaltung von information der speicheraktivitäten von datenspeichersystemen | |
| DE60308700T2 (de) | Dynamische fernkonfiguration eines webservers zur bereitstellung von kapazität auf anfrage | |
| DE69918467T2 (de) | Servervorrichtung und Verfahren deren Verwendung | |
| US7441024B2 (en) | Method and apparatus for applying policies | |
| DE10124482B4 (de) | Fehlertolerante Systemressource mit niedriger Latenzzeit, mit übergeordneter Protokollierung von Systemressourcentransaktionen und serverübergreifend gespiegelter Protokollierung von übergeordneten Systemressourcentransaktionen | |
| DE60220263T2 (de) | Server-duplexverfahren und geduplextes serversystem | |
| DE69021122T2 (de) | Verfahren und Gerät zur ununterbrochenen Versorgung von Anwendungen in einem Rechnernetzwerk. | |
| DE69614383T2 (de) | Kontinuierlich verfügbarer datenbankserver mit mehreren knotengruppen mit sich minimal überschneidenden sätzen von datenbankteilkopien | |
| DE69410671T2 (de) | Datensicherung in einer Datenverarbeitungsanlage | |
| DE60113586T2 (de) | Übertragen von miteinander verbundenen Datenobjekten in einer verteilten Datenspeicherumgebung | |
| EP1194865B1 (de) | Verfahren zur datenpflege in einem netzwerk teilweise replizierter datenbanksysteme | |
| DE69508431T2 (de) | Verfahren und vorrichtung für die einfache und sichere verwaltung von entfernten servern | |
| DE102004027672A1 (de) | Speicherplattenarraysystem | |
| US20030158933A1 (en) | Failover clustering based on input/output processors | |
| US8316110B1 (en) | System and method for clustering standalone server applications and extending cluster functionality | |
| DE10124514A1 (de) | Fehlertolerante, gemeinsam genutzte Systemressource mit einem Hochverfügbarkeitskommunikationen bereitstellenden Kommunikationsdurchgang | |
| EP0807883B1 (de) | Kommunikationssystem mit Mitteln zum Austausch von Softwareprozessen | |
| DE10113577A1 (de) | Verfahren, Computerprogrammprodukt und Computersystem zur Unterstützung mehrerer Anwendungssysteme mittels eines einzelnen Datenbank-Systems | |
| DE10393771T5 (de) | Schnelle Datensicherungsspeicherung und schnelle Datenwiederherstellung (FBSRD) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| R074 | Re-establishment allowed |
Ref document number: 1615131 Country of ref document: EP |
|
| R074 | Re-establishment allowed |
Ref document number: 1615131 Country of ref document: EP Effective date: 20120820 |
|
| R081 | Change of applicant/patentee |
Ref document number: 1615131 Country of ref document: EP Owner name: QUEST SOFTWARE, INC., US Free format text: FORMER OWNER: BAKBONE SOFTWARE INC., SAN DIEGO, US Effective date: 20120919 |