DE102021212155A1 - Zusammensetzbare Informationsverarbeitungssysteme in einem offenen Netzwerk unter Verwenden von Zugriffssteuerungsverwaltern - Google Patents

Zusammensetzbare Informationsverarbeitungssysteme in einem offenen Netzwerk unter Verwenden von Zugriffssteuerungsverwaltern Download PDF

Info

Publication number
DE102021212155A1
DE102021212155A1 DE102021212155.1A DE102021212155A DE102021212155A1 DE 102021212155 A1 DE102021212155 A1 DE 102021212155A1 DE 102021212155 A DE102021212155 A DE 102021212155A DE 102021212155 A1 DE102021212155 A1 DE 102021212155A1
Authority
DE
Germany
Prior art keywords
information handling
resource
control processor
manager
resources
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021212155.1A
Other languages
English (en)
Inventor
Elie Antoun Jreij
Jimmy Doyle Pike
Robert Wayne Hormuth
Walter A. O'Brien III
Mukund P. Khatri
Gaurav Chawla
Yossef Saad
William Price Dawkins
Mark Steven Sanders
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.)
Dell Products LP
Original Assignee
Dell Products LP
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 Dell Products LP filed Critical Dell Products LP
Publication of DE102021212155A1 publication Critical patent/DE102021212155A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45541Bare-metal, i.e. hypervisor runs directly on hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Abstract

Ein Verfahren zum Verwalten von zusammengesetzten Informationsverarbeitungssystemen beinhaltet das Erhalten einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem, Durchführen einer ersten Bestimmung, dass ein erstes Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen, und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem, Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource, Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt, Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten, und Darstellen der logischen Hardwareressourcen für mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen.

Description

  • HINTERGRUND
  • Computervorrichtungen können Dienste bereitstellen. Um die Dienste bereitzustellen, können die Computervorrichtungen Hardwarekomponenten und Softwarekomponenten beinhalten. Die Dienste, die durch die Computervorrichtungen bereitgestellt werden, können durch diese Komponenten beschränkt sein.
  • ZUSAMMENFASSUNG
  • Im Allgemeinen betrifft die Erfindung in einem Aspekt ein System, das ein erstes Informationsverarbeitungssystem der Informationsverarbeitungssysteme beinhaltet, das einen Systemsteuerungsprozessor und mindestens einen Rechenressourcensatz beinhaltet, wobei der Systemsteuerungsprozessor programmiert ist zum: Erhalten einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem, Durchführen einer ersten Bestimmung, dass das erste Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen, und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem, Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource, Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt, Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten, und Darstellen der logischen Hardwareressourcen für den mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen.
  • Im Allgemeinen betrifft die Erfindung in einem Aspekt ein Verfahren zum Bereitstellen von computerimplementierten Diensten unter Verwenden von Informationsverarbeitungssystemen. Das Verfahren beinhaltet das Erhalten, durch einen Systemsteuerungsprozessor, einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem, Durchführen einer ersten Bestimmung, dass ein erstes Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen, und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem, Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource, Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt, Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten, und Darstellen der logischen Hardwareressourcen für mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen, wobei das erste Informationsverarbeitungssystem den Systemsteuerungsprozessor und den mindestens einen Rechenressourcensatz umfasst.
  • Im Allgemeinen betrifft die Erfindung in einem Aspekt ein nicht-transitorisches computerlesbares Medium, das computerlesbaren Programmcode enthält, der, wenn er von einem Computerprozessor ausgeführt wird, dem Computerprozessor ermöglicht, ein Verfahren zum Bereitstellen von computerimplementierten Diensten unter Verwenden von Informationsverarbeitungssystemen durchzuführen. Das Verfahren beinhaltet das Erhalten, durch einen Systemsteuerungsprozessor, einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem, Durchführen einer ersten Bestimmung, dass ein erstes Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen, und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem, Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource, Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt, Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten, und Darstellen der logischen Hardwareressourcen für mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen, wobei das erste Informationsverarbeitungssystem den Systemsteuerungsprozessor und den mindestens einen Rechenressourcensatz umfasst.
  • Figurenliste
  • Bestimmte Ausführungsformen der Erfindung werden unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. Die beigefügten Zeichnungen veranschaulichen jedoch nur bestimmte Aspekte oder Implementierungen der Erfindung beispielhaft und sollen den Schutzumfang der Ansprüche nicht einschränken.
    • 1.1 zeigt ein Diagramm eines Systems gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 1.2 zeigt ein Diagramm eines Informationsverarbeitungssystems gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 2 zeigt ein Diagramm von Hardwareressourcen gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 3 zeigt ein Diagramm eines Systemsteuerungsprozessors gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 4 zeigt ein Diagramm eines Systemsteuerungsprozessorverwalters gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 5.1 zeigt ein Flussdiagramm eines Verfahrens zum Erhalten von Ressourcenverfügbarkeit und einer Netzwerkkonnektivitätstopologie gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 5.2 zeigt ein Flussdiagramm eines Verfahrens zum Erzeugen eines zusammengesetzten Informationsverarbeitungssystems basierend auf einer Zusammensetzungsanforderung gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 5.3 zeigt ein Flussdiagramm eines Verfahrens zum Initiieren des Zugriffs zwischen SCPs über den SCP-Verwalter gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 5.4 zeigt ein Flussdiagramm eines Verfahrens zum Initiieren des direkten Zugriffs zwischen SCPs gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 6.1-6.3 zeigen Diagramme des Betriebs eines beispielhaften Systems im Laufe der Zeit gemäß einer oder mehreren Ausführungsformen der Erfindung.
    • 7 zeigt ein Diagramm einer Rechenvorrichtung gemäß einer oder mehreren Ausführungsformen der Erfindung.
  • DETAILLIERTE BESCHREIBUNG
  • Spezifische Ausführungsformen werden nun unter Bezugnahme auf die beigefügten Figuren beschrieben. In der folgenden Beschreibung werden zahlreiche Details als Beispiele der Erfindung dargelegt. Der Fachmann versteht, dass eine oder mehrere Ausführungsformen der vorliegenden Erfindung ohne diese spezifischen Details praktiziert werden können und dass zahlreiche Variationen oder Modifikationen möglich sein können, ohne vom Schutzumfang der Erfindung abzuweichen. Bestimmte Details, die dem Fachmann bekannt sind, werden weggelassen, um zu vermeiden, dass die Beschreibung unklar wird.
  • Bei der folgenden Beschreibung der Figuren kann irgendeine Komponente, die unter Bezugnahme auf eine Figur beschrieben ist, bei verschiedenen Ausführungsformen der Erfindung äquivalent zu einer oder mehreren gleich bezeichneten Komponenten sein, die unter Bezugnahme auf irgendeine andere Figur beschrieben sind. Der Kürze halber werden Beschreibungen dieser Komponenten unter Bezugnahme auf jede Figur nicht wiederholt. Somit wird jede und jede Ausführungsform der Komponenten jeder Figur durch Bezugnahme aufgenommen und wird angenommen, dass sie optional innerhalb jeder anderen Figur mit einer oder mehreren gleich bezeichneten Komponenten vorhanden sind. Zusätzlich ist gemäß verschiedenen Ausführungsformen der Erfindung irgendeine Beschreibung der Komponenten einer Figur als eine optionale Ausführungsform zu interpretieren, die zusätzlich zu, in Verbindung mit oder anstelle der Ausführungsformen, die unter Bezugnahme auf eine entsprechende gleich bezeichnete Komponente in irgendeiner anderen Figur beschrieben sind, implementiert werden kann.
  • Überall in dieser Anmeldung können Elemente von Figuren als A bis N bezeichnet werden. Wie hier verwendet, bedeutet die oben erwähnte Bezeichnung, dass das Element irgendeine Anzahl von Elementen enthalten kann und nicht erfordert, dass das Element die gleiche Anzahl von Elementen wie irgendein anderes Element, das als A bis N bezeichnet ist, enthält. Zum Beispiel kann eine Datenstruktur ein erstes Element, das als A bezeichnet ist, und ein zweites Element, das als N bezeichnet ist, enthalten. Diese Bezeichnungskonvention bedeutet, dass die Datenstruktur irgendeine Anzahl der Elemente enthalten kann. Eine zweite Datenstruktur, die auch als A bis N bezeichnet ist, kann auch irgendeine Anzahl von Elementen enthalten. Die Anzahl von Elementen der ersten Datenstruktur und die Anzahl von Elementen der zweiten Datenstruktur können gleich oder verschieden sein.
  • Im Allgemeinen betreffen Ausführungsformen der Erfindung Systeme, Vorrichtungen und Verfahren zum Bereitstellen von computerimplementierten Diensten. Um computerimplementierte Dienste bereitzustellen, müssen möglicherweise Rechenressourcen für die Leistung der Dienste zugewiesen werden. Die Dienste können zum Beispiel Verarbeitungsressourcen, Arbeitsspeicherressourcen, Speicherressourcen, Rechenressourcen usw. enthalten.
  • Um die Rechenressourcen zuzuweisen, können zusammengesetzte Informationsverarbeitungssysteme instanziiert werden. Ein zusammengesetztes Informationsverarbeitungssystem kann eine Vorrichtung sein (deren Komponenten über ein oder mehrere Informationsverarbeitungssysteme verteilt sein können), die ausschließlich über eine Menge von Rechenressourcen verwendet wird. Rechenressourcen von mehreren Informationsverarbeitungssystemen können einem zusammengesetzten Informationsverarbeitungssystem zugewiesen werden, wodurch es einem zusammengesetzten Informationsverarbeitungssystem ermöglicht wird, Rechenressourcen von einer beliebigen Anzahl von Informationsverarbeitungssystemen für die Leistung entsprechender computerimplementierter Dienste zu verwenden.
  • Um Rechenressourcen zuzuweisen, kann das System einen Systemsteuerungsprozessorverwalter enthalten. Der Systemsteuerungsprozessorverwalter kann Zusammensetzungsanforderungen erhalten. Die Zusammensetzungsanforderungen können ein gewünschtes Ergebnis angeben, wie zum Beispiel die Ausführung einer oder mehrerer Anwendungen, das Bereitstellen eines oder mehrerer Dienste usw. Der Systemsteuerungsprozessorverwalter kann die Zusammensetzungsanforderungen in entsprechende Mengen von Rechenressourcen übersetzen, die notwendig sind, um zugewiesen zu werden, um die Absicht der Zusammensetzungsanforderungen zu erfüllen.
  • Sobald die Mengen von Rechenressourcen erhalten sind, kann der Systemsteuerungsprozessorverwalter Ressourcen des Informationsverarbeitungssystems zuweisen, um die identifizierten Mengen von Rechenressourcen zu erfüllen, indem er Systemsteuerungsprozessoren der Informationsverarbeitungssysteme anweist, Hardware-Ressourcensätze des Informationsverarbeitungssystems vorzubereiten und zu präsentieren, um Ressourcensätze der Informationsverarbeitungssysteme zu berechnen.
  • Zusätzlich ermöglichen Ausführungsformen der Erfindung die Verwendung von Zugriffssteuerungsverwaltern (z. B. Firewalls), die entweder durch Informationsverarbeitungssysteme und/oder durch den Systemsteuerungsprozessorverwalter verwaltet werden. Der Zugriffssteuerungsverwalter eines Informationsverarbeitungssystems kann den Zugriff auf andere Komponenten (z. B. andere Informationsverarbeitungssysteme), die mit einem offenen Netzwerk verbunden sind, verwalten. Wenn ein erstes Informationsverarbeitungssystem anfordert, zusätzliche Ressourcen zu verwenden, um ein zusammengesetztes Informationsverarbeitungssystem zu erzeugen, bestimmt der Systemsteuerungsverwalter, welche Informationsverarbeitungssysteme sowohl (i) die angeforderten zusätzlichen Ressourcen bereitstellen als auch (ii) genügend verfügbare Netzwerkfähigkeiten aufweisen, um mit dem ersten Informationsverarbeitungssystem zu kommunizieren, und initiiert die Programmierung von Zugriffssteuerungsverwaltern in den identifizierten Informationsverarbeitungssystemen, um die Kommunikation mit dem ersten Informationsverarbeitungssystem zu ermöglichen. Auf diese Weise wird die Kommunikation zwischen Komponenten in einem offenen Netzwerk gesteuert und überwacht, wodurch der Zugriff durch unerwünschte Komponenten auf Informationsverarbeitungssysteme verhindert wird. Ferner berücksichtigt die Zuweisung der Ressourcen und/oder zusätzlichen Ressourcen Netzwerkfähigkeiten, z. B. verfügbare Bandbreite, und als solche kann die Zuweisung auf eine Weise durchgeführt werden, die vorherige Ressourcen und/oder zusätzliche Ressourcen beeinflusst (oder auf eine begrenzte Weise beeinflusst).
  • 1.1 zeigt ein System gemäß einer oder mehreren Ausführungsformen der Erfindung. Das System kann irgendeine Anzahl von Informationsverarbeitungssystemen (60) enthalten. Die Informationsverarbeitungssysteme (60) können computerimplementierte Dienste bereitstellen. Die computerimplementierten Dienste können beispielsweise Datenbankdienste, Datenspeicherdienste, elektronische Kommunikationsdienste, Datenschutzdienste und/oder andere Arten von Diensten enthalten, die unter Verwenden von Informationsverarbeitungssystemen implementiert werden können.
  • Das Informationsverarbeitungssystem des Systems von 1.1 kann unabhängig und/oder kooperativ arbeiten, um die computerimplementierten Dienste bereitzustellen.
  • Beispielsweise kann ein einzelnes Informationsverarbeitungssystem (z. B. 62) einen computerimplementierten Dienst allein (d. h. unabhängig) bereitstellen, während mehrere andere Informationsverarbeitungssysteme (z. B. 62, 64) einen zweiten computerimplementierten Dienst kooperativ bereitstellen können (z. B. kann jedes der mehreren anderen Informationsverarbeitungssysteme ähnliche und/oder unterschiedliche Dienste bereitstellen, die den kooperativ bereitgestellten Dienst bilden).
  • Um computerimplementierte Dienste bereitzustellen, können die Informationsverarbeitungssysteme (60) Rechenressourcen verwenden, die durch Hardwarevorrichtungen bereitgestellt werden. Die Rechenressourcen können zum Beispiel Verarbeitungsressourcen, Speicherressourcen, Arbeitsspeicherressourcen, Grafikverarbeitungsressourcen, Kommunikationsressourcen und/oder andere Arten von Ressourcen enthalten, die durch die Hardwarevorrichtungen bereitgestellt werden. Verschiedene Hardwarevorrichtungen können diese Rechenressourcen bereitstellen.
  • Die Art und Menge von Rechenressourcen, die erforderlich sind, um computerimplementierte Dienste bereitzustellen, können in Abhängigkeit von der Art und Menge von bereitzustellenden computerimplementierten Diensten variieren. Zum Beispiel können einige Arten von computerimplementierten Diensten rechenintensiver (z. B. Modellierung) sein, während andere computerimplementierte Dienste speicherintensiver (z. B. Datenbank) sein können, wodurch unterschiedliche Rechenressourcenanforderungen für diese unterschiedlichen Dienste vorliegen. Folglich können Rechenressourcen ineffizient verwendet werden, wenn die Menge von Rechenressourcen für die computerimplementierten Dienste überbelegt ist. Ähnlich kann die Qualität der bereitgestellten computerimplementierten Dienste schlecht oder anderweitig unerwünscht sein, wenn Rechenressourcen für die computerimplementierten Dienste unterbelegt sind.
  • Im Allgemeinen betreffen Ausführungsformen der Erfindung Systeme, Verfahren und Vorrichtungen zum Verwalten der Hardwareressourcen der Informationsverarbeitungssysteme (62) und/oder anderer Ressourcen (z. B. externer Ressourcen (30)), um computerimplementierte Dienste bereitzustellen. Die Hardwareressourcen der Informationsverarbeitungssysteme (62) können durch Instanziieren eines oder mehrerer zusammengesetzter Informationsverarbeitungssysteme unter Verwendung der Hardwareressourcen der Informationsverarbeitungssysteme (62), externer Ressourcen (30) und/oder anderer Arten von Hardwarevorrichtungen verwaltet werden, die mit den Informationsverarbeitungssystemen (62) wirkverbunden sind. Folglich können die einem zusammengesetzten Informationsverarbeitungssystem zugewiesenen Rechenressourcen auf die spezifischen Bedürfnisse der Dienste zugeschnitten werden, die durch das zusammengesetzte Informationsverarbeitungssystem bereitgestellt werden.
  • In einer oder mehreren Ausführungsformen der Erfindung enthält das System einen Systemsteuerungsprozessorverwalter (50). Der Systemsteuerungsprozessorverwalter (50) kann zusammengesetzte Informationsverarbeitungssystem-Zusammensetzungsdienste bereitstellen. Zusammengesetzte Informationsverarbeitungssystem-Zusammensetzungsdienste können (i) Erhalten von Zusammensetzungsanforderungen für zusammengesetzte Informationsverarbeitungssysteme und (ii) Aggregieren von Rechenressourcen von den Informationsverarbeitungssystemen (60) und/oder externen Ressourcen (30) unter Verwenden von Systemsteuerungsprozessoren zum Bedienen der Zusammensetzungsanforderungen durch Instanziieren zusammengesetzter Informationsverarbeitungssysteme gemäß den Anforderungen enthalten. Dadurch können instanziierte zusammengesetzte Informationsverarbeitungssysteme computerimplementierte Dienste gemäß den Zusammensetzungsanforderungen bereitstellen.
  • In einer oder mehreren Ausführungsformen der Erfindung instanziiert der Systemsteuerungsprozessorverwalter (50) zusammengesetzte Informationsverarbeitungssysteme gemäß einem Modell mit drei Ressourcensätzen. Wie nachstehend ausführlicher erörtert wird, können die Rechenressourcen eines Informationsverarbeitungssystems in drei logische Ressourcensätze unterteilt werden:
    • einen Rechenressourcensatz, einen Steuerungsressourcensatz und einen Hardwareressourcensatz. Unterschiedliche Ressourcensätze oder Teile davon von denselben oder unterschiedlichen Informationsverarbeitungssystemen können aggregiert werden (z. B. veranlasst werden, als eine Datenverarbeitungsvorrichtung zu arbeiten), um ein zusammengesetztes Informationsverarbeitungssystem mit mindestens einem Ressourcensatz aus jedem Satz des Modells mit drei Ressourcensätzen zu instanziieren.
  • Durch logisches Unterteilen der Rechenressourcen eines Informationsverarbeitungssystems in diese Ressourcensätze können unterschiedliche Mengen und Arten von Rechenressourcen jedem zusammengesetzten Informationsverarbeitungssystem zugewiesen werden, wodurch es den Ressourcen, die dem jeweiligen Informationsverarbeitungssystem zugewiesen sind, ermöglicht wird, mit durchgeführten Arbeitslasten übereinzustimmen. Ferner kann das Unterteilen der Rechenressourcen gemäß dem Modell mit drei Sätzen ermöglichen, dass unterschiedliche Ressourcensätze differenziert werden (z. B. bei unterschiedlichen Persönlichkeiten), um unterschiedliche Funktionalitäten bereitzustellen. Folglich können zusammengesetzte Informationsverarbeitungssysteme auf der Grundlage gewünschter Funktionalitäten zusammengesetzt werden, anstatt nur auf der Grundlage von aggregierten Ressourcen, die im zusammengesetzten Informationsverarbeitungssystem enthalten sein sollen.
  • Zusätzlich kann durch Zusammensetzen zusammengesetzter Informationsverarbeitungssysteme auf diese Weise der Steuerressourcensatz jedes zusammengesetzten Informationsverarbeitungssystems verwendet werden, um Verwaltungsdienste über eine beliebige Anzahl von zusammengesetzten Informationsverarbeitungssystemen hinweg konsistent einzusetzen. Folglich können Ausführungsformen der Erfindung ein Framework für vereinheitlichte Sicherheit, Verwaltbarkeit, Ressourcenverwaltung/Zusammensetzbarkeit, Arbeitslastverwaltung und verteilte Systemverwaltung durch Verwendung dieses Modells mit drei Ressourcensätzen bereitstellen. Für zusätzliche Details in Bezug auf den Systemsteuerungsprozessorverwalter (50) wird auf 4 verwiesen.
  • In einer oder mehreren Ausführungsformen der Erfindung ist ein zusammengesetztes Informationsverarbeitungssystem eine Vorrichtung, die unter Verwenden aller oder eines Teils der Rechenressourcen der Informationsverarbeitungssysteme (60), der externen Ressourcen (30) und/oder anderer Arten von Hardwarevorrichtungen gebildet wird, die mit den Informationsverarbeitungssystemen (60) wirkverbunden sind. Das zusammengesetzte Informationsverarbeitungssystem kann die ihm zugewiesenen Rechenressourcen verwenden, um computerimplementierte Dienste bereitzustellen. Zum Beispiel kann das zusammengesetzte Informationsverarbeitungssystem eine oder mehrere Anwendungen hosten, die die dem zusammengesetzten Informationsverarbeitungssystem zugewiesenen Rechenressourcen verwenden. Die Anwendungen können die computerimplementierten Dienste bereitstellen.
  • Um zusammengesetzte Informationsverarbeitungssysteme zu instanziieren, können die Informationsverarbeitungssysteme (60) mindestens drei Ressourcensätze enthalten, die einen Steuerungsressourcensatz enthalten. Der Steuerungsressourcensatz kann einen Systemsteuerungsprozessor enthalten. Der Systemsteuerungsprozessor jedes Informationsverarbeitungssystems kann mit dem Systemsteuerungsprozessorverwalter (50) koordinieren, um zu ermöglichen, dass zusammengesetzte Informationsverarbeitungssysteme instanziiert werden. Zum Beispiel kann der Systemsteuerungsprozessor eines Informationsverarbeitungssystems Telemetriedaten in Bezug auf die Rechenressourcen eines Informationsverarbeitungssystems bereitstellen, kann im Auftrag des Systemsteuerungsprozessorverwalters (50) Aktionen ausführen, um Rechenressourcen zusammenzufassen, kann die Leistung von doppelten Arbeitslasten organisieren, um die Wahrscheinlichkeit zu verbessern, dass Arbeitslasten abgeschlossen werden, und/oder kann Dienste bereitstellen, die den Betrieb zusammengesetzter Informationsverarbeitungssysteme vereinheitlichen.
  • In einer oder mehreren Ausführungsformen der Erfindung werden Rechenressourcensätze zusammengesetzter Informationsverarbeitungssysteme mit Bare-Metal-Ressourcen durch Steuerungsressourcensätze dargestellt, selbst wenn die dargestellten Ressourcen tatsächlich unter Verwenden einer oder mehrerer Schichten von Abstraktion, Emulation, Virtualisierung, Sicherheitsmodell usw. verwaltet werden. Zum Beispiel können die Systemsteuerungsprozessoren der Steuerungsressourcensätze die Abstraktion, Emulation, Virtualisierung und/oder andere Dienste bereitstellen, während die Ressourcen als Bare-Metal-Ressourcen dargestellt werden. Folglich können diese Dienste für Anwendungen transparent sein, die von den Rechenressourcensätzen zusammengesetzter Informationsverarbeitungssysteme gehostet werden, wodurch eine einheitliche Bereitstellung solcher Dienste ermöglicht wird, ohne dass eine Implementierung von Steuerungsebenenentitäten erforderlich ist, die von den Rechenressourcensätzen der zusammengesetzten Informationsverarbeitungssysteme gehostet werden. Für zusätzliche Details in Bezug auf die Informationsverarbeitungssysteme (60) wird auf 1.2 verwiesen.
  • Die externen Ressourcen (30) können Rechenressourcen sein, die zur Verwendung durch zusammengesetzte Informationsverarbeitungssysteme zugewiesen werden können. Zum Beispiel können die externen Ressourcen (30) Hardwarevorrichtungen enthalten, die irgendeine Anzahl und Art von Rechenressourcen bereitstellen. Das zusammengesetzte Informationsverarbeitungssystem kann diese Ressourcen verwenden, um ihre Funktionalitäten bereitzustellen. Unterschiedliche externe Ressourcen (z. B. 32, 34) können ähnliche oder unterschiedliche Rechenressourcen bereitstellen.
  • Das System von 1.1 kann irgendeine Anzahl von Informationsverarbeitungssystemen (z. B. 62, 64), irgendeine Anzahl von externen Ressourcen (z. B. 32, 34) und irgendeine Anzahl von Systemsteuerungsprozessorverwaltern (z. B. 50) enthalten. Irgendeine der Komponenten von 1.1 kann mit irgendeiner anderen Komponente und/oder anderen Komponenten wirkverbunden sein, die in 1.1 nicht über ein oder mehrere Netzwerke (z. B. 130) dargestellt sind. Die Netzwerke können unter Verwenden irgendeiner Kombination von verdrahteten und/oder drahtlosen Netzwerktopologien implementiert sein.
  • Der Systemsteuerungsprozessorverwalter (50), Informationsverarbeitungssysteme (60) und/oder externe Ressourcen (30) können unter Verwenden von Datenverarbeitungsvorrichtungen implementiert sein. Die Datenverarbeitungsvorrichtungen können zum Beispiel einen Server, einen Laptop-Computer, einen Desktop-Computer, einen Knoten eines verteilten Systems usw. enthalten. Die Datenverarbeitungsvorrichtung kann einen oder mehrere Prozessoren, Arbeitsspeicher (z. B. Direktzugriffsspeicher) und/oder dauerhaften Speicher (z. B. Plattenlaufwerke, Solid-State-Laufwerke usw.) enthalten. Der dauerhafte Speicher kann Computeranweisungen, z. B. Computercode, speichern, die (wenn sie vom Prozessor/den Prozessoren der Datenverarbeitungsvorrichtung ausgeführt werden) die Datenverarbeitungsvorrichtung veranlassen, die Funktionen des Systemsteuerungsprozessorverwalters (50), der Informationsverarbeitungssysteme (60) und/oder der externen Ressourcen (30), die in dieser Anmeldung beschrieben sind, und/oder alle oder einen Teil der in den 5.1-5.4 dargestellten Verfahren durchzuführen. Der Systemsteuerungsprozessorverwalter (50), die Informationsverarbeitungssysteme (60) und/oder die externen Ressourcen (30) können unter Verwenden anderer Arten von Datenverarbeitungsvorrichtungen implementiert werden, ohne von der Erfindung abzuweichen. Für zusätzliche Details in Bezug auf Datenverarbeitungsvorrichtungen wird auf 7 verwiesen.
  • Obwohl das Informationsverarbeitungssystem (60) so dargestellt und beschrieben wurde, dass es eine begrenzte Anzahl spezifischer Komponenten enthält, kann ein Informationsverarbeitungssystem gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Komponenten enthalten, ohne von der Erfindung abzuweichen.
  • Unter Bezugnahme auf 1.2 zeigt 1.2 ein Diagramm eines Informationsverarbeitungssystems (100) gemäß einer oder mehreren Ausführungsformen der Erfindung. Irgendeines der Informationsverarbeitungssysteme (z. B. 60) von 1.1 kann dem in 1.2 dargestellten Informationsverarbeitungssystem (100) ähnlich sein.
  • Wie oben besprochen, kann das Informationsverarbeitungssystem (100) irgendeine Menge und Art von computerimplementierten Diensten bereitstellen. Um die computerimplementierten Dienste bereitzustellen, können Ressourcen des Informationsverarbeitungssystems verwendet werden, um ein oder mehrere zusammengesetzte Informationsverarbeitungssysteme zu instanziieren. Die zusammengesetzten Informationsverarbeitungssysteme können die computerimplementierten Dienste bereitstellen.
  • Um computerimplementierte Dienste bereitzustellen, kann das Informationsverarbeitungssystem (100) irgendeine Anzahl und Art von Hardwarevorrichtungen enthalten, einschließlich zum Beispiel eines oder mehrerer Prozessoren (106), irgendeiner Menge und Art von prozessordediziertem Speicher (104), eines oder mehrerer Systemsteuerungsprozessoren (114) und irgendeiner Anzahl von Hardwareressourcen (118). Diese Hardwarevorrichtungen können logisch in drei Ressourcensätze unterteilt werden, einschließlich eines Rechenressourcensatzes (102), eines Steuerungsressourcensatzes (108) und eines Hardwareressourcensatzes (110).
  • Der Steuerungsressourcensatz (108) des Informationsverarbeitungssystems (100) kann die Bildung zusammengesetzter Informationsverarbeitungssysteme erleichtern. Dazu kann der Steuerungsressourcensatz (108) irgendeine Menge von Ressourcen aus irgendeiner Anzahl von Hardware-Ressourcensätzen (z. B. 110) (z. B. des Informationsverarbeitungssystems (100) und/oder anderer Informationsverarbeitungssysteme) zur Präsentation an Verarbeitungsressourcen irgendeiner Anzahl von Rechenressourcensätzen (z. B. 102) (z. B. des Informationsverarbeitungssystems (100) und/oder anderer Informationsverarbeitungssysteme) vorbereiten. Sobald er vorbereitet ist, kann der Steuerungsressourcensatz (108) die vorbereiteten Ressourcen als Bare-Metal-Ressourcen für die Prozessoren (z. B. 106) der zugewiesenen Rechenressourcen darstellen. Dadurch kann ein zusammengesetztes Informationsverarbeitungssystem instanziiert werden.
  • Um die Ressourcen der Hardware-Ressourcensätze zur Präsentation vorzubereiten, kann der Steuerungsressourcensatz (108) zum Beispiel Virtualisierung, Indirektion, Abstraktion und/oder Emulation einsetzen. Diese Verwaltungsfunktionalitäten können für Anwendungen transparent sein, die von den resultierenden instanziierten zusammengesetzten Informationsverarbeitungssystemen gehostet werden. Folglich kann das zusammengesetzte Informationsverarbeitungssystem, obwohl es den Steuerungsebenenentitäten des zusammengesetzten Informationsverarbeitungssystems unbekannt ist, gemäß einer beliebigen Anzahl von Verwaltungsmodellen arbeiten, wodurch eine vereinheitlichte Steuerung und Verwaltung von zusammengesetzten Informationsverarbeitungssystemen bereitgestellt wird. Diese Funktionalitäten können für Anwendungen transparent sein, die von zusammengesetzten Informationsverarbeitungssystemen gehostet werden, wodurch sie von einem mit diesen Funktionalitäten verbundenen Overhead entlastet werden.
  • Betrachten wir zum Beispiel ein Szenario, in dem ein Rechenressourcensatz angewiesen wird, ein zusammengesetztes Informationsverarbeitungssystem zu instanziieren, das einen Rechenressourcensatz und einen Hardwareressourcensatz enthält, der Speicherressourcen zum Rechenressourcensatz beiträgt. Der Rechenressourcensatz kann die Speicherressourcen des Hardwareressourcensatzes virtualisieren, um zu ermöglichen, dass eine ausgewählte Menge der Speicherressourcen dem zusammengesetzten Informationsverarbeitungssystem zugewiesen wird, während einige der Speicherressourcen für die Zuweisung zu anderen zusammengesetzten Informationsverarbeitungssystemen reserviert werden. Die vorbereiteten Speicherressourcen können jedoch dem Rechenressourcensatz als Bare-Metal-Ressourcen dargestellt werden. Folglich muss der Rechenressourcensatz möglicherweise keine Steuerungsebenenentitäten hosten oder anderweitig Overhead zur Verwendung der virtualisierten Speicherressourcen verursachen.
  • Der Rechenressourcensatz (102) kann einen oder mehrere Prozessoren (106) enthalten, die mit dem prozessordedizierten Speicher (104) wirkverbunden sind. Folglich kann der Rechenressourcensatz (102) irgendeine Anzahl von Ausführungsprozessen hosten, wodurch es ermöglicht wird, irgendeine Anzahl und Art von Arbeitslasten durchzuführen. Beim Durchführen der Arbeitslasten kann der Rechenressourcensatz (102) Rechenressourcen verwenden, die durch den Hardwareressourcensatz (110) des Informationsverarbeitungssystems (100), Hardwareressourcensätze anderer Informationsverarbeitungssysteme und/oder externe Ressourcen bereitgestellt werden.
  • Die Prozessoren (106) des Rechenressourcensatzes (102) können mit einem oder mehreren Systemsteuerungsprozessoren (114) des Steuerungsressourcensatzes (108) wirkverbunden sein. Zum Beispiel können die Prozessoren (106) mit einer Rechenressourcenschnittstelle (112) verbunden sein, die auch mit den Systemsteuerungsprozessoren (114) verbunden ist.
  • Die Systemsteuerungsprozessoren (114) des Hardwareressourcensatzes (110) können den Prozessoren (106) Rechenressourcen als Bare-Metal-Ressourcen darstellen. Mit anderen Worten kann aus der Sicht der Prozessoren (106) irgendeine Anzahl von Bare-Metal-Ressourcen über die Rechenressourcenschnittstelle (112) mit ihr wirkverbunden sein, wenn die Systemsteuerungsprozessoren (114) in Wirklichkeit über die Rechenressourcenschnittstelle (112) mit den Prozessoren (106) wirkverbunden sind. Mit anderen Worten können die Systemsteuerungsprozessoren (114) die Präsentation anderer Arten von Ressourcen für den Rechenressourcensatz (102) verwalten.
  • Durch Darstellen der Rechenressourcen für die Prozessoren als Bare-Metal-Ressourcen müssen Steuerungsebenenentitäten (z. B. Anwendungen) wie etwa Hypervisoren, Emulatoren und/oder andere Arten von Verwaltungsentitäten möglicherweise nicht von den Prozessoren (106) für die Prozessoren (106) und von ihnen gehostete Entitäten gehostet (z. B. ausgeführt) werden, um die einem zusammengesetzten Informationsverarbeitungssystem zugewiesenen Rechenressourcen zu verwenden. Dementsprechend können alle durch den Rechenressourcensatz (102) bereitgestellten Verarbeitungsressourcen für das Bereitstellen der computerimplementierten Dienste dediziert sein.
  • Zum Beispiel können die Prozessoren (106) abgebildete Speicheradressen verwenden, um mit den durch die Systemsteuerungsprozessoren (114) dargestellten Bare-Metal-Ressourcen zu den Prozessoren (106) zu kommunizieren. Die Systemsteuerungsprozessoren (114) können diese Kommunikationen erhalten und die Kommunikationen, die die Rechenressourcen bereitstellen, mit denen die Prozessoren (106) über die nachstehend erörterte Rechenressourcenschnittstelle (112) und/oder Hardwareressourcenschnittstelle (116) interagieren, angemessen neu abbilden (z. B. neu verpacken, umleiten, einkapseln usw.). Folglich müssen Indirektion, Neuabbildung und/oder andere Funktionen, die für Ressourcenvirtualisierung, Emulation, Abstraktion oder andere Verfahren der Ressourcenzuweisung (außer Bare Metal) und Verwaltung erforderlich sind, nicht über die Prozessoren (106) implementiert werden.
  • Dadurch kann eine beliebige Anzahl von Funktionen für ein zusammengesetztes Informationsverarbeitungssystem automatisch auf eine Weise durchgeführt werden, die für die Steuerungsebene transparent ist. Dementsprechend kann ein zusammengesetztes Informationsverarbeitungssystem auf eine Weise arbeiten, die mit einer vereinheitlichten, konsistenten Architektur oder einem Modell (z. B. Kommunikationsmodell, Datenspeichermodell usw.) konsistent ist, indem der Betrieb eines oder mehrerer Systemsteuerungsprozessoren auf eine Weise konfiguriert wird, die mit der Architektur oder dem Modell konsistent ist.
  • In einer oder mehreren Ausführungsformen der Erfindung verwenden Steuerungsebenenentitäten Rechenressourcen, die durch eine oder mehrere Schichten von Indirektion, Abstraktion, Virtualisierung usw. dargestellt werden. Mit anderen Worten wird dadurch ein indirekter Benutzer von Hardwarevorrichtungen und Rechenressourcen bereitgestellt.
  • In einer oder mehreren Ausführungsformen der Erfindung verwenden Datenebenenentitäten direkt Rechenressourcen. Zum Beispiel können Datenebenenentitäten Hardwarevorrichtungen bei ihrem Betrieb anweisen, wodurch sie dadurch bereitgestellte Rechenressourcen direkt verwenden. Datenebenenentitäten können die Rechenressourcen den Steuerungsebenenentitäten unter Verwenden einer oder mehrerer Schichten von Indirektion, Abstraktion, Virtualisierung usw. darstellen.
  • Die Systemsteuerungsprozessoren (114) können irgendeine Anzahl von Ressourcen, die mit ihr wirkverbunden sind (z. B. den Hardwareressourcensatz (110), andere Ressourcen, die mit ihr über eine Schnittstelle (z. B. Hardwareressourcenschnittstelle (116) usw.) wirkverbunden sind, als Bare-Metal-Ressourcen für die Prozessoren (106) des Rechenressourcensatzes (102) darstellen. Folglich können die Systemsteuerungsprozessoren (114) Vorrichtungsentdeckungsprozesse implementieren, die mit den Prozessoren (106) kompatibel sind, um es den Prozessoren (106) zu ermöglichen, die dargestellten Rechenressourcen zu verwenden.
  • Zum Beispiel kann der Hardwareressourcensatz (110) Hardwareressourcen (118) enthalten, die mit den Systemsteuerungsprozessoren (114) über eine Hardwareressourcenschnittstelle (116) wirkverbunden sind. Die Hardwareressourcen (118) können irgendeine Anzahl und Art von Hardwarevorrichtungen enthalten, die Rechenressourcen bereitstellen. Für zusätzliche Details in Bezug auf die Hardwareressourcen (118) wird auf 2 verwiesen.
  • In einem anderen Beispiel können die Systemsteuerungsprozessoren (114) mit anderen Hardwareressourcensätzen anderer Informationsverarbeitungssysteme über eine Hardwareressourcenschnittstelle (116), ein Netzwerk (130) und/oder andere Systemsteuerungsprozessoren der anderen Informationsverarbeitungssysteme wirkverbunden sein. Die Systemsteuerungsprozessoren können es Hardwareressourcensätzen anderer Informationsverarbeitungssysteme kooperativ ermöglichen, als Bare-Metal-Ressourcen für den Rechenressourcensatz (102) vorbereitet und dargestellt zu werden.
  • In einem zusätzlichen Beispiel können die Systemsteuerungsprozessoren (114) mit externen Ressourcen über eine Hardwareressourcenschnittstelle (116) und ein Netzwerk (130) wirkverbunden sein. Die Systemsteuerungsprozessoren (114) können die externen Ressourcen als Bare-Metal-Ressourcen für den Rechenressourcensatz (102) vorbereiten und darstellen.
  • Für zusätzliche Details in Bezug auf den Betrieb und die Funktionen der Systemsteuerungsprozessoren (114) wird auf 3 verwiesen.
  • Die Computerressourcenschnittstelle (112) kann unter Verwenden irgendeiner geeigneten Verbindungstechnologie implementiert sein, einschließlich zum Beispiel Systembusse wie Computer-Express-Links oder andere Verbindungsprotokolle. Die Computerressourcenschnittstelle (112) kann irgendein Eingabe/Ausgabe-Protokoll (E/A-Protokoll), irgendein Arbeitsspeicherprotokoll, irgendeine Kohärenzschnittstelle usw. unterstützen. Die Computerressourcenschnittstelle (112) kann Prozessor-zu-Vorrichtung-Verbindungen, Prozessor-zu-Arbeitsspeicherverbindungen und/oder andere Arten von Verbindungen unterstützen. Eine Computerressourcenschnittstelle (112) kann unter Verwenden einer oder mehrerer Hardwarevorrichtungen implementiert sein, einschließlich einer Schaltungsanordnung, die ausgelegt ist, die Funktionalität der Computerressourcenschnittstelle (112) bereitzustellen.
  • Die Hardwareressourcenschnittstelle (116) kann unter Verwenden irgendeiner geeigneten Verbindungstechnologie implementiert sein, einschließlich zum Beispiel Systembusse wie Computer-Express-Links oder andere Verbindungsprotokolle. Die Hardwareressourcenschnittstelle (116) kann irgendein Eingabe/Ausgabe-Protokoll (E/A-Protokoll), irgendein Arbeitsspeicherprotokoll, irgendeine Kohärenzschnittstelle usw. unterstützen. Die Hardwareressourcenschnittstelle (116) kann Prozessor-zu-Vorrichtung-Verbindungen, Prozessor-zu-Arbeitsspeicherverbindungen und/oder andere Arten von Verbindungen unterstützen. Die Hardwareressourcenschnittstelle (116) kann unter Verwenden einer oder mehrerer Hardwarevorrichtungen implementiert sein, einschließlich einer Schaltungsanordnung, die ausgelegt ist, die Funktionalität der Hardwareressourcenschnittstelle (116) bereitzustellen.
  • In einigen Ausführungsformen der Erfindung können der Rechenressourcensatz (102), der Steuerressourcensatz (108) und/oder der Hardwareressourcensatz (110) als separate physische Vorrichtungen implementiert sein. In einem solchen Szenario können die Rechenressourcenschnittstelle (112) und die Hardwareressourcenschnittstelle (116) ein oder mehrere Netzwerke enthalten, die es diesen Ressourcensätzen ermöglichen, miteinander zu kommunizieren. Folglich können irgendwelche dieser Ressourcensätze (z. B. 102, 108, 110) Netzwerkschnittstellenkarten oder andere Vorrichtungen enthalten, um es den Hardwarevorrichtungen der jeweiligen Ressourcensätze zu ermöglichen, miteinander zu kommunizieren.
  • In einer oder mehreren Ausführungsformen der Erfindung unterstützen die Systemsteuerungsprozessoren (114) mehrere unabhängige Verbindungen. Zum Beispiel können die Systemsteuerungsprozessoren (114) eine erste Netzwerkkommunikationsverbindung (z. B. eine In-Band-Verbindung) unterstützen, die zur Verwendung durch Anwendungen zugewiesen werden kann, die von den Prozessoren (106) gehostet werden. Die Systemsteuerungsprozessoren (114) können auch eine zweite Netzwerkkommunikationsverbindung (z. B. eine Out-of-Band-Verbindung) unterstützen, die zur Verwendung durch Anwendungen zugewiesen werden kann, die von den Systemsteuerungsprozessoren (114) gehostet werden. Die Out-of-Band-Verbindung kann für Verwaltungs- und Steuerzwecke verwendet werden, während die In-Band-Verbindung verwendet werden kann, um computerimplementierte Dienste bereitzustellen. Diese Verbindungen können mit unterschiedlichen Netzwerkendpunkten verbunden sein, wodurch es ermöglicht wird, dass Kommunikationen selektiv an Anwendungen gerichtet werden, die von den Prozessoren (106) und/oder Systemsteuerungsprozessoren (114) gehostet werden. Wie in Bezug auf 3 ausführlicher erörtert wird, können die Systemsteuerungsprozessoren (114) die Out-of-Band-Verbindungen verwenden, um mit anderen Vorrichtungen zu kommunizieren, um Informationsverarbeitungssysteme zu verwalten (z. B. zu instanziieren, zu überwachen, zu modifizieren usw.).
  • Das Netzwerk (130) kann irgendeiner Art von Netzwerk entsprechen und kann mit dem Internet oder anderen Netzwerken wirkverbunden sein, wodurch es dem Informationsverarbeitungssystem (100) ermöglicht wird, mit irgendeiner Anzahl und Art anderer Vorrichtungen zu kommunizieren.
  • In einer oder mehreren Ausführungsformen der Erfindung kann der Zugriff auf das Netzwerk (130) durch die Informationsverarbeitungssysteme (100) durch Zugriffssteuerungsverwalter (ACMs) verwaltet werden. Ein ACM eines Informationsverarbeitungssystems kann ein System sein, das die Entitäten verwaltet, die auf die Komponenten des entsprechenden Informationsverarbeitungssystems zugreifen können. Die Programmierung der ACMs kann zum Beispiel durch das Informationsverarbeitungssystem, den Systemsteuerungsprozessorverwalter (50) und/oder irgendeine andere in 1.1 dargestellte Entität durchgeführt werden.
  • In einer oder mehreren Ausführungsformen der Erfindung ist jeder der Zugriffssteuerungsverwalter als eine Firewall implementiert. Die Firewall kann ein Netzwerksicherheitssystem sein, das dazu ausgelegt ist, eingehenden und abgehenden Netzwerkverkehr zwischen dem zusammengesetzten Informationsverarbeitungssystem zu überwachen, zu steuern und/oder anderweitig zu verwalten. Die Firewall kann ein logischer Satz von Anweisungen sein, die zum Beispiel durch einen Prozessor des Informationsverarbeitungssystems (z. B. 62, 64) implementiert werden, der es dem Informationsverarbeitungssystem ermöglicht, die Funktionalität der Firewall wie überall in der Anmeldung beschrieben auszuführen.
  • Das Informationsverarbeitungssystem (100) kann unter Verwenden von Rechenvorrichtungen implementiert werden. Die Rechenvorrichtungen können zum Beispiel ein Server, ein Laptop-Computer, ein Desktop-Computer, ein Knoten eines verteilten Systems usw. sein. Die Rechenvorrichtung kann einen oder mehrere Prozessoren, Arbeitsspeicher (z. B. Direktzugriffsspeicher) und/oder dauerhaften Speicher (z. B. Plattenlaufwerke, Solid-State-Laufwerke usw.) enthalten. Der dauerhafte Speicher kann Computeranweisungen, z. B. Computercode, speichern, die (wenn sie vom Prozessor/den Prozessoren der Datenverarbeitungsvorrichtung ausgeführt werden) die Datenverarbeitungsvorrichtung veranlassen, die Funktionen des Informationsverarbeitungssystems (100), das in dieser Anmeldung beschrieben ist, und/oder alle oder einen Teil der in den 5.1-5.4 dargestellten Verfahren durchzuführen. Das Informationsverarbeitungssystem (100) kann unter Verwenden anderer Arten von Datenverarbeitungsvorrichtungen implementiert werden, ohne von der Erfindung abzuweichen. Für zusätzliche Details in Bezug auf Datenverarbeitungsvorrichtungen wird auf 7 verwiesen.
  • Obwohl das Informationsverarbeitungssystem (100) so dargestellt und beschrieben wurde, dass es eine begrenzte Anzahl spezifischer Komponenten enthält, kann ein Informationsverarbeitungssystem gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Komponenten enthalten, ohne von der Erfindung abzuweichen.
  • Unter Bezugnahme auf 2 zeigt 2 ein Diagramm der Hardwareressourcen (118) gemäß einer oder mehreren Ausführungsformen der Erfindung. Wie oben angemerkt, können Systemsteuerungsprozessoren des Informationsverarbeitungssystems Ressourcen präsentieren, die zum Beispiel einige der Hardwareressourcen (118) enthalten, um ein zusammengesetztes Informationsverarbeitungssystem zu bilden.
  • Die Hardwareressourcen (118) können irgendeine Anzahl und Arten von Hardwarevorrichtungen enthalten, die irgendeine Menge und Art von Rechenressourcen bereitstellen können. Zum Beispiel können die Hardwareressourcen (118) Speichervorrichtungen (200), Arbeitsspeichervorrichtungen (202) und Spezialvorrichtungen (204) enthalten.
  • Die Speichervorrichtungen (200) können Speicherressourcen (z. B. dauerhaften Speicher) bereitstellen, in denen Anwendungen, die von einem zusammengesetzten Informationsverarbeitungssystem gehostet werden, Daten speichern können, die irgendeine Art und Menge von Informationen enthalten. Die Speichervorrichtungen (200) können irgendeine Art und Menge von Vorrichtungen zum Speichern von Daten enthalten. Die Vorrichtungen können zum Beispiel Festplattenlaufwerke, Solid-State-Laufwerke, Bandlaufwerke usw. enthalten. Die Speichervorrichtungen (200) können andere Arten von Vorrichtungen zum Bereitstellen von Speicherressourcen enthalten, ohne von der Erfindung abzuweichen. Die Speichervorrichtungen (200) können zum Beispiel Controller (z. B. ein redundantes Array von Plattencontrollern), Lastverteiler und/oder andere Arten von Vorrichtungen enthalten.
  • Die Arbeitsspeichervorrichtungen (202) können Arbeitsspeicherressourcen (z. B. flüchtigen und/oder dauerhaften Speicher) bereitstellen, in denen ein zusammengesetztes Informationsverarbeitungssystem Daten speichern kann, die irgendeine Art und Menge von Informationen enthalten. Die Arbeitsspeichervorrichtungen (202) können irgendeine Art und Menge von Vorrichtungen zum Speichern von Daten enthalten. Die Vorrichtungen können zum Beispiel flüchtigen Arbeitsspeicher wie Direktzugriffsspeicher, dauerhaften Arbeitsspeicher wie Enterprise-Class-Arbeitsspeicher usw. enthalten. Die Arbeitsspeichervorrichtungen (202) können andere Arten von Vorrichtungen zum Bereitstellen von Arbeitsspeicherressourcen enthalten, ohne von der Erfindung abzuweichen. Die Arbeitsspeichervorrichtungen (200) können zum Beispiel Controller (z. B. Replikationsverwalter), Lastverteiler und/oder andere Arten von Vorrichtungen enthalten.
  • Die Spezialvorrichtungen (204) können anderen Arten von Rechenressourcen (z. B. Grafikverarbeitungsressourcen, Rechenbeschleunigungsressourcen usw.) für zusammengesetzte Informationsverarbeitungssysteme bereitstellen. Die Spezialvorrichtungen (204) können irgendeine Art und Menge von Vorrichtungen zum Bereitstellen anderer Arten von Rechenressourcen enthalten. Die Spezialvorrichtungen (204) können zum Beispiel Grafikverarbeitungseinheiten zum Bereitstellen von Grafikverarbeitungsressourcen, Rechenbeschleuniger zum Beschleunigen entsprechender Arbeitslasten, die durch zusammengesetzte Informationsverarbeitungssysteme ausgeführt werden, anwendungsspezifische integrierte Schaltungen (ASICs) zum Ausführen anderer Funktionalitäten, digitale Signalprozessoren zum Erleichtern von Hochgeschwindigkeitskommunikationen usw. enthalten. Die Spezialvorrichtungen (204) können andere Arten von Vorrichtungen zum Bereitstellen anderer Arten von Rechenressourcen enthalten, ohne von der Erfindung abzuweichen.
  • Die Systemsteuerungsprozessoren der Informationsverarbeitungssysteme können die Präsentation der durch die Hardwareressourcen (118) bereitgestellten Rechenressourcen für Rechenressourcensätze (z. B. als Bare-Metal-Ressourcen für Prozessoren) vermitteln. Dadurch können die Systemsteuerungsprozessoren eine Abstraktionsschicht bereitstellen, die es den Hardwareressourcen (118) ermöglicht, zum Beispiel virtualisiert, emuliert, mit anderen Systemen kompatibel zu sein, und/oder direkt mit den Rechenressourcensätzen verbunden zu sein (z. B. durchlaufen). Folglich können die Rechenressourcen der Hardwareressourcen (118) fein oder auf Makroebene verschiedenen zusammengesetzten Informationsverarbeitungssystemen zugewiesen werden.
  • Zusätzlich können die Systemsteuerungsprozessoren den Betrieb dieser Hardwarevorrichtungen gemäß einem oder mehreren Modellen verwalten, einschließlich beispielsweise Datenschutzmodellen, Sicherheitsmodellen, Arbeitslastleistungsverfügbarkeitsmodellen, Berichtsmodellen usw. Die Systemsteuerungsprozessoren können zum Beispiel eine redundante Leistung von Arbeitslasten für Hochverfügbarkeitsdienste instanziieren.
  • Die Betriebsweise dieser Vorrichtungen kann für die Rechenressourcensätze transparent sein, die diese Hardwarevorrichtungen zum Bereitstellen von computerimplementierten Diensten verwenden. Folglich können die zusammengesetzten Informationsverarbeitungssysteme, selbst wenn die resultierende zusammengesetzte Informationsverarbeitungssystem-Steuerungsebene sich der Implementierung dieser Modelle nicht bewusst sein kann, weiterhin gemäß diesen Modellen arbeiten, wodurch ein vereinheitlichtes Verfahren zum Verwalten des Betriebs von zusammengesetzten Informationsverarbeitungssystemen bereitgestellt wird.
  • Obwohl die Hardwareressourcen (118) so dargestellt und beschrieben wurden, dass sie eine begrenzte Anzahl spezifischer Komponenten enthalten, können lokale Hardwareressourcen gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Komponenten enthalten, ohne von der Erfindung abzuweichen.
  • Wie oben besprochen, können Informationsverarbeitungssysteme Systemsteuerungsprozessoren enthalten, die verwendet werden können, um zusammengesetzte Informationsverarbeitungssysteme zu instanziieren. 3 zeigt ein Diagramm eines Systemsteuerungsprozessors (298) gemäß einer oder mehreren Ausführungsformen der Erfindung. Irgendeiner der in den Steuerungsressourcensätzen von 1.2 enthaltenen Systemsteuerungsprozessoren kann dem in 3 dargestellten Systemsteuerungsprozessor (298) ähnlich sein.
  • Der Systemsteuerungsprozessor (298) kann die Instanziierung und den Betrieb zusammengesetzter Informationsverarbeitungssysteme erleichtern. Dadurch kann ein System, das Informationsverarbeitungssysteme enthält, zusammengesetzte Informationsverarbeitungssysteme dynamisch instanziieren, um computerimplementierte Dienste bereitzustellen.
  • Um zusammengesetzte Informationsverarbeitungssysteme zu instanziieren und zu betreiben, kann der Systemsteuerungsprozessor (298) einen Zusammensetzungsverwalter (300), einen physischen Ressourcenverwalter (302), einen emulierten Ressourcenverwalter (304), einen virtuellen Ressourcenverwalter (306), einen Betriebsverwalter (308), Hardware-Ressourcendienste (310) und Speicher (312) enthalten. Jede dieser Komponenten des Systemsteuerungsprozessors wird nachstehend besprochen.
  • Der Zusammensetzungsverwalter (300) kann den Prozess des Instanziierens und Betreibens zusammengesetzter Informationsverarbeitungssysteme verwalten. Zum Bereitstellen dieser Verwaltungsdienste kann der Zusammensetzungsverwalter (300) Funktionalität enthalten, um (i) Informationen in Bezug auf die Hardware-Komponenten des Informationsverarbeitungssystems zu erhalten (z. B. Telemetriedaten in Bezug auf das Informationsverarbeitungssystem zu erhalten), (ii) die erhaltenen Informationen anderen Entitäten bereitzustellen (z. B. Verwaltungsentitäten wie etwa Systemsteuerungsprozessorverwalter (50, 1.1)), (iii) Zusammensetzungsanforderungen für zusammengesetzte Informationsverarbeitungssysteme zu erhalten, (iv) basierend auf den Zusammensetzungsanforderungen Ressourcen als Blank-Metal-Ressourcen vorzubereiten und darzustellen, um Ressourcensätze zu berechnen, (v) Anwendungen in zusammengesetzten Informationsverarbeitungssystemen zu instanziieren, um zu bewirken, dass die zusammengesetzten Informationsverarbeitungssysteme computerimplementierte Dienste bereitstellen, ihren Betrieb an Sicherheitsmodelle anzupassen usw., (vi) den Betrieb der zusammengesetzten Informationsverarbeitungssysteme zu verwalten, indem zum Beispiel die Leistung von Arbeitslasten dupliziert wird, um die Wahrscheinlichkeit zu verbessern, dass die Ausgabe von Arbeitslasten verfügbar ist, (vii) Ressourcen, die den Rechenressourcensätzen zusammengesetzter Informationsverarbeitungssysteme präsentiert werden, dynamisch gemäß Arbeitslasten, die durch die zusammengesetzten Informationsverarbeitungssysteme ausgeführt werden, hinzuzufügen/zu entfernen/zu modifizieren und/oder (viii) sich mit anderen Systemsteuerungsprozessoren zu koordinieren, um verteilte Systemfunktionalitäten bereitzustellen. Durch Bereitstellen der obigen Funktionalitäten kann ein Systemsteuerungsprozessor gemäß einer oder mehreren Ausführungsformen der Erfindung ermöglichen, dass verteilte Ressourcen von einer beliebigen Anzahl von Informationsverarbeitungssystemen in ein zusammengesetztes Informationsverarbeitungssystem aggregiert werden, um computerimplementierte Dienste bereitzustellen.
  • Um Informationen in Bezug auf die Hardwarekomponenten des Informationsverarbeitungssystems zu erhalten, kann der Zusammensetzungsverwalter (300) die Komponenten des Informationsverarbeitungssystems, das den Systemsteuerungsprozessor hostet, inventarisieren. Das Inventar kann zum Beispiel den Typ und das Modell jeder Hardwarekomponente, Versionen von Firmware oder anderen Code, der auf den Hardwarekomponenten ausgeführt wird, und/oder Informationen in Bezug auf Hardwarekomponenten des Informationsverarbeitungssystems, die zugewiesen werden können, um zusammengesetzte Informationsverarbeitungssysteme zu bilden, enthalten.
  • Der Zusammensetzungsverwalter (300) kann Zusammensetzungsanforderungen von anderen Entitäten (z. B. Verwaltungsentitäten, die mit dem Instanziieren zusammengesetzter Informationsverarbeitungssysteme beauftragt sind) als vorgeladene Anweisungen, die im Speicher des Systemsteuerungsprozessors vorhanden sind, und/oder über andere Verfahren erhalten. Die Zusammensetzungsanforderungen können zum Beispiel die Arten und Mengen von Rechenressourcen spezifizieren, die einem zusammengesetzten Informationsverarbeitungssystem zugewiesen werden sollen.
  • In einer oder mehreren Ausführungsformen der Erfindung spezifizieren die Zusammensetzungsanforderungen die Rechenressourcenzuweisungen unter Verwenden eines absichtsbasierten Modells. Anstatt zum Beispiel spezifische Hardwarevorrichtungen (oder Teile davon) zu spezifizieren, die einem bestimmten Rechenressourcensatz zugewiesen werden sollen, um ein zusammengesetztes Informationsverarbeitungssystem zu erhalten, können die Ressourcenanforderungen nur spezifizieren, dass ein zusammengesetztes Informationsverarbeitungssystem mit vorbestimmten Eigenschaften instanziiert werden soll, dass ein zusammengesetztes Informationsverarbeitungssystem bestimmte Arbeitslasten durchführen oder bestimmte Anwendungen ausführen wird und/oder dass das zusammengesetzte Informationsverarbeitungssystem in der Lage sein wird, eine oder mehrere vorbestimmte Funktionalitäten durchzuführen. In einem solchen Szenario kann der Zusammensetzungsverwalter entscheiden, wie das zusammengesetzte Informationsverarbeitungssystem instanziiert werden soll (z. B. welche Ressourcen zugewiesen werden sollen, wie die Ressourcen zugewiesen werden sollen (z. B. Virtualisierung, Emulation, redundante Arbeitslastleistung, Datenintegritätsmodelle, die eingesetzt werden sollen, usw.), welchem Rechenressourcensatz (welchen Rechenressourcensätzen) entsprechende Rechenressourcen präsentiert werden sollen, usw.).
  • In einer oder mehreren Ausführungsformen der Erfindung spezifizieren die Zusammensetzungsanforderungen die Rechenressourcenzuweisungen unter Verwenden eines expliziten Modells. Die Zusammensetzungsanforderungen können zum Beispiel (i) die Ressourcen, die zugewiesen werden sollen, (ii) die Art der Präsentation dieser Ressourcen (z. B. Emulieren einer bestimmten Art von Vorrichtung unter Verwenden einer virtualisierten Ressource im Vergleich zu Pfad direkt zu einer Hardwarekomponente) und (iii) den Rechenressourcensatz (die Rechenressourcensätze), dem jede der zugewiesenen Ressourcen präsentiert werden soll, spezifizieren.
  • Zusätzlich zum Spezifizieren von Ressourcenzuweisungen können die Zusammensetzungsanforderungen zum Beispiel auch Anwendungen, die von den zusammengesetzten Informationsverarbeitungssystemen gehostet werden sollen, Sicherheitsmodelle, die von den zusammengesetzten Informationsverarbeitungssystemen verwendet werden sollen, Kommunikationsmodelle, die von den zusammengesetzten Informationsverarbeitungssystemen verwendet werden sollen, Dienste, die den zusammengesetzten Informationsverarbeitungssystemen bereitgestellt werden sollen, Benutzer-/Entitätszugangsdaten zur Verwendung der zusammengesetzten Informationsverarbeitungssysteme und/oder andere Informationen, die verwendbar sind, um die zusammengesetzten Informationsverarbeitungssysteme in Zustände zu versetzen, in denen die zusammengesetzten Informationsverarbeitungssysteme gewünschte computerimplementierte Dienste bereitstellen, spezifizieren.
  • Zum Vorbereiten und Darstellen von Ressourcen zum Berechnen von Ressourcensätzen auf Grundlage der Zusammensetzungsanforderungen können die Systemsteuerungsprozessoren zum Beispiel Abstraktion, Indirektion, Virtualisierung, Abbildung, Emulation und/oder andere Arten von Diensten implementieren, die verwendet werden können, um eine beliebige Art von Ressourcen als eine Ressource darzustellen, die zur Bare-Metal-Nutzung durch Rechenressourcensätze fähig ist. Zum Bereitstellen dieser Dienste kann der Zusammensetzungsverwalter (300) die Funktionalität des physischen Ressourcenverwalters (302), des emulierten Ressourcenverwalters (304) und/oder des virtuellen Ressourcenverwalters (306) aufrufen.
  • Zusätzlich können die Systemsteuerungsprozessoren eine Wichtigkeit der Fertigstellung von Arbeitslasten beim Vorbereiten und Darstellen von Ressourcen berücksichtigen. Zum Beispiel können einige Arbeitslasten, die durch verschiedene Hardwarevorrichtungen durchgeführt werden können, für die computerimplementierten Dienste, die durch ein zusammengesetztes Informationsverarbeitungssystem bereitgestellt werden sollen, kritisch sein (z. B. hochverfügbare Arbeitslasten). In einem solchen Szenario kann der Systemsteuerungsprozessor Ressourcen (z. B. über die durch einen Rechenressourcensatz angeforderten hinaus) für die Leistung der Arbeitslasten übermitteln, sodass mindestens zwei Instanzen der Arbeitslasten unter Verwendung doppelter Ressourcen durchgeführt werden können. Dadurch kann es wahrscheinlicher sein, dass mindestens eine der Arbeitslasten erfolgreich fertiggestellt wird. Folglich kann der Systemsteuerungsprozessor die Ausgabe einer der Arbeitslasten bereitstellen, um Ressourcensätze eines zusammengesetzten Informationsverarbeitungssystems zu berechnen.
  • Beim Darstellen der Ressourcen für die Rechenressourcensätze kann der Systemsteuerungsprozessor (298) die Ressourcen unter Verwenden einer emulierten Datenebene darstellen. Zum Beispiel können die Systemsteuerungsprozessoren (298) Bare-Metal-Kommunikationen (z. B. E/A von den Prozessoren) empfangen und auf eine Weise reagieren, die mit Antworten entsprechender Bare-Metal-Vorrichtungen (z. B. Arbeitsspeicher) konsistent ist. Dadurch kann der Systemsteuerungsprozessor (298) die Kommunikationen in Aktionen übersetzen. Die Aktionen können für die Hardwarevorrichtungen bereitgestellt werden, die durch den Systemsteuerungsprozessor (298) verwendet werden, um die Bare-Metal-Ressourcen für den/die Rechenressourcensatz(e) darzustellen. Im Gegenzug können die Hardwarevorrichtungen die Aktionen durchführen, die in einem zusammengesetzten Informationsverarbeitungssystem resultieren, das gewünschte computerimplementierte Dienste bereitstellt.
  • In einigen Szenarien können mehrere Systemsteuerungsprozessoren zusammenarbeiten, um Bare-Metal-Ressourcen für einen Rechenressourcensatz darzustellen. Beispielsweise kann ein einzelnes Informationsverarbeitungssystem nicht genügend Hardwarevorrichtungen enthalten, um eine Menge und/oder eine Art von Ressourcen für einen Rechenressourcensatz darzustellen, wie durch eine Zusammensetzungsanforderung spezifiziert (z. B. zwei Speichervorrichtungen für einen Rechenressourcensatz darzustellen, wenn ein einzelnes Informationsverarbeitungssystem nur eine einzelne Speichervorrichtung enthält). In diesem Szenario kann ein zweiter Systemsteuerungsprozessor eines zweiten Informationsverarbeitungssystems, der mit dem Systemsteuerungsprozessor wirkverbunden ist, der mit dem Darstellen der Ressourcen für einen Rechenressourcensatz beauftragt ist, eine seiner Speichervorrichtungen zur Präsentation vorbereiten. Sobald er vorbereitet ist, kann der zweite Systemsteuerungsprozessor mit dem Systemsteuerungsprozessor kommunizieren, um dem Systemsteuerungsprozessor zu ermöglichen, die vorbereitete Speichervorrichtung (d. h. die Speichervorrichtung im Informationsverarbeitungssystem) für den Rechenressourcensatz darzustellen. Dadurch können Ressourcen von mehreren Informationsverarbeitungssystemen aggregiert werden, um eine gewünschte Menge von Ressourcen für den/die Rechenressourcensatz(e) darzustellen, um ein zusammengesetztes Informationsverarbeitungssystem zu bilden.
  • Durch Bilden von zusammengesetzten Informationsverarbeitungssystemen, wie oben besprochen, können Ausführungsformen der Erfindung ein System bereitstellen, das in der Lage ist, verteilte Ressourcen über einen Bereich von Vorrichtungen effektiv zu verwenden, um computerimplementierte Dienste bereitzustellen.
  • Der physische Ressourcenverwalter (302) kann die Präsentation von Ressourcen für Rechenressourcensätze verwalten. Zum Beispiel kann der physische Ressourcenverwalter (302) zum Beispiel Übersetzungstabellen erzeugen, die Aktionen spezifizieren, die als Reaktion auf Bare-Metal-Kommunikationen durchzuführen sind, die von Rechenressourcensätzen erhalten werden. Die Übersetzungstabellen können verwendet werden, um als Reaktion auf Kommunikationen von Rechenressourcensätzen Aktionen zu ergreifen.
  • Der physische Ressourcenverwalter (302) kann die Übersetzungstabellen basierend auf den Komponenten der Rechenressourcensätze, Zuweisungen oder anderen Arten von Befehlen/Kommunikationen, die von den Rechenressourcensätzen erhalten werden, und den Ressourcen des Informationsverarbeitungssystems, die dem Dienst des Rechenressourcensatzes zugewiesen sind, erzeugen. Wenn zum Beispiel ein Rechenressourcensatz mit einer Bare-Metal-Ressource dargestellt wird, kann er einen Entdeckungsprozess durchlaufen, um die Bare-Metal-Ressource zur Verwendung vorzubereiten. Wenn der Entdeckungsprozess fortfährt, kann der Rechenressourcensatz Befehle/Kommunikationen an die Bare-Metal-Ressource senden, um zum Beispiel ihren Adressbereich zu entdecken. Der physische Ressourcenverwalter (302) kann diesen Prozess überwachen, angemessen reagieren und die Übersetzungstabelle basierend auf diesen Befehlen und den Ressourcen, die zum Bedienen dieser Bare-Metal-Befehle/Kommunikationen verfügbar sind, erzeugen.
  • Betrachten wir zum Beispiel ein Szenario, in dem eine virtualisierte Platte dem Bedienen von Bare-Metal-Speicherbefehlen von einem Rechenressourcensatz zugewiesen ist. In einem solchen Szenario kann der physische Ressourcenverwalter (302) eine Übersetzungstabelle erzeugen, die physisches Schreiben vom Rechenressourcensatz in virtualisierte Schreibvorgänge übersetzt, die der virtualisierten Platte entsprechen. Folglich kann die virtualisierte Platte durch den Systemsteuerungsprozessor (298) verwendet werden, um Bare-Metal-Ressourcen für den Rechenressourcensatz darzustellen.
  • Der emulierte Ressourcenverwalter (304) kann Emulationstabellen erzeugen, die es ermöglichen, dass Ressourcen, die ansonsten mit einem Rechenressourcensatz inkompatibel wären, mit dem Rechenressourcensatz kompatibel sind. Unterschiedliche Arten von Hardwarevorrichtungen eines Rechenressourcensatzes können mit unterschiedlichen Arten von Hardwarevorrichtungen kompatibel sein. Folglich können Ressourcen, die zum Bereitstellen von Bare-Metal-Ressourcen zugewiesen sind, nicht notwendigerweise mit den Hardwarevorrichtungen eines Rechenressourcensatzes kompatibel sein. Der emulierte Ressourcenverwalter (304) kann Emulationstabellen erzeugen, die Bare-Metal-Kommunikationen, die von einem Rechenressourcensatz erhalten werden, auf Aktionen abbilden, die mit Ressourcen kompatibel sind, die zum Bereitstellen von Bare-Metal-Ressourcen für die Rechenressourcensätze zugewiesen sind.
  • Der virtuelle Ressourcenverwalter (306) kann virtualisierte Ressourcen verwalten, die zum Bereitstellen von Bare-Metal-Ressourcen für Rechenressourcensätze zugewiesen sein können. Zum Beispiel kann der virtuelle Ressourcenverwalter (306) eine Hypervisor-Funktionalität für virtualisierte Hardwareressourcen beinhalten und Teile der virtualisierten Ressourcen zur Verwendung beim Bereitstellen von Bare-Metal-Ressourcen zuweisen.
  • Während der physische Ressourcenverwalter (302), der emulierte Ressourcenverwalter (304) und der virtuelle Ressourcenverwalter (306) als Erzeugungstabellen beschrieben wurden, können diese Komponenten des Systemsteuerungsprozessors andere Arten von Datenstrukturen erzeugen oder unterschiedliche Verwaltungsmodelle verwenden, um ihre jeweiligen Funktionalitäten bereitzustellen, ohne von der Erfindung abzuweichen.
  • Die Funktionalitäten des physischen Ressourcenverwalters (302), des emulierten Ressourcenverwalters (304) und des virtuellen Ressourcenverwalters (306) können isoliert und/oder kombiniert verwendet werden, um Bare-Metal-Ressourcen für Rechenressourcensätze bereitzustellen. Dadurch kann der Systemsteuerungsprozessor (298) Kompatibilitätsprobleme, Größenprobleme zum Abgleichen verfügbarer Ressourcen mit denen, die zugewiesen werden sollen, und/oder andere Probleme, um zu ermöglichen, dass Bare-Metal-Ressourcen für Rechenressourcensätze dargestellt werden, adressieren.
  • Beim Bereitstellen von Bare-Metal-Ressourcen kann der Zusammensetzungsverwalter (300) die Funktionalität des physischen Ressourcenverwalters (302), des emulierten Ressourcenverwalters (304) und des virtuellen Ressourcenverwalters (306) aufrufen. Somit können Ressourcen als Bare-Metal-Ressourcen über Durchreichen (d. h. Weiterleiten von E/A von Rechenressourcensätzen zu Hardwarevorrichtungen), Bare-Metal-Ressourcenadressierung virtualisierter Ressourcen und/oder als emulierte Ressourcen, die mit den Hardwarekomponenten des Rechenressourcensatzes kompatibel sind, dargestellt werden.
  • Die Funktionalität des physischen Ressourcenverwalters (302), emulierten Ressourcenverwalters (304) und virtuellen Ressourcenverwalters (306) kann unter Verwenden irgendeines Kommunikationsmodells aufgerufen werden, einschließlich zum Beispiel Nachrichtendurchreichen, Zustandsteilen, Arbeitsspeicherteilen usw.
  • Der Betriebsverwalter (308) kann den allgemeinen Betrieb des Systemsteuerungsprozessors (298) verwalten. Zum Beispiel kann der Betriebsverwalter (308) als ein Betriebssystem oder eine andere Entität arbeiten, die die Ressourcen des Systemsteuerungsprozessors (298) verwaltet. Der Zusammensetzungsverwalter (300), der physische Ressourcenverwalter (302), emulierte Ressourcenverwalter (304), virtuelle Ressourcenverwalter (306) und/oder andere Entitäten, die durch den Systemsteuerungsprozessor (298) gehostet werden, können den Betriebsverwalter (308) aufrufen oder anderweitig verwenden, um angemessene Ressourcen (z. B. Verarbeitungsressourcen, Arbeitsspeicherressourcen, Speicher, Kommunikationen usw.) zu erhalten, um ihre Funktionalitäten bereitzustellen.
  • Die Hardwareressourcendienste (310) können die Verwendung der Hardwarekomponenten irgendeiner Anzahl von Hardwareressourcensätzen (z. B. 110, 1.2) erleichtern. Zum Beispiel können die Hardwareressourcendienste (310) Treiberfunktionalität enthalten, um angemessen mit den Hardwarevorrichtungen von Hardwareressourcensätzen zu kommunizieren. Die Hardwareressourcendienste (310) können zum Beispiel durch den Betriebsverwalter (308) aufgerufen werden.
  • Wenn ihre Funktionalitäten bereitgestellt werden, können irgendwelche der oben erwähnten Komponenten des Systemsteuerungsprozessors (298) alle oder einen Teil der in den 5.1-5.4 dargestellten Verfahren durchführen.
  • Der Systemsteuerungsprozessor (298) kann unter Verwenden von Rechenvorrichtungen implementiert werden. Die Rechenvorrichtungen können zum Beispiel eine eingebettete Rechenvorrichtung, wie z. B. ein System auf einem Chip, eine Verarbeitungsvorrichtung, die mit Arbeitsspeicher und Speicher wirkgekoppelt ist, oder eine andere Art von Rechenvorrichtung sein. Die Rechenvorrichtung kann einen oder mehrere Prozessoren, Arbeitsspeicher (z. B. Direktzugriffsspeicher) und/oder dauerhaften Speicher (z. B. Plattenlaufwerke, Solid-State-Laufwerke usw.) enthalten. Der dauerhafte Speicher kann Computeranweisungen, z. B. Computercode, speichern, die (wenn sie vom Prozessor/den Prozessoren der Datenverarbeitungsvorrichtung ausgeführt werden) die Datenverarbeitungsvorrichtung veranlassen, die Funktionen des in dieser Anmeldung beschriebenen Systemsteuerungsprozessors (298) und/oder alle oder einen Teil der in den 5.1-5.4 dargestellten Verfahren durchzuführen. Der Systemsteuerungsprozessor (298) kann unter Verwenden anderer Arten von Datenverarbeitungsvorrichtungen implementiert werden, ohne von der Erfindung abzuweichen. Für zusätzliche Details in Bezug auf Datenverarbeitungsvorrichtungen wird auf 7 verwiesen.
  • In einer oder mehreren Ausführungsformen der Erfindung ist der Systemsteuerungsprozessor (298) als eine integrierte Vorrichtung implementiert. Zum Beispiel kann der Systemsteuerungsprozessor (298) unter Verwenden eines Chips implementiert sein, einschließlich einer Schaltungsanordnung, die auf einer Schaltungskarte angeordnet ist. Die Schaltungskarte kann auch die Rechenressourcensätze und/oder Hardwareressourcensätze hosten, die durch den Systemsteuerungsprozessor (298) verwaltet werden.
  • In einer oder mehreren Ausführungsformen der Erfindung sind der Zusammensetzungsverwalter (300), der physische Ressourcenverwalter (302), der emulierte Ressourcenverwalter (304), der virtuelle Ressourcenverwalter (306), der Betriebsverwalter (308) und/oder die Hardwareressourcendienste (310) unter Verwenden einer Hardwarevorrichtung implementiert, einschließlich einer Schaltungsanordnung. Die Hardwarevorrichtung kann zum Beispiel ein digitaler Signalprozessor, ein feldprogrammierbares Gate-Array oder eine anwendungsspezifische integrierte Schaltung sein. Die Schaltungsanordnung kann ausgelegt sein, die Hardwarevorrichtung zu veranlassen, die Funktionalität des Zusammensetzungsverwalters (300), des physischen Ressourcenverwalters (302), des emulierten Ressourcenverwalters (304), des virtuellen Ressourcenverwalters (306), des Betriebsverwalters (308) und/oder der Hardwareressourcendienste (310) durchzuführen. Der Zusammensetzungsverwalter (300), der physische Ressourcenverwalter (302), der emulierte Ressourcenverwalter (304), der virtuelle Ressourcenverwalter (306), der Betriebsverwalter (308) und/oder die Hardwareressourcendienste (310) können unter Verwenden anderer Arten von Hardwarevorrichtungen implementiert werden, ohne von der Erfindung abzuweichen.
  • In einer oder mehreren Ausführungsformen der Erfindung werden der Zusammensetzungsverwalter (300), der physische Ressourcenverwalter (302), der emulierte Ressourcenverwalter (304), der virtuelle Ressourcenverwalter (306), der Betriebsverwalter (308) und/oder die Hardwareressourcendienste (310) unter Verwenden eines Prozessors implementiert, der ausgelegt ist, Rechencode auszuführen, der auf einem persistenten Speicher (z. B. als Teil des Systemsteuerungsprozessors (298) gespeichert ist oder mit dem Systemsteuerungsprozessor (298) wirkverbunden ist, wodurch es Prozessoren des Systemsteuerungsprozessors (298) ermöglicht wird, den Rechencode zu erhalten und auszuführen, der, wenn er vom Prozessor ausgeführt wird, die Funktionalität des Zusammensetzungsverwalters (300), des physischen Ressourcenverwalters (302), des emulierten Ressourcenverwalters (304), des virtuellen Ressourcenverwalters (306), des Betriebsverwalters (308) und/oder der Hardwareressourcendienste (310) durchführt. Der Prozessor kann ein Hardwareprozessor sein, einschließlich einer Schaltungsanordnung, wie zum Beispiel einer zentralen Verarbeitungseinheit oder eines Mikrocontrollers. Der Prozessor kann andere Arten von Hardwarevorrichtungen zum Verarbeiten digitaler Informationen sein, ohne von der Erfindung abzuweichen.
  • Wie hierin verwendet, bezieht sich eine Entität, die programmiert ist, um eine Funktion (z. B. Schritt, Aktion usw.) auszuführen, auf eine oder mehrere Hardwarevorrichtungen (z. B. Prozessoren, digitale Signalprozessoren, feldprogrammierbare Gate-Arrays, anwendungsspezifische integrierte Schaltungen usw.), die die Funktion bereitstellen. Die Hardwarevorrichtungen können programmiert sein, um dies zu tun, indem sie zum Beispiel Computeranweisungen (z. B. Computercode) ausführen können, die die Hardwarevorrichtungen veranlassen, die Funktion bereitzustellen. In einem anderen Beispiel kann die Hardwarevorrichtung programmiert sein, um dies zu tun, indem sie eine Schaltungsanordnung aufweist, die ausgelegt (z. B. modifiziert) wurde, die Funktion auszuführen. Eine Entität, die programmiert ist, um eine Funktion auszuführen, enthält keine Computeranweisungen isoliert von irgendwelchen Hardwarevorrichtungen. Computeranweisungen können verwendet werden, um eine Hardwarevorrichtung zu programmieren, die, wenn sie programmiert ist, die Funktion bereitstellt.
  • In einer oder mehreren hier offenbarten Ausführungsformen ist der Speicher (312) unter Verwenden von physischen Vorrichtungen implementiert, die Datenspeicherdienste bereitstellen (z. B. Speichern von Daten und Bereitstellen von Kopien von vorher gespeicherten Daten). Die Vorrichtungen, die Datenspeicherdienste bereitstellen, können Hardwarevorrichtungen und/oder logische Vorrichtungen enthalten. Beispielsweise kann der Speicher (312) irgendeine Menge und/oder Kombination von Arbeitsspeichervorrichtungen (d. h. flüchtigen Speicher), Langzeitspeichervorrichtungen (d. h. dauerhaften Speicher), anderen Arten von Hardwarevorrichtungen, die Kurzzeit- und/oder Langzeitdatenspeicherdienste bereitstellen können, und/oder logischen Speichervorrichtungen (z. B. virtuellen dauerhaften Speicher/virtuellen flüchtigen Speicher) enthalten.
  • Beispielsweise kann der Speicher (312) eine Arbeitsspeichervorrichtung (z. B. eine Dual-In-Line-Arbeitsspeichervorrichtung) enthalten, in der Daten gespeichert sind und aus der Kopien von vorher gespeicherten Daten bereitgestellt werden. In einem anderen Beispiel kann der Speicher (312) eine dauerhafte Speichervorrichtung (z. B. ein Solid-State-Disk-Laufwerk) enthalten, in der Daten gespeichert sind und aus der Kopien von vorher gespeicherten Daten bereitgestellt werden. In einem noch weiteren Beispiel kann der Speicher (312) (i) eine Arbeitsspeichervorrichtung (z. B. eine Dual-In-Line-Arbeitsspeichervorrichtung), in der Daten gespeichert sind und aus der Kopien von vorher gespeicherten Daten bereitgestellt werden, und (ii) eine dauerhafte Speichervorrichtung, die eine Kopie der in der Arbeitsspeichervorrichtung gespeicherten Daten speichert (z. B. um eine Kopie der Daten bereitzustellen, falls Leistungsverlust oder andere Probleme mit der Arbeitsspeichervorrichtung, die ihre Fähigkeit, die Kopie der Daten aufrechtzuerhalten, beeinträchtigen können, die Arbeitsspeichervorrichtung veranlassen, die Daten zu verlieren), enthalten.
  • Der Speicher (312) kann auch unter Verwenden von logischem Speicher implementiert werden. Ein logischer Speicher (z. B. eine virtuelle Platte) kann unter Verwenden einer oder mehrerer physischer Speichervorrichtungen implementiert werden, deren Speicherressourcen (alle oder ein Teil) zur Verwendung unter Verwenden einer Softwareschicht zugewiesen sind. Somit kann ein logischer Speicher sowohl physische Speichervorrichtungen als auch eine Entität enthalten, die auf einem Prozessor oder einer anderen Hardwarevorrichtung ausgeführt wird, die die Speicherressourcen der physischen Speichervorrichtungen zuweist.
  • Der Speicher (312) kann Datenstrukturen speichern, die zum Beispiel zusammengesetzte Informationsverarbeitungssystemdaten (314) und eine Ressourcenkarte (316) enthalten. Jede dieser Datenstrukturen wird nachstehend besprochen.
  • Die zusammengesetzten Informationsverarbeitungssystemdaten (314) können unter Verwenden einer oder mehrerer Datenstrukturen implementiert werden, die Informationen in Bezug auf zusammengesetzte Informationsverarbeitungssysteme enthalten. Zum Beispiel können die zusammengesetzten Informationsverarbeitungssystemdaten (314) Kennungen von zusammengesetzten Informationsverarbeitungssystemen und Ressourcen spezifizieren, die den zusammengesetzten Informationsverarbeitungssystemen zugewiesen wurden.
  • Die zusammengesetzten Informationsverarbeitungssystemdaten (314) können auch Informationen in Bezug auf den Betrieb der zusammengesetzten Informationsverarbeitungssysteme enthalten. Die Informationen können zum Beispiel Arbeitslastleistungsdaten, Ressourcennutzungsraten im Laufe der Zeit und/oder andere Informationen enthalten, die zum Verwalten des Betriebs der zusammengesetzten Informationsverarbeitungssysteme verwendet werden können.
  • Die zusammengesetzten Informationsverarbeitungssystemdaten (314) können ferner Informationen in Bezug auf Verwaltungsmodelle enthalten, die von Systemsteuerungsprozessoren verwendet werden. Die zusammengesetzten Informationsverarbeitungssystemdaten (314) können zum Beispiel Informationen in Bezug auf doppelte Daten, die für Datenintegritätszwecke gespeichert sind, redundant durchgeführte Arbeitslasten, um Hochverfügbarkeitsdienstanforderungen zu erfüllen, Verschlüsselungsschemata, die verwendet werden, um einen nicht autorisierten Zugriff auf Daten zu verhindern, usw. enthalten.
  • Die zusammengesetzten Informationsverarbeitungssystemdaten (314) können zum Beispiel durch den Zusammensetzungsverwalter (300) verwaltet werden. Der Zusammensetzungsverwalter kann zum Beispiel Informationen, die in den zusammengesetzten Informationsverarbeitungssystemdaten (314) enthalten sind, hinzufügen, entfernen und/oder modifizieren, um zu veranlassen, dass die Informationen, die in den zusammengesetzten Informationsverarbeitungssystemdaten (314) enthalten sind, den Zustand der zusammengesetzten Informationsverarbeitungssysteme widerspiegeln.
  • Die Datenstrukturen der zusammengesetzten Informationsverarbeitungssystemdaten (314) können zum Beispiel unter Verwenden von Listen, Tabellen, unstrukturierten Daten, Datenbanken usw. implementiert werden. Während sie in 3 so dargestellt sind, dass sie lokal gespeichert sind, können die zusammengesetzten Informationsverarbeitungssystemdaten (314) entfernt gespeichert werden und können über irgendeine Anzahl von Vorrichtungen verteilt werden, ohne von der Erfindung abzuweichen.
  • Die Ressourcenkarte (316) kann unter Verwenden einer oder mehrerer Datenstrukturen implementiert werden, die Informationen in Bezug auf Ressourcen des Informationsverarbeitungssystems und/oder anderer Informationsverarbeitungssysteme enthalten. Die Ressourcenkarte (316) kann zum Beispiel die Art und/oder Menge von Ressourcen (z. B. Hardwarevorrichtungen, virtualisierte Vorrichtungen usw.) spezifizieren, die für die Zuweisung verfügbar sind und/oder die bereits zu zusammengesetzten Informationsverarbeitungssystemen zugewiesen sind. Die Ressourcenkarte (316) kann verwendet werden, um Daten zu Verwaltungsentitäten, wie etwa Systemsteuerungsprozessorverwalter, bereitzustellen.
  • Die Datenstrukturen der Ressourcenkarte (316) können zum Beispiel unter Verwenden von Listen, Tabellen, unstrukturierten Daten, Datenbanken usw. implementiert werden. Während sie in 3 so dargestellt sind, dass sie lokal gespeichert sind, kann die Ressourcenkarte (316) entfernt gespeichert werden und kann über irgendeine Anzahl von Vorrichtungen verteilt werden, ohne von der Erfindung abzuweichen.
  • Die Ressourcenkarte (316) kann zum Beispiel durch den Zusammensetzungsverwalter (300) verwaltet werden. Der Zusammensetzungsverwalter (300) kann zum Beispiel Informationen, die in der Ressourcenkarte (316) enthalten sind, hinzufügen, entfernen und/oder modifizieren, um zu veranlassen, dass die Informationen, die in der Ressourcenkarte (316) enthalten sind, den Zustand des Informationsverarbeitungssystems und/oder anderer Informationsverarbeitungssysteme widerspiegeln.
  • Obwohl der Speicher (312) so dargestellt und beschrieben wurde, dass er eine begrenzte Anzahl und Art von Daten enthält, kann ein Speicher gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Daten speichern, ohne von der Erfindung abzuweichen.
  • Obwohl der Systemsteuerungsprozessor (298) so dargestellt und beschrieben wurde, dass er eine begrenzte Anzahl spezifischer Komponenten enthält, kann ein Systemsteuerungsprozessor gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Komponenten enthalten, ohne von der Erfindung abzuweichen.
  • Wie oben besprochen, kann ein Systemsteuerungsprozessorverwalter mit Systemsteuerungsprozessoren von Steuerungsressourcensätzen zusammenarbeiten, um zusammengesetzte Informationsverarbeitungssysteme zu instanziieren, indem er Rechenressourcen von Hardwareressourcensätzen für Prozessoren von Rechenressourcensätzen präsentiert. 4 zeigt ein Diagramm des Systemsteuerungsprozessorverwalters (10) gemäß einer oder mehreren Ausführungsformen der Erfindung.
  • Der Systemsteuerungsprozessorverwalter (10) kann den Prozess des Instanziierens zusammengesetzter Informationsverarbeitungssysteme verwalten. Dadurch kann der Systemsteuerungsprozessorverwalter (10) einen Infrastrukturverwalter (402) und einen Speicher (410) enthalten. Jede dieser Komponenten wird nachstehend besprochen.
  • Der Infrastrukturverwalter (402) kann Zusammensetzungsdienste bereitstellen. Zusammensetzungsdienste können Erhalten von Zusammensetzungsanforderungen für zusammengesetzte Informationsverarbeitungssysteme, Bestimmen der Ressourcen, die zu instanziieren zusammengesetzten Informationsverarbeitungssystemen zugewiesen werden sollen, und Zusammenarbeiten mit Systemsteuerungsprozessoren, um die identifizierten Ressourcen zuzuweisen, enthalten. Dadurch kann der Infrastrukturverwalter (402) veranlassen, dass eine beliebige Anzahl von computerimplementierten Diensten unter Verwenden der zusammengesetzten Informationsverarbeitungssysteme bereitgestellt wird.
  • Um die Ressourcen zu bestimmen, die zusammengesetzten Informationsverarbeitungssystemen zugewiesen werden sollen, kann der Infrastrukturverwalter (402) ein absichtsbasiertes Modell einsetzen, das eine Absicht, die in einer Zusammensetzungsanforderung ausgedrückt wird, in eine oder mehrere Zuweisungen von Rechenressourcen übersetzt. Zum Beispiel kann der Infrastrukturverwalter (402) eine ergebnisbasierte Rechenressourcenanforderungs-Nachschlagetabelle (414) verwenden, um eine ausgedrückte Absicht mit Ressourcen, die zugewiesen werden sollen, um diese Absicht zu erfüllen, übereinzustimmen. Die ergebnisbasierte Rechenressourcenanforderungs-Nachschlagetabelle (414) kann den Typ, die Menge, das Verwaltungsverfahren und/oder andere Informationen bezüglich einer beliebigen Anzahl von Rechenressourcen spezifizieren, die, wenn aggregiert, in der Lage sein werden, eine entsprechende Absicht zu erfüllen. Der Infrastrukturverwalter (402) kann Ressourcen zur Zuweisung identifizieren, um Zusammensetzungsanforderungen über andere Verfahren zu erfüllen, ohne von der Erfindung abzuweichen.
  • Um mit den Systemsteuerungsprozessoren zusammenzuarbeiten, kann der Infrastrukturverwalter (402) Telemetriedaten in Bezug auf die Rechenressourcen einer beliebigen Anzahl von Informationsverarbeitungssystemen und/oder externen Ressourcen, die zur Zuweisung verfügbar sind, erhalten. Der Infrastrukturverwalter (402) kann diese Daten in einer Telemetriedatenkarte (412) aggregieren, die anschließend verwendet werden kann, um Ressourcen einer beliebigen Anzahl von Informationsverarbeitungssystemen und/oder externen Ressourcen zu identifizieren, um Zusammensetzungsanforderungen zu erfüllen (z. B. Instanziieren eines oder mehrerer zusammengesetzter Informationsverarbeitungssysteme, um die Anforderungen der Zusammensetzungsanforderungen zu erfüllen).
  • Wenn der Infrastrukturverwalter (402) die zuzuweisenden Rechenressourcen identifiziert, kann der Infrastrukturverwalter (402) mit einer beliebigen Anzahl von Systemsteuerungsprozessoren kommunizieren, um die identifizierten Zuweisungen zu implementieren. Zum Beispiel kann der Infrastrukturverwalter (402) einen Systemsteuerungsprozessor über einen Steuerungsressourcensatz benachrichtigen, dass Teile eines Hardwareressourcensatzes einem Rechenressourcensatz zugewiesen werden sollen, um ein zusammengesetztes Informationsverarbeitungssystem zu instanziieren. Der Systemsteuerungsprozessor kann dann als Reaktion auf die Benachrichtigung Aktionen ergreifen (z. B. den Teil des Hardwareressourcensatzes zur Präsentation für einen Prozessor des Rechenressourcensatzes vorbereiten).
  • Wenn zusammengesetzte Informationsverarbeitungssysteme instanziiert werden, kann der Infrastrukturverwalter (402) Informationen, die die Ressourcen widerspiegeln, die zusammengesetzten Informationsverarbeitungssystemen zugewiesen sind, wobei die Arbeitslasten durch die zusammengesetzten Informationsverarbeitungssysteme und/oder andere Arten von Informationen durchgeführt werden, zu einer zusammengesetzten Infrastrukturkarte (416) hinzufügen. Der Infrastrukturverwalter (402) kann diese Informationen verwenden, um zum Beispiel zu entscheiden, ob Rechenressourcen zu dem zusammengesetzten Informationsverarbeitungssystem hinzugefügt oder aus diesem entfernt werden sollen. Folglich können Rechenressourcen dynamisch neu bereitgestellt werden, um sich ändernde Arbeitslasten zu erfüllen, die zusammengesetzten Informationsverarbeitungssystemen auferlegt werden.
  • In einer oder mehreren Ausführungsformen der Erfindung ist der Infrastrukturverwalter (402) unter Verwenden einer Hardwarevorrichtung implementiert, einschließlich einer Schaltungsanordnung. Die Hardwarevorrichtung kann zum Beispiel ein digitaler Signalprozessor, ein feldprogrammierbares Gate-Array oder eine anwendungsspezifische integrierte Schaltung sein. Die Schaltungsanordnung kann ausgelegt sein, die Hardwarevorrichtung zu veranlassen, die Funktionalität des Infrastrukturverwalters (402) durchzuführen. Der Infrastrukturverwalter (402) kann unter Verwenden anderer Arten von Hardwarevorrichtungen implementiert werden, ohne von der Erfindung abzuweichen.
  • In einer oder mehreren Ausführungsformen der Erfindung ist der Infrastrukturverwalter (402) unter Verwenden eines Prozessors implementiert, der ausgelegt ist, Computercode auszuführen, der auf einem dauerhaften Speicher gespeichert ist, der, wenn er vom Prozessor ausgeführt wird, die Funktionalität des Infrastrukturverwalters (402) durchführt. Der Prozessor kann ein Hardwareprozessor sein, einschließlich einer Schaltungsanordnung, wie zum Beispiel einer zentralen Verarbeitungseinheit oder eines Mikrocontrollers. Der Prozessor kann andere Arten von Hardwarevorrichtungen zum Verarbeiten digitaler Informationen sein, ohne von der Erfindung abzuweichen.
  • Wenn seine Funktionalität bereitgestellt wird, kann der Infrastrukturverwalter (402) alle oder einen Teil der in den 5.1-5.4 dargestellten Verfahren durchführen.
  • In einer oder mehreren hier offenbarten Ausführungsformen ist der Speicher (410) unter Verwenden physischer Vorrichtungen implementiert, die Datenspeicherdienste bereitstellen (z. B. Speichern von Daten und Bereitstellen von Kopien von vorher gespeicherten Daten). Die Vorrichtungen, die Datenspeicherdienste bereitstellen, können Hardwarevorrichtungen und/oder logische Vorrichtungen enthalten. Beispielsweise kann der Speicher (410) irgendeine Menge und/oder Kombination von Arbeitsspeichervorrichtungen (d. h. flüchtigen Speicher), Langzeitspeichervorrichtungen (d. h. dauerhaften Speicher), anderen Arten von Hardwarevorrichtungen, die Kurzzeit- und/oder Langzeitdatenspeicherdienste bereitstellen können, und/oder logischen Speichervorrichtungen (z. B. virtuellen dauerhaften Speicher/virtuellen flüchtigen Speicher) enthalten.
  • Beispielsweise kann der Speicher (410) eine Arbeitsspeichervorrichtung (z. B. eine Dual-In-Line-Arbeitsspeichervorrichtung) enthalten, in der Daten gespeichert sind und aus der Kopien von vorher gespeicherten Daten bereitgestellt werden. In einem anderen Beispiel kann der Speicher (410) eine dauerhafte Speichervorrichtung (z. B. ein Solid-State-Disk-Laufwerke) enthalten, in der Daten gespeichert sind und aus der Kopien von vorher gespeicherten Daten bereitgestellt werden. In einem noch weiteren Beispiel kann der Speicher (410) (i) eine Arbeitsspeichervorrichtung (z. B. eine Dual-In-Line-Arbeitsspeichervorrichtung), in der Daten gespeichert sind und aus der Kopien von vorher gespeicherten Daten bereitgestellt werden, und (ii) eine dauerhafte Speichervorrichtung, die eine Kopie der in der Arbeitsspeichervorrichtung gespeicherten Daten speichert (z. B. um eine Kopie der Daten bereitzustellen, falls Leistungsverlust oder andere Probleme mit der Arbeitsspeichervorrichtung, die ihre Fähigkeit, die Kopie der Daten aufrechtzuerhalten, beeinträchtigen können, die Arbeitsspeichervorrichtung veranlassen, die Daten zu verlieren), enthalten.
  • Der Speicher (410) kann auch unter Verwenden von logischem Speicher implementiert werden. Ein logischer Speicher (z. B. eine virtuelle Platte) kann unter Verwenden einer oder mehrerer physischer Speichervorrichtungen implementiert werden, deren Speicherressourcen (alle oder ein Teil) zur Verwendung unter Verwenden einer Softwareschicht zugewiesen sind. Somit kann ein logischer Speicher sowohl physische Speichervorrichtungen als auch eine Entität enthalten, die auf einem Prozessor oder einer anderen Hardwarevorrichtung ausgeführt wird, die die Speicherressourcen der physischen Speichervorrichtungen zuweist.
  • Der Speicher (410) kann Datenstrukturen speichern, die zum Beispiel die Telemetriedatenkarte (412), die ergebnisbasierte Rechenressourcenanforderungs-Nachschlagetabelle (414) und die zusammengesetzte Infrastrukturkarte (416) enthalten. Diese Datenstrukturen können zum Beispiel durch den Infrastrukturverwalter (402) verwaltet werden. Der Infrastrukturverwalter (402) kann zum Beispiel Informationen, die in diesen Datenstrukturen enthalten sind, hinzufügen, entfernen und/oder modifizieren, um zu veranlassen, dass die Informationen, die in dieser Datenstruktur enthalten sind, den Zustand irgendeiner Anzahl von Informationsverarbeitungssystemen, externen Ressourcen und/oder zusammengesetzten Informationsverarbeitungssystemen widerspiegeln.
  • Irgendeine dieser Datenstrukturen kann zum Beispiel unter Verwenden von Listen, Tabellen, unstrukturierten Daten, Datenbanken usw. implementiert werden. Während sie in 4 so dargestellt sind, dass sie lokal gespeichert sind, kann irgendeine dieser Datenstrukturen entfernt gespeichert werden und kann über irgendeine Anzahl von Vorrichtungen verteilt werden, ohne von der Erfindung abzuweichen.
  • Während der Speicher (410) so dargestellt und beschrieben wurde, dass er eine begrenzte Anzahl und Art von Daten enthält, kann ein Speicher gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Daten speichern, ohne von der Erfindung abzuweichen.
  • Während der Systemsteuerungsprozessorverwalter (10) so dargestellt und beschrieben wurde, dass er eine begrenzte Anzahl spezifischer Komponenten enthält, kann ein Systemsteuerungsprozessorverwalter gemäß Ausführungsformen der Erfindung zusätzliche, weniger und/oder andere Komponenten als die in 4 dargestellten enthalten, ohne von der Erfindung abzuweichen.
  • Wie oben besprochen, kann das System von 1.1 computerimplementierte Dienste unter Verwenden von zusammengesetzten Informationsverarbeitungssystemen bereitstellen. 5.1-5.4 zeigen Verfahren, die durch Komponenten des Systems von 1.1 durchgeführt werden können, um zusammengesetzte Informationsverarbeitungssysteme zu verwalten.
  • 5.1 zeigt ein Flussdiagramm eines Verfahrens gemäß einer oder mehreren Ausführungsformen der Erfindung. Das in 5.1 dargestellte Verfahren kann durchgeführt werden, um Ressourcenverfügbarkeit und eine Netzwerkkonnektivitätstopologie gemäß einer oder mehreren Ausführungsformen der Erfindung zu erhalten. Das in 5.1 gezeigte Verfahren kann zum Beispiel durch einen Systemsteuerungsprozessorverwalter (z. B. 50, 1.1) durchgeführt werden. Andere Komponenten des Systems in den 1.1-4 können alle oder einen Teil des Verfahrens von 5.1 durchführen, ohne von der Erfindung abzuweichen.
  • Während 5.1 als eine Reihe von Schritten dargestellt ist, kann irgendeiner der Schritte weggelassen werden, in einer anderen Reihenfolge durchgeführt werden, zusätzliche Schritte können enthalten sein und/oder irgendeiner oder alle der Schritte können in einer parallelen und/oder teilweise überlappenden Weise durchgeführt werden, ohne von der Erfindung abzuweichen.
  • In Schritt 500 wird die Kommunikation mit einem Satz von Informationsverarbeitungssystemen unter Verwendung von Zugriffsverwaltungssystemen initiiert. In einer oder mehreren Ausführungsformen der Erfindung enthält die Kommunikation das Senden von Nachrichten an jeden Zugriffssteuerungsverwalter (ACM) des Satzes von Informationsverarbeitungssystemen, um sicherzustellen, dass die ACMs programmiert sind, um die Kommunikation zwischen dem entsprechenden Informationsverarbeitungssystem und dem Systemsteuerungsprozessorverwalter zu ermöglichen.
  • In einer oder mehreren Ausführungsformen der Erfindung sind die ACMs Firewalls, die jeweils, zumindest anfänglich, nur einem entsprechenden Informationsverarbeitungssystem erlauben, mit dem Systemsteuerungsprozessorverwalter zu kommunizieren. Da Ressourcenzuweisungsanforderungen (in 5.3 besprochen) durch den Systemsteuerungsprozessorverwalter bedient werden, können die ACMs programmiert sein, um die Kommunikation mit anderen Informationsverarbeitungssystemen zu ermöglichen, so dass zusammengesetzte Informationsverarbeitungssysteme gemäß den Ressourcenzuweisungsanforderungen instanziiert werden können.
  • In Schritt 502 werden Ressourcenverfügbarkeitsanforderungen an jeden Systemsteuerungsprozessor im Satz von Informationsverarbeitungssystemen gesendet. In einer oder mehreren Ausführungsformen der Erfindung fordert eine Ressourcenverfügbarkeitsanforderung jedes Informationsverarbeitungssystem auf, seine verfügbaren Ressourcen bereitzustellen. Die verfügbaren Ressourcen können Ressourcen eines Informationsverarbeitungssystems sein, die nicht einem zusammengesetzten Informationsverarbeitungssystem zugewiesen wurden.
  • Ferner kann die Ressourcenverfügbarkeitsanforderung das Bereitstellen von Netzwerkverfügbarkeit jedes Informationsverarbeitungssystems spezifizieren. Die Netzwerkverfügbarkeit eines Informationsverarbeitungssystems kann basierend auf einer Gesamtnetzwerkfähigkeit (z. B. einer Gesamtnetzwerkbandbreite) und der Menge der Gesamtnetzwerkfähigkeit, die verwendet wird, bestimmt werden. Der Unterschied zwischen der Gesamtnetzwerkfähigkeit und der Menge der Gesamtnetzwerkfähigkeit, die verwendet wird, ist die Netzwerkverfügbarkeit.
  • In Schritt 504 werden Ressourcenverfügbarkeitsantworten erhalten, die jeweils verfügbare Rechenressourcensätze und Hardwareressourcensätze spezifizieren. Ferner können die Ressourcenverfügbarkeitsantworten die Netzwerkverfügbarkeit der entsprechenden Informationsverarbeitungssysteme spezifizieren. Zum Beispiel kann ein Informationsverarbeitungssystem eine Netzwerkbandbreite von X aufweisen, und 30 % der Netzwerkbandbreite können zum Bereitstellen zusätzlicher Ressourcen für zusammengesetzte Informationsverarbeitungssysteme verwendet werden. In einem solchen Beispiel spezifiziert die Ressourcenverfügbarkeitsantwort zusätzlich zum Spezifizieren der verfügbaren Ressourcen die 70 % von X als verfügbare Netzwerkbandbreite des Informationsverarbeitungssystems.
  • In Schritt 506 wird eine Netzwerkkonnektivitätstopologie basierend auf Verbindungen zwischen den Informationsverarbeitungssystemen im Satz erhalten. In einer oder mehreren Ausführungsformen der Erfindung ist die Netzwerkkonnektivitätstopologie eine Datenstruktur, die eine Gesamtansicht der Netzwerkverfügbarkeit jedes Informationsverarbeitungssystems bereitstellt. Ferner kann die Netzwerkkonnektivitätstopologie spezifizieren, welche Informationsverarbeitungssysteme miteinander kommunizieren, um zusammengesetzte Informationsverarbeitungssysteme zu instanziieren. Die Netzwerkkonnektivitätstopologie kann basierend auf den erhaltenen Ressourcenverfügbarkeitsantworten erzeugt werden.
  • 5.2 zeigt ein Flussdiagramm eines Verfahrens gemäß einer oder mehreren Ausführungsformen der Erfindung. Das in 5.2 dargestellte Verfahren kann durchgeführt werden, um ein zusammengesetztes Informationsverarbeitungssystem basierend auf einer Zusammensetzungsanforderung gemäß einer oder mehreren Ausführungsformen der Erfindung zu erzeugen. Das in 5.2 gezeigte Verfahren kann zum Beispiel durch einen Systemsteuerungsprozessor (z. B. 114, 1.2) durchgeführt werden. Andere Komponenten des Systems in den 1.1-4 können alle oder einen Teil des Verfahrens von 5.2 durchführen, ohne von der Erfindung abzuweichen.
  • Während 5.2 als eine Reihe von Schritten dargestellt ist, kann irgendeiner der Schritte weggelassen werden, in einer anderen Reihenfolge durchgeführt werden, zusätzliche Schritte können enthalten sein und/oder irgendeiner oder alle der Schritte können in einer parallelen und/oder teilweise überlappenden Weise durchgeführt werden, ohne von der Erfindung abzuweichen.
  • In Schritt 511 wird eine Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem erhalten. Die Zusammensetzungsanforderung kann unter Verwenden irgendeines Verfahrens erhalten werden, ohne von der Erfindung abzuweichen. Zum Beispiel kann die Zusammensetzungsanforderung als Teil einer Nachricht von einer anderen Entität erhalten werden, die mit einem Systemsteuerungsprozessorverwalter wirkverbunden ist. In einem anderen Beispiel kann die Zusammensetzungsanforderung lokal in einem Speicher eines Systemsteuerungsprozessorverwalters gespeichert werden.
  • Die Zusammensetzungsanforderung kann eine Datenstruktur sein, die spezifiziert, dass das zusammengesetzte Informationsverarbeitungssystem instanziiert werden soll. Wie in Bezug auf 3 besprochen, kann die Zusammensetzungsanforderung spezifisch sein (d. h. eine Auflistung von Ressourcen, die dem zusammengesetzten Informationsverarbeitungssystem zugewiesen werden sollen, enthalten) oder absichtsbasiert (d. h. ein gewünschtes Ergebnis, ohne die Ressourcen, die zugewiesen werden sollen, zu spezifizieren). Die Zusammensetzungsanforderung kann irgendeine Art und Menge von Informationen enthalten, die verwendbar sind, um zu bestimmen, wie ein zusammengesetztes Informationsverarbeitungssystem instanziiert werden soll.
  • In einer oder mehreren Ausführungsformen der Erfindung enthält die Zusammensetzungsanforderung eine Liste von Rechenressourcen, die dem zusammengesetzten Informationsverarbeitungssystem zugewiesen werden sollen. Zum Beispiel kann die Zusammensetzungsanforderung Rechenressourcen, Arbeitsspeicherressourcen, Speicherressourcen, Grafikverarbeitungsressourcen, Rechenbeschleunigungsressourcen, Kommunikationsressourcen usw. spezifizieren. Die Liste kann irgendeine Art und Menge von Rechenressourcen enthalten.
  • In einer oder mehreren Ausführungsformen der Erfindung spezifiziert die Zusammensetzungsanforderung, wie die Rechenressourcen dargestellt werden sollen. Zum Beispiel kann die Zusammensetzungsanforderung Virtualisierung, Emulation usw. zum Darstellen der Rechenressourcen spezifizieren.
  • In einer oder mehreren Ausführungsformen der Erfindung spezifiziert die Zusammensetzungsanforderung, wie die Ressourcen, die zum Darstellen der Rechenressourcen verwendet werden, verwaltet werden sollen (z. B. ein Verwaltungsmodell wie Datenintegrität, Sicherheit, Verwaltung, Benutzbarkeit, Leistung usw.). Zum Beispiel kann die Zusammensetzungsanforderung Redundanzebenen für Datenspeicherung, Datenintegrität, die verwendet werden soll (z. B. ein redundantes Array von unabhängigen Platten (RAID), Fehlerkorrekturcode (ECC) usw.), Sicherheitsebenen, die für Ressourcen verwendet werden sollen (z. B. Verschlüsselung), und/oder andere Informationen, die spezifizieren, wie Systemsteuerungsprozessoren Ressourcen zum Darstellen von Ressourcen für zusammengesetzte Informationsverarbeitungssysteme verwenden sollen, spezifizieren. Die von den Systemsteuerungsprozessoren verwendeten Verfahren können für die zusammengesetzten Informationsverarbeitungssysteme transparent sein, da die Ressourcen den Rechenressourcensätzen der zusammengesetzten Informationsverarbeitungssysteme als Bare-Metal-Ressourcen dargestellt werden können, während die Systemsteuerungsprozessoren die Verwaltungsfunktionalität bereitstellen.
  • In einer oder mehreren Ausführungsformen der Erfindung enthält die Zusammensetzungsanforderung eine Liste von Anwendungen, die vom zusammengesetzten Informationsverarbeitungssystem gehostet werden sollen. Die Liste kann irgendeine Art und Menge von Anwendungen enthalten.
  • In Schritt 512 werden mindestens ein Rechenressourcensatz mit Rechenressourcen und ein Hardwaresatz mit Hardwareressourcen, die von der Zusammensetzungsanforderung spezifiziert werden, identifiziert. Der mindestens eine Rechenressourcensatz und der mindestens eine Hardwaresatz können durch Abgleichen der von der Zusammensetzungsanforderung spezifizierten Rechenressourcen mit mindestens einem Rechenressourcensatz mit diesen Ressourcen unter Verwenden einer Ressourcenkarte (316, 3) identifiziert werden.
  • Zum Beispiel kann die Ressourcenkarte (316, 3) eine Liste von Rechenressourcensätzen, Kennungen von Steuerressourcensätzen, die die aufgelisteten Rechenressourcensätze verwalten, und die Hardwarevorrichtungen der aufgelisteten Rechenressourcensätze spezifizieren. Durch Abgleichen der von der Zusammensetzungsanforderung spezifizierten Rechenressourcen mit den in der Liste spezifizierten Hardwarevorrichtungen kann der Rechenressourcensatz, der den aufgelisteten Hardwarevorrichtungen entspricht, als der mindestens eine Rechenressourcensatz identifiziert werden.
  • In Schritt 513 wird eine Bestimmung durchgeführt, ob das Informationsverarbeitungssystem in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen. In einer oder mehreren Ausführungsformen der Erfindung basiert die Bestimmung darauf, ob alle in Schritt 512 identifizierten Ressourcen (z. B. die Hardwareressourcen und die Rechenressourcen) im Informationsverarbeitungssystem verfügbar sind. Mit anderen Worten ist das Informationsverarbeitungssystem in der Lage, die Zusammensetzungsanforderung zu bedienen, wenn alle identifizierten Ressourcen verfügbare Ressourcen im Informationsverarbeitungssystem sind. Wenn im Gegensatz dazu eine der identifizierten Ressourcen, die erforderlich sind, um die Zusammensetzungsanforderung zu bedienen, nicht lokal verfügbar ist (d. h. nicht im Informationsverarbeitungssystem verfügbar ist), ist das Informationsverarbeitungssystem nicht in der Lage, die Zusammensetzungsanforderung lokal zu bedienen. Wenn das Informationsverarbeitungssystem in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen, fährt das Verfahren mit Schritt 517 fort; andernfalls fährt das Verfahren mit Schritt 514 fort.
  • In Schritt 514 werden nach der Bestimmung, dass das Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen, die verfügbaren Ressourcen im Informationsverarbeitungssystem dem zusammengesetzten Informationsverarbeitungssystem zugewiesen. In einer oder mehreren Ausführungsformen der Erfindung wird der Teil der identifizierten Ressourcen, die lokal verfügbar sind, durch Aktualisieren der Ressourcenkarte und der Telemetriedatenkarte zugewiesen, um die verfügbaren Ressourcen als für das zusammengesetzte Informationsverarbeitungssystem der Zusammensetzungsanforderung verwendet zu spezifizieren.
  • In Schritt 515 wird eine Ressourcenzuweisungsanforderung an den Systemsteuerungsprozessorverwalter für den Zugriff auf zusätzliche Ressourcen gesendet. In einer oder mehreren Ausführungsformen der Erfindung spezifiziert die Ressourcenzuweisungsanforderung das Erhalten des Zugriffs auf zusätzliche Ressourcen von mindestens einem zweiten Informationsverarbeitungssystem. Die zusätzlichen Ressourcen können der verbleibende Teil der identifizierten Ressourcen sein, die im ersten Informationsverarbeitungssystem nicht verfügbar sind. Der Systemsteuerungsprozessorverwalter kann die Ressourcenzuweisungsanforderung gemäß 5.4 verarbeiten.
  • In einer oder mehreren Ausführungsformen der Erfindung spezifiziert die Ressourcenzuweisungsanforderung ferner eine gewünschte Netzwerkbandbreite. In solchen Ausführungsformen, in denen die gewünschte Netzwerkbandbreite nicht spezifiziert ist, wird eine Betriebsnetzwerkbandbreite basierend auf den Ressourcen, die in der Ressourcenzuweisungsanforderung spezifiziert sind, und der Telemetriedatenkarte vorhergesagt. Zum Beispiel kann die Telemetriedatenkarte jede Ressourcenart und eine entsprechende erwartete Betriebsnetzwerkbandbreite spezifizieren. Die erwarteten Betriebsnetzwerkbandbreiten der Ressourcen, die in der Ressourcenzuweisungsanforderung spezifiziert sind, können verwendet werden, um die gewünschte Netzwerkbandbreite der Ressourcenzuweisungsanforderung zu bestimmen.
  • In Schritt 516 wird eine Benachrichtigung für den Zugriff auf mindestens das zweite Informationsverarbeitungssystem erhalten, um den Hardwareressourcensatz fertigzustellen. In einer oder mehreren Ausführungsformen der Erfindung spezifiziert die Benachrichtigung den Zugriff auf mindestens das zweite Informationsverarbeitungssystem. Der Zugriff kann eine direkte Kommunikation oder eine Proxy-Kommunikation über den Systemsteuerungsprozessorverwalter sein, ohne von der Erfindung abzuweichen.
  • In Schritt 517 werden Verwaltungsdienste für den Hardwareressourcensatz unter Verwenden von mindestens einem Steuerungsressourcensatz eingerichtet, um logische Hardwareressourcen zu erhalten. Die Verwaltungsdienste können zum Beispiel Virtualisierung, Emulation, Abstraktion, Indirektion und/oder eine andere Art von Diensten enthalten, um die Anforderungen an Datenintegrität, Sicherheit und/oder Verwaltungsmodelle zu erfüllen. Der Steuerungsressourcensatz kann Verwaltungsdienste für den mindestens einen Hardwareressourcensatz bereitstellen, der in Schritt 506 identifiziert wurde.
  • Der Hardwareressourcensatz kann die verfügbaren Ressourcen enthalten, wie sie durch das erste Informationsverarbeitungssystem bereitgestellt werden, und gegebenenfalls die zusätzlichen Ressourcen, die über die Kommunikation mit mindestens dem zweiten Informationsverarbeitungssystem bereitgestellt werden.
  • Um die Verwaltungsdienste einzurichten, kann der Systemsteuerungsprozessorverwalter mit dem mindestens einen Steuerungsressourcensatz zusammenarbeiten. Zum Beispiel kann der Systemsteuerungsprozessorverwalter Anweisungen zum Implementieren der Verwaltungsdienste erzeugen, die Anweisungen in einer Nachricht einkapseln und die Nachricht an einen oder mehrere Systemsteuerungsprozessoren des mindestens einen Steuerungsressourcensatzes senden. Als Reaktion auf das Empfangen der Nachricht können die Systemsteuerungsprozessoren die Anweisungen implementieren, wodurch irgendeine Anzahl von Verwaltungsdiensten wie Virtualisierung, Emulation usw. implementiert wird.
  • Der Systemsteuerungsprozessorverwalter kann auch Identifikationsinformationen für die Systemsteuerungsprozessoren enthalten, die beim Präsentieren von Ressourcen als Teil des Instanziierens des zusammengesetzten Informationsverarbeitungssystems zusammenarbeiten. Folglich können die Systemsteuerungsprozessoren von Steuerungsressourcensätzen, die die Bare-Metal-Präsentation von Ressourcen für Prozessoren von Rechenressourcensätzen des zusammengesetzten Informationsverarbeitungssystems erleichtern, in der Lage sein, sich gegenseitig zu identifizieren, miteinander zu kommunizieren usw.
  • Das Einrichten von Verwaltungsdiensten für den Hardware-Ressourcensatz kann zum Beispiel das Vorbereiten von Übersetzungs-, Indirektions- oder Abstraktionstabellen enthalten, die verwendet werden, um logische Adressen, die durch Rechenressourcensätze bereitgestellt werden, in physische Adressen zu übersetzen, die durch Hardwarevorrichtungen des Hardware-Ressourcensatzes verwendet werden.
  • In einem anderen Beispiel kann das Einrichten von Verwaltungsdiensten, wenn die Art der Ressourcenzuweisung ein Teil einer virtualisierten Ressource ist, das Durchführen eines Aufrufs an einen Virtualisierungsressourcenverwalter enthalten, um den Teil von Ressourcen aus einer vorhandenen virtualisierten Ressource zuzuweisen oder durch Instanziieren einer neuen virtualisierten Ressource und Zuweisen des Teils aus der neuen virtualisierten Ressource.
  • In einem noch weiteren Beispiel kann das Bereitstellen von Verwaltungsdiensten, wenn die Art der Ressourcenzuweisung eine emulierte Ressource erfordert, das Instanziieren einer entsprechenden Emulationsschicht zwischen einer Hardwarevorrichtung des Hardware-Ressourcensatzes und des Rechenressourcensatzes enthalten. Folglich können Bare-Metal-Kommunikationen zwischen dem Rechenressourcensatz und der Hardwarevorrichtung, die verwendet werden, um die Bare-Metal-Ressource für den Rechenressourcensatz darzustellen, automatisch durch den Systemsteuerungsprozessor übersetzt werden.
  • Das Einrichten von Verwaltungsdiensten kann ferner das Modifizieren des Betriebs einer oder mehrerer Vorrichtungen enthalten, um zum Beispiel Datenintegritätsfunktionalität (z. B. RAID, ECC usw.), Sicherheitsfunktionalität (z. B. Verschlüsselung) und/oder andere Funktionalitäten bereitzustellen, die für das zusammengesetzte Informationsverarbeitungssystem transparent sind.
  • In Schritt 518 werden die logischen Hardwareressourcen für den mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen dargestellt, um das zusammengesetzte Informationsverarbeitungssystem zu instanziieren.
  • Um die logischen Hardwareressourcen darzustellen, kann der Systemsteuerungsprozessorverwalter die Systemsteuerungsprozessoren des mindestens einen Steuerungsressourcensatzes anweisen, die Bare-Metal-Ressourcen entdeckbar zu machen. Zum Beispiel kann der mindestens eine Steuerungsressourcensatz eine Bare-Metal-Kommunikation an einen oder mehrere Prozessoren des mindestens einen Rechenressourcensatzes senden, um die Prozessoren zu veranlassen, das Vorhandensein der dargestellten Bare-Metal-Ressourcen zu entdecken. Dadurch können die Prozessoren dann beginnen, die logischen Hardwareressourcen als Bare-Metal-Ressourcen zu verwenden, was in einem zusammengesetzten Informationsverarbeitungssystem resultiert, das alle Ressourcen aufweist, die notwendig sind, um gewünschte computerimplementierte Dienste bereitzustellen.
  • 5.3 zeigt ein Flussdiagramm eines Verfahrens gemäß einer oder mehreren Ausführungsformen der Erfindung. Das in 5.3 dargestellte Verfahren kann durchgeführt werden, um den Zugriff zwischen SCPs über den SCP-Verwalter gemäß einer oder mehreren Ausführungsformen der Erfindung zu initiieren. Das in 5.3 gezeigte Verfahren kann zum Beispiel durch einen Systemsteuerungsprozessorverwalter (z. B. 50, 1.1) durchgeführt werden. Andere Komponenten des Systems in den 1.1-4 können alle oder einen Teil des Verfahrens von 5.3 durchführen, ohne von der Erfindung abzuweichen.
  • Während 5.3 als eine Reihe von Schritten dargestellt ist, kann irgendeiner der Schritte weggelassen werden, in einer anderen Reihenfolge durchgeführt werden, zusätzliche Schritte können enthalten sein und/oder irgendeiner oder alle der Schritte können in einer parallelen und/oder teilweise überlappenden Weise durchgeführt werden, ohne von der Erfindung abzuweichen.
  • In Schritt 520 wird eine Ressourcenzuweisungsanforderung von einem Systemsteuerungsprozessor für zusätzliche Ressourcen erhalten. In einer oder mehreren Ausführungsformen der Erfindung ist die Ressourcenzuweisungsanforderung die Ressourcenzuweisungsanforderung, die in Schritt 515 von 5.2 spezifiziert wird.
  • In Schritt 522 wird eine Netzwerkkonnektivitätsanalyse am Satz von Informationsverarbeitungssystemen basierend auf der Netzwerktopologie durchgeführt, um ein zweites Informationsverarbeitungssystem zu identifizieren, das die Ressourcenzuweisungsanforderung erfüllen kann. Bei einer oder mehreren Ausführungsformen der Erfindung umfasst die Netzwerkkonnektivitätsanalyse das Analysieren der Netzwerkkonnektivitätstopologie, um eine Netzwerkverfügbarkeit von Informationsverarbeitungssystemen zu identifizieren, wobei bestimmt wird, dass das zweite Informationsverarbeitungssystem: (i) die verfügbaren Ressourcen aufweist, um die Ressourcenzuweisungsanforderung zu erfüllen, wie in den Ressourcenverfügbarkeitsantworten von 5.1 spezifiziert, und (ii) die Netzwerkverfügbarkeit aufweist, um mit dem ersten Informationsverarbeitungssystem zu kommunizieren, wie in der Netzwerkkonnektivitätstopologie spezifiziert. Bei verschiedenen Ausführungsformen der Erfindung berücksichtigt die Zuweisung keine Netzwerkverfügbarkeit (d. h. (ii)).
  • Bei einer oder mehreren Ausführungsformen der Erfindung wird die Netzwerkverfügbarkeit der Informationsverarbeitungssysteme basierend auf Bandbreitenspezifikationen bestimmt (z. B. wird die Netzwerkbandbreitennutzung mit einer vom Hersteller spezifizierten Netzwerkbandbreitenfähigkeit der Netzwerkschnittstellen im Informationsverarbeitungssystem verglichen). Das Informationsverarbeitungssystem (z. B. das zweite Informationsverarbeitungssystem) mit der höchsten Netzwerkverfügbarkeit kann ausgewählt werden.
  • Bei einer oder mehreren Ausführungsformen der Erfindung können mehrere Informationsverarbeitungssysteme die gewünschte Netzwerkverfügbarkeit bereitstellen. In solchen Ausführungsformen kann das Informationsverarbeitungssystem basierend auf irgendwelchen Faktoren wie zum Beispiel zufällig, basierend auf der höchsten Netzwerkbandbreite oder basierend auf der Anzahl von zusammengesetzten Informationsverarbeitungssystemen, die in den Informationsverarbeitungssystemen ausgeführt werden, ausgewählt werden. Es können andere Faktoren berücksichtigt werden, um aus den mehreren Informationsverarbeitungssystemen auszuwählen, ohne von der Erfindung abzuweichen.
  • In Schritt 524 wird eine Zugriffssteuerungsverwaltungsanforderung an einen zweiten Systemsteuerungsprozessor des zweiten Informationsverarbeitungssystems gesendet. Die Zugriffssteuerungsverwaltungsanforderung kann spezifizieren, dass die Kommunikation zwischen den Ressourcen im zweiten Informationsverarbeitungssystem und dem ersten Informationsverarbeitungssystem über den SCP-Verwalter ermöglicht wird. Die Zugriffssteuerungsverwaltungsanforderung kann spezifizieren, dass der Zugriffssteuerungsverwalter auf dem zweiten Informationsverarbeitungssystem programmiert wird, um eine Proxy-Kommunikation mit dem ersten Informationsverarbeitungssystem über den Systemsteuerungsprozessorverwalter zu ermöglichen. Auf diese Weise erfolgt die gesamte Kommunikation zwischen dem ersten und dem zweiten Informationsverarbeitungssystem durch den Systemsteuerungsprozessorverwalter.
  • Bei einer oder mehreren Ausführungsformen der Erfindung spezifiziert die Zugriffssteuerungsverwaltungsanforderung ferner, dass mindestens ein Teil der Netzwerkschnittstellen des zweiten Systemsteuerungsprozessors programmiert wird, um zu spezifizieren, dass der Netzwerkverkehr zwischen dem Teil der Netzwerkschnittstellen auf das zusammengesetzte Informationsverarbeitungssystem beschränkt wird. Auf diese Weise wird die Netzwerkverfügbarkeit des zweiten Informationsverarbeitungssystems überall im Betrieb des zusammengesetzten Informationsverarbeitungssystems verwaltet.
  • In Schritt 526 wird eine Antwort vom zweiten Systemsteuerungsprozessor an den Systemsteuerungsprozessor für einen aktivierten Zugriff auf die Ressourcen übertragen. Bei einer oder mehreren Ausführungsformen der Erfindung umfasst die Antwort die in Schritt 516 von 5.2 spezifizierte Benachrichtigung. Die Benachrichtigung kann die aktivierte Kommunikation mit dem zweiten Informationsverarbeitungssystem über den Systemsteuerungsprozessorverwalter spezifizieren.
  • 5.4 zeigt ein Flussdiagramm eines Verfahrens gemäß einer oder mehreren Ausführungsformen der Erfindung. Das in 5.4 dargestellte Verfahren kann durchgeführt werden, um den direkten Zugriff zwischen SCPs gemäß einer oder mehreren Ausführungsformen der Erfindung zu initiieren. Das in 5.4 gezeigte Verfahren kann zum Beispiel durch einen Systemsteuerungsprozessorverwalter (z. B. 50, 1.1) durchgeführt werden. Andere Komponenten des Systems in den 1.1-4 können alle oder einen Teil des Verfahrens von 5.4 durchführen, ohne von der Erfindung abzuweichen.
  • Während 5.4 als eine Reihe von Schritten dargestellt ist, kann irgendeiner der Schritte weggelassen werden, in einer anderen Reihenfolge durchgeführt werden, zusätzliche Schritte können enthalten sein und/oder irgendeiner oder alle der Schritte können in einer parallelen und/oder teilweise überlappenden Weise durchgeführt werden, ohne von der Erfindung abzuweichen.
  • In Schritt 540 wird eine Ressourcenzuweisungsanforderung von einem Systemsteuerungsprozessor für zusätzliche Ressourcen erhalten. In einer oder mehreren Ausführungsformen der Erfindung ist die Ressourcenzuweisungsanforderung die Ressourcenzuweisungsanforderung, die in Schritt 515 von 5.2 spezifiziert wird.
  • In Schritt 542 wird eine Netzwerkkonnektivitätsanalyse am Satz von Informationsverarbeitungssystemen basierend auf der Netzwerktopologie durchgeführt, um ein zweites Informationsverarbeitungssystem zu identifizieren, das die Ressourcenzuweisungsanforderung erfüllen kann. In einer oder mehreren Ausführungsformen der Erfindung ist die Netzwerkkonnektivitätsanalyse von Schritt 542 ähnlich zu der von Schritt 522 von 5.3.
  • In Schritt 544 wird eine Zugriffssteuerungsverwaltungsanforderung an einen zweiten Systemsteuerungsprozessor des zweiten Informationsverarbeitungssystems gesendet. Die Zugriffssteuerungsverwaltungsanforderung kann spezifizieren, dass eine direkte Kommunikation zwischen den Ressourcen im zweiten Informationsverarbeitungssystem und dem ersten Informationsverarbeitungssystem ermöglicht wird. Die Zugriffssteuerungsverwaltungsanforderung kann spezifizieren, dass der Zugriffssteuerungsverwalter auf dem zweiten Informationsverarbeitungssystem programmiert wird, um eine direkte Kommunikation mit dem ersten Informationsverarbeitungssystem zu ermöglichen. Auf diese Weise erfolgt die gesamte Kommunikation zwischen dem ersten und dem zweiten Informationsverarbeitungssystem ohne die Notwendigkeit einer Proxy-Kommunikation über den Systemsteuerungsprozessorverwalter.
  • In Schritt 546 wird eine Antwort vom zweiten Systemsteuerungsprozessor für einen aktivierten Zugriff auf die Ressourcen übertragen. Bei einer oder mehreren Ausführungsformen der Erfindung umfasst die Antwort die in Schritt 516 von 5.2 spezifizierte Benachrichtigung. Die Benachrichtigung kann die aktivierte direkte Kommunikation mit dem zweiten Informationsverarbeitungssystem spezifizieren.
  • Zur weiteren Verdeutlichung von Ausführungsformen der Erfindung wird in 6.1 bis 6.3 ein nicht einschränkendes Beispiel bereitgestellt. 6.1 und 6.3 zeigen ein System, das dem in 1.1 dargestellten ähnlich ist. Aktionen, die durch Komponenten des dargestellten Systems durchgeführt werden, werden durch nummerierte, kreisförmige Kästchen dargestellt, die teilweise unter Verwendung gestrichelter Linien miteinander verbunden sind. Der Kürze halber ist in 6.1 und 6.3 nur eine begrenzte Anzahl von Komponenten des Systems von 1.1 dargestellt. 6.2 zeigt Diagramme von Beispielen von Datenstrukturen, die durch das beispielhafte System von 6.1 und 6.3 verwendet werden.
  • Beispiel
  • Betrachten wir ein Szenario, wie in 6.1 dargestellt, in dem ein Systemsteuerungsverwalter (600) in Schritt 1 die Kommunikation mit vier Informationsverarbeitungssystemen (IHS) (610, 620, 630 und 640) initiiert. Die Kommunikation enthält das Senden von Anforderungen an Zugriffssteuerungsverwalter (ACMs) (618, 628, 638, 648). Die Kommunikation enthält ferner das Senden von Ressourcenverfügbarkeitsanforderungen an die entsprechenden Systemsteuerungsprozessoren (z. B. 614, 624) der IHS (610, 620, 630, 640). Der Kürze halber sind die Systemsteuerungsprozessoren von IHS C (630) und IHS D (640) in 6.1 oder 6.3 nicht dargestellt.
  • In Reaktion auf die Ressourcenverfügbarkeitsanforderungen sendet jeder Systemsteuerungsprozessor (z. B. 614, 624) in Schritt 2 Ressourcenverfügbarkeitsantworten, die die verfügbaren Rechenressourcen und Hardwareressourcen spezifizieren, die zum Zusammensetzen zusammensetzbarer Informationsverarbeitungssysteme verwendet werden sollen. Die Systemsteuerungsprozessoren senden Netzwerkbandbreiteninformationen für jeden Port in den jeweiligen IHS (610, 620, 630, 640). Die verfügbaren Ressourcen und die Netzwerkinformationen können in einer Telemetriedatenkarte gespeichert werden, die in 6.2 dargestellt ist. Ferner sind die ACMs (618, 628, 638, 648) programmiert, um den Zugriff auf den Systemsteuerungsprozessorverwalter (600) zu ermöglichen.
  • Wie in 6.2 zu sehen ist, enthält die Telemetriedatenkarte (650) Einträge (652, 654, 656, 658), die die Ressourcen spezifizieren, die der Netzwerkportverbindung entsprechen. Zum Beispiel enthält die Telemetriedatenkarte (650) einen ersten Eintrag (652), der mit dem Informationsverarbeitungssystem A (610, 6.1) assoziiert ist, der spezifiziert, dass das Informationsverarbeitungssystem A einen Hardwareressourcensatz (650) enthält, der eine Solid-State-Disk mit vier Terabytes Speicherplatz (652A), einen Netzwerkport A mit 60 Megabit pro Sekunde (Mbps) verfügbarer Bandbreite (652B) und einen Netzwerkport B mit 50 Mbps (652C) enthält. Ähnlich enthält die Telemetriedatenkarte (650) einen zweiten Eintrag (654), der mit dem Informationsverarbeitungssystem B (620, 6.1) assoziiert ist, der spezifiziert, dass das Informationsverarbeitungssystem B einen Hardwareressourcensatz (650) enthält, der eine Grafikverarbeitungseinheit (654A), einen Netzwerkport C mit 40 Mbps verfügbarer Bandbreite (654B) und einen Netzwerkport D mit 60 Mbps (654C) enthält; ferner spezifiziert ein dritter Eintrag (656), der mit dem Informationsverarbeitungssystem C (630, 6.1) assoziiert ist, dass das Informationsverarbeitungssystem C einen Hardwareressourcensatz enthält, der ein Solid-State-Disk mit acht Terabytes Speicherplatz (656A), einen Netzwerkport E mit 40 Mbps verfügbarer Bandbreite (656B) und einen Netzwerkport F mit 0 Mbps (656C) enthält; und ein vierter Eintrag (658), der mit dem Informationsverarbeitungssystem D (640, 6.1) assoziiert ist, spezifiziert, dass das Informationsverarbeitungssystem D einen Hardwareressourcensatz enthält, der eine zweite Grafikverarbeitungseinheit (658A), einen Netzwerkport G mit 0 Mbps verfügbarer Bandbreite (658B) und einen Netzwerkport H mit fünf Mbps (658C) enthält.
  • Unter Bezugnahme auf 6.3 sendet ein Client in Schritt 3 eine Zusammensetzungsanforderung an den Systemsteuerungsprozessor (614) von IHS A (610). Die Zusammensetzungsanforderung spezifiziert das Zusammensetzen eines zusammengesetzten Informationsverarbeitungssystems, das einen Rechenressourcensatz, eine Solid-State-Disk mit mindestens drei TB Speicherplatz und eine Grafikverarbeitungseinheit enthält. Basierend auf den Informationen in der Ressourcenkarte von IHS A (610) (die eine Teilmenge der in 6.2 gezeigten Informationen ist) bestimmt der Systemsteuerungsprozessor (614) in Schritt 4, dass ein zusammengesetztes Informationsverarbeitungssystem unter Verwendung des Rechenressourcensatzes A (612), des Systemsteuerungsprozessors (614), der Solid-State-Disk (616) des Informationsverarbeitungssystems A (610) und einer zusätzlichen Grafikverarbeitungseinheit, die nicht mit IHS A (610) verbunden ist, instanziiert werden soll. Zusätzlich bestimmt der Systemsteuerungsprozessor (614), um den für die Virtual-Reality-Anwendung erforderlichen Speicherplatz zu erfüllen, dass Ressourcen von einem anderen Informationsverarbeitungssystem erforderlich sind.
  • Basierend auf dieser Bestimmung sendet der Systemsteuerungsprozessor (614), der sich seines aktuellen Mangels an Zugriff auf eine Grafikverarbeitungseinheit bewusst ist, in Schritt 5 eine Ressourcenzuweisungsanforderung an den Systemsteuerungsprozessorverwalter (600), die das Erhalten einer zusätzlichen Grafikverarbeitungseinheit spezifiziert.
  • In Schritt 6 analysiert der Systemsteuerungsprozessorverwalter (600) die Telemetriedatenkarte (650, 6.2), um zu bestimmen, dass IHS B (620) und IHS D (640) beide die Grafikverarbeitungseinheit enthalten, um die Ressourcenzuweisungsanforderung zu erfüllen. Aufgrund der begrenzten Bandbreite von IHS D (640), wie in der Telemetriedatenkarte (650, 6.2) spezifiziert, würde das Aktivieren des Zugriffs auf IHS D (640) jedoch die Zugänglichkeit der Netzwerkports von IHS D (640) zwischen anderen Komponenten stark einschränken. Somit wählt der Systemsteuerungsprozessorverwalter (600) die Grafikverarbeitungseinheit von IHS B (620) aus, um die Ressourcenzuweisungsanforderung aufgrund der höheren Netzwerkverfügbarkeit von IHS B (620) zu bedienen.
  • Bei Schritt 7 sendet der Systemsteuerungsprozessorverwalter eine Zugriffssteuerungsverwaltungsanforderung an IHS B (620), die das Programmieren von ACM B (628) spezifiziert, um den Zugriff durch IHS A (610) zu ermöglichen. Bei Schritt 8 wird ACM B (628) gemäß der Zugriffssteuerungsverwaltungsanforderung programmiert. Der Systemsteuerungsprozessor (614) von IHS A (610) wird über den Zugriff benachrichtigt. Ferner wird der Netzwerkport C von IHS B (620) der Produktion des zusammengesetzten Systems zugewiesen, so dass der Netzwerkport C nur für das Ermöglichen der Kommunikation zwischen dem Systemsteuerungsprozessor (614) von IHS A (610) und der Grafikverarbeitungseinheit von IHS B (620) dediziert ist.
  • Bei Schritt 9 bestimmt der Systemsteuerungsprozessor (614), dass nur drei Terabytes der Solid-State-Disk (616) für den Rechenressourcensatz A (612) dargestellt werden müssen. Folglich instanziiert der Systemsteuerungsprozessor (614) bei Schritt 9 die Solid-State-Disk (616) als virtualisierte Platte, so dass bei Schritt 10 nur drei Terabytes der vier Terabytes der Solid-State-Disk (616) für den Rechenressourcensatz A (612) dargestellt werden können.
  • Ferner sendet der Systemsteuerungsprozessor (614) bei Schritt 11 eine Nachricht an den Systemsteuerungsprozessor (624) des Informationsverarbeitungssystems B (620), in der angefordert wird, dass die Grafikverarbeitungseinheit (626) für die Präsentation für den Rechenressourcensatz A (612) vorbereitet wird. In Reaktion auf die Anforderung stellt der Systemsteuerungsprozessor (624) von IHS B (620) bei Schritt 12 den Zustand der Grafikverarbeitungseinheit (626) für Kommunikationszwecke auf die von den Systemsteuerungsprozessor (614) verwendeten Treiber ein.
  • Schließlich werden die vorbereiteten Ressourcen bei Schritt 13 vom Systemsteuerungsprozessor (614) als Bare-Metal-Ressourcen für den Rechenressourcensatz A (612) dargestellt. Folglich ist der Rechenressourcensatz A (612) bei Schritt 14 in der Lage, die vorbereiteten Ressourcen zu verwenden, ohne die Verfahren zu berücksichtigen, durch die die zugrundeliegenden Hardwareressourcen verwaltet werden.
  • Ende des Beispiels
  • Somit können Ausführungsformen der Erfindung, wie in 6.1-Fig. 6.3 veranschaulicht, ein System bereitstellen, das es ermöglicht, verbesserte computerimplementierte Dienste unter Verwenden von dynamisch instanziierten zusammengesetzten Informationsverarbeitungssystemen über eine effiziente Zuweisung von Rechenressourcen bereitzustellen.
  • Wie oben besprochen, können Ausführungsformen der Erfindung unter Verwenden von Datenverarbeitungsvorrichtungen implementiert werden. 7 zeigt ein Diagramm einer Rechenvorrichtung gemäß einer oder mehreren Ausführungsformen der Erfindung. Die Rechenvorrichtung (700) kann einen oder mehrere Computerprozessoren (702), nicht dauerhaften Speicher (704) (z. B. flüchtigen Speicher, wie z. B. Direktzugriffsspeicher (RAM), Cache-Speicher), dauerhaften Speicher (706) (z. B. eine Festplatte, ein optisches Laufwerk, wie z. B. ein Compact-Disk-Laufwerk (CD-Laufwerk) oder Digital-Versatile-Disk-Laufwerk (DVD-Laufwerk), einen Flash-Speicher usw.), eine Kommunikationsschnittstelle (712) (z. B. Bluetooth-Schnittstelle, Infrarotschnittstelle, Netzschnittstelle, optische Schnittstelle usw.), Eingabevorrichtungen (710), Ausgabevorrichtungen (708) und zahlreiche andere Elemente (nicht gezeigt) und Funktionalitäten enthalten. Jede dieser Komponenten wird nachstehend beschrieben.
  • In einer Ausführungsform der Erfindung kann/können der/die Computerprozessor(en) (702) eine integrierte Schaltung zum Verarbeiten von Anweisungen sein. Zum Beispiel kann/können der/die Computerprozessor(en) ein oder mehrere Kerne oder Mikrokerne eines Prozessors sein. Die Datenverarbeitungsvorrichtung (700) kann außerdem eine oder mehrere Eingabevorrichtungen (710) enthalten, wie z. B. einen Berührungsbildschirm, eine Tastatur, eine Maus, ein Mikrofon, ein Touchpad, einen elektronischen Stift oder irgendeine andere Art von Eingabevorrichtung. Des Weiteren kann die Kommunikationsschnittstelle (712) eine integrierte Schaltung zum Verbinden der Datenverarbeitungsvorrichtung (700) mit einem Netzwerk (nicht gezeigt) (z. B. einem lokalen Netzwerk (LAN), einem Weitverkehrsnetzwerk (WAN), wie z. B. dem Internet, einem Mobilnetzwerk oder irgendeiner anderen Art von Netzwerk) und/oder mit einer anderen Vorrichtung, wie z. B. einer anderen Datenverarbeitungsvorrichtung, enthalten.
  • In einer Ausführungsform der Erfindung kann die Datenverarbeitungsvorrichtung (700) eine oder mehrere Ausgabevorrichtungen (708) enthalten, wie z. B. einen Bildschirm (z. B. eine Flüssigkristallanzeige (LCD), eine Plasmaanzeige, einen Berührungsbildschirm, einen Kathodenstrahlröhren-Monitor (CRT-Monitor), einen Projektor oder eine andere Anzeigevorrichtung), einen Drucker, einen externen Speicher oder irgendeine andere Ausgabevorrichtung. Eine oder mehrere der Ausgabevorrichtungen können gleich oder verschieden von der/den Eingabevorrichtung(en) sein. Die Eingabe- und Ausgabevorrichtung(en) kann/können lokal oder entfernt mit dem/den Computerprozessor(en) (702), dem nicht dauerhaften Speicher (704) und dem dauerhaften Speicher (706) verbunden sein. Viele verschiedene Arten von Datenverarbeitungsvorrichtungen existieren, und die oben erwähnte(n) Eingabe- und Ausgabevorrichtung(en) kann/können andere Formen annehmen.
  • Ausführungsformen der Erfindung können ein System und ein Verfahren zum dynamischen Instanziieren von zusammengesetzten Informationsverarbeitungssystemen bereitstellen. Insbesondere können Ausführungsformen der Erfindung einen Systemsteuerungsprozessorverwalter bereitstellen, der zusammengesetzte Informationsverarbeitungssysteme instanziiert, indem der Betrieb von Systemsteuerungsprozessoren verwaltet wird und die Netzwerkkonnektivität zwischen Informationsverarbeitungssystemen überwacht wird, um zu bestimmen, ob ein Informationsverarbeitungssystem die Netzwerkverfügbarkeit (z. B. Netzwerkbandbreite) aufweist, um mit dem Informationsverarbeitungssystem zu kommunizieren. Da Informationsverarbeitungssysteme Zugriffssteuerungsverwalter verwenden, um den Zugriff von Komponenten in einem offenen Netzwerk auf die Informationsverarbeitungssysteme stark zu beschränken, wird ferner das Risiko, dass unerwünschte Komponenten auf zusammengesetzte Informationsverarbeitungssysteme über das offene Netzwerk zugreifen und/oder diese beschädigen, stark reduziert.
  • Somit können Ausführungsformen der Erfindung das Problem der Ressourcenzuweisung für zusammengesetzte Systeme angehen. Zum Beispiel können durch Verwenden eines Systemsteuerungsprozessorverwalters die beschränkten Ressourcen von mehreren Informationsverarbeitungssystemen effizient zugewiesen werden, um gewünschte computerimplementierte Dienste bereitzustellen.
  • Die oben besprochenen Probleme sollten als Beispiele von Problemen verstanden werden, die durch Ausführungsformen der Erfindung gelöst werden, und die Erfindung sollte nicht auf das Lösen der gleichen/ähnlichen Probleme beschränkt sein. Die offenbarte Erfindung ist breit anwendbar, um einen Bereich von Problemen zu adressieren, die über die hier besprochenen hinausgehen.
  • Eine oder mehrere Ausführungsformen der Erfindung können unter Verwenden von Anweisungen implementiert werden, die von einem oder mehreren Prozessoren einer Rechenvorrichtung ausgeführt werden. Ferner können solche Anweisungen computerlesbaren Anweisungen entsprechen, die auf einem oder mehreren nichttransitorischen computerlesbaren Medien gespeichert sind.
  • Obwohl die Erfindung oben in Bezug auf eine begrenzte Anzahl von Ausführungsformen beschrieben wurde, wird der Fachmann, der den Vorteil dieser Offenbarung hat, verstehen, dass andere Ausführungsformen entwickelt werden können, die nicht vom Schutzumfang der Erfindung wie der Erfindung abweichen. Dementsprechend sollte der Schutzumfang der Erfindung nur durch die beigefügten Ansprüche eingeschränkt sein.

Claims (20)

  1. System zum Bereitstellen von computerimplementierten Diensten unter Verwenden von Informationsverarbeitungssystemen, umfassend: ein erstes Informationsverarbeitungssystem der Informationsverarbeitungssysteme, umfassend einen Systemsteuerungsprozessor und mindestens einen Rechenressourcensatz, wobei der Systemsteuerungsprozessor programmiert ist zum: Erhalten einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem, Durchführen einer ersten Bestimmung, dass das erste Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen; und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem, Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource; Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt; Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten; und Darstellen der logischen Hardwareressourcen für den mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen.
  2. System nach Anspruch 1, wobei der mindestens eine Steuerungsressourcensatz den Systemsteuerungsprozessor umfasst, wobei der Systemsteuerungsprozessor ferner programmiert ist, Virtualisierungsdienste für den mindestens einen Hardwareressourcensatz bereitzustellen, wenn die Verwaltungsdienste bereitgestellt werden.
  3. System nach Anspruch 1, ferner umfassend: den Systemsteuerungsprozessorverwalter, wobei der Systemsteuerungsprozessorverwalter programmiert ist zum: Initiieren der Kommunikation mit dem Systemsteuerungsprozessor über einen ersten Zugriffssteuerungsverwalter; nach dem Initiieren der Kommunikation mit dem Systemsteuerungsprozessor: Senden einer Ressourcenverfügbarkeitsanforderung an das erste Informationsverarbeitungssystem, Erhalten einer Ressourcenverfügbarkeitsantwort vom ersten Informationsverarbeitungssystem, wobei die Ressourcenverfügbarkeitsantwort mindestens eine Netzwerkverfügbarkeit des ersten Informationsverarbeitungssystems spezifiziert, Erhalten, unter Verwenden mindestens der Ressourcenverfügbarkeitsantwort vom ersten Informationsverarbeitungssystem, einer Netzwerkkonnektivitätstopologie.
  4. System nach Anspruch 3, wobei die Netzwerkverfügbarkeit eine aktuelle Bandbreitennutzung des ersten Informationsverarbeitungssystems spezifiziert.
  5. System nach Anspruch 3, wobei der erste Zugriffssteuerungsverwalter eine Firewall ist, wobei die Firewall nur dem ersten Informationsverarbeitungssystem erlaubt, mit dem Systemsteuerungsprozessorverwalter zu kommunizieren, bis die verfügbare Ressource dem zusammengesetzten Informationsverarbeitungssystem zugewiesen ist.
  6. System nach Anspruch 1, ferner umfassend: den Systemsteuerungsprozessorverwalter, wobei der Systemsteuerungsprozessorverwalter programmiert ist zum: Erhalten der Ressourcenzuweisungsanforderung; Identifizieren, basierend auf Netzwerkkonnektivitätsanalyse, des zweiten Informationsverarbeitungssystems als in der Lage, die Ressourcenzuweisungsanforderung unter Verwenden der zusätzlichen Ressource zu erfüllen; und Übertragen der Benachrichtigung, über den Systemsteuerungsprozessorverwalter, an das erste Informationsverarbeitungssystem.
  7. System nach Anspruch 6, wobei der Systemsteuerungsprozessorverwalter ferner programmiert ist, nach dem Übertragen der Benachrichtigung an den Systemsteuerungsprozessor, eine Proxy-Kommunikation zwischen dem ersten Informationsverarbeitungssystem und dem zweiten Informationsverarbeitungssystem zu ermöglichen, um dem Systemsteuerungsprozessor zu ermöglichen, mit der zusätzlichen Ressource zu kommunizieren.
  8. System nach Anspruch 6, wobei der Systemsteuerungsprozessorverwalter ferner programmiert ist, nach dem Übertragen der Benachrichtigung an den Systemsteuerungsprozessor, eine Zugriffssteuerungsverwaltungsanforderung an einen ersten Zugriffssteuerungsverwalter und einen zweiten Zugriffssteuerungsverwalter zu senden, um eine direkte Kommunikation, über den ersten Zugriffssteuerungsverwalter und den zweiten Steuerungsverwalter, zwischen dem ersten Informationsverarbeitungssystem und dem zweiten Informationsverarbeitungssystem zu ermöglichen.
  9. Verfahren zum Bereitstellen von computerimplementierten Diensten unter Verwenden von Informationsverarbeitungssystemen, umfassend: Erhalten, durch einen Systemsteuerungsprozessor, einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem, Durchführen einer ersten Bestimmung, dass ein erstes Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen; und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem, Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource; Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt; Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten; und Darstellen der logischen Hardwareressourcen für mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen, wobei das erste Informationsverarbeitungssystem den Systemsteuerungsprozessor und den mindestens einen Rechenressourcensatz umfasst.
  10. Verfahren nach Anspruch 9, wobei der mindestens eine Steuerungsressourcensatz den Systemsteuerungsprozessor umfasst, wobei der Systemsteuerungsprozessor ferner programmiert ist, Virtualisierungsdienste für den mindestens einen Hardwareressourcensatz bereitzustellen, wenn die Verwaltungsdienste bereitgestellt werden.
  11. Verfahren nach Anspruch 9, wobei der Systemsteuerungsprozessorverwalter programmiert ist zum: Initiieren der Kommunikation mit dem Systemsteuerungsprozessor über einen ersten Zugriffssteuerungsverwalter; nach dem Initiieren der Kommunikation mit dem Systemsteuerungsprozessor: Senden einer Ressourcenverfügbarkeitsanforderung an das erste Informationsverarbeitungssystem, Erhalten einer Ressourcenverfügbarkeitsantwort vom ersten Informationsverarbeitungssystem, wobei die Ressourcenverfügbarkeitsantwort mindestens eine Netzwerkverfügbarkeit des ersten Informationsverarbeitungssystems spezifiziert, Erhalten, unter Verwenden mindestens der Ressourcenverfügbarkeitsantwort vom ersten Informationsverarbeitungssystem, einer Netzwerkkonnektivitätstopologie.
  12. Verfahren nach Anspruch 11, wobei die Netzwerkverfügbarkeit eine aktuelle Bandbreitennutzung des ersten Informationsverarbeitungssystems spezifiziert.
  13. Verfahren nach Anspruch 11, wobei der erste Zugriffssteuerungsverwalter eine Firewall ist, wobei die Firewall nur dem ersten Informationsverarbeitungssystem erlaubt, mit dem Systemsteuerungsprozessorverwalter zu kommunizieren, bis die verfügbare Ressource dem zusammengesetzten Informationsverarbeitungssystem zugewiesen ist.
  14. Verfahren nach Anspruch 9, wobei der Systemsteuerungsprozessorverwalter programmiert ist zum: Erhalten der Ressourcenzuweisungsanforderung; Identifizieren, basierend auf Netzwerkkonnektivitätsanalyse, des zweiten Informationsverarbeitungssystems als in der Lage, die Ressourcenzuweisungsanforderung unter Verwenden der zusätzlichen Ressource zu erfüllen; und Übertragen der Benachrichtigung, über den Systemsteuerungsprozessorverwalter, an das erste Informationsverarbeitungssystem.
  15. Verfahren nach Anspruch 14, wobei der Systemsteuerungsprozessorverwalter ferner programmiert ist, nach dem Übertragen der Benachrichtigung an den Systemsteuerungsprozessor, eine Proxy-Kommunikation zwischen dem ersten Informationsverarbeitungssystem und dem zweiten Informationsverarbeitungssystem zu ermöglichen, um dem Systemsteuerungsprozessor zu ermöglichen, mit der zusätzlichen Ressource zu kommunizieren.
  16. Verfahren nach Anspruch 14, wobei der Systemsteuerungsprozessorverwalter ferner programmiert ist, nach dem Übertragen der Benachrichtigung an den Systemsteuerungsprozessor, eine Zugriffssteuerungsverwaltungsanforderung an einen ersten Zugriffssteuerungsverwalter und einen zweiten Zugriffssteuerungsverwalter zu senden, um eine direkte Kommunikation, über den ersten Zugriffssteuerungsverwalter und den zweiten Steuerungsverwalter, zwischen dem ersten Informationsverarbeitungssystem und dem zweiten Informationsverarbeitungssystem zu ermöglichen.
  17. Nicht-transitorisches computerlesbares Medium, umfassend computerlesbaren Programmcode, der, wenn er von einem Computerprozessor ausgeführt wird, dem Computerprozessor ermöglicht, ein Verfahren zum dynamischen Instanziieren von zusammengesetzten Informationsverarbeitungssystemen durchzuführen, wobei das Verfahren umfasst: Erhalten, durch einen Systemsteuerungsprozessor, einer Zusammensetzungsanforderung für ein zusammengesetztes Informationsverarbeitungssystem; Durchführen einer ersten Bestimmung, dass ein erstes Informationsverarbeitungssystem nicht in der Lage ist, die Zusammensetzungsanforderung lokal zu bedienen; und basierend auf der ersten Bestimmung: Zuweisen einer verfügbaren Ressource auf dem ersten Informationsverarbeitungssystem zu dem zusammengesetzten Informationsverarbeitungssystem; Senden einer Ressourcenzuweisungsanforderung an einen Systemsteuerungsprozessorverwalter für den Zugriff auf eine zusätzliche Ressource; Erhalten, als Reaktion auf die Zuweisungsanforderung, einer Benachrichtigung für den Zugriff auf ein zweites Informationsverarbeitungssystem der Informationsverarbeitungssysteme, das die verfügbare Ressource bereitstellt; Einrichten von Verwaltungsdiensten für die verfügbare Ressource und die zusätzliche Ressource, um logische Hardwareressourcen zu erhalten; und Darstellen der logischen Hardwareressourcen für mindestens einen Rechenressourcensatz als Bare-Metal-Ressourcen, wobei das erste Informationsverarbeitungssystem den Systemsteuerungsprozessor und den mindestens einen Rechenressourcensatz umfasst.
  18. Nicht-transitorisches computerlesbares Medium nach Anspruch 17, wobei der mindestens eine Steuerungsressourcensatz den Systemsteuerungsprozessor umfasst, wobei der Systemsteuerungsprozessor ferner programmiert ist, Virtualisierungsdienste für den mindestens einen Hardwareressourcensatz bereitzustellen, wenn die Verwaltungsdienste bereitgestellt werden.
  19. Nicht-transitorisches computerlesbares Medium nach Anspruch 17, wobei der Systemsteuerungsprozessorverwalter programmiert ist zum: Initiieren der Kommunikation mit dem Systemsteuerungsprozessor über einen ersten Zugriffssteuerungsverwalter; nach dem Initiieren der Kommunikation mit dem Systemsteuerungsprozessor: Senden einer Ressourcenverfügbarkeitsanforderung an das erste Informationsverarbeitungssystem; Erhalten einer Ressourcenverfügbarkeitsantwort vom ersten Informationsverarbeitungssystem, wobei die Ressourcenverfügbarkeitsantwort mindestens eine Netzwerkverfügbarkeit des ersten Informationsverarbeitungssystems spezifiziert, Erhalten, unter Verwenden mindestens der Ressourcenverfügbarkeitsantwort vom ersten Informationsverarbeitungssystem, einer Netzwerkkonnektivitätstopologie.
  20. Nicht-transitorisches computerlesbares Medium nach Anspruch 17, wobei der Systemsteuerungsprozessorverwalter programmiert ist zum: Erhalten der Ressourcenzuweisungsanforderung; Identifizieren, basierend auf Netzwerkkonnektivitätsanalyse, des zweiten Informationsverarbeitungssystems als in der Lage, die Ressourcenzuweisungsanforderung unter Verwenden der zusätzlichen Ressource zu erfüllen; und Übertragen der Benachrichtigung, über den Systemsteuerungsprozessorverwalter, an das erste Informationsverarbeitungssystem.
DE102021212155.1A 2020-12-09 2021-10-27 Zusammensetzbare Informationsverarbeitungssysteme in einem offenen Netzwerk unter Verwenden von Zugriffssteuerungsverwaltern Pending DE102021212155A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/117,067 US11698821B2 (en) 2020-12-09 2020-12-09 Composable information handling systems in an open network using access control managers
US17/117,067 2020-12-09

Publications (1)

Publication Number Publication Date
DE102021212155A1 true DE102021212155A1 (de) 2022-06-09

Family

ID=81655520

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021212155.1A Pending DE102021212155A1 (de) 2020-12-09 2021-10-27 Zusammensetzbare Informationsverarbeitungssysteme in einem offenen Netzwerk unter Verwenden von Zugriffssteuerungsverwaltern

Country Status (3)

Country Link
US (1) US11698821B2 (de)
CN (1) CN114625528A (de)
DE (1) DE102021212155A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230069483A (ko) * 2021-11-12 2023-05-19 한국전자기술연구원 대규모 컨테이너 플랫폼 내 가용 gpu 자원 분석 기반 최적 자원 선정 방법

Family Cites Families (93)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7174379B2 (en) 2001-08-03 2007-02-06 International Business Machines Corporation Managing server resources for hosted applications
US20030233427A1 (en) 2002-05-29 2003-12-18 Hitachi, Ltd. System and method for storage network management
US7400062B2 (en) 2002-10-15 2008-07-15 Microsemi Corp. - Analog Mixed Signal Group Ltd. Rack level power management
US7606892B2 (en) 2003-04-22 2009-10-20 Hewlett-Packard Development Company, L.P. Method and system of supporting a computer network resource pool
US8843604B2 (en) 2003-06-19 2014-09-23 International Business Machines Corporation Method for interlocking a server to a server system and a computer system utilizing the same
US7971204B2 (en) 2004-03-13 2011-06-28 Adaptive Computing Enterprises, Inc. System and method of co-allocating a reservation spanning different compute resources types
JP2005301590A (ja) 2004-04-09 2005-10-27 Hitachi Ltd ストレージシステム及びデータ複製方法
US7620984B2 (en) 2004-10-06 2009-11-17 Hewlett-Packard Development Company, L.P. Method of managing computer system
US7478117B1 (en) 2004-12-10 2009-01-13 Symantec Operating Corporation Restoring system state from volume shadow copy service by mounting disks
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US20060236100A1 (en) 2005-04-19 2006-10-19 Guruprasad Baskaran System and method for enhanced layer of security to protect a file system from malicious programs
US8285747B1 (en) 2006-03-14 2012-10-09 Netapp, Inc. Incorporation of client storage into a storage system
US8024586B2 (en) 2007-06-12 2011-09-20 Hewlett-Packard Development Company, L.P. Determining power requirements by requesting auxiliary powered memory for server's each onboard component's need
US8793652B2 (en) * 2012-06-07 2014-07-29 International Business Machines Corporation Designing and cross-configuring software
US11385758B2 (en) 2008-10-09 2022-07-12 Aristocrat Technologies Australia Pty Limited Gaming system and gaming system processor module
PL2371086T3 (pl) 2008-12-18 2013-08-30 Ericsson Telefon Ab L M Węzeł sieci i sposób sterowania zasobami w sieci komunikacyjnej
US8335765B2 (en) 2009-10-26 2012-12-18 Amazon Technologies, Inc. Provisioning and managing replicated data instances
US8776245B2 (en) 2009-12-23 2014-07-08 Intel Corporation Executing trusted applications with reduced trusted computing base
US8667235B2 (en) 2010-02-11 2014-03-04 Hewlett-Packard Development Company, L.P. Data de-duplication for serial-access storage media
US8306948B2 (en) 2010-05-03 2012-11-06 Panzura, Inc. Global deduplication file system
US8606920B1 (en) 2010-05-28 2013-12-10 Amazon Technologies, Inc. Providing notification of computing resource availability for on-demand allocation
US8499066B1 (en) 2010-11-19 2013-07-30 Amazon Technologies, Inc. Predicting long-term computing resource usage
US8732665B2 (en) 2011-06-28 2014-05-20 Microsoft Corporation Deploying environments for testing by providing instantaneous availability of prebuilt environments
WO2013019185A1 (en) 2011-07-29 2013-02-07 Hewlett-Packard Development Company, L.P. Migrating virtual machines
US8276140B1 (en) 2011-11-14 2012-09-25 Google Inc. Adjustable virtual network performance
US9245096B2 (en) 2012-01-24 2016-01-26 International Business Machines Corporation Software license management in a networked computing environment
WO2013145288A1 (ja) 2012-03-30 2013-10-03 富士通株式会社 情報処理装置、仮想マシン停止方法およびプログラム
TWI468976B (zh) 2012-06-05 2015-01-11 Quanta Comp Inc 動態軟體授權平台及方法
US9405682B2 (en) 2012-06-23 2016-08-02 Microsoft Technology Licensing, Llc Storage device access using unprivileged software code
US20140007097A1 (en) 2012-06-29 2014-01-02 Brocade Communications Systems, Inc. Dynamic resource allocation for virtual machines
US8589659B1 (en) 2012-11-08 2013-11-19 DSSD, Inc. Method and system for global namespace with consistent hashing
US8997242B2 (en) 2012-11-09 2015-03-31 International Business Machines Corporation Methods and apparatus for software license management
US9105178B2 (en) 2012-12-03 2015-08-11 Sony Computer Entertainment Inc. Remote dynamic configuration of telemetry reporting through regular expressions
US9135126B2 (en) 2013-02-07 2015-09-15 International Business Machines Corporation Multi-core re-initialization failure control system
US9355261B2 (en) 2013-03-14 2016-05-31 Appsense Limited Secure data management
IN2013MU03239A (de) 2013-10-15 2015-07-03 Tata Consultancy Services Ltd
US9772953B2 (en) 2014-02-03 2017-09-26 Samsung Electronics Co., Ltd. Methods and apparatus for protecting operating system data
US20160062441A1 (en) 2014-04-18 2016-03-03 Mediatek Inc. Power managing method and power supplying system applying the power managing method
US9459892B2 (en) 2014-05-05 2016-10-04 International Business Machines Corporation Optimization of virtual machines
US10382279B2 (en) 2014-06-30 2019-08-13 Emc Corporation Dynamically composed compute nodes comprising disaggregated components
US20160180087A1 (en) 2014-12-23 2016-06-23 Jonathan L. Edwards Systems and methods for malware detection and remediation
US10795856B1 (en) 2014-12-29 2020-10-06 EMC IP Holding Company LLC Methods, systems, and computer readable mediums for implementing a data protection policy for a transferred enterprise application
US10275719B2 (en) 2015-01-29 2019-04-30 Qualcomm Incorporated Hyper-parameter selection for deep convolutional networks
US9710304B2 (en) * 2015-03-05 2017-07-18 Vmware, Inc. Methods and apparatus to select virtualization environments for migration
US10505869B2 (en) 2015-08-04 2019-12-10 International Business Machines Corporation Mimicking a presence notification from an application executing on a virtual component to optimize computing resource allocation/utilization
US10154009B2 (en) * 2015-08-11 2018-12-11 At&T Intellectual Property I, L.P. Providing a basic firewall using a virtual networking function
US10348574B2 (en) 2015-08-17 2019-07-09 Vmware, Inc. Hardware management systems for disaggregated rack architectures in virtual server rack deployments
JP6438144B2 (ja) 2015-08-18 2018-12-12 日本電信電話株式会社 リソース構成システム、リソース構成方法及びリソース構成プログラム
US9990232B2 (en) 2015-10-06 2018-06-05 Red Hat, Inc. Quality of service tagging for computing jobs
US9794292B2 (en) 2015-10-26 2017-10-17 Amazon Technologies, Inc. Providing fine-grained access remote command execution for virtual machine instances in a distributed computing environment
US9678977B1 (en) 2015-11-25 2017-06-13 International Business Machines Corporation Similarity based deduplication of snapshots data
US10164852B2 (en) 2015-12-31 2018-12-25 Microsoft Technology Licensing, Llc Infrastructure management system for hardware failure remediation
CA3028993A1 (en) 2016-06-24 2017-12-28 Schneider Electric Systems Usa, Inc. Methods, systems and apparatus to dynamically facilitate boundaryless, high availability system management
US20180024964A1 (en) 2016-07-19 2018-01-25 Pure Storage, Inc. Disaggregated compute resources and storage resources in a storage system
US10200376B2 (en) 2016-08-24 2019-02-05 Intel Corporation Computer product, method, and system to dynamically provide discovery services for host nodes of target systems and storage resources in a network
US10372362B2 (en) 2017-03-30 2019-08-06 Intel Corporation Dynamically composable computing system, a data center, and method for dynamically composing a computing system
US10956222B2 (en) 2017-05-04 2021-03-23 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing a scheduler and workload manager with dynamic workload termination based on cost-benefit analysis
US11288102B2 (en) 2017-08-29 2022-03-29 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Modifying resources for composed systems based on resource models
US10782880B2 (en) 2017-08-30 2020-09-22 Electronics And Telecommunications Research Institute Apparatus and method for providing storage for providing cloud services
US10756990B1 (en) 2017-09-22 2020-08-25 Equinix, Inc. Monitoring and performance improvement of enterprise applications using correlated data associated with a plurality of service layers
US11960976B2 (en) 2017-11-30 2024-04-16 B.yond, Inc. Decomposing tasks through artificial intelligence chaining
US10838747B2 (en) * 2017-12-14 2020-11-17 Hewlett Packard Enterprise Development Lp Virtual appliances
US10587463B2 (en) * 2017-12-20 2020-03-10 Hewlett Packard Enterprise Development Lp Distributed lifecycle management for cloud platforms
US10459733B2 (en) 2018-01-25 2019-10-29 Dell Products, Lp Power budgeting in an information handling system
US10303365B1 (en) 2018-01-31 2019-05-28 EMC IP Holding Company LLC Data fingerprint distribution on a data storage system
US10523513B2 (en) 2018-04-30 2019-12-31 Virtustream Ip Holding Company Llc Automated configuration of switch zones in a switch fabric
US11221886B2 (en) 2018-05-17 2022-01-11 International Business Machines Corporation Optimizing dynamical resource allocations for cache-friendly workloads in disaggregated data centers
US10601903B2 (en) 2018-05-17 2020-03-24 International Business Machines Corporation Optimizing dynamical resource allocations based on locality of resources in disaggregated data centers
US11330042B2 (en) 2018-05-17 2022-05-10 International Business Machines Corporation Optimizing dynamic resource allocations for storage-dependent workloads in disaggregated data centers
US11134013B1 (en) 2018-05-31 2021-09-28 NODUS Software Solutions LLC Cloud bursting technologies
US11399030B2 (en) 2018-07-23 2022-07-26 Kyndryl, Inc. Ontology based control of access to resources in a computing system
US11265243B2 (en) * 2018-07-31 2022-03-01 Vmware, Inc. Support for multi-AZ management appliance networking
US11061709B2 (en) 2018-08-21 2021-07-13 International Business Machines Corporation Storage management for deployment of virtual machine
US10909283B1 (en) 2018-11-21 2021-02-02 Cadence Design Systems, Inc. Hardware assisted weighted toggle count
US10994198B1 (en) 2018-11-28 2021-05-04 Amazon Technologies, Inc. Risk assessment for placement of hosted sessions
US10901918B2 (en) 2018-11-29 2021-01-26 International Business Machines Corporation Constructing flexibly-secure systems in a disaggregated environment
US10860362B2 (en) * 2019-01-09 2020-12-08 Vmware, Inc. Methods and apparatus to deploy a hybrid workload domain
US10732888B1 (en) 2019-01-23 2020-08-04 EMC IP Holding Company LLC Seamless transitioning among replication modes in a storage system
WO2020190256A1 (en) 2019-03-15 2020-09-24 Hewlett-Packard Development Company, L.P. Functional tuning for cloud based applications and connected clients
US11042411B2 (en) 2019-03-15 2021-06-22 Toshiba Memory Corporation Data storage resource management
US11720403B2 (en) 2019-04-24 2023-08-08 Google Llc System for commitment-aware workload scheduling based on anticipated resource consumption levels
US10977072B2 (en) * 2019-04-25 2021-04-13 At&T Intellectual Property I, L.P. Dedicated distribution of computing resources in virtualized environments
US11025560B2 (en) * 2019-05-06 2021-06-01 Citrix Systems, Inc. Method and system for sharing user configuration data between different computing sessions
US11119739B1 (en) * 2019-06-21 2021-09-14 Amazon Technologies, Inc. Executable programs representing firewall rules for evaluating data packets
US10972768B2 (en) 2019-06-27 2021-04-06 Intel Corporation Dynamic rebalancing of edge resources for multi-camera video streaming
US11182086B2 (en) 2019-07-19 2021-11-23 Cignet Technology, Inc. Method and system for application-based management of user data storage rights
US11706712B2 (en) 2019-07-30 2023-07-18 International Business Machines Corporation Elastic resource control in a container orchestration environment
US20210117441A1 (en) 2019-10-17 2021-04-22 Dell Products L.P. Data replication system
US11729044B2 (en) 2019-10-29 2023-08-15 Intel Corporation Service resiliency using a recovery controller
US11076019B2 (en) 2019-11-15 2021-07-27 F5 Networks, Inc. Scheduling services on a platform including configurable resources
US11449354B2 (en) 2020-01-17 2022-09-20 Spectro Cloud, Inc. Apparatus, systems, and methods for composable distributed computing
US11784940B2 (en) 2020-05-22 2023-10-10 Citrix Systems, Inc. Detecting faulty resources of a resource delivery system
US20220179701A1 (en) 2020-12-09 2022-06-09 Dell Products L.P. System and method for dynamic data protection architecture

Also Published As

Publication number Publication date
US20220179718A1 (en) 2022-06-09
US11698821B2 (en) 2023-07-11
CN114625528A (zh) 2022-06-14

Similar Documents

Publication Publication Date Title
DE102016221811B4 (de) Zuordnung von Ressourcen mit mehrschichtigem Speicher
US11928506B2 (en) Managing composition service entities with complex networks
US11947697B2 (en) Method and system to place resources in a known state to be used in a composed information handling system
DE112011103522T5 (de) Erstellung eines Multidimensionalen Modells von Software-Angeboten
DE112011105186T5 (de) Graphdatenbanken zum Speichern mehrdimensionaler Modelle von Software-Angeboten
DE69829442T2 (de) System und Verfahren für transparenten, globalen Zugang zu physikalischen Geräten in einem Rechnersystem
DE102020113346A1 (de) Bereitstellen von service-containern in einer adaptervorrichtung
DE102014116808B4 (de) Verfahren und System zum Realisieren einer dynamischen Virtualisierung eines SRIOV-fähigen SAS-Adapters
DE102021109774A1 (de) Container-as-a-service (CAAS)-Controller für die Auswahl einer Bare-Metal-Maschine einer privaten Cloud für einen Cluster eines verwalteten Containerdienstes
DE112013006643B4 (de) Speichersystem und steuerungsverfahren für speichersystem
DE112012002404B4 (de) Konfiguration und Management virtueller Netzwerke
DE112011100094T5 (de) Verfahren und System zum Abstrahieren eines auf nichtfunktionalen Anforderungen beruhenden Einsatzes von virtuellen Maschinen
DE112012003342T5 (de) Dynamisches Anpassen und Begrenzen der Größe des Netzwerkadapterspeichers zur Speicherung von Umsetzungseinträgen für virtuelle Funktionen
DE112010004160T5 (de) Portieren virtueller Abbilder zwischen Plattformen
DE112018006769B4 (de) Erweiterte zwischenspeicherzuweisung basierend auf virtuellen knotenressourcen
DE112006001345T5 (de) Aufgabenzuweisung für Geräte mit derselben Konnektionsadresse
DE112021001408T5 (de) Verwendung kohärent verbundener schnittstellen in einem netzwerkstapelrahmen
DE102019135064A1 (de) Verbessertes management der verfügbarkeit von lagerrepositorien in einer virtuellen umgebung
DE102022205478A1 (de) Busübergreifende speicherabbildung
DE112021005636T5 (de) Migrieren von komplexen legacy-anwendungen
DE102020114272A1 (de) Einsatz von virtuellen Node Clustern in einer mehrmittelbaren Umgebung
DE102021212155A1 (de) Zusammensetzbare Informationsverarbeitungssysteme in einem offenen Netzwerk unter Verwenden von Zugriffssteuerungsverwaltern
DE112022002615T5 (de) Kontinuierliche funktionsfähigkeit und integrität von anwendungen während eines migrationsvorgangs
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
DE112021004577T5 (de) Verwalten eines aufgabenablaufs in einer edge-datenverarbeitungsumgebung

Legal Events

Date Code Title Description
R012 Request for examination validly filed