DE102012215436A1 - Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) - Google Patents

Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) Download PDF

Info

Publication number
DE102012215436A1
DE102012215436A1 DE102012215436A DE102012215436A DE102012215436A1 DE 102012215436 A1 DE102012215436 A1 DE 102012215436A1 DE 102012215436 A DE102012215436 A DE 102012215436A DE 102012215436 A DE102012215436 A DE 102012215436A DE 102012215436 A1 DE102012215436 A1 DE 102012215436A1
Authority
DE
Germany
Prior art keywords
addresses
nas
node
nodes
client systems
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.)
Ceased
Application number
DE102012215436A
Other languages
English (en)
Inventor
Edmond Plattier
Cyril Collin
Antoine Jean Tabary
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 DE102012215436A1 publication Critical patent/DE102012215436A1/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2035Error 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 processing functionality is redundant without idle spare hardware
    • 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/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2046Error 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 processing functionality is redundant where the redundant components share persistent storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

System und zugehöriges Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS). Ein Verwaltungsmodul des gebündelten NAS berechnet eine Anzahl von Knoten in dem gebündelten NAS, die erforderlich ist, um eine erforderliche Lastmenge für eine bestimmte Anzahl von Client-Systemen zu bedienen, und eine Anzahl von den Knoten zugeordneten Adressen, über die die Client-Systeme auf das gebündelte NAS zugreifen. Die Last wird von allen Client-Systemen gleichmäßig aufgeteilt und von den Knoten des gebündelten NAS einheitlich bedient. Wenn ein Knoten ausfällt, übernimmt der Rest der in Betrieb befindlichen Knoten in dem gebündelten NAS Adressen, die dem ausgefallenen Knoten zugeordnet sind, und teilt die zusätzliche Last, die einer Adresse zugeordnet ist, welche von dem ausgefallenen Knoten übernommen wurde, gleichmäßig auf, um nahtlose Dienste für die Erzeugung durch die Client-Systeme bereitzustellen.

Description

  • Hintergrund
  • Herkömmliche Optimierungstechnologien für einen gebündelten, an ein Netzwerk angeschlossenen Speicher (clustered network attached storage (NAS)) verwenden einen Lastausgleich zwischen allen Knoten des NAS, um die Anzahl und die Bandbreite von Knoten in dem gebündelten NAS-System auf ein Minimum zu reduzieren. In Fällen, in denen ein Knoten ausfällt, führen herkömmliche Optimierungstechnologien eine Neuverteilung der Arbeitslast unter den restlichen Knoten durch Verwendung einer statischen Arbeitslast-Zuweisung, eines das Umlaufverfahren einsetzenden Domänennamendienstes (domain name service (DNS) usw. durch. Den herkömmlichen Optimierungsmethoden mangelt es entweder an der Fähigkeit zum dynamischen Ausgleich der Arbeitslast unter den Knoten des NAS in dem Fall, dass ein Knoten ausfällt, oder sie erfordern die doppelte Bandbreite für jeden Knoten, um den NAS beim Ausfall eines (1) Knotens ausfallsicher zu machen.
  • Kurzdarstellung
  • Gemäß einer Ausführungsform der vorliegenden Erfindung weist ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) auf: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen festgelegt wird, die für eine Anzahl N von Knoten in dem gebündelten NAS erforderlich ist, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, die mit dem gebündelten NAS verbunden sind, so dass es die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jedem Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten des Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung weist ein Computerprogrammprodukt eine rechnerlesbare Hauptspeichereinheit auf, die einen rechnerlesbaren Programmcode enthält. Der rechnerlesbare Programmcode enthält Befehle, die, wenn sie von einem Prozessor eines Rechnersystems ausgeführt werden, ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchführen.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung weist ein Rechnersystem einen Prozessor, einen mit dem Prozessor verbundenen Hauptspeicher und eine mit dem Prozessor verbundene rechnerlesbare Speichereinheit auf, wobei die Speichereinheit Programmcode enthält, der so konfiguriert ist, dass er von dem Prozessor über den Hauptspeicher ausgeführt wird, um ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung, ein Prozess zur Unterstützung von Rechnerinfrastruktur, wobei der Prozess die Bereitstellung von mindestens einem Support-Dienst für mindestens eines von Erzeugen, Einbinden, Unterbringen (Hosting), Verwalten und Einsetzen von rechnerlesbarem Code in einem Datenverarbeitungssystem aufweist, wobei der Code in Verbindung mit dem Datenverarbeitungssystem in der Lage ist, ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen.
  • Kurze Beschreibung der verschiedenen Ansichten der Zeichnungen
  • 1 stellt ein System 10 zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) 31 gemäß Ausführungsformen der vorliegenden Erfindung dar.
  • 2 ist ein Flussdiagramm, das ein Verfahren zur Optimierung der Verwendung des gebündelten NAS 31 von 1, wie es von dem Verwaltungsmodul 32 durchgeführt wird, gemäß den Ausführungsformen der vorliegenden Erfindung zeigt.
  • 3 ist ein Flussdiagramm, welches NAS konfigurierende Schritte zeigt, die als Schritt 100 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • 4 ist ein Flussdiagramm, welches Schritte, die Adressen der Komponenten in dem NAS konfigurieren, sowie Client-Systeme, die auf den NAS zugreifen, zeigt, die als Schritt 200 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • 5 ist ein Flussdiagramm, das Erzeugungsschritte, die von jedem Client-System im Anschluss an die Konfiguration von Adressen von 4 durchgeführt werden, zeigt, während das Verwaltungsmodul gleichzeitig den Schritt 300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 gemäß den Ausführungsformen der vorliegenden Erfindung durchführt.
  • 6 ist ein Flussdiagramm, das den Dienst des NAS verwaltende Schritte zeigt, die als Schritt 300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • 7 ist ein Flussdiagramm, das Schritte, die die Netzwerkadresse unter den verbleibenden Knoten des NAS neu verteilen, wenn ein Knoten ausgefallen ist, zeigt, welche als Schritt 400 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • 8 ist ein Beispiel des Systems von 1 zur Optimierung der Verwendung eines gebündelten NAS, an dem durch die Durchführung der Schritte 100 und 200 von 2 gemäß Ausführungsformen der vorliegenden Erfindung die Erstkonfiguration durchgeführt wird.
  • 9 ist ein Beispiel des Systems von 1 zur Optimierung der Verwendung eines gebündelten NAS, das die Neuverteilung von Adressen eines ausgefallenen Knotens durchführt, indem es den Schritt 400 von 6 im Anschluss an die in 8 gezeigte Konfiguration von Adressen gemäß Ausführungsformen der vorliegenden Erfindung durchführt.
  • 10 stellt ein Rechnersystem dar, das zur Optimierung der Verwendung eines gebündelten NAS gemäß den Ausführungsformen der vorliegenden Erfindung verwendet wird.
  • Ausführliche Beschreibung
  • 1 stellt ein System 10 zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) 31 gemäß Ausführungsformen der vorliegenden Erfindung dar.
  • Das System 10 weist eine Anzahl P von Client-Systemen, ein Kundennetzwerk 21, den gebündelten NAS 31 und einen Administrator 41 auf. Zu Beispielen für das System können unter anderem Fast-Echtzeit-Erzeugungs-/Dienstsysteme gehören, die den gebündelten NAS 31 als Datenablage in den Bereichen der Überwachung und Auswertung (monitoring and evaluation (M&E)), des Rundsendebetriebs, der Videoüberwachung usw. nutzen. Aufgrund der zeitkritischen Beschaffenheit dieser typischen Beispiele verbessert ein wirksamer Lastausgleich zwischen in Betrieb befindlichen Knoten in dem gebündelten NAS 31 die Leistungsfähigkeit des Systems 10 in dem Fall, dass ein Knoten des gebündelten NAS 31 ausfällt, beträchtlich.
  • Ein i-tes Client-System Ci der Anzahl P von Client-Systemen, wobei i eine positive ganze Zahl in einem ersten einschließenden Bereich zwischen eins (1) und P ist, das heißt, [1...P], ist ein entsprechendes Rechnersystem, das ein entsprechendes Betriebssystem ausführt, welches kompatible Dateisystemprotokolle über digitale Datenübertragungskanäle unterstützt. Zu Beispielen für Betriebssysteme können unter anderem WindowsTM, Linux®, Unix® usw. gehören (Windows ist ein Warenzeichen der Microsoft Corporation in den Vereinigten Staaten von Amerika und in anderen Ländern; Linux ist ein eingetragenes Warenzeichen von Linus Torvalds in den Vereinigten Staaten von Amerika; und UNIX ist ein eingetragenes Warenzeichen von The Open Group in den Vereinigten Staaten von Amerika und in anderen Ländern.) Zu Beispielen für Dateisystemprotokolle können unter anderem das Common Internet File System (CIFS), das Network File System (NFS) usw. gehören.
  • Das Kundennetzwerk 21 ist ein digitales Datenübertragungsnetzwerk, welches das Internet Protocol (IP) unterstützt, das die Client-Systeme mit dem gebündelten NAS 31 verbindet.
  • Der gebündelte NAS 31 ist ein an ein Netzwerk angeschlossener Speicher, der das Aufteilen der Daten auf verschiedene Festplatten (Data Stripping) ermöglicht, indem ein verteiltes Dateisystem verwendet wird, das gleichzeitig auf mehreren Knoten des gebündelten NAS 31 ausgeführt wird. Der gebündelte NAS 31 ist ein Rechnerdatenspeicher auf Dateiebene, der bei der Bereitstellung des Datenzugriffs auf die Client-Systeme mit dem Kundennetzwerk 21 verbunden ist und es den Knoten des gebündelten NAS 31 ermöglicht, Daten und Metadaten über die Knoten oder physischen Platten des gebündelten NAS 31 zu verteilen. Die Knoten des gebündelten NAS 31 greifen ungeachtet der tatsächlichen Speicherplätze der Daten einheitlich auf Dateien zu, die auf einer beliebigen physischen Platte in dem gebündelten NAS 31 gespeichert sind. Der gebündelte NAS 31 verteilt im Umlaufverfahren dynamisch Adressen für Knoten des gebündelten NAS 31 und führt eine Neuverteilung von Adressen eines fehlerhaften Knotens auf die verbleibenden funktionierenden Knoten durch. Der gebündelte NAS 31 weist ein Verwaltungsmodul 32, eine Anzahl N von Knoten und mindestens eine physische Platte auf. Alle Komponenten des gebündelten NAS 31 sind mittels digitaler Datenübertragungskanäle, die mit dem Kundennetzwerk 21 verbunden sind, untereinander verbunden.
  • Das Verwaltungsmodul 32 führt gemäß vom Administrator 41 bereitgestellter Eingaben die Konfiguration und die Überwachung des gebündelten NAS 31 durch. Siehe die Beschreibung der nachstehenden 2 in Bezug auf Schritte, die vom Verwaltungsmodul 32 durchgeführt werden. In einer Ausführungsform der vorliegenden Erfindung wird das Verwaltungsmodul 32 auf einem speziellen Verwaltungsknoten in dem gebündelten NAS 31 ausgeführt, wobei sich der spezielle Verwaltungsknoten funktional und physisch von der Anzahl N der Knoten unterscheidet.
  • Ein j-ter Knoten Nj der Anzahl N von Knoten in dem gebündelten NAS 31, wobei j eine positive ganze Zahl in einem zweiten einschließenden Bereich zwischen 1 und N ist, das heißt [1...N], stellt jeden Knoten dar, der die Funktion eines Mitglieds eines gebündelten Dateiservers für die Client-Systeme hat und den einheitlichen Zugriff auf Daten und Metadaten ermöglicht, welche auf der mindestens einen physischen Platte für die Client-Systeme gespeichert sind. Die Client-Systeme greifen auf jeden Knoten der Anzahl N von Knoten zu und kennzeichnen ihn durch die Verwendung einer entsprechenden Internet-Protocol-(IP-)Adresse. In dieser Beschreibung werden die Begriffe ”IP-Adresse” und ”Adresse” austauschbar verwendet.
  • Eine k-te physische Platte Dk der mindestens einen physischen Platte, wobei k eine positive ganze Zahl in einem dritten einschließenden Bereich zwischen 1 und Q ist, das heißt [1...Q], und wobei Q größer oder gleich eins (1) ist, stellt jede physische Platte des gebündelten NAS 31 dar. Jede physische Platte ist physisch mit den Knoten in dem gebündelten NAS 31 verbunden und wird von den Knoten als ein Datenspeicher-Pool gemeinsam benutzt.
  • In einer Ausführungsform der vorliegenden Erfindung wird eine entsprechende Internet-Protocol-(IP-)Adresse unter funktionierenden Knoten des gebündelten NAS 31 dynamisch verteilt. Zuerst wird ein Satz von IP-Adressen im Umlaufverfahren unter des gebündelten NAS 31 verteilt. Eine Anzahl von IP-Adressen in dem Satz ist N(N – 1), wobei N die Anzahl der Knoten in dem gebündelten NAS 31 ist, die angibt, dass jeder Knoten Nj über eine Anzahl (N – 1) von IP-Adressen verfügt, die gleichmäßig für alle Knoten in dem gebündelten NAS 31 verteilt sind. Wenn ein x-ter Knoten Nx während der Erzeugung ausfällt, wird eine x-te Gruppe mit einer Anzahl (N – 1) von IP-Adressen, die dem ausgefallenen Knoten Nx üblicherweise zugeteilt worden sind, im Umlaufverfahren auf die verbleibenden funktionierenden Knoten des gebündelten NAS 31 neu verteilt, so dass selbst bei ausgefallenem Knoten Nx von der Anzahl P der Client-Systeme C1...Cp mit derselben Anzahl N(N – 1) von IP-Adressen wie vor dem Ausfall des Knotens auf den gebündelten NAS 31 zugegriffen werden kann. In der selben Ausführungsform der vorliegenden Erfindung verteilt des gebündelten NAS 31 eine entsprechende Arbeitslast auf dynamische Weise gleichmäßig über eine Anzahl (N – 1) von verbleibenden funktionierenden Knoten, indem die Adressen der Knoten neu zugewiesen werden, so dass ein durch den ausgefallenen Knoten verursachtes höheres Verkehrsaufkommen unter der Anzahl (N – 1) der verbleibenden funktionierenden Knoten gleichmäßig aufgeteilt wird, wobei der Aufteilungsbetrag N/(N – 1) beträgt. Wenn der gebündelte NAS 31 fünf (5) oder mehr Knoten hat, sind ungefähr zwanzig Prozent (20%) an zusätzlicher Knotenleistung, ein einzelner zusätzlicher Knoten, ausreichend, um den gebündelten NAS 31 beim Ausfall eines einzigen Knotens ausfallsicher zu machen, was eine deutliche Verbesserung gegenüber dem herkömmlichen Verfahren zur Kapazitätsverdopplung mit einer Adressenzuweisung im Umlaufverfahren oder einer statischen IP-Adressierung darstellt.
  • In derselben Ausführungsform der vorliegenden Erfindung weist das System 10 zweiundachtzig (82) Client-Systeme (C1,...Cp, P = 82) auf, die die Funktion von Video-Servern übernehmen, welche Datenströme von Überwachungskameras von einhundertzwanzig (120) kontrollierten Bereichen erfassen und die erfassten Datenströme auf dem gebündelten NAS 31 aufzeichnen, wobei ein IBM® Scale Out Network Attached Storage (SONAS) mit (9) Knoten (N1,...Nn, N = 9) zum Einsatz kommt. (IBM ist ein Warenzeichen der International Business Machines Corporation in den Vereinigten Staaten von Amerika und anderen Ländern). IBM SONAS weist Knoten des gebündelten NAS 31 im Umlaufverfahren auf dynamische Weise gleichmäßig eine Liste von IP-Adressen zu. IBM SONAS führt auch eine dynamische Neuverteilung von IP-Adressen eines fehlerhaften Knotens im Umlaufverfahren durch, indem es bei dem Versuch, den für jeden Knoten des gebündelten NAS 31 notwendigen Bandbreitenpuffer zu begrenzen, IP-Adressen eines verbleibenden Knotens, der weniger IP-Adressen als andere Knoten hat, durch Verwendung einer Clustered Trivial Data Base (CTDB) 31 angibt. In anderen Ausführungsformen der vorliegenden Erfindung können die Anzahl und die Last der Client-Systeme entsprechend dem Erzeugungstyp variieren, doch sind sie in ihren entsprechenden Konfigurationen im Allgemeinen beständig. Siehe die Beschreibung der nachstehenden 8 und 9 bezüglich eines Beispiels für die in derselben Ausführungsform der vorliegenden Erfindung vorgenommene Optimierung.
  • Dieselbe Ausführungsform der vorliegenden Erfindung bedient mit einer geringeren Anzahl von Knoten und geringeren Kosten bei der Bereitstellung eines ausfallsicheren NAS-Speichers beim Ausfall eines einzigen Knotens so viele Client-Systeme wie ein größeres gebündeltes NAS. Das Verfahren der vorliegenden Erfindung erfordert in Fällen von gebündelten NAS-Systemen mit mehr als fünf (5) Knoten höchstens zwanzig Prozent (20%) Durchsatzpuffer im Gegensatz zu einhundert Prozent (100%) Durchsatzpuffer der herkömmlichen Verfahren zur ausfallsicheren Nutzung bei gebündeltem NAS.
  • 2 ist ein Flussdiagramm, das ein Verfahren zur Optimierung der Verwendung des gebündelten NAS 31 von 1 oben, wie es von dem Verwaltungsmodul 32 durchgeführt wird, gemäß den Ausführungsformen der vorliegenden Erfindung zeigt.
  • Im Schritt 100 konfiguriert das Verwaltungsmodul den gebündelten NAS. Siehe die Beschreibung der nachstehenden 3 bezüglich Einzelheiten der Konfiguration des NAS im Schritt 100. Anschließend fährt das Verwaltungsmodul mit Schritt 200 fort.
  • Im Schritt 200 konfiguriert das Verwaltungsmodul Adressen der Komponenten in dem NAS und in Client-Systemen, die mit dem NAS verbunden sind. Siehe die Beschreibung der nachstehenden 4 bezüglich Einzelheiten der Konfiguration von Adressen im Schritt 200. Siehe die Beschreibung der nachstehenden 8 bezüglich eines Beispiels des Systems, das nach der Durchführung der Schritte 100 und 200 erstmals konfiguriert ist. Anschließend fährt das Verwaltungsmodul mit dem Schritt 300 fort.
  • Im Schritt 300 verwaltet das Verwaltungsmodul einen Dienst, der von dem NAS durchgeführt wird, während die Client-Systeme gleichzeitig gemäß der nachstehenden 5 durch Verwendung des NAS Arbeitslast erzeugen. Siehe die Beschreibung der nachstehenden 6 bezüglich Einzelheiten der Konfiguration von Adressen im Schritt 300. Siehe die Beschreibung der nachstehenden 9 bezüglich eines Beispiels des Systems, das bei der Durchführung des Schritts 300 gerade die Übernahme der Funktionen eines einzelnen Knotens erfährt. Daraufhin beenden das Verwaltungsmodul sowie die Knoten des NAS den Betrieb.
  • 3 ist ein Flussdiagramm, das Schritte zeigt, die den an ein Netzwerk angeschlossenen Speicher des gebündelten NAS konfigurieren, welche als Schritt 100 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • Im Schritt 110 stellt das Verwaltungsmodul einen Typ des NAS fest, der aus {herkömmliches NAS, gebündeltes NAS} ausgewählt wird, wobei ”herkömmliches NAS” ein typisches NAS angibt und wobei ”gebündeltes NAS” ein gebündeltes NAS der vorliegenden Erfindung angibt. Wenn das Verwaltungsmodul feststellt, dass der Typ des NAS gebündelt ist, fährt das Verwaltungsmodul mit dem Schritt 120 fort. Wenn das Verwaltungsmodul feststellt, dass der Typ des NAS herkömmlich ist, fährt das Verwaltungsmodul mit dem Schritt 130 fort.
  • Im Schritt 120 stellt das Verwaltungsmodul fest, ob ein Bereich von Internet-Protocol-(IP-)Adressen im Umlaufverfahren zugewiesen wird. Wenn das Verwaltungsmodul feststellt, dass der Bereich der IP-Adressen im Umlaufverfahren zugewiesen wird, fährt das Verwaltungsmodul mit dem Schritt 140 fort. Wenn das Verwaltungsmodul feststellt, dass der Bereich der IP-Adressen nicht im Umlaufverfahren zugewiesen wird, fährt das Verwaltungsmodul mit dem Schritt 170 fort.
  • Im Schritt 130 gibt das Verwaltungsmodul eine feste Anzahl von Client-Systemen je herkömmlichem NAS an, indem ein Bandbreitenwert des herkömmlichen NAS durch einen durchschnittlichen Wert der maximalen Last eines einzelnen Client-Systems unter den Client-Systemen geteilt wird. Der herkömmliche NAS führt weder einen Lastausgleich noch eine Funktionsübernahme durch. Daraufhin beendet das Verwaltungsmodul die Konfiguration des herkömmlichen NAS.
  • In den Schritten 140 bis 160 führt das Verwaltungsmodul eine dynamische Berechnung einer Anzahl von IP-Adressen (A) durch, die im Umlaufverfahren auf der Grundlage von verschiedenen Parametern des gebündelten NAS zugewiesen werden. Im Schritt 140 berechnet das Verwaltungsmodul eine gesamte maximale Last (L), welche die gesamte Anzahl P der Client-Systeme während der Erzeugung erzeugen wird. Anschließend fährt das Verwaltungsmodul mit dem Schritt 150 fort.
  • Im Schritt 150 berechnet das Verwaltungsmodul eine für die Erzeugung erforderliche Anzahl von Knoten (N) auf der Grundlage von sowohl der gesamten maximalen Last (L) des Schritts 140 oben als auch einer maximalen Bandbreite (H) eines einzelnen Knotens, indem es N = Roundup(L/h) + 1 anwendet. Anschließend fährt das Verwaltungsmodul mit dem Schritt 160 fort.
  • Im Schritt 160 berechnet das Verwaltungsmodul eine Anzahl von IP-Adressen (A) auf der Grundlage der im Schritt 150 oben berechneten Anzahl von Knoten (N), indem es A = N(N – 1) anwendet. Anschließend beendet das Verwaltungsmodul die Konfiguration des gebündelten NAS, dessen Bereich von IP-Adressen im Umlaufverfahren zugewiesen wurde, und fährt mit Schritt 200 von 2 oben fort, um weiter Adressen für Knoten des gebündelten NAS zu konfigurieren, das über eine Anzahl A von mehreren IP-Adressen verfügt.
  • Im Schritt 170 weist das Verwaltungsmodul eine (1) IP-Adresse für jeden Knoten zu, indem es einen herkömmlichen Mechanismus in Form eines das Umlaufverfahren einsetzenden Domänennamendienstes (DNS) oder statische IP-Adressen verwendet. Der gebündelte NAS, der eine einzige IP-Adresse pro Knoten hat, führt weder einen Lastausgleich noch eine Funktionsübernahme wie in der vorliegenden Erfindung durch. Der gebündelte NAS, der eine einzige IP-Adresse pro Knoten hat, erfordert einen Durchsatz, der doppelt so hoch wie die aggregierte Last der Clients ist, um eine Funktionsübernahme zu sichern. Daraufhin beendet das Verwaltungsmodul die Konfiguration des gebündelten NAS, das eine einzige IP-Adresse pro Knoten hat.
  • 4 ist ein Flussdiagramm, welches Schritte, die Adressen der Komponenten in dem NAS konfigurieren, sowie Client-Systeme, die auf den NAS zugreifen, zeigt, die als Schritt 200 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • Im Schritt 210 startet das Verwaltungsmodul Knoten des gebündelten NAS, das im Schritt 100 von 2 oben konfiguriert wurde. Anschließend fährt das Verwaltungsmodul mit dem Schritt 220 fort.
  • Im Schritt 220 verteilt das Verwaltungsmodul die Anzahl A = N(N – 1) der IP-Adressen einer Liste, die im Schritt 160 von 3 oben berechnet wurde, im Umlaufverfahren an die Anzahl N der Knoten des gebündelten NAS, die im Schritt 150 von 3 oben berechnet wurde. Jeder Knoten verfügt über einen entsprechenden Teil der Liste, der die Anzahl A der IP-Adressen, über die auf jeden Knoten zugegriffen wird, einzeln als im Umlaufverfahren verteilte Adressen aufführt. Siehe die Beschreibung von 8 unten bezüglich eines beispielhaften Zustands der erstmaligen Verteilung von Adressen nach dem Schritt 220. Anschließend fährt das Verwaltungsmodul mit dem Schritt 230 fort.
  • Im Schritt 230 belastet das Verwaltungsmodul jede Knotenadresse gleichmäßig mit der Lastmenge L/N, indem es jedem Client-System einen Satz von N aufeinanderfolgenden Adressen der Liste, die allen Knoten des gebündelten NAS entsprechen, im Umlaufverfahren zuweist. Daraufhin fährt das Verwaltungsmodul mit dem Schritt 240 fort.
  • Im Schritt 240 ermöglicht das Verwaltungsmodul dem Client-System, mit der Durchführung der Erzeugung zu beginnen, wie in 5 unten gezeigt ist. Dann beendet das Verwaltungsmodul die Konfiguration von Adressen des gebündelten NAS und fährt mit dem Schritt 300 von 2 oben zur Erzeugung fort, die der Erzeugung des Client-Systems von 5 unten entspricht.
  • 5 ist ein Flussdiagramm, das Erzeugungsschritte, die von jedem Client-System im Anschluss an die Konfiguration von Adressen von 4 oben durchgeführt werden, zeigt, während das Verwaltungsmodul gleichzeitig den Schritt 300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchführt.
  • Sobald der gebündelte NAS in den Schritten 100 und 200 von 2 konfiguriert wurde, führt jedes Client-System die Schritte 1010, 1020 und 1030 von 5 unabhängig von den anderen durch, während es auf den gebündelten NAS zugreift, der von allen Client-Systemen gemeinsam benutzt wird.
  • Im Schritt 1010 öffnet ein Client-System eine erste Datei an einer ersten zugewiesenen IP-Adresse eines Knotens. Dann fährt das Client-System mit dem Schritt 1020 fort.
  • Im Schritt 1020 öffnet das Client-System eine nächste Datei an einer nächsten zugewiesenen IP-Adresse eines Knotens im Umlaufverfahren, so dass jeder Knoten bei der Bedienung von Dateien für alle Client-Systeme gleichmäßig belastet wird. Anschließend fährt das Client-System mit dem Schritt 1030 fort.
  • Im Schritt 1030 stellt das Client-System fest, ob es eine weitere Datei gibt, die zur Erzeugung geöffnet werden muss. Wenn das Client-System feststellt, dass es noch eine Datei gibt, die geöffnet werden muss, kehrt das Client-System in einer Schleife zurück zum Schritt 1020, um eine nächste ungeöffnete Datei auf einem entsprechenden Knoten zu öffnen. Wenn das Client-System feststellt, dass es keine weitere Datei gibt, die geöffnet werden muss, beendet das Client-System einen aktuellen Erzeugungszyklus. In dieser Beschreibung gibt die Erzeugung durch das Client-Systems das Öffnen einer Datei und Zugriffe an, indem entsprechend dem Erzeugungsbedarf Daten aus den geöffneten Dateien gelesen oder Daten in die geöffneten Dateien geschrieben werden. In dieser Beschreibung wird der Lese- und Schreibdurchsatz bei allen Dateien von allen Client-Systemen als homogen betrachtet und erfordert eine genau gleiche durchschnittliche Bandbreite.
  • Wenn alle Client-Systeme des NAS eine entsprechende nominale Erzeugungslast erreichen, ist der Arbeitslast-Durchsatz in allen Knoten des NAS gleichmäßig verteilt. Eine durchschnittliche Arbeitslast für einen Knoten wird als (L/N) berechnet, wobei L die gesamte maximale Last vom Schritt 140 oben ist und wobei N die Anzahl der für die Erzeugung notwendigen Knoten vom Schritt 150 oben ist. Auch erhält jede Adresse einen Durchschnitt (1/N) einer durchschnittlichen maximalen einzelnen Arbeitslast für ein Client-System, die als (L/P) berechnet wird, wobei P die Anzahl der Client-Systeme ist, die von dem gebündelten NAS bedient werden sollen.
  • 6 ist ein Flussdiagramm, das Schritte zeigt, die den Dienst des gebündelten NAS verwalten und als Schritt 300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • Im Schritt 310 beginnt das Verwaltungsmodul mit Lese- und/oder Schreiboperationen an geöffneten Dateien von allen Client-Systemen. Anschließend fährt das Verwaltungsmodul mit Schritt 320 fort.
  • Im Schritt 320 verteilt das Verwaltungsmodul eine Speicher-Arbeitslast des gebündelten NAS gleichmäßig über alle Knoten des gebündelten NAS. Das Verwaltungsmodul verteilt auch eine Erzeugungslast aller Client-Systeme gleichmäßig. Anschließend fährt das Verwaltungsmodul mit Schritt 330 fort.
  • Im Schritt 330 überwacht das Verwaltungsmodul den Status von Knoten, die sich in der Erzeugung befinden. Nachdem das Verwaltungsmodul eine Mitteilung über ein Vorkommnis an einem Knoten empfangen hat oder nach einer festen kurzen vorher festgelegten Zeitspanne fährt das Verwaltungsmodul mit Schritt 340 fort.
  • Im Schritt 340 stellt das Verwaltungsmodul fest, ob ein (1) Vorkommnis an einem Knoten gemeldet worden ist, das zu einem Ausfall des Knotens führte. Wenn das Verwaltungsmodul feststellt, dass ein Knoten als Folge des Vorkommnisses an dem Knoten ausgefallen ist, fährt das Verwaltungsmodul mit Schritt 400 der Neuverteilung zum Lastausgleich und der Neuverteilung von Adressen fort. Siehe die Beschreibung von 7 nachstehend bezüglich Einzelheiten des Schritts 400 der Neuverteilung. Wenn das Verwaltungsmodul feststellt, dass kein Vorkommnis an einem Knoten gemeldet wurde oder dass das Vorkommnis an dem Knoten nicht zu einem Ausfall des Knotens geführt hat, schaltet das Verwaltungsmodul zum Schritt 350.
  • Im Schritt 350 stellt das Verwaltungsmodul fest, ob die Erzeugung des gebündelten NAS beendet ist. Wenn das Verwaltungsmodul feststellt, dass die Erzeugung des gebündelten NAS fortgesetzt werden kann, kehrt das Verwaltungsmodul in einer Schleife zum Schritt 330 oben zur weiteren Erzeugung und Überwachung zurück. Wenn das Verwaltungsmodul feststellt, dass die Erzeugung des gebündelten NAS beendet ist, fährt das Verwaltungsmodul mit dem Schritt 360 fort, um das System zu beenden. Die Erzeugung des gebündelten NAS kann beendet sein, nachdem eine geplante tägliche Erzeugungsperiode abgelaufen ist, nachdem die Verarbeitung von allen Dateien der Client-Systeme abgeschlossen ist oder nachdem ein Befehl zur Beendigung von dem Administrator empfangen wurde.
  • Im Schritt 360 hält das Verwaltungsmodul die Client-Systeme an. Anschließend fährt das Verwaltungsmodul mit dem Schritt 370 fort.
  • Im Schritt 370 hält das Verwaltungsmodul die Knoten des gebündelten NAS an. Dann beendet das Verwaltungsmodul die Erzeugung und Überwachung.
  • 7 ist ein Flussdiagramm, das Schritte, die die Netzwerkadresse unter den verbleibenden Knoten des gebündelten NAS neu verteilen, wenn ein Knoten ausgefallen ist, zeigt, welche als Schritt 400 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in 2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden.
  • Im Schritt 410 führt das Verwaltungsmodul eine Neuverteilung von (N – 1) Empfängern des ausgefallenen Knotens auf eine Anzahl von (N – 1) verbleibenden Knoten im Umlaufverfahren durch. Siehe die Beschreibung von 9 nachstehend bezüglich eines Beispiels der Neuverteilung von Adressen, die gemäß Schritt 420 nachstehend neu zugewiesen werden. Anschließend fährt das Verwaltungsmodul mit Schritt 420 fort.
  • Im Schritt 420 weist das Verwaltungsmodul jedem Knoten der Anzahl (N – 1) an verbleibenden Knoten, die normal arbeiten, im Umlaufverfahren (N – 1) Adressen neu zu. Folglich bedient jeder Knoten der Anzahl (N – 1) an verbleibenden Knoten N Empfänger für eine Arbeitslast von L/(N – 1). Anschließend fährt das Verwaltungsmodul mit Schritt 430 fort.
  • Im Schritt 430 führt das Verwaltungsmodul einen Neustart des ausgefallenen Knotens entsprechend Eingaben, die von dem Administrator bereitgestellt werden, durch. Dann fährt das Verwaltungsmodul mit Schritt 440 fort.
  • Im Schritt 440 führt das Verwaltungsmodul eine Neuverteilung aller Knotenadressen im Umlaufverfahren durch, was eine Konfiguration von wiederhergestellten Adressen zur Folge hat, die mit dem Ergebnis aus Schritt 220 von 4 oben identisch ist. Daraufhin fährt das Verwaltungsmodul mit Schritt 450 fort.
  • Im Schritt 450 weist das Verwaltungsmodul jedem Knoten des gebündelten NAS eine Anzahl von (N – 1) Adressen und eine entsprechende Arbeitslast von L/N neu zu, da alle N Knoten nach der Durchführung der Schritte 430 und 440 normal arbeiten und auf sie zugegriffen werden kann. Dann beendet das Verwaltungsmodul die Neuverteilung und fährt mit Schritt 350 von 6 oben fort.
  • 8 ist ein Beispiel des Systems von 1 oben zur Optimierung der Verwendung eines gebündelten NAS, der durch die Durchführung der Schritte 100 und 200 von 2 oben gemäß Ausführungsformen der vorliegenden Erfindung erstmals konfiguriert ist.
  • In diesem Beispiel gibt es zweiundachtzig (82) Client-Systeme, die mit dem gebündelten NAS, das über neun (9) Knoten verfügt, über ein Kundennetzwerk 21E verbunden sind. Folglich werden Parameter als P = 82 und N = 9 gesetzt.
  • Zuerst weist das Verwaltungsmodul jedem Knoten von (N = 9) Knoten eine Anzahl von (N – 1) Adressen, das heißt acht (8) Adressen je Knoten, im Umlaufverfahren zu. Somit beträgt die gesamte Anzahl an Adressen, die beim Zugriff auf Knoten des gebündelten NAS verwendet werden können, (A = N(N – 1) = 72). In diesem Beispiel wird ein j-ter Knoten Nj (N – 1 = 8) Adressen zugeordnet, die [j, j + N, j + 2N...(j + (N – 2)N)] aufweisen, wobei j eine positive ganze Zahl ist. Folglich kann auf einen ersten Knoten N1 mittels der Adressen {1, 10, 19, 28, 37, 46, 55, 64} zugegriffen werden, auf einen zweiten Knoten N2 kann mittels der Adressen {2, 11, 20, 29, 38, 47, 56, 65} zugegriffen werden, auf einen dritten Knoten N3 kann mittels der Adressen {3, 12, 21, 30, 39, 48, 57, 66} zugegriffen werden, auf einen vierten Knoten N4 kann mittels der Adressen {4, 13, 22, 31, 40, 49, 58, 67} zugegriffen werden, auf einen fünften Knoten N5 kann mittels der Adressen {5, 14, 23, 32, 41, 50, 59, 68} zugegriffen werden, auf einen sechsten Knoten N6 kann mittels der Adressen {6, 15, 24, 33, 42, 51, 60, 69} zugegriffen werden, auf einen siebten Knoten N7 kann mittels der Adressen {7, 16, 25, 34, 43, 52, 61, 70} zugegriffen werden, auf einen achten Knoten N8 kann mittels der Adressen {8, 17, 26, 35, 44, 53, 62, 71} zugegriffen werden, und auf einen neunten Knoten N9 kann mittels der Adressen {9, 18, 27, 36, 45, 54, 63, 72} zugegriffen werden.
  • Nachdem es allen Knoten Adressen zugewiesen hat, weist das Verwaltungsmodul jedes Client-System von allen 82 Client-Systemen gleichmäßig einem entsprechenden Bereich einer Anzahl von (N = 9) Adressen zu, die Zugriffe auf alle neun (9) Knoten in dem gebündelten NAS ermöglichen, so dass jeder Knoten eine gleiche Anzahl von Client-Systemen bedient, ohne dass es zu einer erheblichen Abweichung der Arbeitslast von Knoten zu Knoten kommt. In diesem Beispiel verwendet ein i-tes Client-System Ci Knoten mit Adressen in einem i-ten Bereich von [((i – 1)N + 1) mod N(N – 1)...iN mod N(N – 1)], wobei i eine positive ganze Zahl ist. Folglich verwenden die Client-Systeme C1, C9, C17, C25, C33, C41, C49, C57, C65, C73, C81 Knoten mit Adressen in einem ersten Bereich von [1...(N = 9)], die Client-Systeme C2, C10, C18, C26, C34, C42, C50, C58, C66, C74, C82 verwenden Knoten mit Adressen in einem zweiten Bereich von [(N + 1 = 10)...(2N = 18)], die Client-Systeme C3, C11, C19, C27, C35, C43, C51, C59, C67, C75, verwenden Knoten mit Adressen in einem dritten Bereich von [(2N + 1 = 19)...(3N = 27)], die Client-Systeme C4, C12, C20, C28, C36, C44, C52, C60, C68, C76 verwenden Knoten mit Adressen in einem vierten Bereich von [(3N + 1 = 28)...(4N = 36)], die Client-Systeme C5, C13, C21, C29, C37, C45, C53, C61, C69, C77 verwenden Knoten mit Adressen in einem fünften Bereich von [(4N + 1 = 37)...(5N = 45)], die Client-Systeme C6, C14, C22, C30, C38, C46, C54, C62, C70, C78 verwenden Knoten mit Adressen in einem sechsten Bereich von [(5N + 1 = 46)...(6N = 54)], die Client-Systeme C7, C15, C22, C31, C39, C47, C55, C66, C71, C79 verwenden Knoten mit Adressen in einem siebten Bereich von [(6N + 1 = 55)...(7N = 63)] und die Client-Systeme C8, C16, C24, C32, C40, C48, C56, C64, C72, C80 verwenden Knoten mit Adressen in einem achten Bereich von [(7N + 1 = 64)...(8N = 72)].
  • 9 ist ein Beispiel des Systems von 1 oben zur Optimierung der Verwendung eines gebündelten NAS, das die Neuverteilung von Adressen eines ausgefallenen Knotens durchführt, indem es Schritt 400 von 6 oben im Anschluss an die in 8 oben gemäß Ausführungsformen der vorliegenden Erfindung 8 gezeigte Konfiguration von Adressen durchführt.
  • Zu einem Anfangszeitpunkt TI werden Adressen für Knoten in dem gebündelten NAS als 31E konfiguriert, wie in 8 oben gezeigt ist.
  • Zu einem Funktionsübernahme-Zeitpunkt TF nach dem Anfangszeitpunkt TI werden Adressen für Knoten in dem gebündelten NAS als 31F konfiguriert, was neu verteilte Adressen für verbleibende Knoten des gebündelten NAS anzeigt. In diesem Beispiel war der erste Knoten N1, auf den mittels der Adressen {1, 10, 19, 28, 37, 46, 55, 64} zum Zeitpunkt TI zugegriffen werden konnte, ausgefallen und der erste Knoten N1 ist für kein Client-System in Betrieb. Die Adressen {1, 10, 19, 28, 37, 46, 55, 64}, die für den ersten Knoten N1 zugewiesen worden waren, werden im Umlaufverfahren auf die verbleibende Anzahl von (N – 1) Knoten Nj neu verteilt, wobei j eine positive ganze Zahl ist, die aus [2...9] ausgewählt wird. Jeder verbleibende Knoten Nj fügt zum Anfangszeitpunkt TI eine (j – 1)-te Adresse von den Adressen des ausgefallenen ersten Knotens N1 zu den entsprechenden Adressen eines jeden verbleibenden Knotens Nj hinzu, wie in 31F von 9 in Fettdruck dargestellt ist. Während eines Zeitraums zwischen dem Funktionsübernahme-Zeitpunkt TF und dem Zeitpunkt, zu dem die Wiederherstellung der Adressen durch die Durchführung der Schritte 430 bis 450 von 7 oben fertiggestellt ist, stellt das gebündelte NAS den Client-Systemen Dienste bereit, indem es eine Anzahl von (N – 1 = 8) verbleibenden Knoten mit einer entsprechenden Anzahl (N = 9) von Adressen verwendet, so dass die Anzahl der Adressen, die den Client-Systemen für den Zugriff auf die Knoten des gebündelten NAS zur Verfügung stehen, d. h. A = N(N – 1) = 72, folglich gleich wie vor dem Ausfall des ersten Knotens N1 bleibt und folglich kein bestimmtes Client-System als Folge des Ausfalls des ersten Knotens N1 eine Leistungseinbuße erfährt. Jeder verbleibende Knoten Nj übernimmt eine Arbeitslast L/(N – 1 = 8), die den zusätzlichen, neu verteilten Adressen von dem ausgefallenen ersten Knoten N1 entspricht, was im Vergleich zu der anfänglichen Arbeitslast von L vor dem Ausfall des ersten Knotens eine entsprechend höhere, d. h. eine um 1/8 (12,5%) höhere Arbeitslast zur Folge hat.
  • Zu einem Neustart-Zeitpunkt TR nach dem Funktionsübernahme-Zeitpunkt TF werden die Adressen für Knoten in dem gebündelten NAS wiederhergestellt und auf die Adresskonfiguration zum Anfangszeitpunkt TI gesetzt, wie in 31E von 9 gezeigt ist.
  • In einer Ausführungsform der vorliegenden Erfindung werden die Knoten des gebündelten NAS und entsprechend zugeordnete Adressen in einer Datenstruktur dargestellt, die als ”Gruppenadressmatrix” (”cluster address matrix”) bezeichnet wird und Spalten für jeden Knoten und Zeilen für Adressen, die jedem Knoten entsprechend zugeordnet sind, aufweist.
  • 10 stellt ein Rechnersystem 90 dar, das zur Optimierung der Verwendung eines gebündelten NAS gemäß Ausführungsformen der vorliegenden Erfindung verwendet wird.
  • Das Rechnersystem 90 weist einen Prozessor 91, eine Eingabeeinheit 92, die mit dem Prozessor 91 verbunden ist, eine Ausgabeeinheit 93, die mit dem Prozessor 91 verbunden ist, und Hauptspeichereinheiten 94 und 95, die jeweils mit dem Prozessor 91 verbunden sind, auf. In dieser Beschreibung stellt das Rechnersystem 90 eine beliebige Art einer programmierbaren Datenverarbeitungsvorrichtung dar.
  • Die Eingabeeinheit 92 dient zum Empfang von Eingabedaten 96 im Rechnersystem 90. Die Eingabeeinheit 92 kann unter anderem eine Tastatur, eine Maus, ein Tastenblock, ein berührungsempfindlicher Bildschirm, ein Scanner, eine Spracherkennungseinheit, ein Sensor, eine Netzwerkschnittstellenkarte (network interface card (NIC)), ein Adapter für das Voice/video over Internet Protocol (VOIP), ein Funk-Adapter, ein Telefonadapter, ein Adapter für eine festgeschaltete Leitung usw. sein. Die Ausgabeeinheit 93 wird verwendet, um von dem Rechnerprogrammcode 97 erzeugte Ergebnisse an einen Benutzer des Rechnersystems 90 zu übermitteln. Die Ausgabeeinheit 93 kann unter anderem ein Drucker, ein Plotter, ein Rechnerbildschirm, ein Magnetband, eine austauschbare Festplatte, eine Diskette, eine NIC, ein VOIP-Adapter, ein Funk-Adapter, ein Telefonadapter, ein Adapter für eine festgeschaltete Leitung, ein Ton- und/oder Bildsignalgenerator, eine Licht emittierende Diode (LED) usw. sein.
  • Alle Komponenten der vorliegenden Erfindung können von einem Dienstanbieter, der die Installation oder die Einbindung von Datenverarbeitungsinfrastruktur in Bezug auf einen Prozess zur Optimierung der Verwendung des gebündelten NAS der vorliegenden Erfindung anbietet, installiert, verwaltet, bedient usw. werden. Folglich legt die vorliegende Erfindung einen Prozess zur Unterstützung einer Rechnerinfrastruktur offen, der das Einbinden, das Unterbringen, das Verwalten und das Einsetzen von rechnerlesbarem Code in einem Datenverarbeitungssystem (z. B. dem Datenverarbeitungssystem 90) aufweist, wobei der Code in Verbindung mit dem Datenverarbeitungssystem in der Lage ist, ein Verfahren zur Optimierung der Verwendung des gebündelten NAS durchzuführen.
  • In einer anderen Ausführungsform stellt die Erfindung ein Verfahren bereit, das die erfindungsgemäßen Prozessschritte auf der Grundlage von Abonnements, Werbung und/oder Gebühren durchführt. Das heißt, ein Dienstanbieter wie zum Beispiel ein Lösungsintegrator kann anbieten, einen Prozess zur Optimierung der Verwendung des gebündelten NAS der vorliegenden Erfindung zu erzeugen, zu verwalten, zu unterstützen usw. In diesem Fall kann der Dienstanbieter eine Rechnerinfrastruktur erzeugen, verwalten, unterstützen usw., welche die erfindungsgemäßen Prozessschritte für einen oder mehrere Kunden durchführt. Als Gegenleistung kann der Dienstanbieter im Rahmen eines Abonnements und/oder eines Gebührenvertrags Zahlungen von dem beziehungsweise den Kunden erhalten und/oder der Dienstanbieter kann Zahlungen aus dem Verkauf von Werbeinhalten an einen oder mehrere Dritte erhalten.
  • Obwohl 10 das Rechnersystem 90 als eine bestimmte Konfiguration aus Hardware und Software zeigt, kann jede beliebige Konfiguration aus Hardware und Software, die dem Fachmann bekannt sein dürfte, für die oben genannten Zwecke in Verbindung mit dem bestimmten Rechnersystem 90 von 10 verwendet werden. Die Hauptspeichereinheiten 94 und 95 können anstelle von gesonderten Hauptspeichereinheiten zum Beispiel auch Teile einer einzigen Hauptspeichereinheit sein.
  • Der Fachmann wird als vorteilhaft erkennen, dass Erscheinungsformen der vorliegenden Erfindung als ein System, ein Verfahren oder ein Computerprogrammprodukt realisiert werden können. Folglich können Erscheinungsformen der vorliegenden Erfindung die Form einer ganz in Hardware realisierten Ausführung, einer ganz in Software realisierten Ausführung (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführung annehmen, die Software- und Hardware-Erscheinungsformen kombiniert, die hier alle allgemein als eine ”Schaltung”, ein ”Modul” oder ein ”System” bezeichnet werden können. Überdies können Erscheinungsformen der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das sich auf einem oder mehreren rechnerlesbaren Datenträger(n) befindet, auf dem beziehungsweise denen sich rechnerlesbarer Programmcode befindet.
  • Jede beliebige Kombination aus einem oder mehreren rechnerlesbaren Datenträgern kann verwendet werden. Der rechnerlesbare Datenträger kann ein rechnerlesbarer Signaldatenträger oder ein rechnerlesbares Speichermedium sein. In dieser Beschreibung stellt der Begriff ”Speichereinheit” 94, 95 ein rechnerlesbares Speichermedium dar. Ein rechnerlesbares Speichermedium kann zum Beispiel, ohne auf diese beschränkt zu sein, ein(e) elektronische(s), magnetische(s), optische(s), elektromagnetische(s), Infrarot- oder Halbleitersystem, -vorrichtung, -einheit oder eine beliebige geeignete Kombination des Vorstehenden sein. Zu konkreteren Beispielen (wobei die Liste keinen Anspruch auf Vollständigkeit erhebt) für das rechnerlesbare Speichermedium würden folgende gehören: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine Diskette eines tragbaren Rechners, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compact-Disk-Nur-Lese-Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede beliebige geeignete Kombination des Vorstehenden. Im Rahmen dieses Schriftstücks kann ein rechnerlesbares Speichermedium jedes physisch greifbare Medium sein, das ein Programm zur Verwendung durch ein Befehlsausführungssystem, eine Befehlsausführungsvorrichtung oder -einheit oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit enthalten oder speichern kann.
  • Ein rechnerlesbarer Signaldatenträger kann ein übertragenes Datensignal mit einem darin enthaltenen rechnerlesbaren Programmcode, beispielsweise im Basisband oder als Teil einer Trägerwelle, enthalten. Solch ein übertragenes Signal kann eine beliebige einer Vielzahl von Formen einschließlich elektromagnetischer, optischer Formen oder jede beliebige geeignete Kombination dieser Formen, ohne auf diese beschränkt zu sein, annehmen.
  • Bei einem rechnerlesbaren Signaldatenträger kann es sich um jeden beliebigen rechnerlesbaren Datenträger handeln, der kein rechnerlesbares Speichermedium ist und der ein Programm zur Verwendung durch oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit übertragen, weiterleiten oder transportieren kann.
  • Auf einem rechnerlesbaren Datenträger enthaltener Programmcode kann mittels eines geeigneten Mediums einschließlich eines drahtlosen Mediums, eines drahtgebundenen Mediums, eines Lichtwellenleiterkabels, mittels Hochfrequenz (HF) usw., ohne auf diese beschränkt zu sein, oder mittels jeder beliebigen geeigneten Kombination des Vorstehenden übertragen werden.
  • Der Rechner-Programmcode 97 zur Durchführung von Operationen für Erscheinungsformen der vorliegenden Erfindung kann in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen einschließlich einer objektorientierten Programmiersprache, wie beispielsweise Java, Smalltalk, C++ oder dergleichen, sowie in herkömmlichen prozeduralen Programmiersprachen wie beispielsweise der Programmiersprache ”C” oder in ähnlichen Programmiersprachen geschrieben sein. Die Ausführung des Rechner-Programmcodes 97 kann vollständig auf dem Rechner des Benutzers, teilweise auf dem Rechner des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Rechner des Benutzers und teilweise auf einem fernen Rechner oder vollständig auf dem fernen Rechner oder Server erfolgen. Im letzteren Szenario kann der ferne Rechner mit dem Rechner des Benutzers über jede beliebige Art eines Netzwerks einschließlich eines lokalen Netzwerks (LAN) oder eines Weitverkehrsnetzes (WAN) verbunden werden oder die Verbindung kann zu einem externen Rechner (zum Beispiel über das Internet mittels eines Internet-Dienstanbieters) hergestellt werden.
  • Erscheinungsformen der vorliegenden Erfindung sind mit Bezug auf Darstellungen in Flussdiagrammen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Darstellungen in den Flussdiagrammen und/oder der Blockschaltbilder sowie Kombinationen aus Blöcken in den Darstellungen der Flussdiagramme und/oder den Blockschaltbildern mittels Rechnerprogrammbefehlen realisiert werden können. Der Begriff ”Rechnerprogrammbefehle” ist in dieser Beschreibung austauschbar mit dem Begriff ”Rechnerprogrammcode” 97. Diese Rechnerprogrammbefehle können einem Prozessor eines Universalrechners, eines Rechners für spezielle Anwendungen oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine so zu erzeugen, dass die Befehle, die über den Prozessor des Rechners oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel zur Ausführung der Funktionen/Vorgänge erzeugen, die in dem Flussdiagramm und/oder dem Block oder den Blöcken der Blockschaltbilder angegeben sind.
  • Diese Rechnerprogrammbefehle können auch in einem rechnerlesbaren Speichermedium gespeichert werden, das einen Rechner, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so, dass die in dem rechnerlesbaren Speichermedium gespeicherten Befehle einen Herstellungsgegenstand erzeugen, der Befehle enthält, die die Funktion/den Vorgang ausführen, welche beziehungsweise welcher in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben ist.
  • Die Rechnerprogrammbefehle können auch auf einen Rechner, eine andere programmierbare Datenverarbeitungsvorrichtung oder auf andere Einheiten geladen werden, um die Durchführung einer Reihe von Betriebsschritten auf dem Rechner, einer anderen programmierbaren Vorrichtung oder auf anderen Einheiten zu bewirken, um einen von einem Rechner ausgeführten Prozess so zu erzeugen, dass die Befehle, die auf dem Rechner oder einer anderen programmierbaren Vorrichtung ausgeführt werden, Prozesse zur Ausführung der Funktionen/Vorgänge ermöglichen, die in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben sind.
  • Das Flussdiagramm und die Blockschaltbilder in den Figuren zeigen die Architektur, die Funktionalität und die Betriebsweise von möglichen Ausführungsarten von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block in dem Flussdiagramm oder den Blockschaltbildern ein Modul, ein Segment oder einen Teil von Code darstellen, das beziehungsweise der einen oder mehrere ausführbare Befehle zur Ausführung der angegebenen logischen Funktion(en) aufweist. Es sei auch angemerkt, dass die in dem Block angegebenen Funktionen in manchen alternativen Ausführungsarten nicht in der in den Figuren angegebenen Reihenfolge auftreten können. In Abhängigkeit von der mit ihnen verbundenen Funktionalität können beispielsweise zwei Blöcke, die als aufeinanderfolgende Blöcke dargestellt sind, tatsächlich weitgehend gleichzeitig ausgeführt werden oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden. Man wird auch feststellen, dass jeder Block der Blockschaltbilder und/oder der Darstellung in dem Flussdiagramm sowie Kombinationen aus Blöcken in den Blockschaltbildern und/oder der Darstellung in dem Flussdiagramm von Systemen, die auf Hardware für spezielle Anwendungen beruhen und die angegebenen Funktionen oder Vorgänge durchführen, oder von Kombinationen aus Hardware für spezielle Anwendungen und Rechnerbefehlen ausgeführt werden können.
  • Die entsprechenden Strukturen, Materialien, Vorgänge und Gleichwertiges von allen Mitteln oder Schritten sowie Funktionselementen in den Ansprüchen sollen jedwede Struktur, jedwedes Material oder jedweden Vorgang zur Ausführung der Funktion in Kombination mit anderen beanspruchten Elementen, die im Einzelnen beansprucht werden, beinhalten. Die Beschreibung der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Erläuterung, erhebt jedoch keinen Anspruch auf Vollständigkeit und ist auch nicht als auf die Erfindung in der offengelegten Form beschränkt zu verstehen. Viele Ab- und Veränderungen sind für den Fachmann erkennbar, ohne vom Umfang und Wesen der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der Erfindung und die praktische Anwendung bestmöglich zu erklären und um anderen Fachleuten das Verständnis der Erfindung hinsichtlich verschiedener Ausführungsformen mit verschiedenen Änderungen, wie sie für die entsprechende vorgesehene Verwendung geeignet sind, zu ermöglichen.

Claims (12)

  1. Verfahren zur Optimierung einer Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS), das Verfahren aufweisend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt sind, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
  2. Verfahren nach Anspruch 1, das Konfigurieren des gebündelten NAS aufweisend: Festlegen von L, das eine maximale Lastmenge darstellt, welche die Anzahl P von Client-Systemen erzeugt, die von dem gebündelten NAS bedient werden sollen; Berechnen von N, das eine erforderliche Anzahl von Knoten in dem gebündelten NAS darstellt, um die berechnete Lastmenge L als N = L/h + 1 zu berechnen; und Berechnen von A, das eine Anzahl von Adressen darstellt, die für die berechnete Anzahl N von Knoten in dem gebündelten NAS erforderlich sind, als A = N(N – 1).
  3. Verfahren nach Anspruch 1, das Konfigurieren des entsprechenden Satzes von Adressen aufweisend: Verteilen der Anzahl A von Adressen über die Anzahl N von Knoten mittels des Umlaufverfahrens, wobei die Adressen in einer Liste von Adressen aufeinanderfolgend sind, so dass jeder Knoten einem entsprechenden Satz von (N – 1) Adressen zugeordnet ist und so dass beliebige zwei einzelne Adressen in dem entsprechenden Satz von (N – 1) Adressen um eine Anzahl N von Einträgen in der Liste der Adressen voneinander entfernt sind; Zuweisen eines entsprechenden Satzes von N aufeinanderfolgenden Adressen in der Liste zu jedem Client-System der Anzahl P von Client-Systemen im Umlaufverfahren, wobei die N aufeinanderfolgenden Adressen in der Liste jeweils einem jeden Knoten entsprechen, so dass jedes Client-System durch die Verwendung der N aufeinanderfolgenden Adressen in dem entsprechenden Satz Zugriff auf alle Knoten in dem gebündelten NAS hat, und so dass eine entsprechende Adresse für einen jeden Knoten die Lastmenge L/N für einen jeden Knoten einheitlich aufteilt.
  4. Verfahren nach Anspruch 1, das Verwalten aufweisend: Überwachen der Anzahl N von Knoten in dem gebündelten NAS während der Erzeugung durch die Anzahl P von Client-Systemen; beruhend auf der Überwachung Feststellen, dass ein erster Knoten der Anzahl N von Knoten ausgefallen ist; und Neuverteilen eines ersten Satzes von (N – 1) Adressen und einer entsprechenden Last, die zuvor dem ersten Knoten zugeordnet war, auf den Rest der (N – 1) Knoten des gebündelten NAS, so dass die Anzahl P von Client-Systemen durch Verwendung der Anzahl A von Adressen während der Erzeugung durch die Anzahl P von Client-Systemen auf den Rest der (N – 1) Knoten zugreift.
  5. Verfahren nach Anspruch 4, das Neuverteilen aufweisend: Verteilen des ersten Satzes von (N – 1) Adressen auf den Rest der (N – 1) normal arbeitenden Knoten im Umlaufverfahren, so dass jeder in Betrieb befindliche Knoten des Rests der (N – 1) Knoten einem entsprechenden neuen Satz von N Adressen zugeordnet wird und so dass der entsprechende neue Satz von N Adressen des Weiteren eine entsprechende zusätzliche Adresse von dem ersten Satz von (N – 1) Adressen für den ersten Knoten aufweist, die im Umlaufverfahren für einen jeden in Betrieb befindlichen Knoten ausgewählt wurden; Zuweisen einer entsprechenden Last, die einer jeden Adresse des ersten Satzes von (N – 1) Adressen zugeordnet ist, zu einem jeden in Betrieb befindlichen Knoten, so dass ein jeder in Betrieb befindliche Knoten den entsprechenden neuen Satz von N Adressen für die einheitlich aufgeteilte Last (L/(N – 1)) für die Erzeugung durch die Anzahl P von Client-Systemen bedient.
  6. Computerprogrammprodukt, aufweisend: eine rechnerlesbare Speichereinheit, die einen rechnerlesbaren Programmcode enthält, wobei der rechnerlesbare Programmcode Befehle enthält, die die Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchführen, die Optimierung aufweisend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
  7. Rechnersystem, das einen Prozessor, einen mit dem Prozessor verbundenen Hauptspeicher und eine mit dem Prozessor verbundene rechnerlesbare Speichereinheit aufweist, wobei die Speichereinheit Programmcode enthält, der so konfiguriert ist, dass er von dem Prozessor über den Hauptspeicher ausgeführt wird, um ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen, das Verfahren umfassend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
  8. Prozess zur Unterstützung von Rechnerinfrastruktur, wobei der Prozess die Bereitstellung von mindestens einem Support-Dienst für mindestens eines von Erzeugen, Einbinden, Unterbringen, Verwalten und Einsetzen von rechnerlesbarem Code in einem Datenverarbeitungssystem aufweist, wobei der Code in Verbindung mit dem Datenverarbeitungssystem in der Lage ist, ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen, das Verfahren umfassend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
  9. Computerprogrammprodukt nach Anspruch 6 oder Rechnersystem nach Anspruch 7 oder Prozess nach Anspruch 8, wobei das Konfigurieren des gebündelten NAS aufweist: Festlegen von L, das eine maximale Lastmenge darstellt, welche die Anzahl P von Client-Systemen erzeugt, die von dem gebündelten NAS bedient werden sollen; Berechnen von N, das eine erforderliche Anzahl von Knoten in dem gebündelten NAS darstellt, um die berechnete Lastmenge L als N = L/h + 1 zu berechnen; und Berechnen von A, das eine Anzahl von Adressen darstellt, die für die berechnete Anzahl N von Knoten in dem gebündelten NAS erforderlich sind, als A = N(N – 1).
  10. Computerprogrammprodukt nach Anspruch 6 oder Rechnersystem nach Anspruch 7 oder Prozess nach Anspruch 8, wobei das Konfigurieren des entsprechenden Satzes von Adressen aufweist: Verteilen der Anzahl A von Adressen über die Anzahl N von Knoten mittels des Umlaufverfahrens, wobei die Adressen in einer Liste von Adressen aufeinanderfolgend sind, so dass jeder Knoten einem entsprechenden Satz von (N – 1) Adressen zugeordnet ist und so dass beliebige zwei einzelne Adressen in dem entsprechenden Satz von (N – 1) Adressen um eine Anzahl N von Einträgen in der Liste der Adressen voneinander entfernt sind; Zuweisen eines entsprechenden Satzes von N aufeinanderfolgenden Adressen in der Liste zu jedem Client-System der Anzahl P von Client-Systemen im Umlaufverfahren, wobei die N aufeinanderfolgenden Adressen in der Liste jeweils einem jeden Knoten entspricht, so dass jedes Client-System durch die Verwendung der N aufeinanderfolgenden Adressen in dem entsprechenden Satz Zugriff auf alle Knoten in dem gebündelten NAS hat, und so dass eine entsprechende Adresse für einen jeden Knoten die Lastmenge L/N für einen jeden Knoten einheitlich aufteilt.
  11. Computerprogrammprodukt nach Anspruch 6 oder Rechnersystem nach Anspruch 7 oder Prozess nach Anspruch 8, wobei das Verwalten aufweist: Überwachen der Anzahl N von Knoten in dem gebündelten NAS während der Erzeugung durch die Anzahl P von Client-Systemen; beruhend auf der Überwachung Feststellen, dass ein erster Knoten der Anzahl N von Knoten ausgefallen ist; und Neuverteilen eines ersten Satzes von (N – 1) Adressen und einer entsprechenden Last, die zuvor dem ersten Knoten zugeordnet war, auf den Rest der (N – 1) Knoten des gebündelten NAS, so dass die Anzahl P von Client-Systemen durch Verwendung der Anzahl A von Adressen während der Erzeugung durch die Anzahl P von Client-Systemen auf den Rest der (N – 1) Knoten zugreift.
  12. Computerprogrammprodukt nach Anspruch 11 oder Rechnersystem nach Anspruch 11 oder Prozess nach Anspruch 11, wobei das Neuverteilen aufweist: Verteilen des ersten Satzes von (N – 1) Adressen auf den Rest der (N – 1) normal arbeitenden Knoten im Umlaufverfahren, so dass jeder in Betrieb befindliche Knoten des Rests der (N – 1) Knoten einem entsprechenden neuen Satz von N Adressen zugeordnet wird und so dass der entsprechende neue Satz von N Adressen des Weiteren eine entsprechende zusätzliche Adresse von dem ersten Satz von (N – 1) Adressen für den ersten Knoten aufweist, die im Umlaufverfahren für einen jeden in Betrieb befindlichen Knoten ausgewählt wurden; Zuweisen einer entsprechenden Last, die einer jeden Adresse des ersten Satzes von (N – 1) Adressen zugeordnet ist, zu einem jeden in Betrieb befindlichen Knoten, so dass ein jeder in Betrieb befindliche Knoten den entsprechenden neuen Satz von N Adressen für die einheitlich aufgeteilte Last (L/(N – 1)) für die Erzeugung durch die Anzahl P von Client-Systemen bedient.
DE102012215436A 2011-09-15 2012-08-30 Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) Ceased DE102012215436A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11290414.9 2011-09-15
EP11290414 2011-09-15

Publications (1)

Publication Number Publication Date
DE102012215436A1 true DE102012215436A1 (de) 2013-03-21

Family

ID=47137184

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012215436A Ceased DE102012215436A1 (de) 2011-09-15 2012-08-30 Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS))

Country Status (3)

Country Link
US (1) US8751641B2 (de)
DE (1) DE102012215436A1 (de)
GB (1) GB2494764B (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
US9420049B1 (en) 2010-06-30 2016-08-16 F5 Networks, Inc. Client side human user indicator
US10454997B2 (en) * 2012-09-07 2019-10-22 Avigilon Corporation Distributed physical security system
US9430306B2 (en) * 2013-10-08 2016-08-30 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Anticipatory protection of critical jobs in a computing system
GB2520343A (en) 2013-11-19 2015-05-20 Ibm A system having a cluster of communication controllers and a method for modification of the latter
US20150293699A1 (en) 2014-04-11 2015-10-15 Graham Bromley Network-attached storage enhancement appliance
US9888064B2 (en) 2015-02-11 2018-02-06 International Business Machines Corporation Load-balancing input/output requests in clustered storage systems
WO2016161171A1 (en) 2015-03-31 2016-10-06 Avigilon Corporation Security device capability discovery and device selection
US9959109B2 (en) 2015-04-10 2018-05-01 Avigilon Corporation Upgrading a physical security system having multiple server nodes
US20170124159A1 (en) * 2015-10-30 2017-05-04 Netapp, Inc. Techniques to process support data in a compute environment
US9699244B2 (en) * 2015-11-11 2017-07-04 Weka.IO Ltd. Load balanced network file accesses
CN105511805B (zh) * 2015-11-26 2019-03-19 深圳市中博科创信息技术有限公司 集群文件系统的数据处理方法和装置
US10560553B2 (en) * 2016-09-14 2020-02-11 International Business Machines Corporation Assigning IP pools to file access protocols for NAS failover
CN109245998A (zh) * 2018-10-09 2019-01-18 郑州云海信息技术有限公司 一种访问nas的方法、系统及相关组件
CN116055496B (zh) * 2022-12-30 2024-04-05 广州趣研网络科技有限公司 一种监控数据采集方法、装置、电子设备及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6470389B1 (en) * 1997-03-14 2002-10-22 Lucent Technologies Inc. Hosting a network service on a cluster of servers using a single-address image
US5983227A (en) * 1997-06-12 1999-11-09 Yahoo, Inc. Dynamic page generator
FI115358B (fi) * 2001-11-05 2005-04-15 Nokia Corp Tilaton kuormanjako
JP2003163689A (ja) * 2001-11-28 2003-06-06 Hitachi Ltd ネットワーク連携情報処理システムおよびその複数負荷分散機間のアクセス移動方法
US8578053B2 (en) 2002-12-05 2013-11-05 Fujitsu Limited NAS load balancing system
US7937551B2 (en) * 2003-01-21 2011-05-03 Dell Products L.P. Storage systems having differentiated storage pools
US7606916B1 (en) 2003-11-10 2009-10-20 Cisco Technology, Inc. Method and apparatus for load balancing within a computer system
US7827262B2 (en) * 2005-07-14 2010-11-02 Cisco Technology, Inc. Approach for managing state information by a group of servers that services a group of clients
US7526668B2 (en) * 2006-06-08 2009-04-28 Hitachi, Ltd. Failover method of remotely-mirrored clustered file servers
US7613947B1 (en) 2006-11-30 2009-11-03 Netapp, Inc. System and method for storage takeover
US7949893B1 (en) * 2008-04-30 2011-05-24 Netapp, Inc. Virtual user interface failover
US8271652B2 (en) 2008-07-24 2012-09-18 Netapp, Inc. Load-derived probability-based domain name service in a network storage cluster
JP5429179B2 (ja) * 2008-10-02 2014-02-26 日本電気株式会社 ネットワークノードおよびその負荷分散方法
US20110252127A1 (en) * 2010-04-13 2011-10-13 International Business Machines Corporation Method and system for load balancing with affinity

Also Published As

Publication number Publication date
GB2494764A (en) 2013-03-20
GB2494764B (en) 2013-08-07
GB201216103D0 (en) 2012-10-24
US8751641B2 (en) 2014-06-10
US20130073717A1 (en) 2013-03-21

Similar Documents

Publication Publication Date Title
DE102012215436A1 (de) Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS))
DE112018004349T5 (de) Dynamische auswahl von bereitstellungskonfigurationen von softwareanwendungen
DE69030340T2 (de) Makler für die Auswahl von Rechnernetzwerkservern
DE112018000193T5 (de) Daten sequenziell in Zonen in einem verstreuten Speichernetzwerk speichern
DE112010004931T5 (de) Mehrphasige Wiederherstellung von Dateisystemen mit SelektiverBedarfsweiser Verfügbarkeit von Daten(
DE60316141T2 (de) Echtzeit-speicherbereichsnetzwerk
DE102016105589A1 (de) Anwenden von Firmware-Updates in einem System mit Null-Stillstandszeit durch wahlweise Abschalten und Einschalten von Hardware unter Verwenden einer Hypervisor-Schicht
DE102015105884A1 (de) Zuverlässige und deterministische Live-Migration von virtuellen Maschinen
DE102005051980B4 (de) System und Verfahren zur Netzwerkübertragung eines Informationsverarbeitungssystem-Images
DE112010003144T5 (de) Erweiterbare Grundstruktur zur Unterstützung verschiedener Einsatzarchitekturen
DE10255125A1 (de) Dezentralisierte Automatische Testung von Grafischen Benutzerschnittstellen(GUI) von Software
DE112010004772T5 (de) Verfahren und System zum Verwalten von Konfigurationen von Systemverwaltungsagentenin einer Verteilten Umgebung
DE112020000912T5 (de) Verwalten von software-programmen
DE112020004651B4 (de) Multi-tenant-etl-ressourcenaufteilung
DE112020004116T5 (de) Dynamisches abändern der parallelität einer aufgabe in einer pipeline
DE112021000390T5 (de) Anpassen der leistung eines datenverarbeitungssystems
DE112021003401T5 (de) Schattenexperimente für serverlose multi-tenant-cloud-dienste
DE102016219854A1 (de) Computersystem und Verfahren zum dynamischen Anpassen eines software-definierten Netzwerks
DE112017006993T5 (de) System und Verfahren zum Erfassen einer Netztopologie
DE112021005636T5 (de) Migrieren von komplexen legacy-anwendungen
DE112021003402T5 (de) Blockchain-verwaltung von bereitstellungsfehlern
EP1711892A1 (de) Verfahren zum betreiben einer anordnung mehrerer rechner bei einem rechnerausfall
DE102014116744B4 (de) Management von Informationstechnologieressourcen
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE112021000619T5 (de) Adaptive zustandsverwaltung für statusunabhängige services

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

R082 Change of representative

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE

R016 Response to examination communication
R082 Change of representative

Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R082 Change of representative

Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE

R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final