DE102013100054A1 - Verlagern von zusammengehörigen Ressourcenpartitionen - Google Patents
Verlagern von zusammengehörigen Ressourcenpartitionen Download PDFInfo
- Publication number
- DE102013100054A1 DE102013100054A1 DE102013100054A DE102013100054A DE102013100054A1 DE 102013100054 A1 DE102013100054 A1 DE 102013100054A1 DE 102013100054 A DE102013100054 A DE 102013100054A DE 102013100054 A DE102013100054 A DE 102013100054A DE 102013100054 A1 DE102013100054 A1 DE 102013100054A1
- Authority
- DE
- Germany
- Prior art keywords
- resource partition
- resource
- partition
- area
- module
- 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.)
- Granted
Links
- 238000005192 partition Methods 0.000 title claims abstract description 466
- 238000000034 method Methods 0.000 claims abstract description 47
- 230000004044 response Effects 0.000 claims abstract description 24
- 230000015654 memory Effects 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 9
- 102000004137 Lysophosphatidic Acid Receptors Human genes 0.000 claims description 8
- 108090000642 Lysophosphatidic Acid Receptors Proteins 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 4
- 230000002829 reductive effect Effects 0.000 claims description 4
- 230000003936 working memory Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 44
- 238000006073 displacement reaction Methods 0.000 description 36
- 238000010586 diagram Methods 0.000 description 29
- 230000008901 benefit Effects 0.000 description 14
- 238000011835 investigation Methods 0.000 description 12
- 238000012546 transfer Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000009472 formulation Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
- Gebiet
- Der hier offenbarte Gegenstand betrifft Ressourcenpartitionen in einer virtualisierten Datenverarbeitungsumgebung und insbesondere das Verlagern zusammengehöriger Ressourcenpartitionen.
- Hintergrund
- Beschreibung des Stands der Technik
- Die Virtualisierung von Hardware und Software ermöglicht die Abstraktion einer Datenverarbeitungsplattform und/oder eines Betriebssystems, um Computerumgebungen zu simulieren, in denen Anwendungen, Programme und Betriebssysteme ausgeführt werden können. Normalerweise verwaltet eine Anwendung auf einer Datenverarbeitungsplattform, zum Beispiel ein Hypervisor, diese virtuellen Umgebungen bzw. Ressourcenpartitionen (Partitionen der Ressourcen der Datenverarbeitungsplattform) und/oder stellt diese bereit.
- Viele Virtualisierungssysteme stellen die Mobilität von Ressourcenpartitionen bereit – die Fähigkeit, eine Ressourcenpartition von einem Bereich (wie zum Beispiel ein Computersystem) auf einen anderen Bereich zu verlagern, um die Auslastung gleichmäßiger zu verteilen, Ressourcen auf einem Computersystem freizugeben und dergleichen. Oftmals tauschen Ressourcenpartitionen Daten mit anderen Ressourcenpartitionen im selben oder in einem anderen Bereich aus. Daher kann das Verlagern einer Ressourcenpartition unter Umständen den Datenaustauschverkehr mit der betreffenden Ressourcenpartition und anderen Ressourcenpartitionen beeinträchtigen.
- Kurzdarstellung
- Es wird eine Ausführungsform eines Verfahrens zum Verlagern zusammengehöriger Ressourcenpartitionen bereitgestellt. Das Verfahren weist das Erkennen eines Verlagerungsereignisses zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich auf. Der erste Bereich weist eine zweite Ressourcenpartition auf. Die erste Ressourcenpartition und die zweite Ressourcenpartition sind jeweils eigene Betriebsumgebungen. Das Verfahren weist außerdem das Feststellen auf, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Das Verfahren weist als Reaktion auf das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört (bzw. in ausreichender Weise Bezug nimmt), das Verlagern der zweiten Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich auf.
- Eine Ausführungsform einer Vorrichtung zum Verlagern zusammengehöriger Ressourcenpartitionen wird mit einer Vielzahl von Modulen bereitgestellt, die so gestaltet sind, dass sie die oben im Hinblick auf das vorgestellte Verfahren beschriebenen Schritte funktionell ausführen. Diese Module bei den beschriebenen Ausführungsformen weisen ein Erkennungsmodul, ein Ermittlungsmodul und ein Verlagerungsmodul auf. Das Erkennungsmodul erkennt ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich auf. Der erste Bereich weist eine zweite Ressourcenpartition auf, und die erste Ressourcenpartition und die zweite Ressourcenpartition sind jeweils eigene Betriebsumgebungen. Das Ermittlungsmodul stellt fest, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Das Verlagerungsmodul verlagert als Reaktion darauf, dass das Ermittlungsmodul feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich.
- Es wird eine Ausführungsform eines Systems zum Verlagern zusammengehöriger Ressourcenpartitionen vorgestellt. Das System weist einen Prozessor, einen Arbeitsspeicher, der mit dem Prozessor in Verbindung steht, einen Betriebssystemkern und eine Partitionsverlagerungsvorrichtung auf, die im Arbeitsspeicher gespeichert ist und durch den Prozessor ausgeführt wird. Die Partitionsverlagerungsvorrichtung steht mit dem Betriebssystemkern in Verbindung. Die Partitionsverlagerungsvorrichtung weist ein Erkennungsmodul, ein Ermittlungsmodul und ein Verlagerungsmodul auf. Das Erkennungsmodul erkennt ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich auf. Der erste Bereich weist eine zweite Ressourcenpartition auf, und die erste Ressourcenpartition und die zweite Ressourcenpartition sind jeweils eigene Betriebsumgebungen. Das Ermittlungsmodul stellt fest, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Das Verlagerungsmodul verlagert als Reaktion darauf, dass das Ermittlungsmodul feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich.
- Es wird eine weitere Ausführungsform eines Verfahrens vorgestellt, das das Bereitstellen einer Partitionsverlagerungsvorrichtung auf einem Datenverarbeitungssystem aufweist. Die Partitionsverlagerungsvorrichtung ist in der Lage, ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich zu erkennen. Der erste Bereich weist eine zweite Ressourcenpartition auf. Die erste Ressourcenpartition und die zweite Ressourcenpartition sind jeweils eigene Betriebsumgebungen. Die Partitionsverlagerungsvorrichtung ist außerdem in der Lage, festzustellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Die Partitionsverlagerungsvorrichtung ist darüber hinaus in der Lage, als Reaktion auf das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich zu verlagern.
- Kurzbeschreibung der Zeichnungen
- Zum leichteren Verständnis der Vorteile der Ausführungsformen der Erfindung folgt nun eine eingehendere Beschreibung der oben kurz beschriebenen Ausführungsformen, wobei auf bestimmte Ausführungsformen Bezug genommen wird, die in den beigefügten Zeichnungen veranschaulicht sind. Unter Berücksichtigung der Tatsache, dass die Zeichnungen lediglich einige Ausführungsformen der Erfindung veranschaulichen und daher nicht als Einschränkung des Schutzbereichs zu betrachten sind, werden die Ausführungsformen unter Verwendung der beigefügten Zeichnungen eingehender und genauer beschrieben und erläutert, wobei:
-
1 ein schematisches Blockschaltbild ist, das eine Ausführungsform eines Systems zum Verlagern von Ressourcenpartitionen gemäß der vorliegenden Erfindung veranschaulicht; -
2 ein schematisches Blockschaltbild ist, das eine weitere Ausführungsform eines Systems zum Verlagern von Ressourcenpartitionen gemäß der vorliegenden Erfindung veranschaulicht; -
3A ein schematisches Blockschaltbild ist, das eine Ausführungsform eines WPAR-Verlagerungsereignisses (WPAR = Workloadpartition) gemäß der vorliegenden Erfindung veranschaulicht; -
3B ein schematisches Blockschaltbild ist, das eine Ausführungsform des Verlagerns einer zugehörigen WPAR gemäß der vorliegenden Erfindung veranschaulicht; -
3C ein schematisches Blockschaltbild ist, das eine Ausführungsform einer verlagerten zugehörigen WPAR gemäß der vorliegenden Erfindung veranschaulicht; -
4A ein schematisches Blockschaltbild ist, das eine Ausführungsform eines LPAR-Verlagerungsereignisses (LPAR = logische Partition) gemäß der vorliegenden Erfindung veranschaulicht; -
4B ein schematisches Blockschaltbild ist, das eine Ausführungsform des Verlagerns einer zugehörigen LPAR gemäß der vorliegenden Erfindung veranschaulicht; -
4C ein schematisches Blockschaltbild ist, das eine Ausführungsform einer verlagerten zugehörigen LPAR gemäß der vorliegenden Erfindung veranschaulicht; -
5 ein schematisches Blockschaltbild ist, das eine Ausführungsform einer Partitionsverlagerungsvorrichtung gemäß der vorliegenden Erfindung veranschaulicht; -
6 ein schematisches Blockschaltbild ist, das eine weitere Ausführungsform einer Partitionsverlagerungsvorrichtung gemäß der vorliegenden Erfindung veranschaulicht; -
7 ein schematischer Ablaufplan ist, der eine Ausführungsform eines Verfahrens zum Verlagern von Ressourcenpartitionen gemäß der vorliegenden Erfindung veranschaulicht; -
8 ein detaillierter schematischer Ablaufplan ist, der eine weitere Ausführungsform eines Verfahrens zum Verlagern von Ressourcenpartitionen gemäß der vorliegenden Erfindung veranschaulicht; -
9A ein schematischer Ablaufplan ist, der eine Ausführungsform eines Verfahrens zum Bereitstellen einer virtuellen Gast-Sicherheitsvorrichtung gemäß der vorliegenden Erfindung veranschaulicht; und -
9B eine Fortsetzung der9A ist, die eine Ausführungsform eines Verfahrens zum Bereitstellen einer virtuellen Gast-Sicherheitsvorrichtung gemäß der vorliegenden Erfindung veranschaulicht. - Ausführliche Beschreibung der Erfindung
- Die Bezugnahme auf Merkmale oder Vorteile bzw. ähnliche Formulierungen bedeuten nicht, dass alle Merkmale und Vorteile in einer beliebigen einzelnen Ausführungsform realisiert sein können. Stattdessen bedeuten Formulierungen, die sich auf die Merkmale und Vorteile beziehen, dass ein bestimmtes Merkmal, ein bestimmter Vorteil bzw. eine bestimmte Eigenschaft in zumindest einer Ausführungsform enthalten ist. Daher können sich, müssen es aber nicht notwendigerweise, die Erörterung der Merkmale und Vorteile und die Verwendung ähnlicher Formulierungen in der vorliegenden Beschreibung auf dieselbe Ausführungsform beziehen.
- Des Weiteren können die beschriebenen Merkmale, Vorteile und Eigenschaften der Ausführungsformen in einer beliebigen geeigneten Weise kombiniert sein. Fachleuten ist klar, dass die Ausführungsformen ohne eines oder mehrere der jeweiligen Merkmale oder Vorteile einer bestimmten Ausführungsform in die Praxis umgesetzt werden können. In anderen Fällen können weitere Merkmale und Vorteile in bestimmten Ausführungsformen festzustellen sein, die nicht in allen Ausführungsformen sein können.
- Diese Merkmale und Vorteile der Ausführungsformen werden anhand der folgenden Beschreibung und der beigefügten Ansprüche klarer, oder die Merkmale und Vorteile werden durch die praktische Umsetzung der Ausführungsformen anhand der folgenden Ausführungen ersichtlich. Fachleuten wird klar sein, dass Aspekte der vorliegenden Erfindung in Form eines Systems, Verfahrens und/oder Computerprogrammprodukts verkörpert sein können. Demzufolge können Aspekte der vorliegenden Erfindung die Form einer komplett in Hardware realisierten Ausführungsform, einer komplett in Software realisierten Ausführungsform (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführungsform annehmen, in der Software- und Hardwareaspekte kombiniert sind, die im vorliegenden Dokument allgemein als „Schaltung”, „Modul” oder „System” bezeichnet werden. Ferner können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem oder mehreren computerlesbaren Medien verkörpert ist, auf denen computerlesbarer Programmcode verkörpert ist.
- Viele der in der vorliegenden Beschreibung beschriebenen Funktionseinheiten werden als Module bezeichnet, um insbesondere ihre voneinander unabhängige Realisierung zu unterstreichen. Beispielsweise kann ein Modul als Hardwareschaltung realisiert sein, die kundenspezifische VLSI-Schaltungen oder Gate-Arrays, handelsübliche Halbleiter wie z. B. Logikschaltkreise, Transistoren oder andere diskrete Bauteile aufweist. Ein Modul kann auch in Form von programmierbaren Hardwareeinheiten realisiert sein, z. B. als FPGA (Field Programmable Gate Array), PAL (Programmable Array Logic), programmierbare Logikeinheiten oder dergleichen.
- Module können außerdem zwecks Durchführung auf verschiedenen Arten von Prozessoren in Software realisiert sein. Ein bezeichnetes Modul mit computerlesbarem Code kann zum Beispiel einen oder mehrere physische oder logische Blöcke von Computeranweisungen aufweisen, die zum Beispiel als Objekt, Prozedur oder Funktion organisiert sein können. Ungeachtet dessen müssen die ausführbaren Bestandteile eines bezeichneten Moduls physisch nicht zusammen angeordnet sein, sondern können ganz verschiedene Anweisungen aufweisen, die an unterschiedlichen Stellen gespeichert sind und, wenn sie zusammengefügt werden, das Modul aufweisen und den festgelegten Zweck des Moduls erreichen.
- Tatsächlich kann ein Modul mit computerlesbarem Programmcode eine einzige Anweisung oder viele Anweisungen aufweisen, und es kann sogar auf mehrere unterschiedliche Codesegmente, auf verschiedene Programme und auf mehrere Speichereinheiten aufgeteilt sein. Ebenso können Betriebsdaten im vorliegenden Dokument innerhalb von Modulen bezeichnet und dargestellt sein, und sie können in einer beliebigen Art von Datenstruktur in beliebiger geeigneter Form verkörpert und organisiert sein. Die Betriebsdaten können als ein Datensatz erfasst werden, oder sie können auf unterschiedliche Stellen, auch auf unterschiedlichen Speichereinheiten, verteilt sein, und können zumindest teilweise als elektronische Signale auf einem System oder Netzwerk vorhanden sein. Wenn ein Modul oder Teile eines Moduls in Software realisiert sind, kann der computerlesbare Programmcode auf einem oder mehreren computerlesbaren Medien gespeichert und/oder auf diese verteilt sein.
- Das computerlesbare Medium kann ein vergegenständlichtes computerlesbares Speichermedium sein, auf dem der computerlesbare Programmcode gespeichert ist. Zu computerlesbaren Speichermedien können beispielsweise, ohne darauf beschränkt zu sein, ein elektronisches, magnetisches, optisches, elektromagnetisches, holografisches oder mikromechanisches System bzw. ein Infrarot- oder Halbleitersystem bzw. eine derartige Vorrichtung oder Einheit oder eine beliebige geeignete Kombination des Vorstehenden gehören.
- Zu genaueren Beispielen des computerlesbaren Speichermediums können, ohne darauf beschränkt zu sein, eine tragbare Computerdiskette, Festplatte, Direktzugriffsspeicher (RAM), Nur-Lese-Speicher (ROM), löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), Nur-Lese-Speicher in Form einer Compact Disc (CD-ROM), eine Digital Versatile Disc (DVD), optische Speichereinheit, ein holografisches Speichermedium, eine magnetische Speichereinheit, eine mikromechanische Speichereinheit oder beliebige geeignete Kombinationen des Vorstehenden gehören. Im Kontext dieses Dokuments kann ein computerlesbares Speichermedium jedes beliebige vergegenständlichte Medium sein, das computerlesbaren Programmcode enthalten oder/oder speichern kann, der von oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Befehlsausführung genutzt werden kann.
- Das computerlesbare Medium kann auch ein computerlesbares Signalmedium sein. Ein computerlesbares Signalmedium kann unter anderem ein im Basisband oder als Teil einer Trägerwelle übertragenes Datensignal mit darin verkörpertem computerlesbarem Programmcode aufweisen. Ein derartiges übertragenes Signal kann eine beliebige Vielfalt von Formen annehmen, einschließlich, ohne darauf beschränkt zu sein, einer elektrischen, elektromagnetischen, magnetischen oder optischen Form oder einer beliebigen geeigneten Kombination davon. Ein computerlesbares Signalmedium kann ein beliebiges computerlesbares Medium sein, bei dem es sich nicht um ein computerlesbares Speichermedium handelt und das computerlesbaren Programmcode übertragen, senden oder transportieren kann, der von oder in Verbindung mit einem System, einer Vorrichtung oder einer Einheit zur Befehlsausführung genutzt werden kann. Auf einem computerlesbaren Signalmedium verkörperter computerlesbarer Programmcode kann unter Verwendung jedes beliebigen geeigneten Mediums, darunter und ohne Beschränkung auf die Aufzählung, drahtgebundene Medien, Lichtwellenleiter, Hochfrequenz (HF) und dergleichen oder unter Verwendung beliebiger geeigneter Kombinationen des Vorstehenden übertragen werden.
- Bei einer Ausführungsform kann das computerlesbare Medium eine Kombination aus einem oder mehreren computerlesbaren Speichermedien und einem oder mehreren computerlesbaren Signalmedien aufweisen. Beispielsweise kann der computerlesbare Programmcode sowohl als elektromagnetisches Signal über einen Lichtwellenleiter zur Verarbeitung durch einen Prozessor verbreitet als auch in einer RAM-Speichereinheit zur Ausführung durch einen Prozessor gespeichert werden.
- Computerlesbarer Programmcode zum Ausführen von Operationen bei Aspekten der vorliegenden Erfindung kann in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen, darunter in einer objektorientierten Programmiersprache wie Java, Smalltalk, C++, PHP oder dergleichen und in herkömmlichen prozeduralen Programmiersprachen wie „C” oder ähnlichen Programmiersprachen geschrieben sein. Der computerlesbare Programmcode kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Beim letztgenannten Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über eine beliebige Art von Netzwerk verbunden sein, unter anderem über ein lokales Netzwerk (LAN) oder über ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (beispielsweise über das Internet unter Nutzung eines Internet-Dienstanbieters (Internet Service Provider)).
- In der vorliegenden Beschreibung bedeuten der Begriff „eine Ausführungsform” bzw. ähnliche Formulierungen, dass zumindest eine Ausführungsform ein bestimmtes Merkmal, eine bestimmte Struktur bzw. eine bestimmte Eigenschaft, das bzw. die in Verbindung mit der Ausführungsform beschrieben wird, aufweist. Daher kann sich, muss es aber nicht notwendigerweise, in der vorliegenden Beschreibung das Auftreten der Formulierung „bei einer Ausführungsform” bzw. ähnlicher Formulierungen auf dieselbe Ausführungsform beziehen, bedeutet jedoch „eine oder mehrere, jedoch nicht alle Ausführungsformen”, sofern dies nicht ausdrücklich anderweitig angegeben ist. Die Begriffe „einschließlich”, „aufweisen/aufweisend”, „hat/haben” und Variationen davon bedeuten „einschließlich, ohne darauf beschränkt zu sein”, sofern dies nicht ausdrücklich anderweitig angegeben ist. Alle nummerierten Aufstellungen von Elementen schließen nicht stillschweigend ein, dass sich beliebige oder alle der Elemente gegenseitig ausschließen und/oder einander einschließen, sofern dies nicht ausdrücklich anderweitig angegeben ist. Die Begriffe „ein/eine” und „der/die/das” bezeichnen ebenfalls „ein/eine oder mehrere”, sofern dies nicht ausdrücklich anderweitig angegeben ist.
- Des Weiteren können die beschriebenen Merkmale, Strukturen oder Eigenschaften der Ausführungsformen in einer beliebigen geeigneten Weise kombiniert sein. In der folgenden Beschreibung sind zahlreiche konkrete Details aufgeführt, zum Beispiel Programmierbeispiele, Softwaremodule, Benutzerauswahlen, Netzwerktransaktionen, Datenbankabfragen, Datenbankstrukturen, Hardwaremodule, Hardwareschaltungen, Hardwareschaltkreise usw., um ein gründliches Verständnis der Ausführungsformen zu ermöglichen. Fachleuten ist jedoch klar, dass Ausführungsformen ohne eines oder mehrere der konkreten Details oder mit anderen Verfahren, Komponenten, Materialien usw. in die Praxis umgesetzt werden können. In anderen Fällen sind allgemein bekannte Strukturen, Materialien oder Vorgänge nicht im Detail gezeigt oder beschrieben, um die Deutlichkeit von Aspekten einer Ausführungsform nicht zu beeinträchtigen.
- Nachstehend werden Aspekte der Ausführungsformen unter Bezugnahme auf schematische Ablaufpläne und/oder schematische Blockschaltbilder von Verfahren, Vorrichtungen, Systemen und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der schematischen Ablaufpläne und/oder der schematischen Blockschaltbilder und Kombinationen von Blöcken in den schematischen Ablaufplänen und/oder schematischen Blockschaltbildern durch computerlesbaren Programmcode realisiert werden kann bzw. können. Der computerlesbare Programmcode kann einem Prozessor eines Mehrzweckcomputers, eines Spezialcomputers, einer Ablaufsteuerung oder anderer programmierbarer Datenverarbeitungsvorrichtungen bereitgestellt werden, um eine Maschine zu erzeugen, sodass die Anweisungen, die über den Prozessor des Computers oder anderer programmierbarer Datenverarbeitungsvorrichtungen ausgeführt werden, Mittel zum Realisieren der in einem Block bzw. in den Blöcken der schematischen Ablaufpläne und/oder der schematischen Blockschaltbilder angegebenen Funktionen/Aktionen schaffen.
- Der computerlesbare Programmcode kann ebenfalls in einem computerlesbaren Medium gespeichert sein, das einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten anweisen kann, in einer bestimmten Weise zu funktionieren, sodass die im computerlesbaren Medium gespeicherten Anweisungen ein Erzeugnis schaffen, das die Anweisungen aufweist, die die in einem Block bzw. in den Blöcken der schematischen Ablaufpläne und/oder der schematischen Blockschaltbilder angegebene Funktion/Aktion realisieren.
- Der computerlesbare Programmcode kann auch in einen Computer, in andere programmierbare Datenverarbeitungsvorrichtungen oder in andere Einheiten geladen werden, um zu bewirken, dass auf dem Computer, auf anderen programmierbaren Vorrichtungen oder anderen Einheiten eine Reihe von Arbeitsschritten ausgeführt wird, um einen mittels Computer realisierten Prozess zu schaffen, sodass der Programmcode, der auf dem Computer oder auf anderen programmierbaren Vorrichtungen ausgeführt wird, Prozesse zur Realisierung der in einem Block bzw. in den Blöcken des Ablaufplans und/oder des Blockschaltbildes angegebenen Funktionen/Aktionen bereitstellt.
- Die schematischen Ablaufpläne und/oder schematischen Blockschaltbilder in den Figuren veranschaulichen die Architektur, Funktionalität und Funktionsweise möglicher Realisierungsformen von Vorrichtungen, Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block in den schematischen Ablaufplänen und/oder schematischen Blockschaltbildern ein Modul, ein Segment oder einen Teil des Codes darstellen, der eine oder mehrere ausführbare Anweisungen des Programmcodes zur Realisierung der angegebenen Logikfunktion bzw. Logikfunktionen aufweist.
- Außerdem ist anzumerken, dass bei einigen alternativen Realisierungsformen die im Block angegebenen Funktionen außerhalb der in den Figuren angegebenen Reihenfolge ausgeführt werden können. Beispielsweise können zwei hintereinander aufgeführte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können je nach der damit verbundenen Funktionalität manchmal in umgekehrter Reihenfolge ausgeführt werden. Es können andere Schritte und Verfahren entworfen werden, die in Funktion, Logik oder Auswirkung einem oder mehreren in den veranschaulichten Figuren dargestellten Blöcken oder Teilen davon gleichen.
- Obwohl im Ablaufplan und/oder in den Blockschaltbildern verschiedene Pfeil- und Linienarten verwendet sein können, versteht es sich, dass diese den Schutzbereich der entsprechenden Ausführungsformen nicht einschränken. Vielmehr können manche Pfeile und andere Konnektoren verwendet werden, um nur den logischen Fluss der dargestellten Ausführungsform anzugeben. Beispielsweise kann ein Pfeil eine Warte- oder Überwachungszeit mit nicht festgelegter Dauer zwischen nummerierten Schritten der dargestellten Ausführungsform angeben. Außerdem ist anzumerken, dass jeder Block der Blockschaltbilder und/oder der Ablaufpläne sowie Kombinationen von Blöcken in den Blockschaltbildern und/oder in den Ablaufplänen mithilfe von zweckgebundenen Systemen auf der Grundlage von Hardware oder mithilfe von Kombinationen aus spezieller zweckgebundener Hardware und computerlesbarem Programmcode realisiert sein kann, um die angegebenen Funktionen bzw. Aktionen durchzuführen.
-
1 ist ein schematisches Blockschaltbild, das eine Ausführungsform eines Systems100 zum Verlagern von Ressourcenpartitionen veranschaulicht. Bei der abgebildeten Ausführungsform weist das System100 ein Computersystem105 mit einem Hypervisor110 auf und stellt eine erste und zweite logische Partition (LPAR)115a , b bereit, wobei jede LPAR115a , b eine Betriebssysteminstanz (BS-Instanz)120a , b (z. B. eine erste BS-Instanz120a und eine zweite BS-Instanz120b ) aufweist. Die erste BS-Instanz120a weist eine erste und zweite Workloadpartition (WPAR)125a , b auf, und die zweite BS-Instanz120b weist eine dritte WPAR125c auf. Das Computersystem105 steht über ein Netzwerk130 mit einem oder mehreren Clients135a ,135b ,135c in Verbindung. - Das Computersystem
105 kann einen Prozessor und einen Arbeitsspeicher aufweisen, der computerlesbare Programme speichert. Der Arbeitsspeicher kann durch flüchtigen Speicher wie zum Beispiel durch dynamischen Direktzugriffsspeicher („DRAM”), statischen Direktzugriffsspeicher („SRAM”) oder anderen geeigneten flüchtigen Speicher verkörpert sein. Der Prozessor führt die computerlesbaren Programme aus, wie Fachleuten allgemein bekannt ist. Die computerlesbaren Programme können im Speicher des Computersystems105 in vergegenständlichter Form gespeichert sein. Zum Speicher können ein Halbleiterlaufwerk („SSD”), ein Festplattenlaufwerk („HDD”), eine optische Speichereinheit, eine holografische Speichereinheit, eine mikromechanische Speichereinheit oder eine andere nichtflüchtige Datenspeichereinheit gehören. Das Computersystem105 kann als Server-Computer, Desktop-Computer, Notebook-Computer, Tablet-Computer, mobile Einheit oder als andere Einheit verkörpert sein. Bei einer Ausführungsform ist das Computersystem105 ein Computersystem von International Business Machines (IBM®) wie zum Beispiel, ohne darauf beschränkt zu sein, ein Computer des Typs System z® oder Power Systems®. In dem hier bei bestimmten Ausführungsformen verwendeten Sinn bezeichnet der Begriff „Bereich” ein Computersystem105 . - Ein Hypervisor
100 (der auch als „Virtual Machine Monitor” bezeichnet wird) weist Software und/oder Hardware auf, um eine oder mehrere virtuelle Maschinen bereitzustellen und/oder aufzunehmen. Wie nach dem Stand der Technik bekannt abstrahiert eine virtuelle Maschine Eigenschaften der eigentlichen Hardware des Computersystems105 und stellt eine virtuelle Darstellung der Datenverarbeitungsressourcen zur Verwendung durch einen virtuellen Gast wie zum Beispiel ein Betriebssystem bereit. Der virtuelle Gast wird auf der virtuellen Maschine ausgeführt, als würde er direkt auf dem Computersystem105 ausgeführt werden, mit der Ausnahme, dass der Hypervisor110 die Ausführung des virtuellen Gastes verwaltet und den Zugriff auf verschiedene Systemressourcen beschränken kann. Der Hypervisor110 kann jedem virtuellen Gast einen Teil der Ressourcen des unterlagerten Computersystems105 bereitstellen, zum Beispiel eine Teilmenge des Anweisungssatzes der unterlagerten Maschine des Computersystems105 , der Kernaufrufe, Hardwareregister und dergleichen. Bei einer Ausführungsform ist der Hypervisor110 ein LPAR-Hypervisor von IBM®, ein Processor-Resource-/System-Manager-Hypervisor (PR/SMTM) von IBM®, ein POWER HypervisorTM von IBM® oder ein anderer geeigneter Hypervisor110 , der LPAR unterstützen kann. - Bei der abgebildeten Ausführungsform stellt der Hypervisor
110 eine erste LPAR115a und eine zweite LPAR115b bereit und/oder nimmt diese auf. Obwohl in1 zwei LPAR115a , b abgebildet sind, kann das Computersystem105 in eine beliebige geeignete Anzahl von LPAR115a , b partitioniert sein. Eine LPAR115a , b ist eine Art virtueller Maschine, die eine logische Teilmenge der Hardwareressourcen des Computersystems105 als virtuellen separaten Computer aufweist. Der Hypervisor110 kann das Computersystem105 wie abgebildet in mehrere LPAR115a , b partitionieren, wobei jede LPAR115a , b eine separate BS-Instanz120a , b aufnimmt. Jede LPAR stellt eine eigene Betriebsumgebung bereit, in der eine BS-Instanz120a , b ausgeführt werden kann. - Des Weiteren kann jede LPAR
115a , b von einem gemeinsamen Arbeitsspeicher Chip aus auf unterschiedliche Adressbereiche zugreifen. Ein Prozessor kann einer bestimmten LPAR115a , b fest zugeordnet sein oder von den LPAR115a , b gemeinsam genutzt werden. Bei einer Ausführungsform sind die erste und zweite LPAR115a , b logische Partitionen, die von IBM®-Software und/oder -Hardware auf IBM®-Computern und -Servern wie zum Beispiel und ohne darauf beschränkt zu sein, von Computern und Servern des Typs System z® oder Power Systems® und/oder Betriebssystemen wie zum Beispiel z/OS, z/VM, z/VSE, z/TPF, AIX, Linux und i5/OS bereitgestellt werden. In dem hier bei bestimmten Ausführungsformen verwendeten Sinn bezeichnet der Begriff „Ressourcenpartition” eine LPAR115a , b. In dem hier bei bestimmten Ausführungsformen verwendeten Sinn bezeichnet der Begriff „Bereich” eine LPAR115a , b. - Jede BS-Instanz
120a , b kann ein ausführendes Betriebssystem mit einem Betriebssystemkern aufweisen, der davon ausgeht, dass er direkt mit Hardware des Computersystems105 Daten austauscht. Beispielsweise kann eine erste BS-Instanz120a eine Seitentabelle verwalten, in der eine Zuordnung zwischen physischen Adressen im Arbeitsspeicher und logischen Adressen gespeichert ist, die ein Prozessor von einem Client wie zum Beispiel einer Anwendung empfängt. Die erste BS-Instanz120a kann davon ausgehen, dass die physischen Adressen in ihrer Seitentabelle tatsächliche physische Adressen im Arbeitsspeicher sind und dass die erste BS-Instanz120a tatsächlich mit dem Prozessor und anderen Hardwaredatenstrukturen des Computersystems105 Daten austauscht. Anstelle des Prozessors kann jedoch die erste BS-Instanz120a tatsächlich mit dem Hypervisor110 Daten austauschen, und die vermuteten physischen Adressen werden von dem Hypervisor110 als virtuelle Adressen behandelt, der eine andere Zuordnungsschicht durchführt, um jede vermutete physische Adresse einer tatsächlichen physischen Adresse des Arbeitsspeichers des Computersystems zuzuordnen. Bei einer Ausführungsform weisen die erste und zweite BS-Instanz120a , b jeweils Instanzen des Betriebssystems Advanced Interactive eXecutive („AIX”) von IBM® auf. - Wie abgebildet werden eine erste WPAR
125a und eine zweite WPAR125b in der ersten BS-Instanz ausgeführt, und eine dritte WPAR125c wird in der zweiten BS-Instanz120b ausgeführt, obwohl jede BS-Instanz120a , b eine beliebige Anzahl von WPAR125a bis c ausführen kann. Während die LPAR115a , b die virtuelle Partitionierung des Computersystems105 ermöglichen, ermöglichen die WPAR125a bis c die Partitionierung einer Betriebssysteminstanz120a . Eine WPAR125a ist eine Softwarepartition, die durch eine BS-Instanz120a erzeugt wurde und auf dieser untergebracht ist und Ressourcen der BS-Instanz120a gemeinsam mit anderen WPAR125b nutzt. Jede WPAR125a bis c ist eine virtualisierte Betriebssystemumgebung, die innerhalb einer einzelnen BS-Instanz120a , b erzeugt wurde. Jede WPAR125a bis c stellt die Trennung von Anwendungsumgebungen und die Virtualisierung auf der Betriebssystemebene bereit. Bei einer Ausführungsform sind die WPAR125a bis c Softwarepartitionen einer AIX-Betriebssysteminstanz. In dem hierbei bestimmten Ausführungsformen verwendeten Sinn bezeichnet der Begriff „Ressourcenpartition” eine WPAR125a bis c. - Das Netzwerk
130 kann ein Datenaustauschnetzwerk wie zum Beispiel das Internet, ein Local Area Network („LAN”), ein Wireless-LAN („WLAN”), mehrere LAN, die Daten über das Internet austauschen, oder ein beliebiges anderes ähnliches Datenaustauschnetzwerk aufweisen. Jeder Client135a ,135b ,135c tauscht über das Netzwerk130 Daten mit dem Computersystem105 aus. Beispielsweise kann ein Client135a auf eine bestimmte Anwendung zugreifen, die in der ersten WPAR125a der ersten BS-Instanz120a ausgeführt wird. Bei einer Ausführungsform kann ein Client135a als Desktop-Computer, tragbarer Computer, Server, Großrechner, Handcomputereinheit, Touchscreen-Einheit, PDA (Personal Digital Assistant), Tablet-Computer, E-Book-Lesegerät, Mobiltelefon, Smartphone und dergleichen verkörpert sein. -
2 ist ein schematisches Blockschaltbild, das eine weitere Ausführungsform eines Systems200 zum Verlagern von Ressourcenpartitionen veranschaulicht. In2 ist speziell eine Ausführungsform des Computersystems105 , des Hypervisors110 und einer ersten und zweiten LPAR115a , b mit jeweils einer BS-Instanz (erste und zweite BS-Instanz120a , b in der ersten bzw. zweiten LPAR115a , b) abgebildet, die im Wesentlichen den in gleicher Weise benannten Elementen in1 ähneln können. Ebenso weist die erste BS-Instanz120a eine erste und zweite WPAR125a , b auf, und die zweite BS-Instanz120b weist eine dritte WPAR125c auf, die ebenfalls im Wesentlichen den in gleicher Weise benannten Elementen in1 ähneln können. - Bei bestimmten Ausführungsformen können die WPAR
125a bis c untereinander Daten austauschen. Beispielsweise kann die erste WPAR125a Daten mit der zweiten WPAR125b austauschen (z. B. kann eine auf der ersten WPAR125a ausgeführte Anwendung Daten mit einer Anwendung austauschen, die auf der zweiten WPAR125b ausgeführt wird). Bei einer Ausführungsform können die WPAR125a , b, die in einer gemeinsamen LPAR115a ausgeführt werden, über eine Loopback-Schnittstelle Daten untereinander austauschen, wodurch eine bessere Optimierung der Netzwerkbandbreite erreicht wird. Eine Loopback-Schnittstelle ist eine in Software realisierte virtuelle Netzwerkschnittstelle, die einen effizienteren Datenaustausch ermöglicht, da die Daten nicht über einen physischen Datenaustauschadapter übertragen werden müssen. An die Loopback-Schnittstelle gesendeter Datenverkehr wird oftmals auf derselben Schnittstelle empfangen. Daher ist der Datenaustausch zwischen der ersten WPAR125a und der zweiten WPAR125b normalerweise effizienter als der Datenaustausch zwischen der ersten oder zweiten WPAR125a , b und der dritten WPAR125c . - Ebenso können bei bestimmten Ausführungsformen die LPAR
115a , b untereinander Daten austauschen. Beispielsweise kann die erste LPAR115a Daten mit der zweiten LPAR115b austauschen (z. B. können auf der ersten LPAR115a ausgeführte Anwendungen Daten mit Anwendungen austauschen, die auf der zweiten LPAR121b ausgeführt werden). Bei einer Ausführungsform können die LPAR115a , b, die auf einem gemeinsamen Computersystem105 ausgeführt werden, über eine gemeinsame Ethernet-Schnittstelle Daten untereinander austauschen, wodurch eine bessere Optimierung der Netzwerkbandbreite erreicht wird. Virtuelles Ethernet ermöglicht den LPAR115a , b in einem gemeinsamen Computersystem105 , miteinander Daten auszutauschen, ohne über physische Hardware kommunizieren zu müssen. Daher ist der Datenaustausch zwischen der ersten LPAR115a und der zweiten LPAR115b normalerweise effizienter als der Datenaustausch zwischen der ersten oder zweiten LPAR115a , b und einer LPAR auf einem anderen Computersystem105 . - Viele herkömmliche Hypervisor-Einheiten
110 und Computersysteme105 (zur Virtualisierung konfiguriert) unterstützen die Migration virtueller Maschinen bzw. virtueller Gäste, bei der eine virtuelle Maschine oder ein virtueller Gast von einem Ort an einen anderen bewegt wird (z. B. auf ein anderes Computersystem oder auf eine andere Partition auf einem Computersystem). In ähnlicher Weise ist der Hypervisor110 und/oder das Computersystem105 bei einer Ausführungsform so konfiguriert, dass er bzw. es Live Partition Mobility („LPM”) durchführt, wozu das Verlagern und Ausführen der LPAR115a und/oder der WPAR125a gehört (z. B. Kopieren einer bestimmten WPAR125a und deren Ausführungsauslastung von einem ersten Ort an einen zweiten Ort). - Bei einer Ausführungsform verlagert der Hypervisor
110 eine LPAR115a von einem ersten Computersystem105 auf ein zweites Computersystem105 . Bei einer Ausführungsform verlagert der Hypervisor110 eine WPAR125a von einer ersten LPAR115a auf eine zweite LPAR115b . Als Reaktion auf verschiedene Auslöser (Trigger) kann der Hypervisor110 eine richtlinienbasierte Verlagerung einer WPAR125a oder einer LPAR115a realisieren. Beispielsweise kann der Hypervisor110 eine bestimmte LPAR115a verlagern, wenn der Speicherplatz des Host-Computersystems105 der betreffenden LPAR115a unter einen Mindestschwellenwert absinkt. Der Hypervisor110 kann eine bestimmte WPAR125a verlagern, wenn die Ressourcennutzung der bereitstellenden/verwaltenden LPAR115a vorgegebene Kriterien überschreitet. Andere geeignete Auslöser und Verlagerungskriterien sind für Fachleute klar. Des Weiteren kann ein Benutzer bei einigen Ausführungsformen in bestimmten Fällen auch die Verlagerung von WPAR/LPAR veranlassen, zum Beispiel vor einer Hardware- oder Softwareaufrüstung oder vor einer geplanten Abschaltung. - Herkömmliche Hypervisor-Einheiten
110 berücksichtigen jedoch beim Verlagern einer LPAR115a oder einer WPAR125a den Datenaustausch zwischen WPAR untereinander oder LPAR untereinander nicht. Daher kann der Hypervisor110 ein Verlagerungsereignis auslösen, um eine bestimmte LPAR115a oder eine bestimmte WPAR125a zu verlagern, die in großem Umfang Daten mit anderen LPAR115b oder WPAR125b austauscht. Wenn die betreffende LPAR115A auf ein anderes Computersystem105 verlagert wird oder wenn die betreffende WPAR125a auf eine andere LPAR115b verlagert wird, kann die Effizienz des Datenaustauschs abnehmen, wenn die verlagerte WPAR125a oder LPAR115a einen erheblichen Datenaustausch mit den WPAR125b oder LPAR115b ohne den Vorteil der Loopback-Schnittstelle oder von virtuellem Ethernet aufrechterhält. Wenn die erste WPAR125a einen erheblichen Datenaustausch mit der zweiten WPAR125b durchführt und die erste WPAR125a von der ersten LPAR115a auf die zweite LPAR115b verlagert wird, nutzt der nachfolgende Datenaustausch zwischen der ersten und zweiten WPAR125a , b eine größere Bandbreite. - Daher weist das System
200 eine Partitionsverlagerungsvorrichtung205 auf, die ein Verlagerungsereignis (das z. B. durch den Hypervisor110 ausgelöst wurde) zur Verlagerung einer Ressourcenpartition (z. B. einer LPAR115a , b oder einer WPAR125a bis c) erkennt. Die Partitionsverlagerungsvorrichtung205 kann ermitteln, ob beliebige andere Ressourcenpartitionen, die sich im selben Bereich befinden (z. B. eine LPAR115a , wenn eine WPAR125a verlagert wird, und ein Computersystem105 , wenn eine LPAR115a verlagert wird), in ausreichender Weise zusammengehören. Die Partitionsverlagerungsvorrichtung205 kann dann beliebige zusammengehörige Ressourcenpartitionen verlagern oder deren Verlagerung veranlassen, sodass der Datenaustausch zwischen der verlagerten Ressourcenpartitionen und beliebigen, im Wesentlichen zusammengehörigen Ressourcenpartitionen von der Loopback-Schnittstelle oder vom virtuellen Ethernet profitieren kann. - Bei der abgebildeten Ausführungsform befindet sich die Partitionsverlagerungsvorrichtung
205 in der ersten BS-Instanz120a und/oder wird dort ausgeführt. Bei bestimmten Ausführungsformen befindet sich die Partitionsverlagerungsvorrichtung205 in einer BS-Instanz120a , b und/oder wird dort ausgeführt, die der Ressourcenpartition zugehörig ist, bei der es sich um das Ziel des Verlagerungsereignisses handelt (z. B. die Ressourcenpartition, die gegenwärtig durch den Hypervisor110 verlagert wird). Bei einigen Ausführungsformen befindet sich eine Kopie und/oder ein Teil der Partitionsverlagerungsvorrichtung205 in mehreren BS-Instanzen und/oder wird dort ausgeführt (z. B. kann die erste BS-Instanz120a eine erste Kopie einer Partitionsverlagerungsvorrichtung205 für ihre LPAR115a und WPAR125a , b aufweisen, und die zweite BS-Instanz120b kann eine zweite Kopie einer Partitionsverlagerungsvorrichtung205 für ihre LPAR115b und WPAR125c aufweisen). - Während sich die abgebildete Partitionsverlagerungsvorrichtung
205 in der ersten BS-Instanz120a befindet, kann die Partitionsverlagerungsvorrichtung205 in Verbindung mit der ersten BS-Instanz120a stehen (z. B. mit einem Betriebssystemkern der ersten BS-Instanz120a ), unabhängig davon, ob die Partitionsverlagerungsvorrichtung205 in die erste BS-Instanz120a integriert (z. B. ist die Partitionsverlagerungsvorrichtung205 Teil des Betriebssystemcodes) oder als von der ersten BS-Instanz120a separate Anwendung, beispielsweise als Zusatzmodul (Plug-in) zur ersten BS-Instanz120a , verkörpert ist. Bei anderen Ausführungsformen befindet sich mindestens ein Teil der Partitionsverlagerungsvorrichtung205 im Hypervisor110 und/oder wird dort ausgeführt und kann in den Hypervisor110 integriert sein. Bei einer Ausführungsform ist die Partitionsverlagerungsvorrichtung205 ein Plug-in zum Hypervisor110 . - In den
3A bis C ist eine beispielhafte Ausführungsform der Verlagerung von Ressourcenpartitionen abgebildet. Unter Bezugnahme auf3A kann der Hypervisor110 ein Verlagerungsereignis auslösen, um eine erste WPAR125a von einer ersten LPAR115a auf eine zweite LPAR115b zu verlagern. Die Partitionsverlagerungsvorrichtung205 erkennt das Verlagerungsereignis und ermittelt, ob beliebige andere WPAR125b in ausreichender Weise zur ersten WPAR125a gehören. Unter Bezugnahme auf3B stellt die Partitionsverlagerungsvorrichtung205 fest, dass die zweite WPAR125b in ausreichender Weise zur ersten WPAR125a gehört, und die Partitionsverlagerungsvorrichtung205 stellt fest, dass die zweite WPAR125b ebenfalls auf die zweite LPAR115b verlagert werden sollte. Die Partitionsverlagerungsvorrichtung205 verlagert dann die zweite WPAR125b und/oder veranlasst deren Verlagerung (z. B. indem sie dem Hypervisor110 signalisiert, die Verlagerung auszuführen). Zu beachten ist, dass bei einer Ausführungsform wie nachfolgend beschrieben eine WPAR125a , die Gegenstand des Verlagerungsereignisses ist, zuerst verlagert werden kann und anschließend andere zugehörige WPAR125b nacheinander verlagert werden können. Bei einer weiteren Ausführungsform kann die WPAR125a , die Gegenstand des Verlagerungsereignisses ist, zusammen mit beliebigen zugehörigen WPAR125b verlagert werden. In3C ist die zweite WPAR125b abgebildet, die auf die zweite LPAR115b verlagert wurde, wo die zweite WPAR125b und die erste WPAR125a mit der Loopback-Schnittstelle Daten effizient austauschen können. - In den
4A bis C ist eine beispielhafte weitere Ausführungsform der Verlagerung von Ressourcenpartitionen abgebildet. Unter Bezugnahme auf4A kann der Hypervisor110 ein Verlagerungsereignis auslösen, um eine erste LPAR115a von einem ersten Computersystem105a auf ein zweites Computersystem105b zu verlagern. Die Partitionsverlagerungsvorrichtung205 erkennt das Verlagerungsereignis und ermittelt, ob beliebige andere LPAR115b , c in ausreichender Weise zur ersten LPAR115a gehören. Unter Bezugnahme auf4B stellt die Partitionsverlagerungsvorrichtung205 fest, dass die zweite LPAR115b in ausreichender Weise zur ersten LPAR115a gehört, und die Partitionsverlagerungsvorrichtung205 stellt fest, dass die zweite LPAR115b ebenfalls auf das zweite Computersystem105b verlagert werden sollte. Die Partitionsverlagerungsvorrichtung205 verlagert dann die zweite LPAR115b und/oder veranlasst deren Verlagerung (z. B. indem sie dem Hypervisor110 signalisiert, die Verlagerung auszuführen). Zu beachten ist, dass bei einer Ausführungsform wie oben beschrieben eine LPAR115a , die der Gegenstand des Verlagerungsereignisses ist, zuerst verlagert werden kann und anschließend andere zugehörige LPAR115b nacheinander verlagert werden können. Bei einer weiteren Ausführungsform kann die LPAR115a , die Gegenstand des Verlagerungsereignisses ist, zusammen mit beliebigen zugehörigen LPAR115b verlagert werden. In4C ist die zweite LPAR115b abgebildet, die auf das zweite Computersystem105b verlagert wurde, wo die zweite LPAR115b und die erste LPAR115a über ein virtuelles Ethernet auf dem zweiten Computersystem105b Daten effizient austauschen können. -
5 ist ein schematisches Blockschaltbild, das eine Ausführungsform einer Partitionsverlagerungsvorrichtung205 veranschaulicht. Die Partitionsverlagerungsvorrichtung205 kann eine Ausführungsform der Partitionsverlagerungsvorrichtung205 aus den3A bis C sein und weist ein oder mehrere Erkennungsmodule505 , ein Ermittlungsmodul510 und ein Verlagerungsmodul515 auf. - Das Erkennungsmodul
505 erkennt bei einer Ausführungsform ein Verlagerungsereignis zur Verlagerung einer Ressourcenpartition. Das Verlagerungsereignis wird bei einer Ausführungsform durch einen Hypervisor110 ausgelöst, der die Ressourcenpartition verwaltet. Insbesondere kann das Erkennungsmodul505 ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich erkennen. Der erste Bereich weist eine oder mehrere zweite Ressourcenpartitionen auf (Ressourcenpartitionen, die nicht das Ziel des Verlagerungsereignisses sind). - Die erste Ressourcenpartition und die zweite Ressourcenpartition sind bei einer Ausführungsform jeweils eigene Betriebsumgebungen. Bei einer Ausführungsform sind die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eine WPAR
125a , b, und der erste Bereich und der zweite Bereich sind jeweils eine LPAR115a , b. Bei einer weiteren Ausführungsform sind die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eine LPAR115a , b, und der erste Bereich und der zweite Bereich sind jeweils ein eigenes Computersystem105a , b. Bei anderen Ausführungsformen sind die erste und zweite Ressourcenpartition virtuelle Maschinen, virtuelle Gäste oder andere geeignete virtuelle Datenverarbeitungsumgebungen. - Das Ermittlungsmodul
510 ermittelt bei einer Ausführungsform, ob eine beliebige der zweiten Ressourcenpartitionen (z. B. die zweite LPAR115b oder die zweite WPAR125b ) in ausreichender Weise zur ersten Ressourcenpartition (z. B. die erste LPAR115a oder die erste WPAR125a ) gehören. Bei einer Ausführungsform beruht die Zugehörigkeit auf einem Umfang des Datenaustauschverkehrs zwischen der ersten Ressourcenpartition und einer oder mehreren der zweiten Ressourcenpartitionen. Bei einer weiteren Ausführungsform weist das Ermittlungsmodul510 , das feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, das Ermittlungsmodul510 auf, das feststellt, dass der Datenaustauschverkehr zwischen der ersten Ressourcenpartition und der zweiten Ressourcenpartition einem vorgegebenen Schwellenwert entspricht. - Bei einer Ausführungsform weist der Datenaustauschverkehr eine Bandbreitennutzung auf.
- Das Ermittlungsmodul
510 kann wiederholt zweite Ressourcenpartitionen durchlaufen und feststellen, ob jede ausgewählte zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Deshalb stellt bei einer Ausführungsform das Ermittlungsmodul510 fest, dass eine zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, und kann anschließend ebenfalls feststellen, dass eine dritte Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. - Bei einer Ausführungsform ermittelt das Ermittlungsmodul
510 , ob jede der zweiten Ressourcenpartitionen in der Reihenfolge der Zugehörigkeit in ausreichender Weise zur ersten Ressourcenpartition gehört. Wie nachfolgend beschrieben können die zweiten Ressourcenpartitionen in der Reihenfolge der Zugehörigkeit sortiert werden. Das Ermittlungsmodul510 kann ermitteln, ob die zweiten Ressourcenpartitionen in dieser sortierten Reihenfolge in ausreichender Weise zugehörig sind. Da Speicherplatz und/oder andere Ressourcen im zweiten Bereich ein Problem sein können, kann daher das Ermittlungsmodul510 zuerst die Zugehörigkeit der am meisten zugehörigen Ressourcenpartitionen ermitteln, um das Verlagern der am meisten zugehörigen Ressourcenpartitionen in den verfügbaren Speicherplatz im zweiten Bereich zu erleichtern. - Bei einer Ausführungsform können Ressourcenpartitionen als zugehörig bezeichnet werden. Beispielsweise kann ein Benutzer die zweite Ressourcenpartition als zur ersten Ressourcenpartition zugehörig bezeichnen. Infolgedessen würde das Ermittlungsmodul
510 , wenn die erste Ressourcenpartition das Ziel des Verlagerungsereignisses ist, feststellen, dass die zweite Ressourcenpartition wegen der vorgegebenen Beziehung in ausreichender Weise zur ersten Ressourcenpartition gehört. - Das Verlagerungsmodul
515 verlagert bei einer Ausführungsform als Reaktion darauf, dass das Ermittlungsmodul510 ermittelt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, eine zweite Ressourcenpartition (z. B. die zweite LPAR115b oder die zweite WPAR125b ) mit der ersten Ressourcenpartition in den zweiten Bereich (z. B. in die zweite LPAR115b oder auf das zweite Computersystem105b ). Das Verlagerungsmodul515 kann die zweite Ressourcenpartition direkt oder indirekt verlagern. Bei einer Ausführungsform verlagert das Verlagerungsmodul515 eine zweite Ressourcenpartition, indem es dem Hypervisor110 signalisiert, die Verlagerung auszulösen. Bei einer weiteren Ausführungsform führt das Verlagerungsmodul515 die Verlagerung durch. - Des Weiteren schließt bei einer Ausführungsform das Verlagern der zweiten Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich ein, dass die zweite Ressourcenpartition (und alle anderen zweiten Ressourcenpartitionen, die als in ausreichender Weise zugehörig ermittelt wurden) zusammen mit und/oder im Wesentlichen zur selben Zeit wie die erste Ressourcenpartition verlagert wird. Des Weiteren schließt bei einer Ausführungsform das Verlagern der zweiten Ressourcenpartition in den zweiten Bereich mit der ersten Ressourcenpartition ein, dass die zweite Ressourcenpartition (und alle anderen zweiten Ressourcenpartitionen, die als in ausreichender Weise zugehörig ermittelt wurden), die bei der ersten Ressourcenpartition bleiben soll (z. B. im zweiten Bereich), nicht notwendigerweise im Wesentlichen zur selben Zeit oder zusammen mit der ersten Ressourcenpartition verlagert wird.
- Bei einer Ausführungsform verlagert das Verlagerungsmodul
515 beliebige zweite Ressourcenpartitionen, bei denen das Ermittlungsmodul510 feststellt, dass sie in ausreichender Weise zur ersten Ressourcenpartition gehören, und das Ermittlungsmodul510 führt keine weiteren Ermittlungen im Zusammenhang mit der ersten Ressourcenpartition durch. Bei bestimmten Ausführungsformen verlagert das Verlagerungsmodul515 eine einzelne zweite Ressourcenpartition, von der das Ermittlungsmodul510 festgestellt hat, dass sie in ausreichender Weise zur ersten Ressourcenpartition gehört. Dann kann das Ermittlungsmodul510 erneut die Zugehörigkeit zwischen den verbleibenden zweiten Ressourcenpartitionen und der ersten Ressourcenpartition bewerten (da sich zugewiesene Zugehörigkeitseinstufungen mit der Verlagerung ändern können), wie nachfolgend beschrieben wird. - Bei einer Ausführungsform verlagert das Verlagerungsmodul
515 die zweite Ressourcenpartition, wenn sie in ausreichender Weise zugehörig ist und wenn im zweiten Bereich ausreichende Ressourcen vorhanden sind. Daher kann das Verlagerungsmodul515 als Reaktion auf sowohl die Feststellung, dass der zweite Bereich ausreichende Ressourcen aufweist, als auch darauf, dass das Ermittlungsmodul510 feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich verlagern. - Wie oben beschrieben weist der erste Bereich bei einer Ausführungsform zwei oder mehrere zweite Ressourcenpartitionen auf (Ressourcenpartitionen, die bei dem Verlagerungsereignis nicht das Ziel bilden), und das Verlagerungsmodul
515 verlagert Ressourcenpartitionen der zwei oder mehreren zweiten Ressourcenpartitionen, die in ausreichender Weise zur ersten Ressourcenpartition gehören. Daher kann das Verlagerungsmodul515 mehrere zweite Ressourcenpartitionen verlagern. - Wie oben beschrieben kann das Verlagerungsmodul
515 die Verlagerung von Ressourcenpartitionen fortsetzen, die in ausreichender Weise zugehörig sind, wenn der zweite Bereich ausreichende Ressourcen wie zum Beispiel Speicherplatz aufweist. Unter Fortsetzung des oben aufgeführten Beispiels kann das Verlagerungsmodul515 die dritte Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich verlagern, wenn das Verlagerungsmodul515 die zweite Ressourcenpartition verlagert hat und das Ermittlungsmodul510 festgestellt hat, dass eine dritte Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Bei einer Ausführungsform setzt das Verlagerungsmodul515 das Verlagern von Ressourcenpartitionen fort, die in ausreichender Weise zugehörig sind, solange im zweiten Bereich Ressourcen zur Verfügung stehen. Daher verlagert das Verlagerungsmodul515 bei einer Ausführungsform die dritte Ressourcenpartition als Reaktion sowohl darauf, dass das Ermittlungsmodul510 feststellt, dass die dritte Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, als auch auf die Feststellung, dass der zweite Bereich ausreichende Ressourcen zur Verlagerung der dritten Ressourcenpartition aufweist. -
6 ist ein detailliertes schematisches Blockschaltbild, das eine weitere Ausführungsform einer Partitionsverlagerungsvorrichtung205 veranschaulicht. Bei der abgebildeten Ausführungsform weist die Partitionsverlagerungsvorrichtung205 das Erkennungsmodul505 , das Ermittlungsmodul510 und das Verlagerungsmodul515 auf, die im Wesentlichen den im Zusammenhang mit5 beschriebenen Modulen ähneln. Bei der abgebildeten Ausführungsform weist die Partitionsverlagerungsvorrichtung205 ferner eines oder mehrere eines Ressourcenermittlungsmoduls605 und ein Sortiermodul610 auf, und das Erkennungsmodul510 weist eines oder mehrere eines Überwachungsmoduls615 , ein Zuweisungsmodul620 , ein Bandbreitennutzungsmodul625 , ein Einstufungswert-Ermittlungsmodul630 und ein Differenzfaktormodul635 auf, die nachfolgend beschrieben werden. - Das Ressourcenermittlungsmodul
605 ermittelt bei einer Ausführungsform, ob der zweite Bereich ausreichende Ressourcen zur Verlagerung von zweiten Ressourcenpartitionen aufweist. Bei einer Ausführungsform kann das Verlagerungsmodul515 als Reaktion darauf, dass das Ressourcenermittlungsmodul605 feststellt, dass der zweite Bereich ausreichende Ressourcen aufweist, und darauf, dass das Ermittlungsmodul510 feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich verlagern. - Das Sortiermodul
610 sortiert bei einer Ausführungsform zwei oder mehrere zweite Ressourcenpartitionen in der Reihenfolge der Zugehörigkeit zwischen der ersten Ressourcenpartition und den zwei oder mehreren zweiten Ressourcenpartitionen. Bei einer Ausführungsform beruht die Zugehörigkeit auf einem Umfang des Datenaustauschverkehrs zwischen der ersten Ressourcenpartition und jeder der zwei oder mehreren zweiten Ressourcenpartitionen. Bei einer Ausführungsform sortiert das Sortiermodul610 wie nachfolgend beschrieben die zweiten Ressourcenpartitionen in der Reihenfolge des zugewiesenen Einstufungswertes (auf der Grundlage des Datenaustauschverkehrs zwischen jeder zweiten Ressourcenpartition und der ersten Ressourcenpartition). Bei einer Ausführungsform ermittelt das Ermittlungsmodul510 , ob die zwei oder mehreren zweiten Ressourcenpartitionen in der Reihenfolge der Zugehörigkeit in ausreichender Weise zur ersten Ressourcenpartition gehören. Bei einer Ausführungsform speichert und sortiert das Sortiermodul610 die zweiten Ressourcenpartitionen (z. B. die Kennungen für oder die Zeiger auf die zweiten Ressourcenpartitionen) in einer Datenstruktur wie beispielsweise in einer Matrix oder in einer Liste. - Das Überwachungsmodul
615 überwacht den Datenaustauschverkehr zwischen der ersten Ressourcenpartition und den zweiten Ressourcenpartitionen, die sich im selben Bereich wie die erste Ressourcenpartition befinden. - Beispielsweise kann das Überwachungsmodul
615 die Menge der zwischen der ersten Ressourcenpartition und den zweiten Ressourcenpartitionen übertragenen Daten überwachen (z. B. kann das Überwachungsmodul615 die Menge von Daten registrieren, die in einer ersten WPAR125a von einer zweiten WPAR125b empfangen wurden, und kann die Menge von Daten registrieren, die von der ersten WPAR125a an eine zweite WPAR125b gesendet wurden). - Das Zuweisungsmodul
620 weist bei einer Ausführungsform jeder der zweiten Ressourcenpartitionen einen Einstufungswert zu. Bei einer Ausführungsform weist das Zuweisungsmodul620 jeder zweiten Ressourcenpartition auf der Grundlage des Datenaustauschverkehrs mit jeder anderen Ressourcenpartition in einem gemeinsamen Bereich einen Einstufungswert zu. Beispielsweise kann das Zuweisungsmodul620 einer ersten WPAR125a auf der Grundlage ihres Datenaustauschs mit einer zweiten und einer dritten WPAR125b , c im ersten Bereich115a eine bestimmte Einstufung zuweisen. - Bei einer Ausführungsform verwaltet das Zuweisungsmodul
620 Einstufungswerte von Ressourcenpartitionen in einer Datenaustauschverkehr-Tabelle. Als Beispiel wird angenommen, dass der erste Bereich fünf Ressourcenpartitionen X, A, B, C und D in einem ersten Bereich (LPAR115a , b in einem Computersystem105a oder WPAR125a , b in einer LPAR115a ) aufweist. Eine beispielhafte Ausführungsform der Datenaustauschverkehr-Tabelle kann wie folgt aussehen:X A B C D X - 8 10 0 0 A 8 - 3 8 8 B 10 1 - 1 2 C 0 8 1 - 3 D 0 8 2 3 - - Tabelle 1
- Das Zuweisungsmodul
620 kann der Ressourcenpartition mit dem höchsten Datenaustauschaufkommen eine höchste Einstufung (10 im angegebenen Beispiel) und den anderen Ressourcenpartitionen relative Einstufungen zuweisen. - Das Bandbreitennutzungsmodul
625 berechnet bei einer Ausführungsform als Teil des Ermittelns, ob beliebige Ressourcenpartitionen in ausreichender Weise zu einer ersten Ressourcenpartition (einer Ressourcenpartition, die Gegenstand eines Verlagerungsereignisses ist) gehören, eine effektive Bandbreitennutzung (Effective Bandwidth Utilization, EBU) für jede zweite Ressourcenpartition (Ressourcenpartitionen in dem Bereich, die nicht Ziel eines Verlagerungsereignisses sind). Die EBU enthält bei einer Ausführungsform eine Summe von Einstufungswerten für eine bestimmte zweite Ressourcenpartition. Insbesondere unter der Annahme, dass die Matrix „parlist” neben der ersten Ressourcenpartition jede Ressourcenpartition enthält, kann die EBU anhand der folgenden Formel berechnet werden: EBU parlist[i] = ((Datenaustauschverkehr zwischen parlist[i] und parlist[i + 1]) + (Datenaustauschverkehr zwischen parlist[i] und parlist[i + 2])). - Bei einer Ausführungsform berechnet das Bandbreitennutzungsmodul
625 die EBU für zweite Ressourcenpartitionen in sortierter Reihenfolge (wobei bei der Ressourcenpartition mit der höchsten Einstufung begonnen wird). Unter Fortsetzung des oben aufgeführten Beispiels kann das Bandbreitennutzungsmodul625 die EBU für die Ressourcenpartitionen A bis D wie folgt berechnen: EBU von B = 4(1 + 1 + 2), EBU von A = 19(3 + 8 + 8), EBU von C = 12(8 + 1 + 3) und EBU von D = 13(8 + 2 + 3). - Das Einstufungswert-Ermittlungsmodul
630 ermittelt bei einer Ausführungsform, ob Einstufungswerte für jede zweite Ressourcenpartition größer als die EBU für diese Ressourcenpartitionen sind. Insbesondere ermittelt das Einstufungswert-Ermittlungsmodul630 , ob ein Einstufungswert für Datenaustauschverkehr zwischen einer bestimmten zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die EBU für die betreffende zweite Ressourcenpartition ist. Unter Fortsetzung des oben aufgeführten Beispiels würde das Einstufungswert-Ermittlungsmodul630 bei der Ressourcenpartition B feststellen, dass der Einstufungswert10 für den Datenaustausch zwischen X und B größer als die EBU von B ist, die 4 beträgt. Das Einstufungswert-Ermittlungsmodul630 kann die Matrix von Ressourcenpartitionen wiederholt in sortierter Reihenfolge durchlaufen und zu jeder Ressourcenpartition eine Ermittlung vornehmen. - Bei Ressourcenpartitionen, deren Einstufungswerte größer als ihre EBU sind, berechnet das Differenzfaktormodul
635 bei einer Ausführungsform als Reaktion darauf, dass das Einstufungswert-Ermittlungsmodul630 feststellt, dass der Einstufungswert für den Datenaustauschverkehr zwischen der betreffenden zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die EBU ist, einen Differenzfaktor für eine bestimmte zweite Ressourcenpartition. Bei einer Ausführungsform ist der Differenzfaktor ein angenommener Umfang eines verringerten Datenaustauschverkehrs, wenn eine bestimmte zweite Ressourcenpartition mit der ersten Ressourcenpartition verlagert wird. - Unter Fortsetzung des oben aufgeführten Beispiels würde das Differenzfaktormodul
635 zunächst feststellen, dass, wenn B nicht mit X verlagert wird, der effektive Datenaustauschverkehr zwischen X und den zweiten Ressourcenpartitionen18 beträgt, wobei es sich hierbei um die Summe von Einstufungswerten der zweiten Ressourcenpartitionen (10 + 8 + 0 + 0) handelt. Das Differenzfaktormodul635 kann als Nächstes den effektiven Netzwerkverkehr ermitteln, wenn B zusammen mit X verlagert wird, indem es die Einstufungswerte der anderen Ressourcenpartitionen (A, C und D) zu der EBU von B addiert, d. h. 8 + 4 = 12. Das Differenzfaktormodul635 kann anschließend den Differenzfaktor berechnen, indem es die Differenz zwischen dem effektiven Datenaustauschverkehr bei Nichtverlagerung von B und dem effektiven Datenaustauschverkehr bei Verlagerung durch den effektiven Datenaustauschverkehr bei Nichtverlagerung von B dividiert, d. h. 6/18 = 33%. - Bei einer Ausführungsform empfängt das Differenzfaktormodul
635 einen vorgegebenen Differenzfaktor zum Vergleich mit dem gemäß der obigen Beschreibung berechneten Differenzfaktor und/oder nimmt auf den vorgegebenen Differenzfaktor Bezug. Der vorgegebene Differenzfaktor kann vom Benutzer vorgegeben sein. Bei einer Ausführungsform ermittelt das Differenzfaktormodul635 , ob der berechnete Differenzfaktor größer als der vorgegebene Differenzfaktor ist. Bei einer Ausführungsform stellt das Ermittlungsmodul510 als Reaktion darauf, dass das Differenzfaktormodul635 feststellt, dass der Differenzfaktor größer als der vorgegebene Differenzfaktor ist, fest, dass eine bestimmte zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. - Beispielsweise kann das Differenzfaktormodul
635 dem Ermittlungsmodul510 signalisieren, dass der Differenzfaktor für eine bestimmte zweite Ressourcenpartition größer als der vorgegebene Differenzfaktor ist, und das Ermittlungsmodul510 kann als Reaktion auf das Empfangen des Signals feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Partition gehört. Unter Fortsetzung des Beispiels ist unter der Annahme, dass der vorgegebene Differenzfaktor 30% beträgt, der Differenzfaktor von B mit 33% größer als 30%. Infolgedessen kann das Verlagerungsmodul515 auch B verlagern. -
7 ist ein schematischer Ablaufplan, der eine Ausführungsform eines Verfahrens700 zum Verlagern von Ressourcenpartitionen veranschaulicht. Das Verfahren700 beginnt, und das Erkennungsmodul505 erkennt705 ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich. Der erste Bereich weist eine zweite Ressourcenpartition auf. Die erste Ressourcenpartition und die zweite Ressourcenpartition sind jeweils eigene Betriebsumgebungen. Das Ermittlungsmodul510 stellt fest710 , dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört. Das Verlagerungsmodul510 verlagert715 die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich, und das Verfahren700 endet. -
8 ist ein schematischer Ablaufplan, der eine weitere Ausführungsform eines Verfahrens800 zum Verlagern von Ressourcenpartitionen veranschaulicht. Das Verfahren800 beginnt, und das Überwachungsmodul615 überwacht805 den Datenaustauschverkehr zwischen einer ersten Ressourcenpartition und zwei oder mehreren zweiten Ressourcenpartitionen, die in einem ersten Bereich betrieben werden. Das Zuweisungsmodul620 weist für jede der zwei oder mehreren zweiten Ressourcenpartitionen Einstufungswerte zu und verwaltet810 diese. Das Zuweisungsmodul620 kann jeder zweiten Ressourcenpartition auf der Grundlage von Datenaustauschverkehr mit jeder anderen Ressourcenpartition einen Einstufungswert zuweisen. Wenn das Erkennungsmodul505 kein Verlagerungsereignis zur Verlagerung der ersten Ressourcenpartition aus dem ersten Bereich in einem zweiten Bereich erkennt815 , überwacht805 das Überwachungsmodul615 weiterhin den Datenaustauschverkehr. - Alternativ sortiert
820 das Sortiermodul610 die zwei oder mehreren zweiten Ressourcenpartitionen in der Reihenfolge des Datenaustauschverkehrs zwischen der ersten Ressourcenpartition und den zwei oder mehreren Ressourcenpartitionen ein (z. B. werden zweite Ressourcenpartitionen mit höheren Einstufungswerten in der Reihenfolge vor zweiten Ressourcenpartitionen mit niedrigeren Einstufungswert einsortiert), wenn das Erkennungsmodul505 ein Verlagerungsereignis erkennt815 . Das Bandbreitennutzungsmodul625 wählt825 dann eine bestimmte zweite Ressourcenpartition aus (z. B. die nächste zweite Ressourcenpartition in der Reihenfolge) und berechnet830 eine effektive Bandbreitennutzung für die ausgewählte zweite Ressourcenpartition. Bei einer Ausführungsform ist die effektive Bandbreitennutzung eine Summe von Einstufungswerten für die zweite Ressourcenpartition. Wenn das Bandbreitennutzungsmodul625 feststellt835 , dass eine weitere Ressourcenpartition (z. B. die nächste Ressourcenpartition in der Reihenfolge) vorhanden ist, wählt825 das Bandbreitenmodul625 die nächste Ressourcenpartition aus. - Alternativ wählt
840 das Einstufungswert-Ermittlungsmodul630 eine bestimmte Ressourcenpartition aus (z. B. die erste Ressourcenpartition in der Reihenfolge der Einstufungen), und das Einstufungswert-Ermittlungsmodul630 ermittelt845 , ob ein Einstufungswert für Datenaustauschverkehr zwischen der ausgewählten zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die effektive Bandbreitennutzung (EBU) für die ausgewählte zweite Ressourcenpartition ist, wenn das Bandbreitennutzungsmodul625 feststellt835 , dass keine weiteren zweiten Ressourcenpartitionen vorhanden sind. Wenn das Einstufungswert-Ermittlungsmodul630 feststellt845 , dass der Einstufungswert zwischen der ausgewählten zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die effektive Bandbreitennutzung ist, berechnet das Differenzfaktormodul635 für die ausgewählte zweite Ressourcenpartition einen Differenzfaktor850 . Bei einer Ausführungsform weist der Differenzfaktor einen angenommenen Umfang eines verringerten Datenaustauschverkehrs auf, wenn die ausgewählte zweite Ressourcenpartition mit der ersten Ressourcenpartition verlagert wird. - Als Nächstes verlagert
860 (kennzeichnet zur Verlagerung) das Verlagerungsmodul515 die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich, wenn das Ermittlungsmodul510 feststellt855 , dass der Differenzfaktor größer als ein vorgegebener Differenzfaktor ist. Das Einstufungswert-Ermittlungsmodul630 ermittelt865 dann, ob weitere zweite Ressourcenpartitionen vorhanden sind. Wenn das Einstufungswert-Ermittlungsmodul630 feststellt865 , dass eine weitere zweite Ressourcenpartition vorhanden ist, wählt840 das Einstufungswert-Ermittlungsmodul630 eine betreffende Ressourcenpartition aus (z. B. die nächste Ressourcenpartition in der Reihenfolge der Einstufungen). Alternativ endet das Verfahren800 , wenn das Einstufungswert-Ermittlungsmodul630 feststellt865 , dass keine weiteren zweiten Ressourcenpartitionen vorhanden sind. - Unter Rückkehr zur Entscheidung in Schritt
845 ermittelt865 das Einstufungswert-Ermittlungsmodul630 , ob weitere zweite Ressourcenpartitionen vorhanden sind (z. B. geht das Einstufungswert-Ermittlungsmodul630 weiter, um die nächste zweite Ressourcenpartition auszuwerten), wenn das Einstufungswert-Ermittlungsmodul630 feststellt845 , dass der Einstufungswert zwischen der ausgewählten zweiten Ressourcenpartition und der ersten Ressourcenpartition kleiner als die effektive Bandbreitennutzung ist. Unter Rückkehr zur Entscheidung in Schritt855 ermittelt865 das Einstufungswert-Ermittlungsmodul630 , ob weitere zweite Ressourcenpartitionen vorhanden sind (z. B. geht das Einstufungswert-Ermittlungsmodul630 weiter, um die nächste zweite Ressourcenpartition auszuwerten), wenn das Ermittlungsmodul510 feststellt855 , dass der Differenzfaktor kleiner als der vorgegebene Differenzfaktor ist. -
9A ist ein schematischer Ablaufplan, der eine Ausführungsform eines Verfahrens900 zum Bereitstellen einer Partitionsverlagerungsvorrichtung205 veranschaulicht. Obwohl es sich versteht, dass die Verfahrenssoftware, die die Partitionsverlagerungsvorrichtung205 verkörpert, durch direktes Laden von einem Speichermedium wie beispielsweise einer CD DVD usw. in Client-, Server- oder Proxy-Computern bereitgestellt werden kann, kann die Verfahrenssoftware auch automatisch oder halbautomatisch in einem Computersystem bereitgestellt werden, indem die Prozesssoftware an einen zentralen Server oder an eine Gruppe zentraler Server gesendet wird. Die Prozesssoftware wird dann in die Client-Computer heruntergeladen, die die Prozesssoftware ausführen. Alternativ wird die Prozesssoftware per eMail direkt an das Client-System gesendet. Die Prozesssoftware wird dann entweder in ein Verzeichnis herausgelöst oder mithilfe einer Schaltfläche in der eMail in ein Verzeichnis geladen, in dem ein Programm ausgeführt wird, das die Prozesssoftware in ein Verzeichnis herauslöst. Eine weitere Alternative besteht darin, die Prozesssoftware direkt in ein Verzeichnis auf der Festplatte des Client-Computers zu senden. Bei Vorhandensein von Proxy-Servern wählt der Prozess den Code des Proxy-Servers, ermittelt, auf welchen Computern der Code der Proxy-Server abgelegt werden soll, überträgt den Code des Proxy-Servers und installiert danach den Code des Proxy-Servers auf dem Proxy-Computer. Die Prozesssoftware kann zum Proxy-Server übertragen und danach auf dem Proxy-Server gespeichert werden. - Das Verfahren
900 zur Bereitstellung der Prozesssoftware beginnt, und es wird eine Ermittlung902 durchgeführt, ob beliebige Programme vorhanden sind, die sich auf einem Server oder auf Servern befinden, wenn die Prozesssoftware ausgeführt wird. Wenn dies der Fall ist, werden die Server, die die ausführbaren Elemente enthalten, unter Bezugnahme auf9B erkannt936 . Die Prozesssoftware für den oder die Server wird über FTP oder ein anderes Protokoll oder durch Kopieren unter Verwendung eines Systems zur gemeinsamen Dateinutzung direkt in den Speicher der Server übertragen938 . Die Prozesssoftware wird dann auf den Servern installiert940 . - Als Nächstes wird unter erneuter Bezugnahme auf
9A eine Ermittlung904 dahingehend durchgeführt, ob die Prozesssoftware dadurch bereitzustellen ist, dass Benutzer Zugriff auf die Prozesssoftware auf einem Server oder auf den Servern haben. Wenn die Benutzer auf die auf Servern befindliche Prozesssoftware zugreifen müssen, werden die Serveradressen erkannt906 , auf denen die Prozesssoftware gespeichert wird. Es wird eine Ermittlung908 durchgeführt, ob ein Proxy-Server einzurichten ist, auf dem die Prozesssoftware gespeichert werden soll. Ein Proxy-Server ist ein Server, der sich zwischen einer Client-Anwendung wie zum Beispiel ein Web-Browser und einem realen Server befindet. Er fängt alle an den realen Server gerichteten Anforderungen ab, um festzustellen, ob er selbst die Anforderungen erfüllen kann. Wenn nicht, leitet er die Anforderung an den realen Server weiter. - Die beiden Hauptvorteile eines Proxy-Servers bestehen in einer Leistungsverbesserung und in der Filterung von Anforderungen. Wenn ein Proxy-Server benötigt wird, wird der Proxy-Server installiert
910 . Die Prozesssoftware wird entweder über ein Protokoll wie zum Beispiel FTP an die Server gesendet912 , oder sie wird über die gemeinsame Dateinutzung direkt von den Quelldateien auf die Serverdateien kopiert. Eine weitere Ausführungsform würde darin bestehen, eine Transaktion an die Server zu senden, die die Prozesssoftware enthielten, die Server die Transaktion verarbeiten zu lassen und dann die Prozesssoftware zu empfangen und auf das Dateisystem der Server zu kopieren. Sobald die Prozesssoftware auf den Servern gespeichert ist, greifen914 die Benutzer über ihre Client-Computer auf die Prozesssoftware auf den Servern zu und kopieren sie auf die Dateisysteme ihrer Client-Computer. Eine weitere Ausführungsform besteht darin, die Server automatisch die Prozesssoftware auf jeden Client kopieren zu lassen und dann auf jedem Client-Computer das Installationsprogramm für die Prozesssoftware auszuführen. Der Benutzer führt das Programm aus, das die Prozesssoftware auf seinem Client-Computer installiert916 , und danach endet das Verfahren900 . - In Schritt
918 wird eine Ermittlung durchgeführt, ob die Prozesssoftware bereitgestellt werden soll, indem die Prozesssoftware per eMail an Benutzer gesendet wird. Die Gruppe von Benutzern, bei der die Prozesssoftware bereitgestellt wird, wird zusammen mit den Adressen der Client-Computer der Benutzer erkannt920 . Die Prozesssoftware wird per eMail an jeden Client-Computer der Benutzer gesendet. Die Benutzer empfangen dann die eMail924 und lösen926 anschließend die Prozesssoftware aus der eMail in ein Verzeichnis auf ihren Client-Computern heraus. Der Benutzer führt das Programm aus, das die Prozesssoftware auf seinem Client-Computer installiert916 , und danach endet das Verfahren900 . - Schließlich wird eine Ermittlung
928 dahingehend durchgeführt, ob die Prozesssoftware direkt an Verzeichnisse der Benutzer auf ihren Client-Computern gesendet wird. Wenn ja, werden die Verzeichnisse der Benutzer erkannt930 . Die Prozesssoftware wird direkt auf das Verzeichnis auf dem Client Computer des Benutzers übertragen932 . Dies kann auf mehreren Wegen geschehen, beispielsweise und ohne darauf beschränkt zu sein, durch gemeinsame Nutzung von Dateisystemverzeichnissen und anschließendes Kopieren vom Dateisystem des Absenders auf das Dateisystem des Empfängers oder alternativ durch Nutzung eines Übertragungsprotokolls wie zum Beispiel File Transfer Protocol (FTP). Zur Vorbereitung auf das Installieren der Prozesssoftware greifen934 die Benutzer auf die Dateisysteme ihrer Clients zu. Der Benutzer führt das Programm aus, das die Prozesssoftware auf seinem Client-Computer installiert916 und danach endet das Verfahren900 . - Die Ausführungsformen können in anderen speziellen Formen in die Praxis umgesetzt werden. Die beschriebenen Ausführungsformen sind in dieser Hinsicht lediglich als beschreibend und nicht als einschränkend zu verstehen. Der Schutzbereich der Erfindung wird daher durch die beigefügten Ansprüche und nicht durch die vorstehende Beschreibung angegeben. Alle Änderungen, die sich aus der Bedeutung und dem Umfang der Gleichwertigkeit der Ansprüche ergeben, sind als in ihren Schutzbereich fallend anzusehen.
- Es soll hier noch ein weiteres Verfahren erwähnt werden. Gemäß diesem Verfahren kann das Zur-Verfügung-stellen einer Partitionsverlagerungsvorrichtung auf einem Datenverarbeitungssystem bereitgestellt werden. Dadurch kann die Partitionsverlagerungsvorrichtung in der Lage sein zum: Erkennen eines Verlagerungsereignisses zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich, wobei der erste Bereich eine zweite Ressourcenpartition aufweist und die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eigene Betriebsumgebungen aufweisen; Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehören kann; und Verlagern der zweiten Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich als Reaktion auf das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört.
Claims (15)
- Verfahren, aufweisend: Erkennen eines Verlagerungsereignisses zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich, wobei der erste Bereich eine zweite Ressourcenpartition aufweist und die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eigene Betriebsumgebungen aufweisen; Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört; und Verlagern der zweiten Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich als Reaktion auf das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört.
- Verfahren nach Anspruch 1, bei dem die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eine Workloadpartition („WPAR”) aufweist, und bei dem der erste Bereich und der zweite Bereich jeweils eine logische Partition („LPAR”) aufweist.
- Verfahren nach Anspruch 1, bei dem die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eine logische Partition („LPAR”) aufweist, und bei dem der erste Bereich und der zweite Bereich jeweils ein Computersystem aufweist.
- Verfahren nach Anspruch 1, bei dem das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, ferner ein Feststellen aufweist, dass ein Datenaustauschverkehr zwischen der ersten Ressourcenpartition und der zweiten Ressourcenpartition einem vorgegebenen Schwellenwert entspricht.
- Verfahren nach Anspruch 1, das ferner ein Feststellen aufweist, dass der zweite Bereich ausreichende Ressourcen zur Verlagerung der zweiten Ressourcenpartition aufweist, wobei das Verlagern der zweiten Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich als Reaktion auf ein Feststellen stattfindet, dass der zweite Bereich ausreichende Ressourcen aufweist, und auf ein Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört.
- Verfahren nach Anspruch 5, ferner aufweisend: Feststellen, dass eine dritte Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört; Feststellen, dass der zweite Bereich ausreichende Ressourcen zur Verlagerung der dritten Ressourcenpartition aufweist; und Verlagern der dritten Ressourcenpartition mit der ersten Ressourcenpartition und der zweiten Ressourcenpartition in den zweiten Bereich als Reaktion auf das Feststellen, dass die dritte Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört und dass der zweite Bereich ausreichende Ressourcen zur Verlagerung der dritten Ressourcenpartition aufweist.
- Verfahren nach Anspruch 1, bei dem der erste Bereich zwei oder mehrere zweite Ressourcenpartitionen aufweist und das Verfahren ferner ein Sortieren der zwei oder mehreren zweiten Ressourcenpartitionen in der Reihenfolge eines Ausmaßes der Zugehörigkeit zwischen der ersten Ressourcenpartition und den zwei oder mehreren zweiten Ressourcenpartitionen aufweist, und/oder bei dem das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, ferner aufweist: Überwachen des Datenaustauschverkehrs zwischen der ersten Ressourcenpartition und den zwei oder mehreren zweiten Ressourcenpartitionen im ersten Bereich; und Zuweisen einer Vielzahl von Einstufungswerten zu jeder der zwei oder mehreren zweiten Ressourcenpartitionen, wobei jeder zweiten Ressourcenpartition auf der Grundlage des Datenaustauschverkehrs mit jeder anderen Ressourcenpartition ein Einstufungswert zugewiesen wird, und/oder bei dem das Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, ferner aufweist: Berechnen einer effektiven Bandbreitennutzung für jede zweite Ressourcenpartition, wobei die effektive Bandbreitennutzung eine Summe von Einstufungswerten für jede zweite Ressourcenpartition aufweist; Feststellen, dass ein Einstufungswert für Datenaustauschverkehr zwischen einer bestimmten zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die effektive Bandbreitennutzung für die betreffende zweite Ressourcenpartition ist; und Berechnen eines Differenzfaktors für die betreffende zweite Ressourcenpartition als Reaktion auf ein Feststellen, dass der Einstufungswert für Datenaustauschverkehr zwischen der betreffenden zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die effektive Bandbreitennutzung für die betreffende zweite Ressourcenpartition ist, wobei der Differenzfaktor einen angenommenen Umfang eines verringerten Datenaustauschverkehrs aufweist, wenn die betreffende zweite Ressourcenpartition mit der ersten Ressourcenpartition verlagert wird; und Feststellen, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, als Reaktion auf das Feststellen, dass der Differenzfaktor größer als ein vorgegebener Differenzfaktor ist.
- Verfahren nach Anspruch 7, das ferner ein Feststellen umfasst, ob die zwei oder mehreren zweiten Ressourcenpartitionen in ausreichender Weise zur ersten Ressourcenpartition in der Reihenfolge der Zugehörigkeit zwischen der ersten Ressourcenpartition und jeder der zwei oder mehreren zweiten Ressourcenpartitionen gehört.
- Verfahren nach Anspruch 8, das ferner ein Verlagern von Ressourcenpartitionen der zwei oder mehreren zweiten Ressourcenpartitionen aufweist, die in ausreichender Weise zur ersten Ressourcenpartition gehören.
- Verfahren nach Anspruch 9, bei dem die Zugehörigkeit auf einem Umfang des Datenaustauschverkehrs zwischen der ersten Ressourcenpartition und jeder der zwei oder mehreren zweiten Ressourcenpartitionen beruht.
- Vorrichtung, aufweisend: ein Erkennungsmodul, das ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich erkennt, wobei der erste Bereich eine zweite Ressourcenpartition aufweist und die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eigene Betriebsumgebungen aufweisen; ein Ermittlungsmodul, das feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört; und ein Verlagerungsmodul, das als Reaktion darauf, dass das Ermittlungsmodul feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich verlagert.
- Vorrichtung nach Anspruch 11, die ferner ein Ressourcenermittlungsmodul aufweist, das feststellt, dass der zweite Bereich ausreichende Ressourcen zur Verlagerung der zweiten Ressourcenpartition aufweist, wobei das Verlagerungsmodul die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich als Reaktion darauf verlagert, dass das Ressourcenermittlungsmodul feststellt, dass der zweite Bereich ausreichende Ressourcen aufweist, und darauf, dass das Ermittlungsmodul feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, und/oder bei dem der erste Bereich zwei oder mehrere zweite Ressourcenpartitionen aufweist und die Vorrichtung ferner ein Sortiermodul aufweist, das die zwei oder mehreren zweiten Ressourcenpartitionen in der Reihenfolge der Zugehörigkeit zwischen der ersten Ressourcenpartition und den zwei oder mehreren zweiten Ressourcenpartitionen sortiert, und/oder wobei das Ermittlungsmodul ferner aufweist: ein Überwachungsmodul, das den Datenaustauschverkehr zwischen der ersten Ressourcenpartition und den zwei oder mehreren zweiten Ressourcenpartitionen überwacht; ein Zuweisungsmodul, das jeder der zwei oder mehreren zweiten Ressourcenpartitionen eine Vielzahl von Einstufungswerten zuweist, wobei jeder zweiten Ressourcenpartition auf der Grundlage des Datenaustauschverkehrs mit jeder anderen Ressourcenpartition ein Einstufungswert zugewiesen wird, ein Bandbreitennutzungsmodul, das eine effektive Bandbreitennutzung für jede zweite Ressourcenpartition berechnet, wobei die effektive Bandbreitennutzung eine Summe von Einstufungswerten für jede zweite Ressourcenpartition aufweist; ein Einstufungswert-Ermittlungsmodul, das feststellt, dass ein Einstufungswert für Datenaustauschverkehr zwischen einer bestimmten zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die effektive Bandbreitennutzung für die betreffende zweite Ressourcenpartition ist; und ein Differenzfaktormodul, das einen Differenzfaktor für die betreffende zweite Ressourcenpartition als Reaktion darauf berechnet, dass das Ermittlungsmodul feststellt, dass der Einstufungswert für Datenaustauschverkehr zwischen der betreffenden zweiten Ressourcenpartition und der ersten Ressourcenpartition größer als die effektive Bandbreitennutzung für die betreffende zweite Ressourcenpartition ist, wobei der Differenzfaktor einen angenommenen Umfang eines verringerten Datenaustauschverkehrs aufweist, wenn die betreffende zweite Ressourcenpartition mit der ersten Ressourcenpartition verlagert wird, wobei das Ermittlungsmodul als Reaktion auf das Feststellen, dass der Differenzfaktor größer als ein vorgegebener Differenzfaktor ist, feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört.
- Vorrichtung nach Anspruch 12, bei der die Zugehörigkeit auf einem Umfang des Datenaustauschverkehrs zwischen der ersten Ressourcenpartition und jeder der zwei oder mehreren zweiten Ressourcenpartitionen beruht.
- System, aufweisend: einen Prozessor; einen mit dem Prozessor in Verbindung stehenden Arbeitsspeicher; einen Betriebssystemkern; eine Partitionsverlagerungsvorrichtung, die im Arbeitsspeicher gespeichert ist und durch den Prozessor ausgeführt wird, wobei die Partitionsverlagerungsvorrichtung mit dem Betriebssystemkern in Verbindung steht und die Partitionsverlagerungsvorrichtung aufweist: ein Erkennungsmodul, das ein Verlagerungsereignis zur Verlagerung einer in einem ersten Bereich betriebenen ersten Ressourcenpartition vom ersten Bereich in einen zweiten Bereich erkennt, wobei der erste Bereich eine zweite Ressourcenpartition aufweist und die erste Ressourcenpartition und die zweite Ressourcenpartition jeweils eigene Betriebsumgebungen aufweisen; ein Ermittlungsmodul, das feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört; und ein Verlagerungsmodul, das als Reaktion darauf, dass das Ermittlungsmodul feststellt, dass die zweite Ressourcenpartition in ausreichender Weise zur ersten Ressourcenpartition gehört, die zweite Ressourcenpartition mit der ersten Ressourcenpartition in den zweiten Bereich verlagert.
- System nach Anspruch 14, das ferner einen Hypervisor aufweist, der das Verlagerungsereignis zur Verlagerung der ersten Ressourcenpartition aus dem ersten Bereich in der zweiten Bereich auslöst.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/345,381 US9195512B2 (en) | 2012-01-06 | 2012-01-06 | Relocating related resource partitions |
US13/345,381 | 2012-01-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102013100054A1 true DE102013100054A1 (de) | 2013-07-11 |
DE102013100054B4 DE102013100054B4 (de) | 2024-03-07 |
Family
ID=47602363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102013100054.1A Active DE102013100054B4 (de) | 2012-01-06 | 2013-01-04 | Verlagern von zusammengehörigen Ressourcenpartitionen |
Country Status (4)
Country | Link |
---|---|
US (2) | US9195512B2 (de) |
CN (1) | CN103279387B (de) |
DE (1) | DE102013100054B4 (de) |
GB (1) | GB2499698B (de) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9218100B2 (en) * | 2010-03-04 | 2015-12-22 | International Business Machines Corporation | Method and system for partitioning asset management plugins |
JP5503678B2 (ja) * | 2012-03-07 | 2014-05-28 | 株式会社Nttドコモ | ホスト提供システム及びホスト提供方法 |
US20140281309A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Transforming a shared virtualized space to an enclosed space |
CN105224886B (zh) * | 2014-06-26 | 2018-12-07 | 中国移动通信集团甘肃有限公司 | 一种移动终端安全隔离方法、装置及移动终端 |
US9992304B2 (en) | 2014-10-13 | 2018-06-05 | At&T Intellectual Property I, L.P. | Relocation of applications to optimize resource utilization |
US12014198B2 (en) | 2021-03-25 | 2024-06-18 | International Business Machines Corporation | Running smaller memory-address width program code in a larger memory-address width address space |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7257811B2 (en) * | 2004-05-11 | 2007-08-14 | International Business Machines Corporation | System, method and program to migrate a virtual machine |
US20060123111A1 (en) * | 2004-12-02 | 2006-06-08 | Frank Dea | Method, system and computer program product for transitioning network traffic between logical partitions in one or more data processing systems |
US8042108B2 (en) | 2006-03-18 | 2011-10-18 | International Business Machines Corporation | Virtual machine migration between servers |
US20100030877A1 (en) | 2007-02-23 | 2010-02-04 | Mitsuru Yanagisawa | Virtual server system and physical server selecting method |
US8191063B2 (en) | 2007-09-30 | 2012-05-29 | Symantex Corporation | Method for migrating a plurality of virtual machines by associating files and state information with a single logical container |
US8146091B2 (en) * | 2008-05-01 | 2012-03-27 | International Business Machines Corporation | Expansion and contraction of logical partitions on virtualized hardware |
US20100229175A1 (en) * | 2009-03-05 | 2010-09-09 | International Business Machines Corporation | Moving Resources In a Computing Environment Having Multiple Logically-Partitioned Computer Systems |
US8140812B2 (en) | 2009-07-01 | 2012-03-20 | International Business Machines Corporation | Method and apparatus for two-phase storage-aware placement of virtual machines |
US8352702B2 (en) * | 2009-12-17 | 2013-01-08 | International Business Machines Corporation | Data processing system memory allocation |
JP5614226B2 (ja) * | 2010-10-15 | 2014-10-29 | 富士通株式会社 | 仮想マシン制御装置、仮想マシン制御プログラムおよび仮想マシン制御方法 |
US20120102190A1 (en) | 2010-10-26 | 2012-04-26 | International Business Machines Corporation | Inter-virtual machine communication |
WO2013095622A1 (en) * | 2011-12-23 | 2013-06-27 | Empire Technology Develpment Llc | Optimization of resource utilization in a collection of devices |
-
2012
- 2012-01-06 US US13/345,381 patent/US9195512B2/en not_active Expired - Fee Related
- 2012-08-08 US US13/570,147 patent/US9213583B2/en not_active Expired - Fee Related
- 2012-12-11 GB GB1222232.9A patent/GB2499698B/en active Active
-
2013
- 2013-01-04 DE DE102013100054.1A patent/DE102013100054B4/de active Active
- 2013-01-04 CN CN201310000933.6A patent/CN103279387B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20130179656A1 (en) | 2013-07-11 |
GB201222232D0 (en) | 2013-01-23 |
CN103279387B (zh) | 2017-03-01 |
US20130179882A1 (en) | 2013-07-11 |
US9213583B2 (en) | 2015-12-15 |
DE102013100054B4 (de) | 2024-03-07 |
GB2499698A (en) | 2013-08-28 |
US9195512B2 (en) | 2015-11-24 |
GB2499698B (en) | 2014-04-02 |
CN103279387A (zh) | 2013-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112012003988B4 (de) | Schützen des Arbeitsspeichers eines virtuellen Gasts | |
DE202020005693U1 (de) | Externe berechtigungsnachweisfreie Stufen für Datenbankintegrationen | |
DE112011100808B4 (de) | System und Verfahren zum Unterstützen der Instanziierung und Migration virtueller Maschinen | |
DE112018003006T5 (de) | Erkennung und entschärfung von angriffen von aussen bei der datenverarbeitung | |
DE102013100054B4 (de) | Verlagern von zusammengehörigen Ressourcenpartitionen | |
DE202020005734U1 (de) | Beschneiden von Indizes zur Verbesserung einer Verarbeitung von Datenbankabfragen | |
DE102013204186B4 (de) | Ermitteln von Prioritäten für zwischengespeicherte Objekte zum Ordnen des Übertragens von Änderungen an zwischengespeicherten Objekten beruhend auf gemessener Netzwerkbandbreite | |
DE112013000656T5 (de) | System und Verfahren zum Verringern der Speichernutzung durch optimales Platzieren von virtuellen Maschinen in einem virtualisierten Rechenzentrum | |
DE202021004036U1 (de) | Data Clean Room | |
DE202012013432U1 (de) | Speichern von Daten auf Speicherknoten | |
DE112020005323B4 (de) | Elastische ausführung von machine-learning-arbeitslasten unter verwendung einer anwendungsbasierten profilierung | |
DE102021130957A1 (de) | Empfehlungen zur stabilität von software-aktualisierungen | |
DE202020005703U1 (de) | Auf verteilten Metadaten basierendes Cluster-Computing | |
DE112020003825T5 (de) | Entsprechung zwischen externen Operationen und Containern sowie Mutationsereignissen | |
DE112019000421T5 (de) | Arbeitslastverwaltung mit datenzugriffserkennung in einem datenverarbeitungscluster | |
DE112017005022T5 (de) | Umladen der Bandverarbeitung auf Objektspeicher | |
DE112020004647T5 (de) | Automatisierte techniken zum erkennen der nutzung von softwareanwendungen in einer datenverarbeitungsumgebung mithilfe von konfigurationsobjekten | |
DE202021004340U1 (de) | Beschränkte Sichten zum Steuern des Zugriffs auf Informationen in einem Datenbanksystem | |
DE202023101653U1 (de) | Organisations- und cloudübergreifende automatisierte Datenpipelines | |
DE102012221261A1 (de) | Verfahren zum Zwischenspeichern und System zum Ausführen des Verfahrens zum Zwischenspeichern zum Betreiben eines mindestens einen Host-Computer aufweisenden Computerserversystems | |
DE112011100825B4 (de) | Zuweisen von Speicher zu chipintegrierten Kohärenz-Domänen | |
DE112019000303B4 (de) | Datenspeichersystem, das die datenverlagerung auf grundlage von zeitlicher nähe von zugriffen durchführt | |
DE112018004415B4 (de) | Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage | |
DE202021004328U1 (de) | Mit Daten-Cloud verbundene Anwendungen | |
DE112018005283T5 (de) | Deduplizierung für dateien in einem cloud-computing-speicher und in datenübertragungswerkzeugen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R082 | Change of representative |
Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE Representative=s name: DILG HAEUSLER SCHINDELMANN PATENTANWALTSGESELL, DE |
|
R082 | Change of representative |
Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE |
|
R082 | Change of representative |
Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE |
|
R082 | Change of representative |
Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE |
|
R082 | Change of representative |
Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE |
|
R084 | Declaration of willingness to licence | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division |