DE102006006250A1 - System und Verfahren für zentralisierte Software-Verwaltung in virtuellen Maschinen - Google Patents
System und Verfahren für zentralisierte Software-Verwaltung in virtuellen Maschinen Download PDFInfo
- Publication number
- DE102006006250A1 DE102006006250A1 DE102006006250A DE102006006250A DE102006006250A1 DE 102006006250 A1 DE102006006250 A1 DE 102006006250A1 DE 102006006250 A DE102006006250 A DE 102006006250A DE 102006006250 A DE102006006250 A DE 102006006250A DE 102006006250 A1 DE102006006250 A1 DE 102006006250A1
- Authority
- DE
- Germany
- Prior art keywords
- application
- virtual
- virtual machine
- virtual machines
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims description 22
- 238000002360 preparation method Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims description 16
- 230000007613 environmental effect Effects 0.000 abstract description 7
- 238000001816 cooling Methods 0.000 abstract description 5
- 238000007726 management method Methods 0.000 description 44
- 230000010365 information processing Effects 0.000 description 21
- 238000012544 monitoring process Methods 0.000 description 10
- 238000010367 cloning Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000027455 binding Effects 0.000 description 4
- 238000009739 binding Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000002955 isolation Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013070 change management Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Virtuelle Maschinen eines virtuellen Datenzentrums erzeugen Laufzeitinstanzen mit einem Softwareimage, Hardwarekonfiguration, Verwaltungskonfiguration und Anwender-/Dienstkonfiguration. Ressourceneinsatz eines virtuellen Datenzentrums wird durch Bezug auf die Verwaltungskonfiguration von Laufzeitinstanzen überwacht, zum Beispiel für Umweltsteuergrößen wie etwa Strom, Kühlen und Ausgleichen oder für Richtlinieneinschränkungen für Anwender, Software oder Hardware. Anwender oder Dienste erzeugen Laufzeitinstanzen von gespeicherten virtuellen Maschinen durch Bezug auf die Anwender-/Dienstkonfiguration, wie etwa Preis oder Priorität. In einem Beispiel einer Ausführungsform umfasst das Softwareimage einer virtuellen Maschine eine Anwendungssystem-Vorbereitungsdatei, die ein nur lesbares Anwendungsimage auffüllt, wie es für mehrere virtuelle Maschinen üblich ist. Für jede virtuelle Maschine eindeutige Informationen in Bezug auf die Anwendung werden in der Anwender-/Dienstkonfiguration der virtuellen Maschine gepflegt, und Versionsinformationen werden in der Verwaltungskonfiguration der virtuellen Maschine gepflegt. Aktualisierungen der Anwendung über jede virtuelle Maschine hinweg werden durch Aktualisierung des nur lesbaren Images durchgeführt oder durch jede seiner Konfigurationsinformationen zu Hardwarekonfiguration, Verwaltungskonfiguration oder Anwender-/Dienstkonfiguration.
Description
- GEBIET DER ERFINDUNG
- Die vorliegende Erfindung bezieht sich allgemein auf das Gebiet von virtuellen Maschinen von Informationsverarbeitungssystemen und insbesondere auf ein System und Verfahren für zentralisierte Software-Verwaltung in virtuellen Maschinen.
- BESCHREIBUNG DES STANDES DER TECHNIK
- Während der Wert und der Gebrauch von Informationen anhaltend wachsen, suchen Einzelpersonen und Unternehmen nach zusätzlichen Wegen, um Informationen zu verarbeiten und zu speichern. Eine den Nutzern zugängliche Wahlmöglichkeit sind Informationsverarbeitungssysteme. Ein Informationsverarbeitungssystem verarbeitet, übersetzt, speichert und/oder kommuniziert im Allgemeinen Informationen oder Daten für geschäftliche, persönliche oder andere Zwecke, wobei es den Nutzern erlaubt, einen Vorteil aus dem Wert der Informationen zu ziehen. Da der Bedarf und die Anforderungen an Technologie und Informationsverarbeitung zwischen verschiedenen Nutzern und Anwendungen variieren, können Informationsverarbeitungssysteme ebenso variieren in Bezug darauf, welche Informationen verarbeitet werden, wie die Informationen verarbeitet werden, wie viel Informationen verarbeitet, gespeichert oder kommuniziert werden, und wie schnell und effizient die Informationen verarbeitet, gespeichert oder kommuniziert werden können. Die Abweichungen zwischen Informationsverarbeitungssystemen erlauben es, dass Informationsverarbeitungssysteme allgemein sind oder konfiguriert für einen bestimmten Nutzer oder einen bestimmten Gebrauch, wie z. B. die Abwicklung von Finanz-Transaktionen, Fluglinien-Reservierungen, Speicherung von Unternehmensdaten oder globale Kommunikation. Darüber hinaus können Informationsverarbeitungssysteme eine Vielfalt von Hardware- und Software-Komponenten beinhalten, die so konfiguriert werden können, dass sie Informationen verarbeiten, speichern und kommunizieren und ein oder mehrere Computersysteme, Datenspeichersysteme und Netzwerksysteme beinhalten können.
- Informationsverarbeitungssysteme verarbeiten typischerweise Informationen mit einer oder mehreren Anwendungen, die auf einen Betriebssystem laufen, das den Betrieb der Hardware-Komponenten koordiniert. Obwohl einzelne (diskrete) Informationsverarbeitungssysteme effektive Werkzeuge zum Verwalten von Information sind, die spezifischen Orten oder Aktivitäten zugeordnet ist, werden die Verarbeitungsmöglichkeiten eines Informationsverarbeitungssystems während inaktiver Zeitdauern oft zuwenig ausgenutzt. Z.B. kann ein Informationsverarbeitungssystem, das einer bestimmten Geschäftsfunktion zugeordnet ist, während längerer Zeiträume ungenutzt sein, damit es verfügbar ist, wenn es gebraucht wird. Während der ungenutzten Zeiträume verbrauchen die physikalischen Verarbeitungskomponenten, wie etwa der Prozessor und Speicherkomponenten, Strom und verlieren an Wert bei begrenzten Mehrwert für das Geschäft. Unternehmen haben die Kosten der ungenutzten Zeiträume allgemein akzeptiert, und dafür die Bequemlichkeit erhalten, wesentliche Informationsverarbeitungssysteme in Betrieb und bereit für wichtige Operationen verfügbar zu haben.
- Eine kürzliche Wendung hin zum Gebrauch der Virtualisierung von Ressourcen hat es Unternehmen erlaubt, über die Bequemlichkeit von einzelnen Informationsverarbeitungssystemen zu verfügen, ohne die Kosten des Pflegens und Betreibens von separaten physikalischen Systemen zu haben. Virtualisieirung von Ressourcen entkoppelt Software-Anwendungen von Hardware-Informations-verarbeitungssystemen, indem die Software-Applikationen in „virtuellen Maschinen- Behältern" angeordnet werden. Eine virtuelle Maschine ist eine Software-Abstraktion der Hardware-Schicht, die die gesamte Funktionalität eines physikalischen Hardware-Systems mit Betriebssystemen und Anwendungen bereitstellt, die genau wie ein physikalisches Inforamtionsverarbeitungssystem installiert werden. Eine konventionelle und virtuelle Maschine kann man sich physikalisch als zwei Dateien vorstellen, ein Software-Image und eine generische Hardware-Konfigurationsdatei, die auf der Extensible Markup Language (XML) basieren kann. Das Software-Image stellt das Festplattenlaufwerk der virtuellen Maschine dar, das typischerweise als „virtuelle Festplatte" bezeichnet wird. Die virtuelle Festplatte enthält typischerweise Betriebs-Installationsdateien, Anwendungsdateien und Anwenderdaten-Dateien. Mehrere virtuelle Maschinen, die in einer vernetzten Server-Umgebung gespeichert sind, werden typischerweise als virtuelles Datenzentrum bezeichnet, so dass eine gewünschte virtuelle Maschine nach Bedarf zum Betrieb auf den Ressourcen des Servers verfügbar ist. Virtuelle Maschinen sind nicht an spezifische Ressourcen-Instanzen gebunden, so dass Ressourcen bereitgestellt und wie angefordert dynamisch in ihrer Größe an Anwendungen angepasst werden können, und umgekehrt können Anwendungen zwischen Ressourcen wandern, wenn sich Anforderungen für den Gebrauch der Ressourcen verändern. Hardware-Konfigurationsdateien von virtuellen Maschinen umfassen Größenbemessungen und Details der momentanen Bindungen (current-binding detail), um die Verschiebung von virtuellen Maschinen über die Hardware hinweg und umgekehrt zu unterstützen.
- Typischerweise verwaltet ein virtuelles Datenzentrum virtuelle Maschinen mit Datenzentrums-übergreifenden Datenmodellen, wie etwa dem Microsoft System Definition Model (SDM) und EDS Data Center Markup, die die gemeinsame Nutzung einer Konfiguration über Software-Lebenszyklen, Verwaltungssysteme und Virtualisierungssysteme durch Gebrauch von statischen und nicht verteilten Daten erlauben. Allerdings bleibt Software innerhalb eines virtuellen Datenzentrums eng an Verwaltungs- und Steuersysteme gekoppelt, was wiederum Management-Systeme eng an Hardware und Anwender koppelt. Mit anderen Worten ist die Flexibilität von virtuellen Maschinen, die auf verschiedenen Ressourcen ablaufen sollen, durch die Verwaltung der virtuellen Maschinen und das virtuelle Datenzentrum eingeschränkt, wie etwa das Management von Aktualisierungen, Leistungen, Orten, Prioritäten und Privilegien. Als ein Beispiel wird die Softwareverwaltung in einer Datenzentrums- Umgebung mit jedem anwendbaren System verteilt, das individuell verwaltet werden muss. Dies macht Softwareverwaltungsarbeiten wie etwa Patch-Verwaltung mühsam und zeitaufwendig. Um Softwareinstallation, Patch-Verwaltung und Sicherheitsaktualisierung durchzuführen, muss jedes System in einem Datenzentrum auf den neuesten Stand gebracht werden, und Sicherheits- Patches müssen einzeln installiert werden. Ein typisches Datenzentrum hat tausende von virtuellen Maschinen, so dass Ressourcen nicht in der Lage sind, alle virtuellen Maschinen gleichzeitig zu aktualisieren, was in einer heterogenen Umgebung resultiert, in der einige Systeme aktualisiert sind und einige Systeme alte Versionen verwenden. Das Verfolgen von System- Nachrüstungen, um sicherzustellen, dass alle Systeme aktualisiert sind, stellt ein beträchtiges logistisches Problem dar, das oft mehrmals im Jahr wiederholt wird, wenn neue Patches freigegeben werden. Software innerhalb eines virtuellen Datenzentrums bleibt auch eng an Anwender und Anwender-ähnliche Dienste gebunden, wie etwa durch Begrenzen des Gebrauchs von Software durch Software-Anwendungen, die Anwendern angepasst sind, um sicherzustellen, dass Software und Hardware-Anwender-spezifischen Präferenzen genügen, wie etwa Sicherheit, Isolierung, Verwendung und Abrechnung/Rückerstattung.
- ZUSAMMENFASSUNG DER ERFINDUNG
- Deshalb ist eine Notwendigkeit für ein System und Verfahren entstanden, das virtuelle Maschinen verwendet, um Software von Anwendern und Diensten zu entkoppeln.
- Eine weitere Notwendigkeit besteht für ein System und Verfahren, das virtuelle Maschinen verwendet, um Software von Verwaltungs- und Steuersystemen zu entkoppeln.
- Eine weitere Notwendigkeit besteht für ein System und Verfahren, das Software-Verwaltung von Software von virtuellen Maschinen über einem virtuellen Datenzentrum vereinfacht.
- In Übereinstimmung mit der vorliegenden Erfindung werden ein System und Verfahren bereitgestellt, welche die mit früheren Verfahren und Systemen zum Verwalten von virtuellen Maschinen in einem virtuellen Datenzentrum verbundenen Nachteile und Probleme wesentlich reduzieren. Die Laufzeitinstanzen (rum time instances) von virtuellen Maschinen werden aus Verwaltungs-Konfigurationsinformation und Anwender-/Dienste- Konfigurationsinformation erzeugt, die an die virtuelle Maschine gekoppelt sind. Deshalb werden virtuelle Maschinen effektiv verwendet, um Verwaltungs- und Steuersysteme von virtuellen Datenzentren von Anwendern und Anwender-ähnlichen Diensten zu entkoppeln.
- Insbesondere umfassen virtuelle Maschinen eines virtuellen Datenzentrums ein Software-Image und Server Hardware-Konfiguration, die auf Server Hardware-Ressourcen laufen, wie sie durch eine Ressourcen-Virtualisierungsengine zugewiesen sind. Darüber hinaus umfasst jede virtuelle Maschine eine separate Verwaltungskonfiguration mit Vewaltungspräferenzen und eine Anwender-/Dienste-Konfiguration mit Anwenderpräferenzen. Die Verwaltungspräferenzen umfassen Information für Verwaltungs-bezogene Funktionen, z.B. Umweltsteuerungen wie etwa Strom, Kühlung und Verteilung, Richtlinien, Minima, Maxima oder Einschränkungen für Anwender, Software oder Hardware. Eine Überwachungs-Engine zum Ressourceneinsatz überwacht aktivierte virtuelle Maschinen in einer geschlossenen Schleife mit einer globalen Richtlinien-Engine, um die Zuweisung von virtuellen Maschinen über Verarbeitungskomponenten von Serverressourcen gemäß den Verwaltungspräferenzen anzupassen. Anwender-/Dienstepräferenzen umfassen Informationen zu Priorität und Kosten einer virtuellen Maschine, wie auch andere Parameter wie etwa Sicherungs-Präferenzen und -Häufigkeit oder Sicherheitsebenen. Die Anwender-/Dienste- und Verwaltungs- Konfigurationen machen virtuelle Maschinen selbständig über generische Hardware, Anwender und Systemverwaltung hinweg zur dynamischen Zuweisung zu Verarbeitungskomponenten, um die gewünschten Verwaltungs- und Dienste-Ziele zu erreichen.
- In einer Ausführungsform pflegen die Verwaltungs- und Anwender-/Dienste-Konfigurationen Informationen, um die Erzeugung von virtuellen Maschineninstanzen aus einem Image zu ermöglichen, das von einer Anwendung nur gelesen werden kann. Z.B. verfolgt die Verwaltungskonfiguration den Anwendungstyp und die Anwender-/Dienste-Konfiguration verfolgt Information ausschließlich für das System. Anstelle einer separaten virtuellen Festplatte für jede virtuelle Maschine wird eine gemeinsame virtuelle Festplatte für mehrere virtuelle Maschinen verwendet, die dasselbe Betriebssystem und Anwendungen gemeinsam nutzen, wobei eine separate Festplatte für Dateien verwendet wird, die ausschließlich individuellen virtuellen Maschinen gehören, wie etwa Anwenderdaten- Dateien. Eine Instanz einer bestimmten virtuellen Maschine läuft von einer Kopie der gemeinsamen virtuellen Festplatte, die mit einzelnen Informationen von der einzelnen virtuellen Festplatte gefüllt ist. Informationen, die durch die Instanz erzeugt werden, werden auf die einzelne virtuelle Festplatte geschrieben, wobei die gemeinsame virtuelle Festplatte nur zum Lesen gehalten wird, um die Integrität von anderen virtuellen Maschine zu schützen, die die gemeinsame virtuelle Festplatte nutzen. Der Zugang zum Ändern der gemeinsamen virtuellen Festplatte ist beschränkt, etwa auf einem Patch-Verwalter, der über eine Schreiberlaubnis verfügt, um Patches oder Sicherheitsaktualisierungen für Anwendungen auf der gemeinsamen virtuellen Festplatte zu installieren. Z.B. wird ein Patch über mehrere virtuelle Maschinen installiert durch Beenden aller laufenden Instanzen, die eine gemeinsame virtuelle Festplatte verwenden, Anwenden des Patches auf die gemeinsame virtuelle Festplatte und Neustarten der mehreren virtuellen Maschinen aus der aktualisierten gemeinsamen virtuellen Festplatte, so dass Instanzen mit dem Patch laufen.
- Die vorliegende Erfindung bietet eine Anzahl von wichtigen technischen Vorteilen. Ein Beispiel eines wichtigen technischen Vorteils ist es, dass virtuelle Maschinen zum Entkoppeln von Software von Verwaltungs- und Steuersystemen eines virtuellen Datenzentrums verwendet werden. Entkoppeln von Verwaltung und Steuerung ermöglicht ein flexibleres Modell, das Verwaltung an generische Systeme von Anwendern, Software und Hardware anpasst, das mehrere Systeme verwaltet, das unabhängige Änderungen von Verwaltung, Anwendern, Software oder Hardware sogar während des Laufens einer virtuellen Maschine erlaubt und das sicherstellt, dass die Verwaltung Richtlinien genügt, zum Beispiel Einhaltung von Umweltschutz, und dass die Hardware Verwaltungs-spezifische Einschränkungen erfüllt, wie etwa Richtlinien oder maximale physikalische Einschränkungen. Entkoppeln der Software von Verwaltung und Steuerung erlaubt Software-Änderungen unabhängig von Verwaltung, Aktualisierungen von laufender Software und stateful Software (Software, die mit ihren Zuständen übertragbar ist), während Verwaltungssysteme darauf zugreifen, und vereinfacht Aktualisierungen von Verwaltungssystemen wie etwa Verwalteränderungen bei Ansichten, Leistungen, Orten, Prioritäten, und Privilegien. Virtuelle Maschinen sind über generische Hardware, Anwender und Systemverwaltung selbständig, um einen vollständigen und reproduzierbaren Schnappschuss bereitzustellen, der Werkzeugkategorien von virtuellen Datenzentren vereinfacht, wie etwa Diagnose, Überprüfung, Sicherung, Klonen, Anhalten/Fortsetzen und Rückerstattern/Abrechnen. Versionieren von Dateien innerhalb einer virtuellen Maschine vereinfacht das Verfolgen von Verwaltungsaktualisierungen, und die separate Verwaltungs- Konfigurationsdatei erlaubt rollenbasierten Zugang zu Konfigurationen innerhalb einer virtuellen Maschine. Virtuelle Maschinen sind über generische Hardware, Anwender und Systemverwaltung selbständig, um einen vollständigen und reproduzierbaren Schnappschuss bereitzustellen, der Werkzeugkategorien von virtuellen Datenzentren vereinfacht, wie etwa Diagnose, Überprüfung, Sicherung, Klonen, Anhalten/ Fortsetzen und Rückerstatten/Berechnen. Versionieren von Dateien innerhalb einer virtuellen Maschine vereinfacht das Verfolgen von Verwaltungsaktualisierungen, und die separate Verwaltungs- Konfigurationsdatei erlaubt rollenbasierten Zugang zu Konfigurationen innerhalb einer virtuellen Maschine.
- Ein weiteres Beispiel eines wichtigen technischen Vorteils ist, dass virtuelle Maschinen verwendet werden, um Software von Anwendern und Diensten eines virtuellen Datenzentrums zu entkoppeln. Entkoppeln von Anwendern und Diensten erlaubt eine flexibleres Modell, das Software-Anwendungen an Anwender anpasst, das sicherstellt, dass Software Anwender-spezifische Präferenzen wie etwa Sicherheit behält bzw. einhält, und das sicherstellt, dass Hardware Anwenderspezifische Präferenzen, wie etwa Isolierung, Verwendung und Abrechnen/Rückerstatten behält bzw. einhält. Entkoppeln von Software von Anwendern und Diensten erlaubt Software-Änderungen unabhängig von Nutzern, Aktualisierungen von laufender Software und stateful Software, während Anwender darauf zugreifen, und vereinfacht Anwender- Aktualisierungen von Ansichten, Leistungen, Orten, Prioritäten und Privilegien.
- Ein weiteres Beispiel eines wichtigen technischen Vorteils von virtuellen Maschinen ist, dass Software- Verwaltung über einem virtuellen Datenzentrum vereinfacht wird. Ein Patch für eine Anwendung wird auf eine nur lesbare Kopie der Anwendung angewandt. Virtuelle Maschinen, die die Anwendung beinhalten, Booten aus dem nur lesbaren Image, um den Patch zu beinhalten, so dass eine einzige Anwendung des Patches auf die Anwendung effektiv alle virtuellen Maschinen aktualisiert, die die Anwendung beinhalten. Der Gebrauch des nur lesbaren Images, um das Booten von mehrfachen virtuellen Maschinen zu unterstützen, verringert den gesamten Speicher des virtuellen Datenzentrums, da die nur lesbare Kopie der Anwendung als die einzige permanente Kopie der Anwendung gehalten werden kann und alle virtuellen Maschinen, die die nur lesbare Kopie verwenden, einen gemeinsamen Zustand in Bezug auf die Anwendung nutzen. Zusätzlich ist das Klonen von virtuellen Maschinen mit derselben Konfiguration in einer verrin gerten Zeit durchführbar, da die Anwenderdienste-Konfigurationsdatei, die der Anwendung zugeordnet ist, kopiert wird, ohne dass ein Kopieren der ganzen Anwendung erforderlich ist. Darüber hinaus sind Anwendungen selbstständig (selfcontained) und verfügen über ausreichende Informationen, um von spezifischen Bindungen an Anwenderdienste, Systemverwaltung oder Hardware unabhängig zu sein.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
- Die vorliegende Erfindung kam besser verstanden und ihre zahllosen Ziele, Merkmale und Vorteile können Fachleuten offensichtlich gemacht werden, indem auf die beigefügten Zeichnung Bezug genommen wird. Der Gebrauch derselben Bezugszeichens in mehreren Figuren bezeichnet ein ähnliches oder selbes Element.
-
1 stellt ein Blockdiagramm eines virtuellen Datenzentrums mit Verwaltungskonfigurationen und Anwender-/Dienste-Konfigurationen dar, die jeder virtuellen Maschine zugeordnet sind; -
2 stellt ein Blockdiagramme eines virtuellen Datenzentrums mit einem nur lesbaren Image einer Anwendung dar, das Laufzeit- Images von mehreren virtuellen Maschinen unterstützt, die Vorbereitungsdateien von Anwendungssystemen aufweisen; und -
3 stellt eine Schichtansicht von virtuellen Maschinen mit einem gemeinsamen Image dar. - DETAILLIERTE BESCHREIBUNG
- Instanzen von virtuellen Maschinen werden in einem virtuellen Datenzentrum erzeugt und überwacht, durch Bezug auf Informationen in einer Management- Konfiguration und einer Verwaltungs-Konfiguration, die jeder virtuellen Maschine zugeordnet sind. Die Verwaltungs- und Anwender-/Dienste-Konfigurationen unterstützen bei der Zuweisung und Überwachung von virtuellen Maschinen an Verarbeitungsressourcen von Informationsverarbeitungssystemen, um die gewünschten Ziele zu erreichen.
- Für die Zwecke dieser Offenbarung kann ein Informationsverarbeitungssystem die Mittel oder Anordnungen von Mitteln beinhalten, die geeignet sind, jede Form von Information, Nachrichten oder Daten für geschäftliche, wissenschaftliche, Steuerungs- oder andere Zwecke zu berechnen, klassifizieren, verarbeiten, übermitteln, empfangen, abzufragen, erzeugen, schalten, speichern, darstellen, bekannt machen, ermitteln, aufnehmen, reproduzieren, verarbeiten oder zu nutzen. Zum Beispiel kann ein Informationsverarbeitungssystem ein Personal Computer, ein Netzwerkspeichergerät oder jedes andere geeignete Gerät sein und in Größe, Form, Leistung, Funktionalität und Preis variieren. Das Informationsverarbeitungssystem kann Random Access Memory (RAM) aufweisen, eine oder mehrere Verarbeitungsressourcen wie etwa eine zentrale Prozessoreinheit (CPU) oder Hardware- oder Software-Steuerlogik, ROM und/oder andere Typen von nicht- flüchtigem Speicher. Zusätzliche Komponenten des Informationsverarbeitungssystems können umfassen: ein oder mehrere Festplattenlaufwerke, einen oder mehrere Netzwerkanschlüsse (Ports) zur Kommunikation mit externen Geräten sowie verschiedene Eingabe- und Ausgabe- (I/O-) Geräte wie etwa eine Tastatur, eine Maus und einen Bildschirm. Das Informationsverarbeitungssystem kann auch einen oder mehrere Busse aufweisen, die geeignet sind, um Nachrichten zwischen den verschiedenen Hardware-Komponenten zu übermitteln.
- Mit Bezug auf
1 stellt ein Blockdiagramm ein virtuelles Datenzentrum10 mit Verwaltungs-Konfigurationen14 und Anwender-/Dienste-Konfigurationen16 dar, die jeder virtuellen Maschine12 zugeordnet sind. Die virtuellen Maschinen12 arbeiten auf Hardware-Ressourcen22 eines Servers durch Aufrufen eines Software-Images18 , um basierend auf einer Server-Hardewarekonfiguration20 zu laufen. Inaktive virtuelle Maschinen werden in globalen Daten24 gespeichert und durch Zuweisung einer gespeicherten virtuellen Maschine an gewünschte Verarbeitungskomponenten der Server-Hardware-Ressourcen22 durch eine Ressourcen-Virtualisierungs-Engine26 aktiviert. Z.B. wird eine Datenverarbeitungsfunktion am Ende eines Geschäftstages durchgeführt, indem eine virtuelle Maschine12 aufgerufen wird, die die Datenverarbeitungsfunktion durchführt, sobald die Daten verfügbar sind. Ressourcen-Virtualisierungs-Engine26 weist die virtuelle Maschine12 einer CPU der Server-Hardware-Ressourcen22 zu und bootet das Betriebssystem der virtuellen Maschine12 auf der CPU, um die Funktion auszuführen. Nach dem Abschluss der Datenverarbeitungsfunktion deaktiviert die Ressourcen-Virtualisierungs-Engine26 die virtuelle Maschine12 zur Speicherung in den globalen Daten24 . Konventionelle virtuelle Datenzentren koppeln eng an die Verwaltungs- und Steuersysteme wie auch an den Anwender und an durchgeführte anwenderähnliche Dienste, womit die operationale Flexibilität des virtuellen Datenzentrums begrenzt wird, wie etwa durch enges Koppeln der Management-Systeme an Hardware und Anwender. Das virtuelle Datenzentrum10 von1 umfasst mit jeder virtuellen Maschine12 eine Verwaltungskonfiguration14 und eine Anwender-/Dienste-Konfiguration16 , um Software von Verwaltungs- und Steuersystemen und vom Anwender und von anwenderähnlichen Diensten für eine verbesserte operationale Flexibilität zu entkoppeln. - Die Verwaltungskonfiguration
14 stellt eine verbesserte Flexibilität bereit, in dem Verwaltungsinformation an jede virtuelle Maschine12 gekoppelt wird, um ein Anpassen der Verwaltung an generische Systeme von Anwendern, Software und Hardware zu erlauben, um das Verwalten von mehreren Systemen zu erlauben, um unabhängige Änderungen der Verwaltung sogar während des Laufens der virtuellen Maschine12 zu erlauben, um unabhängige Änderungen von Anwendern, Software oder Hardware, sogar während sie läuft, zu erlauben, um sicherzustellen, dass die Verwaltung alle Richtlinieneinhaltungsregeln28 wie etwa Einhaltung von Umgebungsbedingungen einhält, und um sicherzustellen, dass die Hardware verwaltungsspezifische Einschränkungen wie etwa Richtlinien oder maximale physikalische Grenzen einhält, die durch die Richtlinien-Einhaltungsregeln28 festgelegt werden. Die Verwaltungskonfiguration14 kann eine XML-Datei sein, die die Verwaltungspräferenzen in einem standardisierten Format speichert. Das Koppeln von Verwaltungspräferenzen an virtuelle Maschinen mit der Verwaltungskonfiguration14 unterstützt Verwaltereingaben an Virtualisierungsschichten durch eine Überwachungsengine30 zum Ressourcengebrauch und Verwalterausgaben an Virtualisierungsschichten durch eine globale Richtlinienengine32 , um Konflikte bei Verwalteraktualisierungen an Anwender, Software und Hardware zu vermeiden, während virtuelle Maschinen laufen. Z.B. definiert die Verwaltungskonfiguration14 Präferenzen für Ansichten, Leistungen, Ort, Prioritäten und Privilegien einer virtuellen Maschine. Die Präferenzen können durch eine Verwaltungsschnittstelle34 aktualisiert werden, während eine virtuelle Maschine läuft, in dem die Werte innerhalb der Verwaltungskonfiguration geändert werden. Rollenbasierte Aktualisierungen stellen die Berechtigung bereit, um Werte der Verwaltungskonfiguration basierend auf Zugangsniveaus zu ändern, die durch die globale Richtlinien-Engine32 genehmigt sind. - Da Verwaltungspräferenzen als Teil der virtuellen Maschine selbst gepflegt werden, vereinfachen vollständig reproduzierbare Schnappschüsse einer virtuellen Maschine Aufgaben für eine Anzahl von Werkzeugen, wie etwa Diagnose, Überprüfung, Sicherung, Klonen, Anhalten/Fortsetzen und Rückerstatten/Abrechnen, und Versionierung kann in der Verwaltungskonfiguration verfolgt werden.
- Ein Beispiel von Verwaltungs-Konfigurations-Präferenzen sind Umweltziele, die sich etwa auf Strom, Kühlung und Aufgabenausgleich (task balancing) innerhalb eines virtuellen Datenzentrums beziehen. Die Überwachungsengine
30 zum Ressourcengebrauch überqwacht eine Virtualisierungslaufzeit basierend auf Verwaltungspräferenzen eines Umweltzieles eher als durch direkte Überwachung der Hardware, da eine gegebene virtuelle Ressource physikalisch, global oder nicht lang genug existieren könnte, um Entdeckung, Überwachung und Verwaltung zu erlauben. Die Überwachungsengine30 zum Ressourcengebrauch erzeugt eine Rückkoppelungsschleife mit der globalen Richtlinienengine32 , um die Zuweisung von virtuellen Maschinen über die Verarbeitungskomponenten der Server-Hardwareressourcen22 dynamisch anzupassen. Z.B. werden Lasten durch wiederholtes An- und Ausschalten bei Knoten zum Energiesparen und zum Herabsetzen des Stromverbrauchs ohne Nachteile ausgeglichen, soweit es Arbeitslasten und Prioritäten von virtuellen Maschinen zulassen, die über einem virtuellen Datenzentrum laufen. Als weiteres Beispiel und falls Umweltbeschränkungen wie etwa Kühlung erfüllt sind, analysiert die Überwachungs-Engine30 zum Ressourcengebrauch die Prioritäten, die den Verwaltungspräferenzen von aktiven virtuellen Maschinen zugeordnet sind, so dass die globale Richtlinien-Engine32 selektiv niedrigere Prioritäten vorschreiben kann, um Kühlanforderungen zu verringern. In alternativen Ausführungsformen leiten Verwaltungspräferenzen die Zuweisung von virtuellen Maschinen durch die Überwachungsengine30 zum Ressourcengebrauch und die globale Richtlinienengine32 , um Ziele zu erfüllen, die auf verschiedene Richtlinien, Minima, Maxima oder Beschränkungen der Anwender, Software oder Hardware bezogen sind. Verwaltungskonfigurationen sind für rollenbasierte Sicherheit auf der Ebene von Dateien oder Unterdateien verschlüsselt und versioniert. - Die Anwender-/Dienste-Konfiguration
16 bietet verbesserte Flexibilität durch Ankoppeln von Anwender-/Dienste-Information an jede virtuelle Maschine, um das Anpassen von Software-Anwendungen an Nutzer zu ermöglichen, um sicherzustellen, dass Software-Anwender spezifische Präferenzen wie etwa Sicherheit behalten bzw. einhalten, und um sicherzustellen, dass die Hardware Anwenderspezifischen Präferenzen wie etwa Isolation, Ausnutzung und Abrechnung/Rückerstattung behält bzw, einhält. Die Anwender-/Dienste-Konfiguration16 ist eine XML-Datei, die die Präferenzen für Anwender und Anwender-ähnliche Dienste in einem standardisierten Format speichert. Das Koppeln von Anwender/Dienste-Präferenzen an virtuelle Maschinen mit Anwender-/Dienste-Konfiguration16 unterstützt Verwaltereingaben an Virtualisierungsschichten durch eine Anwender-/Dienste-Schnittstelle36 und eine Dienste-Virtualisierungsengine38 . Das Zuordnen der Verwaltungskonfiguration14 und der Anwender-/Dienste-Konfiguration16 zu einer virtuellen Maschine liefert ein völlig selbstständiges System, das dynamisch und leicht verteilbar ist, so dass Anwendungen einer virtuellen Maschine über generische Hardware und Anwendern laufen können. Eine völlig selbstständige virtuelle Maschine stellt einen reproduzierbaren Schnappschuss dar, um Werkzeuge wie etwa Diagnose, Überprüfung, Sicherung, Klonen, Anhalten/Fortsetzen und Rückerstatten/ Abrechnen zu vereinfachen, und erlaubt vereinfachtes Verfolgen von Versionsänderungen über der Zeit. Entkoppeln von virtuellen Maschinen von Anwendern und Anwender-ähnlichen Diensten mit der Dienste-Konfiguration erlaubt Softwareänderungen unabhängig von Anwendern, einschließlich Aktualisierungen von laufender stateful Software, während Anwender darauf zugreifen. Anwender werden durch Aktualisierungen der Anwender-/Dienste-Präferenzen der Anwender-/Dienste-Konfiguration aktualisiert, wie etwa Anwenderansichten, Leistungen, Orten, Prioritäten und Privilegien. Verbundene Anwender mit lokalen gespeicherten Zuständen werden durch Aktualisierung der Anwender-/Dienste-Konfiguration aktualisiert, sogar während der Anwender auf die Software zugreift. - Ein Beispiel von Anwender-/Dienste-Präferenzen, die in einer Anwender/Dienste-Konfiguration gespeichert sind, ist eine Anwender-/Dienste-Präferenz für Priorität und Kosten, die einer virtuellen Maschine zugeordnet sind. Z.B. gibt ein Anwender oder ein anwenderähnlicher Dienst Preis- und Kostenparameter für eine virtuelle Maschine
12 in einer Anwender-/Dienste-Konfiguration16 durch eine Anwender-/Dienste-Schnittstelle36 ein. Die Dienste-Virtualisierungs-Engine 38 fordert die Erzeugung einer Laufzeitinstanz der virtuellen Maschine mit der Priorität und den Kostenpräferenzen an, so dass die Überwachungs-Engine zum Ressourcengebrauch30 und die globale Richtlinienengine32 die Zuweisung der virtuellen Maschine an die Verarbeitungskomponenten der Server-Hardwareressourcen22 entsprechend der verfügbaren Kapazität und Preiseinschränkungen anpassen, die durch die Einhaltungsregeln28 festgesetzt sind. Ein weiteres Beispiel einer Anwender-/Dienste-Präferenz ist das anpassbare Festsetzen der Sicherungspräferenzen und Häufigkeit, um Datenintegrität sicherzustellen, oder das anpassbare Festsetzen von Sicherheitsniveaus, um den Zugang zu Daten geeignet einzuschränken. Momentane Bindungsdetails werden zur Laufzeit aktualisiert, während Anwender und Anwenderzustände an sich ändernde Software- und Softwarezustände neu gebunden werden. Dienste-Virtualisierung kann als die Laufzeitumgebung für Instanzen aus einem virtuellen Maschinenpool und einem Pool von Anwendern und anwenderähnlichen Diensten wirken, um virtuelle Maschinen als eine Ressource für Dienstprogramme zu behandeln, einschließlich der Personalisierung von Anwendungen. - Mit Bezug auf
2 stellt ein Blockdiagramm ein virtuelles Datenzentrum mit einem nur lesbaren Anwendungs-Image40 dar, das Laufzeit-Images von mehreren virtuellen Maschinen12 unterstützt, die Vorbereitungsdateien von Anwendungssystemen in ihren Software-Images18 aufweisen. Wenn eine virtuelle Maschine12 von globalen Daten24 zum Betrieb auf Server-Hardwareressourcen22 aufgerufen wird, liest die Ressourcen-Virtualisierungs-Engine26 das nur lesbare Image40 , um die virtuelle Maschine12 mit dem nur lesbaren Image40 der Anwendung zu booten, das mit Informationen aus der Vorbereitungsdatei des Anwendungsystems gefüllt ist, die in dem Software-Image18 gespeichert sind. Z.B. ist das nur lesbare Image40 einer Anwendung eine nur lesbare Kopie eines WINDOWS Betriebssystems mit eindeutigen Konfigurationsinformationen für jeden Gebrauch des Betriebssystems durch die virtuelle Maschine wie etwa IP Adresse und Systemname, die mit einem geeigneten Werkzeug, wie etwa dem Laufenlassen des SYSPREP-Programms, entfernt wurde. Die eindeutige Konfigurationsinformation der Anwendung, die mit dem SYSPREP-Werkzeug isoliert wurde, wird in der Anwender-/Dienste-Konfiguration16 gespeichert, und die Version oder Klasse des Betriebsystems oder der Anwendung wird in der Verwaltungskonfiguration14 gespeichert. Deshalb agiert das nur lesbare Anwendungs-Image40 als ein Gold-Image, um das Füllen der systemeindeutigen Informationen in Laufzeitinstanzen von mehreren virtuellen Maschinen über einem virtuellen Datenzentrum mit Schreiboperationen zu unterstützen, die auf die Anwender/Dienste-Konfiguration16 der virtuellen Maschine durchgeführt werden. - Das Füllen einer gemeinsamen nur lesbaren Anwendung mit eindeutiger Systeminformation liefert eine vereinfachte Wartung der Anwendung, wie etwa das Installieren von Aktualisierungen oder Patches für die Anwendung über einem virtuellen Datenzentrum oder das Klonen von virtuellen Maschinen. Wie in
2 dargestellt, verfügen aktivierte virtuelle Maschinen über eine oder mehrere Anwendungen42 , die auf dem Betriebssystem44 und der CPU46 laufen. Aktualisierungen für das nur lesbare Anwendungs-Image40 werden durch einen Anwendungs-Patchmanager48 durchgeführt, der auch auf der virtuellen Maschine12 läuft, und der über eine Schreibberechtigung verfügt, um Aktualisierungen oder Patches auf das nur lesbare Anwendungs-Image40 anzuwenden. Bevor der Anwendungs-Patchmanager48 eine Aktualisierung auf das nur lesbare Anwendungs-Image40 anwendet, werden virtuelle Maschinen, die diese Anwendungen laufen lassen, entweder beendet oder gespeichert, so dass Leseoperationen von dem nur lesbaren Anwendungs-Image40 während der Aktualisierung nicht angefordert werden. Zwischenspeichern (Cashing) eines Image der Anwendung vor der Aktualisierung erlaubt es kritischen virtuellen Maschinen ihren Betrieb fortzusetzen, während die Aktualisierung durchgeführt wird. Nachdem die Aktualisierung durch den Anwendungs-Patchmanager48 durchgeführt wurde, werden die beendeten virtuellen Maschinen neu gestartet, um mit dem aktualisierten nur lesbaren AnwendungsImage40 zu laufen. Virtuelle Maschinen, die von einer zwischengespeicherten Kopie der Anwendung vor der Aktualisierung laufen, können von dem aktualisierten nur lesbaren Anwendungs-Image40 zu einer passenden Zeit neu gestartet werden. Der Gebrauch einer einzelnen Stelle zur Software-Verwaltung stellt sicher, dass alle virtuellen Maschinen, die das nur lesbare Anwendungs-Image40 verwenden, in einer einzigen Operation mit weniger Verwendung von Speicherressourcen aktualisiert werden. Ähnlich verringert der Einfluss des nur lesbaren Anwendungs-Images während des Klonens einer virtuellen Maschine durch einen virtuellen Maschinenkloner50 die Zeit und Ressourcen, die zum Durchführen des Klonens benötigt werden. Kopierzeit wird verringert, in dem das Software-Image mit der Vorbereitungsdatei des Anwendungssystems kopiert wird, ohne das nur lesbare Anwendungs-Image40 zu kopieren. - Mit Bezug auf
3 ist eine Schichtansicht von virtuellen Maschinen mit einem gemeinsamen Image dargestellt. Eine Hardwareschicht52 verfügt über die physikalische Hardware, um Instanzen von virtuellen Maschinen zu unterstützen, wie etwa Prozessor- und Speicherressourcen. Z.B. umfasst ein Datenzentrum oft mehrere Informationsverarbeitungssystem-Server, die virtuellen Maschineninstanzen zugewiesen sind. Die Hardware-Schicht umfasst einen gemeinsam genutzten Speicher54 , wie etwa ein oder mehrere untereinander verbundene Festplattenlaufwerke. Der gemeinsam genutzte Speicher54 speichert das nur lesbare Anwendungs-Image, das geklont wird, um Instanzen von virtuellen Maschinen12 zu erzeugen. Eine Ressourcen-Virtualisierungsschicht56 weist die Hardware-Ressourcen der Hardware-Schicht52 zum Gebrauch durch die virtuelle Maschinenschicht58 zu. In der virtuellen Maschinenschicht58 laufen mehrere virtuelle Maschinen12 als Klone des nur lesbaren Anwendungs-Images40 , das mit für jede virtuelle Maschine12 eindeutigen Informationen gefüllt ist. Der Anwendungs-Patchmnanager48 läuft als eine virtuelle Maschine, die auf das nur lesbare Anwendungs-Image40 Zugriff hat. Wenn Patches auf das nur lesbare Image angewandt werden, beendet der Anwendungs-Patchmanager48 die virtuellen Maschinen12 , die einen Klon des nur lesbaren Images verwenden, wendet den Patch auf das nur lesbare Image an und startet die virtuellen Maschinen neu, die mit einem Klon des Images laufen. - Obwohl die vorliegende Erfindung im Detail beschrieben wurde, sollte es klar sein, das verschiedene Änderungen, Ersetzungen und Modifikationen hieran gemacht werden können, ohne von dem Geist und Bereich der Erfindung abzuweichen, wie er in den angehängten Ansprüchen festgelegt ist.
Claims (20)
- Ein System zum Warten von virtuellen Maschinen eines virtuellen Datenzentrums, das System aufweisend: globale Daten, geeignet zum Speichern von mehreren virtuellen Maschinen; mehrere virtuelle Maschinen, die in den globalen Daten gespeichert sind, wobei jede virtuelle Maschine eine Hardware-Konfiguration und ein Software-Image aufweist, wobei das Software-Image wenigstens eine Anwendungssystemvorbereitungsdatei aufweist; ein nur lesbares Anwendungs-Image, das in den globalen Daten gespeichert ist; mehrere Verarbeitungskomponenten, die zum Ablaufen auf den virtuellen Maschinen bereit; und eine Ressourcen-Virtualisierungs-Engine, die geeignet ist, auf einer virtuellen Maschineninstanz auf den Verarbeitungskomponenten zu laufen durch Auffüllen des nur lesbaren Anwendungs-Images mit der Anwendungs-Vorbereitungsdatei, um eine Laufzeitinstanz der Anwendung zu erzeugen.
- System gemäß Anspruch 1, wobei die Anwendung ein Betriebssystem aufweist.
- System gemäß Anspruch 1, weiterhin aufweisend einen Anwendungs-Patchmanager, der geeignet ist, die Anwendung mit einem oder mehreren Patches durch Anwendung der Patches auf das nur lesbare Anwendungs-Image zu aktualisieren.
- System gemäß Anspruch 3, wobei der Patchmanager eine virtuelle Maschine aufweist, die geeignet ist, auf den Verarbeitungskomponenten zu laufen.
- System gemäß Anspruch 3, wobei der Anwendungs-Patchmanager die Anwendung aktualisiert durch Beenden aller virtuellen Maschinen, die auf das nur lesbare Image zugreifen, Installieren der Patches auf dem nur lesbaren Image und Neustarten der beendeten virtuellen Maschinen.
- System gemäß Anspruch 3, wobei der Anwendungs-Patchmanager die Anwendung aktualisiert durch Speichern einer Kopie der Anwendung im Cache-Speicher, Laufenlassen von einer oder mehreren virtuellen Maschinen aus dem Cache-Speicher, die auf das nur lesbare Image zugreifen, Installieren der Patches auf dem nur lesbaren Image und Neustarten der virtuellen Maschinen, die auf den Cache-Speicher zugreifen.
- System gemäß Anspruch 1, wobei die virtuellen Maschinen weiterhin eine Verwaltungskonfiguration mit Anwendungsversionsinformationen aufweisen.
- System gemäß Anspruch 1, wobei die virtuellen Maschinen weiterhin eine Anwender-/Dienstekonfiguration mit Sicherheitszugangsinformationen aufweisen, die der Anwendung zugeordnet sind.
- System gemäß Anspruch 1, wobei die virtuellen Maschinen weiterhin eine Anwender-/Dienstekonfiguration aufweisen, die geeignet ist, systemspezi fische Informationen zu speichern, die dem Betrieb der Anwendung auf der virtuellen Maschine zugeordnet ist.
- System gemäß Anspruch 1, weiterhin aufweisend einen virtuellen Maschinenkloner, der geeignet ist, eine virtuelle Maschine durch Kopieren der Anwendungssystem-Vorbereitungsdatei zu klonen.
- Ein Verfahren zum Warten von virtuellen Maschinen eines virtuellen Datenzentrums, das Verfahren aufweisend: Speichern eines nur lesbaren Images einer Anwendung in dem virtuellen Datenzentrum; Speichern von mehreren virtuellen Maschinen in dem virtuellen Datenzentrum, wobei jede virtuelle Maschine eine Hardwarekonfiguration und ein Softwareimage aufweist, und wobei das Softwareimage eine der Anwendung zugeordnete Systemvorbereitungsdatei aufweist; und Erzeugen einer Laufzeitinstanz einer virtuellen Maschine durch Auffüllen des nur lesbaren Images der Anwendung mit der Systemvorbereitungsdatei der virtuellen Maschine.
- Verfahren gemäß Anspruch 11, wobei die Anwendung ein Betriebssystem aufweist.
- Verfahren gemäß Anspruch 11, weiterhin aufweisend: Kopieren eines Aktualisierungs-Patches zu dem nur lesbaren Image der Anwendung, um die Anwendung zu aktualisieren; und Auffüllen der aktualisierten Anwendung mit der Systemvorbereitungsdatei einer virtuellen Maschine, um eine Laufzeitinstanz der virtuellen Maschine zu erzeugen, auf der die aktualisierte Anwendung läuft.
- Verfahren gemäß Anspruch 13, weiterhin aufweisend: Beenden von einer oder mehreren virtuellen Maschinen, auf der die Anwendung läuft, vor dem Kopieren des Aktualisierungspatches; und Neustarten der beendeten virtuellen Maschinen nach dem Kopieren des Aktualisierungspatches.
- Verfahren gemäß Anspruch 13, weiterhin aufweisend: Speichern von einer oder mehreren virtuellen Maschinen, auf denen die Anwendung läuft, in einem Cache-Speicher vor dem Kopieren des Aktualisierungspatches; Laufenlassen der virtuellen Maschinen aus dem Cache-Speicher während des Kopierens des Aktualisierungspatches; und Neustarten der gespeicherten virtuellen Maschinen aus der aktualisierten Anwendung.
- Verfahren gemäß Anspruch 11, weiterhin aufweisend: Klonen von einer oder mehreren virtuellen Maschinen durch Kopieren der Systemvorbereitungsdatei.
- Verfahren gemäß Anspruch 11, weiterhin aufweisend: Verfolgen der Version der Anwendung, die einer virtuellen Maschine zugeordnet ist, in einer Verwaltungskonfiguration, die mit der virtuellen Maschine gespeichert wird.
- Verfahren gemäß Anspruch 11, weiterhin aufweisend: Erzeugen von Informationen in der virtuellen Maschine zum Schreiben auf das Anwendungsimage; und Schreiben der erzeugten Informationen in eine Anwender-/Dienstekonfiguration der virtuellen Maschine.
- Eine virtuelle Maschine, aufweisend: eine Hardwarekonfiguration; ein Softwareimage mit einer Systemvorbereitungsdatei, die einer Anwendung zugeordnet ist, wobei die Systemvorbereitungsdatei geeignet ist, ein nur lesbares Image der Anwendung aufzufüllen und wobei das nur lesbare Image separat von der virtuellen Maschine gespeichert ist; und eine Anwender-/Dienstekonfiguration, die geeignet ist, Schreiboperationen aufzunehmen, die durch die Anwendung während Laufzeitinstanzen der virtuellen Maschine erzeugt werden.
- Virtuelle Maschine gemäß Anspruch 19, weiterhin aufweisend eine Verwaltungskonfiguration, die geeignet ist, Versionsinformationen zu spei chern, die Aktualisierungen des nur lesbaren Images der Anwendung zugeordnet sind.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/056,645 | 2005-02-11 | ||
US11/056,645 US20060184937A1 (en) | 2005-02-11 | 2005-02-11 | System and method for centralized software management in virtual machines |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102006006250A1 true DE102006006250A1 (de) | 2006-09-07 |
Family
ID=36119839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102006006250A Ceased DE102006006250A1 (de) | 2005-02-11 | 2006-02-10 | System und Verfahren für zentralisierte Software-Verwaltung in virtuellen Maschinen |
Country Status (12)
Country | Link |
---|---|
US (1) | US20060184937A1 (de) |
JP (1) | JP2006221649A (de) |
CN (1) | CN100410882C (de) |
AU (1) | AU2006200571A1 (de) |
DE (1) | DE102006006250A1 (de) |
FR (1) | FR2885429B1 (de) |
GB (2) | GB2451574B (de) |
HK (1) | HK1097060A1 (de) |
IE (1) | IE20060086A1 (de) |
IT (1) | ITTO20060097A1 (de) |
SG (1) | SG125199A1 (de) |
TW (1) | TWI311256B (de) |
Families Citing this family (330)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
US7904187B2 (en) | 1999-02-01 | 2011-03-08 | Hoffberg Steven M | Internet appliance system and method |
US8370819B2 (en) * | 2005-03-25 | 2013-02-05 | Microsoft Corporation | Mechanism to store information describing a virtual machine in a virtual disk image |
US9378099B2 (en) | 2005-06-24 | 2016-06-28 | Catalogic Software, Inc. | Instant data center recovery |
WO2007021836A2 (en) | 2005-08-15 | 2007-02-22 | Toutvirtual Inc. | Virtual systems management |
US7434218B2 (en) * | 2005-08-15 | 2008-10-07 | Microsoft Corporation | Archiving data in a virtual application environment |
US7447806B2 (en) * | 2005-09-22 | 2008-11-04 | International Business Machines Corporation | Method and apparatus for centralization configuration of data processing systems |
US7941801B2 (en) * | 2006-03-07 | 2011-05-10 | Oracle America Inc. | Method and system for provisioning a virtual computer and scheduling resources of the provisioned virtual computer |
US7802302B1 (en) | 2006-03-10 | 2010-09-21 | Symantec Corporation | Single scan for a base machine and all associated virtual machines |
US7747831B2 (en) * | 2006-03-20 | 2010-06-29 | Emc Corporation | High efficiency portable archive and data protection using a virtualization layer |
US7370164B1 (en) * | 2006-03-21 | 2008-05-06 | Symantec Operating Corporation | Backup of virtual machines from the base machine |
US9317222B1 (en) | 2006-04-24 | 2016-04-19 | Emc Corporation | Centralized content addressed storage |
US9235477B1 (en) * | 2006-04-24 | 2016-01-12 | Emc Corporation | Virtualized backup solution |
US8065273B2 (en) * | 2006-05-10 | 2011-11-22 | Emc Corporation | Automated priority restores |
US9684739B1 (en) | 2006-05-11 | 2017-06-20 | EMC IP Holding Company LLC | View generator for managing data storage |
US8291409B2 (en) * | 2006-05-22 | 2012-10-16 | Microsoft Corporation | Updating virtual machine with patch on host that does not have network access |
US8275985B1 (en) * | 2006-08-07 | 2012-09-25 | Oracle America, Inc. | Infrastructure to secure federated web services |
US8161475B2 (en) * | 2006-09-29 | 2012-04-17 | Microsoft Corporation | Automatic load and balancing for virtual machines to meet resource requirements |
US8949825B1 (en) | 2006-10-17 | 2015-02-03 | Manageiq, Inc. | Enforcement of compliance policies in managed virtual systems |
US8234641B2 (en) | 2006-10-17 | 2012-07-31 | Managelq, Inc. | Compliance-based adaptations in managed virtual systems |
US8458695B2 (en) | 2006-10-17 | 2013-06-04 | Manageiq, Inc. | Automatic optimization for virtual systems |
US9015703B2 (en) * | 2006-10-17 | 2015-04-21 | Manageiq, Inc. | Enforcement of compliance policies in managed virtual systems |
US8949826B2 (en) * | 2006-10-17 | 2015-02-03 | Managelq, Inc. | Control and management of virtual systems |
US9038062B2 (en) * | 2006-10-17 | 2015-05-19 | Manageiq, Inc. | Registering and accessing virtual systems for use in a managed system |
US9086917B1 (en) | 2006-10-17 | 2015-07-21 | Manageiq, Inc. | Registering and accessing virtual systems for use in a managed system |
US8234640B1 (en) | 2006-10-17 | 2012-07-31 | Manageiq, Inc. | Compliance-based adaptations in managed virtual systems |
US8752045B2 (en) | 2006-10-17 | 2014-06-10 | Manageiq, Inc. | Methods and apparatus for using tags to control and manage assets |
US8612971B1 (en) | 2006-10-17 | 2013-12-17 | Manageiq, Inc. | Automatic optimization for virtual systems |
US9697019B1 (en) * | 2006-10-17 | 2017-07-04 | Manageiq, Inc. | Adapt a virtual machine to comply with system enforced policies and derive an optimized variant of the adapted virtual machine |
US8031972B2 (en) * | 2006-12-18 | 2011-10-04 | Dell Products L.P. | System for dynamically resizing information handling system images |
US8336046B2 (en) | 2006-12-29 | 2012-12-18 | Intel Corporation | Dynamic VM cloning on request from application based on mapping of virtual hardware configuration to the identified physical hardware resources |
US8108855B2 (en) * | 2007-01-02 | 2012-01-31 | International Business Machines Corporation | Method and apparatus for deploying a set of virtual software resource templates to a set of nodes |
US8327350B2 (en) * | 2007-01-02 | 2012-12-04 | International Business Machines Corporation | Virtual resource templates |
US20100088699A1 (en) * | 2007-03-27 | 2010-04-08 | Takayuki Sasaki | Virtual machine operation system, virtual machine operation method and program |
US8146080B2 (en) * | 2007-03-30 | 2012-03-27 | Novell, Inc. | Tessellated virtual machines conditionally linked for common computing goals |
US20080250407A1 (en) * | 2007-04-05 | 2008-10-09 | Microsoft Corporation | Network group name for virtual machines |
US20080256535A1 (en) * | 2007-04-10 | 2008-10-16 | Novell, Inc. | Tessellated virtual machines for common computing goals |
US20080256538A1 (en) * | 2007-04-10 | 2008-10-16 | Novell, Inc. | Storage configurations for tessellated virtual machines |
CN101290583B (zh) * | 2007-04-19 | 2011-03-16 | 国际商业机器公司 | 为虚拟机供应图像的方法和系统 |
US8479194B2 (en) * | 2007-04-25 | 2013-07-02 | Microsoft Corporation | Virtual machine migration |
US8966474B2 (en) * | 2007-04-30 | 2015-02-24 | Hewlett-Packard Development Company, L.P. | Managing virtual machines using shared image |
US8291411B2 (en) * | 2007-05-21 | 2012-10-16 | International Business Machines Corporation | Dynamic placement of virtual machines for managing violations of service level agreements (SLAs) |
US20080307415A1 (en) * | 2007-06-11 | 2008-12-11 | Novell, Inc. | Tessellated applications for user computing environments |
US8069341B2 (en) * | 2007-06-29 | 2011-11-29 | Microsoft Corporation | Unified provisioning of physical and virtual images |
US8205194B2 (en) * | 2007-06-29 | 2012-06-19 | Microsoft Corporation | Updating offline virtual machines or VM images |
US8910234B2 (en) * | 2007-08-21 | 2014-12-09 | Schneider Electric It Corporation | System and method for enforcing network device provisioning policy |
US8146098B2 (en) * | 2007-09-07 | 2012-03-27 | Manageiq, Inc. | Method and apparatus for interfacing with a computer user via virtual thumbnails |
US8370802B2 (en) | 2007-09-18 | 2013-02-05 | International Business Machines Corporation | Specifying an order for changing an operational state of software application components |
US9262366B2 (en) * | 2007-09-21 | 2016-02-16 | Microsoft Technology Licensing, Llc | Software deployment in large-scale networked systems |
EP2582092A3 (de) * | 2007-09-26 | 2013-06-12 | Nicira, Inc. | Netzbetriebenes System zur Verwaltung und Sicherung von Netzwerken |
US8191084B1 (en) * | 2007-09-28 | 2012-05-29 | Emc Corporation | Techniques for supporting application operation |
US8245217B2 (en) | 2007-10-12 | 2012-08-14 | Microsoft Corporation | Management of software and operating system updates required for the process of creating a virtual machine facsimile of an existing physical or virtual machine |
US8127291B2 (en) * | 2007-11-02 | 2012-02-28 | Dell Products, L.P. | Virtual machine manager for managing multiple virtual machine configurations in the scalable enterprise |
JP5141196B2 (ja) * | 2007-11-13 | 2013-02-13 | 富士通株式会社 | センタ管理装置、センタ管理プログラム、センタ管理方法 |
US8930945B2 (en) * | 2007-11-15 | 2015-01-06 | Novell, Inc. | Environment managers via virtual machines |
US8407688B2 (en) | 2007-11-27 | 2013-03-26 | Managelq, Inc. | Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets |
US8418173B2 (en) * | 2007-11-27 | 2013-04-09 | Manageiq, Inc. | Locating an unauthorized virtual machine and bypassing locator code by adjusting a boot pointer of a managed virtual machine in authorized environment |
WO2009068055A1 (de) * | 2007-11-28 | 2009-06-04 | Siemens Aktiengesellschaft | System und verfahren zur zustandssicherung |
US8539551B2 (en) * | 2007-12-20 | 2013-09-17 | Fujitsu Limited | Trusted virtual machine as a client |
CN101499021A (zh) * | 2008-01-31 | 2009-08-05 | 国际商业机器公司 | 在多个虚拟机上动态分配资源的方法和装置 |
JP5288334B2 (ja) * | 2008-02-04 | 2013-09-11 | 日本電気株式会社 | 仮想アプライアンス配備システム |
US8631217B2 (en) * | 2008-02-26 | 2014-01-14 | International Business Machines Corporation | Apparatus, system, and method for virtual machine backup |
KR101178752B1 (ko) * | 2008-02-26 | 2012-09-10 | 브이엠웨어, 인코포레이티드 | 서버-기반 데스크탑 가상 머신 아키텍처의 클라이언트 머신들로의 확장 |
US8671294B2 (en) * | 2008-03-07 | 2014-03-11 | Raritan Americas, Inc. | Environmentally cognizant power management |
JP5125659B2 (ja) * | 2008-03-24 | 2013-01-23 | 富士通株式会社 | 情報処理装置、情報処理方法及びコンピュータプログラム |
JP4990828B2 (ja) * | 2008-03-25 | 2012-08-01 | 株式会社日立製作所 | ストレージ装置及びこれの制御方法 |
US8516481B2 (en) * | 2008-04-04 | 2013-08-20 | Hewlett-Packard Development Company, L.P. | Virtual machine manager system and methods |
US8713342B2 (en) * | 2008-04-30 | 2014-04-29 | Raritan Americas, Inc. | System and method for efficient association of a power outlet and device |
WO2009143124A1 (en) * | 2008-05-20 | 2009-11-26 | Citrix Systems, Inc. | Methods and systems for patching multiple disk images derived from a common base disk image |
US8443363B1 (en) * | 2008-05-30 | 2013-05-14 | Symantec Corporation | Coordinated virtualization activities |
US8161479B2 (en) * | 2008-06-13 | 2012-04-17 | Microsoft Corporation | Synchronizing virtual machine and application life cycles |
US8312448B2 (en) * | 2008-06-24 | 2012-11-13 | Sony Corporation | Configuration to order software deployment and management |
US8510718B2 (en) * | 2008-06-30 | 2013-08-13 | Ubs Ag | Platform verification portal |
US8886985B2 (en) * | 2008-07-07 | 2014-11-11 | Raritan Americas, Inc. | Automatic discovery of physical connectivity between power outlets and IT equipment |
US20100049823A1 (en) * | 2008-08-21 | 2010-02-25 | Kiyokazu Saigo | Initial copyless remote copy |
US8443370B2 (en) * | 2008-08-26 | 2013-05-14 | Microsoft Corporation | Method of assigning resources to fulfill a service request by a programming model abstraction layer at a data center based at least in part on a reference of the requested resource class indicative of an abstract amount of resources |
US10365935B1 (en) * | 2008-09-23 | 2019-07-30 | Open Invention Network Llc | Automated system and method to customize and install virtual machine configurations for hosting in a hosting environment |
AU2009307654A1 (en) * | 2008-10-20 | 2010-04-29 | Raritan Americas, Inc. | System and method for automatic determination of the physical location of data center equipment |
CN102227693A (zh) * | 2008-10-21 | 2011-10-26 | 力登美洲公司 | 实现认知的电能管理的方法 |
JP5298763B2 (ja) * | 2008-10-22 | 2013-09-25 | 富士通株式会社 | 仮想システム制御プログラム、方法及び装置 |
JP5298764B2 (ja) * | 2008-10-22 | 2013-09-25 | 富士通株式会社 | 仮想システム制御プログラム、方法及び装置 |
US9141381B2 (en) * | 2008-10-27 | 2015-09-22 | Vmware, Inc. | Version control environment for virtual machines |
US8499297B2 (en) * | 2008-10-28 | 2013-07-30 | Vmware, Inc. | Low overhead fault tolerance through hybrid checkpointing and replay |
JP5223596B2 (ja) * | 2008-10-30 | 2013-06-26 | 富士通株式会社 | 仮想計算機システム及びその管理方法、管理プログラム並びに記録媒体、制御方法 |
JP5401922B2 (ja) * | 2008-11-04 | 2014-01-29 | 富士通株式会社 | 仮想システム制御プログラム、方法及び装置 |
US9189221B2 (en) * | 2009-01-27 | 2015-11-17 | Microsoft Technology Licensing, Llc | Consistent operating system servicing for distributed nodes |
US8407700B2 (en) * | 2009-03-03 | 2013-03-26 | Symantec Corporation | Methods and systems for merging virtualization sublayers |
JP5066613B2 (ja) * | 2009-03-06 | 2012-11-07 | 株式会社日立製作所 | セキュリティ管理装置及び方法並びにプログラム |
US8387045B2 (en) | 2009-03-12 | 2013-02-26 | International Business Machines Corporation | Cloning image creation using virtual machine environment |
US8332848B2 (en) * | 2009-03-12 | 2012-12-11 | Red Hat Israel, Ltd. | Mechanism for staged upgrades of a virtual machine system |
US8665886B2 (en) | 2009-03-26 | 2014-03-04 | Brocade Communications Systems, Inc. | Redundant host connection in a routed network |
CN104702537B (zh) | 2009-04-01 | 2018-07-10 | Nicira股份有限公司 | 用于实现和管理虚拟交换机的方法和装置 |
US8375382B2 (en) * | 2009-05-13 | 2013-02-12 | International Business Machines Corporation | Enabling parallel websphere runtime versions |
WO2010138130A1 (en) * | 2009-05-29 | 2010-12-02 | Hewlett-Packard Development Company, L.P. | System and method for allocating resources of a server to a virtual machine |
US8683464B2 (en) * | 2009-06-04 | 2014-03-25 | Microsoft Corporation | Efficient virtual machine management |
US11272013B1 (en) | 2009-06-26 | 2022-03-08 | Turbonomic, Inc. | Systems, apparatus, and methods for managing computer workload availability and performance |
USRE48680E1 (en) | 2009-06-26 | 2021-08-10 | Turbonomic, Inc. | Managing resources in container systems |
USRE48714E1 (en) * | 2009-06-26 | 2021-08-31 | Turbonomic, Inc. | Managing application performance in virtualization systems |
US9852011B1 (en) | 2009-06-26 | 2017-12-26 | Turbonomic, Inc. | Managing resources in virtualization systems |
US9858123B1 (en) | 2014-11-10 | 2018-01-02 | Turbonomic, Inc. | Moving resource consumers in computer systems |
US10673952B1 (en) | 2014-11-10 | 2020-06-02 | Turbonomic, Inc. | Systems, apparatus, and methods for managing computer workload availability and performance |
US8438256B2 (en) * | 2009-06-26 | 2013-05-07 | Vmware, Inc. | Migrating functionality in virtualized mobile devices |
US9805345B1 (en) | 2014-11-10 | 2017-10-31 | Turbonomic, Inc. | Systems, apparatus, and methods for managing quality of service agreements |
USRE48663E1 (en) | 2009-06-26 | 2021-07-27 | Turbonomic, Inc. | Moving resource consumers in computer systems |
US9830192B1 (en) * | 2014-11-10 | 2017-11-28 | Turbonomic, Inc. | Managing application performance in virtualization systems |
US10191778B1 (en) | 2015-11-16 | 2019-01-29 | Turbonomic, Inc. | Systems, apparatus and methods for management of software containers |
US10552586B1 (en) | 2015-11-16 | 2020-02-04 | Turbonomic, Inc. | Systems, apparatus and methods for management of computer-based software licenses |
US9888067B1 (en) | 2014-11-10 | 2018-02-06 | Turbonomic, Inc. | Managing resources in container systems |
US10346775B1 (en) | 2015-11-16 | 2019-07-09 | Turbonomic, Inc. | Systems, apparatus and methods for cost and performance-based movement of applications and workloads in a multiple-provider system |
US9830566B1 (en) | 2014-11-10 | 2017-11-28 | Turbonomic, Inc. | Managing resources in computer systems using action permits |
US20110083122A1 (en) * | 2009-10-05 | 2011-04-07 | Salesforce.Com, Inc. | Method and system for massive large scale test infrastructure |
US8693485B2 (en) * | 2009-10-14 | 2014-04-08 | Dell Products, Lp | Virtualization aware network switch |
US20110126186A1 (en) * | 2009-11-23 | 2011-05-26 | Srinivasan Kattiganehalli Y | Appliance maintenance in computing system environment |
JP5532874B2 (ja) * | 2009-12-02 | 2014-06-25 | 日本電気株式会社 | 情報処理装置 |
US8683465B2 (en) * | 2009-12-18 | 2014-03-25 | International Business Machines Corporation | Virtual image deployment with a warm cache |
US8370836B2 (en) | 2010-01-28 | 2013-02-05 | Dell Products, Lp | System and method to enable power related decisions in a virtualization environment |
US8756597B2 (en) | 2010-02-05 | 2014-06-17 | Novell, Inc. | Extending functionality of legacy services in computing system environment |
US8549272B2 (en) * | 2010-02-10 | 2013-10-01 | Dell Products L.P. | Information handling system image management deployment of virtual machine images to physical information handling systems |
US20110239209A1 (en) | 2010-03-23 | 2011-09-29 | Fujitsu Limted | System and methods for remote maintenance in an electronic network with multiple clients |
US9286485B2 (en) | 2010-03-23 | 2016-03-15 | Fujitsu Limited | Using trust points to provide services |
US8369335B2 (en) | 2010-03-24 | 2013-02-05 | Brocade Communications Systems, Inc. | Method and system for extending routing domain to non-routing end stations |
US9769016B2 (en) | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US9001824B2 (en) | 2010-05-18 | 2015-04-07 | Brocade Communication Systems, Inc. | Fabric formation for virtual cluster switching |
US8867552B2 (en) | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US9270486B2 (en) | 2010-06-07 | 2016-02-23 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US8625616B2 (en) | 2010-05-11 | 2014-01-07 | Brocade Communications Systems, Inc. | Converged network extension |
US9716672B2 (en) | 2010-05-28 | 2017-07-25 | Brocade Communications Systems, Inc. | Distributed configuration management for virtual cluster switching |
US8989186B2 (en) | 2010-06-08 | 2015-03-24 | Brocade Communication Systems, Inc. | Virtual port grouping for virtual cluster switching |
US9231890B2 (en) | 2010-06-08 | 2016-01-05 | Brocade Communications Systems, Inc. | Traffic management for virtual cluster switching |
US9461840B2 (en) * | 2010-06-02 | 2016-10-04 | Brocade Communications Systems, Inc. | Port profile management for virtual cluster switching |
US9386021B1 (en) | 2011-05-25 | 2016-07-05 | Bromium, Inc. | Restricting network access to untrusted virtual machines |
US9558051B1 (en) | 2010-05-28 | 2017-01-31 | Bormium, Inc. | Inter-process communication router within a virtualized environment |
US8972980B2 (en) | 2010-05-28 | 2015-03-03 | Bromium, Inc. | Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity |
US10310696B1 (en) | 2010-05-28 | 2019-06-04 | Bromium, Inc. | Supporting a consistent user interface within a virtualized environment |
US9148428B1 (en) | 2011-05-25 | 2015-09-29 | Bromium, Inc. | Seamless management of untrusted data using virtual machines |
US9104837B1 (en) | 2012-06-18 | 2015-08-11 | Bromium, Inc. | Exposing subset of host file systems to restricted virtual machines based on upon performing user-initiated actions against host files |
US9116733B2 (en) | 2010-05-28 | 2015-08-25 | Bromium, Inc. | Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity |
US10095530B1 (en) | 2010-05-28 | 2018-10-09 | Bromium, Inc. | Transferring control of potentially malicious bit sets to secure micro-virtual machine |
US9239909B2 (en) | 2012-01-25 | 2016-01-19 | Bromium, Inc. | Approaches for protecting sensitive data within a guest operating system |
US9767274B2 (en) * | 2011-11-22 | 2017-09-19 | Bromium, Inc. | Approaches for efficient physical to virtual disk conversion |
US9135038B1 (en) | 2010-05-28 | 2015-09-15 | Bromium, Inc. | Mapping free memory pages maintained by a guest operating system to a shared zero page within a machine frame |
US8752047B2 (en) | 2010-05-28 | 2014-06-10 | Bromium, Inc. | Automated management of virtual machines to process untrusted data based on client policy information |
US8885488B2 (en) | 2010-06-02 | 2014-11-11 | Brocade Communication Systems, Inc. | Reachability detection in trill networks |
US8634308B2 (en) | 2010-06-02 | 2014-01-21 | Brocade Communications Systems, Inc. | Path detection in trill networks |
US9806906B2 (en) | 2010-06-08 | 2017-10-31 | Brocade Communications Systems, Inc. | Flooding packets on a per-virtual-network basis |
US9246703B2 (en) | 2010-06-08 | 2016-01-26 | Brocade Communications Systems, Inc. | Remote port mirroring |
US9628293B2 (en) | 2010-06-08 | 2017-04-18 | Brocade Communications Systems, Inc. | Network layer multicasting in trill networks |
US8446914B2 (en) | 2010-06-08 | 2013-05-21 | Brocade Communications Systems, Inc. | Method and system for link aggregation across multiple switches |
US9608833B2 (en) | 2010-06-08 | 2017-03-28 | Brocade Communications Systems, Inc. | Supporting multiple multicast trees in trill networks |
WO2012003486A1 (en) * | 2010-07-01 | 2012-01-05 | Neodana, Inc. | A system and method for virtualization and cloud security |
US9525647B2 (en) | 2010-07-06 | 2016-12-20 | Nicira, Inc. | Network control apparatus and method for creating and modifying logical switching elements |
US10103939B2 (en) | 2010-07-06 | 2018-10-16 | Nicira, Inc. | Network control apparatus and method for populating logical datapath sets |
US8750119B2 (en) | 2010-07-06 | 2014-06-10 | Nicira, Inc. | Network control apparatus and method with table mapping engine |
US9680750B2 (en) | 2010-07-06 | 2017-06-13 | Nicira, Inc. | Use of tunnels to hide network addresses |
US8964528B2 (en) | 2010-07-06 | 2015-02-24 | Nicira, Inc. | Method and apparatus for robust packet distribution among hierarchical managed switching elements |
US8782434B1 (en) | 2010-07-15 | 2014-07-15 | The Research Foundation For The State University Of New York | System and method for validating program execution at run-time |
US9807031B2 (en) | 2010-07-16 | 2017-10-31 | Brocade Communications Systems, Inc. | System and method for network configuration |
JP2012032877A (ja) * | 2010-07-28 | 2012-02-16 | Fujitsu Ltd | 情報処理装置を管理するプログラム、管理方法および管理装置 |
JP5618137B2 (ja) * | 2010-09-08 | 2014-11-05 | 日本電気株式会社 | 仮想クライアントサーバ及び仮想クライアントサーバの制御方法 |
JP5181008B2 (ja) * | 2010-10-01 | 2013-04-10 | 富士フイルム株式会社 | 自動処理リスト作成装置、方法並びにプログラム |
US10289453B1 (en) * | 2010-12-07 | 2019-05-14 | Amazon Technologies, Inc. | Allocating computing resources |
US20120144390A1 (en) * | 2010-12-07 | 2012-06-07 | Microsoft Corporation | Customized computer image preparation and deployment including virtual machine mode |
US8699499B2 (en) | 2010-12-08 | 2014-04-15 | At&T Intellectual Property I, L.P. | Methods and apparatus to provision cloud computing network elements |
US9110709B2 (en) * | 2010-12-14 | 2015-08-18 | International Business Machines Corporation | Preserving changes to a configuration of a running virtual machine |
US9128803B2 (en) | 2010-12-15 | 2015-09-08 | Microsoft Technology Licensing, Llc | Application model for implementing composite applications |
US9612855B2 (en) * | 2011-01-10 | 2017-04-04 | International Business Machines Corporation | Virtual machine migration based on the consent by the second virtual machine running of the target host |
US8805951B1 (en) * | 2011-02-08 | 2014-08-12 | Emc Corporation | Virtual machines and cloud storage caching for cloud computing applications |
US8490091B2 (en) * | 2011-03-28 | 2013-07-16 | International Business Machines Corporation | Virtual machine placement to improve memory utilization |
US8706859B2 (en) * | 2011-03-29 | 2014-04-22 | Hitachi, Ltd. | Method and apparatus of data center file system |
US9270572B2 (en) | 2011-05-02 | 2016-02-23 | Brocade Communications Systems Inc. | Layer-3 support in TRILL networks |
US9043452B2 (en) | 2011-05-04 | 2015-05-26 | Nicira, Inc. | Network control apparatus and method for port isolation |
US8839245B1 (en) | 2012-06-18 | 2014-09-16 | Bromium, Inc. | Transferring files using a virtualized application |
US10546118B1 (en) | 2011-05-25 | 2020-01-28 | Hewlett-Packard Development Company, L.P. | Using a profile to provide selective access to resources in performing file operations |
US9921860B1 (en) | 2011-05-25 | 2018-03-20 | Bromium, Inc. | Isolation of applications within a virtual machine |
US10846396B1 (en) | 2011-05-25 | 2020-11-24 | Hewlett-Packard Development Company, L.P. | Downloading data in a dedicated virtual machine |
TW201250482A (en) * | 2011-06-02 | 2012-12-16 | Hon Hai Prec Ind Co Ltd | System and method for updating virtual machine templates |
US8718835B2 (en) | 2011-06-17 | 2014-05-06 | Microsoft Corporation | Optimized temperature-driven device cooling |
FR2977116A1 (fr) * | 2011-06-27 | 2012-12-28 | France Telecom | Procede de fourniture de service d'execution de logiciel a la demande |
US8948056B2 (en) | 2011-06-28 | 2015-02-03 | Brocade Communication Systems, Inc. | Spanning-tree based loop detection for an ethernet fabric switch |
US8879549B2 (en) | 2011-06-28 | 2014-11-04 | Brocade Communications Systems, Inc. | Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch |
US9401861B2 (en) | 2011-06-28 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable MAC address distribution in an Ethernet fabric switch |
US9407533B2 (en) | 2011-06-28 | 2016-08-02 | Brocade Communications Systems, Inc. | Multicast in a trill network |
US9007958B2 (en) | 2011-06-29 | 2015-04-14 | Brocade Communication Systems, Inc. | External loop detection for an ethernet fabric switch |
US8819660B2 (en) | 2011-06-29 | 2014-08-26 | Microsoft Corporation | Virtual machine block substitution |
US8885641B2 (en) | 2011-06-30 | 2014-11-11 | Brocade Communication Systems, Inc. | Efficient trill forwarding |
US20130227572A1 (en) * | 2011-08-01 | 2013-08-29 | Nec Corporation | Test device, a system, a program and a method |
US9158561B2 (en) * | 2011-08-18 | 2015-10-13 | Vmware, Inc. | Systems and methods for modifying an operating system for a virtual machine |
US9736085B2 (en) | 2011-08-29 | 2017-08-15 | Brocade Communications Systems, Inc. | End-to end lossless Ethernet in Ethernet fabric |
US9699117B2 (en) | 2011-11-08 | 2017-07-04 | Brocade Communications Systems, Inc. | Integrated fibre channel support in an ethernet fabric switch |
US9450870B2 (en) | 2011-11-10 | 2016-09-20 | Brocade Communications Systems, Inc. | System and method for flow management in software-defined networks |
US9626222B2 (en) * | 2012-01-17 | 2017-04-18 | Alcatel Lucent | Method and apparatus for network and storage-aware virtual machine placement |
US8995272B2 (en) | 2012-01-26 | 2015-03-31 | Brocade Communication Systems, Inc. | Link aggregation in software-defined networks |
US9742693B2 (en) | 2012-02-27 | 2017-08-22 | Brocade Communications Systems, Inc. | Dynamic service insertion in a fabric switch |
US9245108B1 (en) | 2012-03-13 | 2016-01-26 | Bromium, Inc. | Dynamic adjustment of the file format to identify untrusted files |
US9154416B2 (en) | 2012-03-22 | 2015-10-06 | Brocade Communications Systems, Inc. | Overlay tunnel in a fabric switch |
JP5318246B2 (ja) * | 2012-04-12 | 2013-10-16 | 株式会社日立製作所 | プログラム配信装置及び方法 |
CN104081734B (zh) | 2012-04-18 | 2018-01-30 | Nicira股份有限公司 | 利用事务使分布式网络控制系统中的波动降至最小 |
US9152640B2 (en) | 2012-05-10 | 2015-10-06 | Hewlett-Packard Development Company, L.P. | Determining file allocation based on file operations |
US9374301B2 (en) | 2012-05-18 | 2016-06-21 | Brocade Communications Systems, Inc. | Network feedback in software-defined networks |
US10277464B2 (en) | 2012-05-22 | 2019-04-30 | Arris Enterprises Llc | Client auto-configuration in a multi-switch link aggregation |
CN104272668B (zh) | 2012-05-23 | 2018-05-22 | 博科通讯系统有限公司 | 层3覆盖网关 |
US11023088B2 (en) | 2012-06-18 | 2021-06-01 | Hewlett-Packard Development Company, L.P. | Composing the display of a virtualized web browser |
US9201850B1 (en) | 2012-06-18 | 2015-12-01 | Bromium, Inc. | Composing the display of a virtualized web browser |
US10095662B1 (en) | 2012-06-18 | 2018-10-09 | Bromium, Inc. | Synchronizing resources of a virtualized browser |
US9384026B1 (en) | 2012-06-18 | 2016-07-05 | Bromium, Inc. | Sharing and injecting cookies into virtual machines for retrieving requested web pages |
US9734131B1 (en) | 2012-06-18 | 2017-08-15 | Bromium, Inc. | Synchronizing history data across a virtualized web browser |
US9727534B1 (en) | 2012-06-18 | 2017-08-08 | Bromium, Inc. | Synchronizing cookie data using a virtualized browser |
CN102799464B (zh) * | 2012-06-25 | 2015-11-11 | 北京奇虎科技有限公司 | 虚拟机创建方法及系统、虚拟机重装方法及系统 |
EP3364297B1 (de) | 2012-06-26 | 2022-05-04 | Lynx Software Technologies Inc. | Systeme und verfahren mit hardware-virtualisierungsfunktionen wie trennungskernel-hypervisoren, hypervisoren, hypervisor-gast-kontext, hypervisorkontext, rootkit-erkennungsprävention und anderen funktionen |
US9231892B2 (en) | 2012-07-09 | 2016-01-05 | Vmware, Inc. | Distributed virtual switch configuration and state management |
CN103593256B (zh) * | 2012-08-15 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种基于多层排重的虚机快照备份方法和系统 |
US9602430B2 (en) | 2012-08-21 | 2017-03-21 | Brocade Communications Systems, Inc. | Global VLANs for fabric switches |
CN103677858B (zh) * | 2012-08-30 | 2019-09-10 | 南京中兴新软件有限责任公司 | 一种云环境中虚拟机软件管理的方法、系统及设备 |
CN103677878B (zh) | 2012-09-12 | 2017-07-14 | 国际商业机器公司 | 一种打补丁的方法和装置 |
US9063721B2 (en) | 2012-09-14 | 2015-06-23 | The Research Foundation For The State University Of New York | Continuous run-time validation of program execution: a practical approach |
US9069782B2 (en) | 2012-10-01 | 2015-06-30 | The Research Foundation For The State University Of New York | System and method for security and privacy aware virtual machine checkpointing |
US9208041B2 (en) | 2012-10-05 | 2015-12-08 | International Business Machines Corporation | Dynamic protection of a master operating system image |
US9286051B2 (en) | 2012-10-05 | 2016-03-15 | International Business Machines Corporation | Dynamic protection of one or more deployed copies of a master operating system image |
US9311070B2 (en) | 2012-10-05 | 2016-04-12 | International Business Machines Corporation | Dynamically recommending configuration changes to an operating system image |
US8990772B2 (en) | 2012-10-16 | 2015-03-24 | International Business Machines Corporation | Dynamically recommending changes to an association between an operating system image and an update group |
US9600316B2 (en) | 2012-10-17 | 2017-03-21 | Microsoft Technology Licensing, Llc | Augmented allocation of virtual machines for application |
JP2014096675A (ja) * | 2012-11-08 | 2014-05-22 | Hitachi Ltd | 通信装置、及び、設定方法 |
US9401872B2 (en) | 2012-11-16 | 2016-07-26 | Brocade Communications Systems, Inc. | Virtual link aggregations across multiple fabric switches |
US9032157B2 (en) * | 2012-12-11 | 2015-05-12 | International Business Machines Corporation | Virtual machine failover |
US9069701B2 (en) * | 2012-12-11 | 2015-06-30 | International Business Machines Corporation | Virtual machine failover |
CN103229150B (zh) * | 2012-12-24 | 2016-01-13 | 华为技术有限公司 | 数据控制方法及系统 |
US9548926B2 (en) | 2013-01-11 | 2017-01-17 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
US9350680B2 (en) | 2013-01-11 | 2016-05-24 | Brocade Communications Systems, Inc. | Protection switching over a virtual link aggregation |
US9413691B2 (en) | 2013-01-11 | 2016-08-09 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9565113B2 (en) | 2013-01-15 | 2017-02-07 | Brocade Communications Systems, Inc. | Adaptive link aggregation and virtual link aggregation |
US9304793B2 (en) * | 2013-01-16 | 2016-04-05 | Vce Company, Llc | Master automation service |
US9565099B2 (en) | 2013-03-01 | 2017-02-07 | Brocade Communications Systems, Inc. | Spanning tree in fabric switches |
WO2014145750A1 (en) | 2013-03-15 | 2014-09-18 | Brocade Communications Systems, Inc. | Scalable gateways for a fabric switch |
US10230567B2 (en) * | 2013-04-01 | 2019-03-12 | Dell Products L.P. | Management of a plurality of system control networks |
CN104142847B (zh) * | 2013-05-06 | 2017-09-29 | 中国银联股份有限公司 | 云计算环境下的无状态化虚拟机及其应用 |
US9432215B2 (en) | 2013-05-21 | 2016-08-30 | Nicira, Inc. | Hierarchical network managers |
US9292328B2 (en) | 2013-05-24 | 2016-03-22 | Bromium, Inc. | Management of supervisor mode execution protection (SMEP) by a hypervisor |
CN103281210B (zh) * | 2013-06-08 | 2016-01-20 | 山东瑞宁信息技术有限公司 | 网络设备的配置文件的版本管理系统 |
US9699001B2 (en) | 2013-06-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Scalable and segregated network virtualization |
US9565028B2 (en) | 2013-06-10 | 2017-02-07 | Brocade Communications Systems, Inc. | Ingress switch multicast distribution in a fabric switch |
US10218564B2 (en) | 2013-07-08 | 2019-02-26 | Nicira, Inc. | Unified replication mechanism for fault-tolerance of state |
US9559870B2 (en) | 2013-07-08 | 2017-01-31 | Nicira, Inc. | Managing forwarding of logical network traffic between physical domains |
US9218207B1 (en) * | 2013-07-09 | 2015-12-22 | Ca, Inc. | Configuring virtualization environments |
EP3022649A1 (de) * | 2013-07-19 | 2016-05-25 | Hewlett Packard Enterprise Development LP | Ressourcenverwaltungssystem und -verfahren für virtuelle maschine |
US9973382B2 (en) | 2013-08-15 | 2018-05-15 | Nicira, Inc. | Hitless upgrade for network control applications |
US9806949B2 (en) | 2013-09-06 | 2017-10-31 | Brocade Communications Systems, Inc. | Transparent interconnection of Ethernet fabric switches |
US9537775B2 (en) * | 2013-09-23 | 2017-01-03 | Oracle International Corporation | Methods, systems, and computer readable media for diameter load and overload information and virtualization |
US9596126B2 (en) | 2013-10-10 | 2017-03-14 | Nicira, Inc. | Controller side method of generating and updating a controller assignment list |
US9912612B2 (en) | 2013-10-28 | 2018-03-06 | Brocade Communications Systems LLC | Extended ethernet fabric switches |
US20150121373A1 (en) * | 2013-10-30 | 2015-04-30 | Alistair Black | User Privacy Systems And Methods |
US11388082B2 (en) | 2013-11-27 | 2022-07-12 | Oracle International Corporation | Methods, systems, and computer readable media for diameter routing using software defined network (SDN) functionality |
US9519513B2 (en) * | 2013-12-03 | 2016-12-13 | Vmware, Inc. | Methods and apparatus to automatically configure monitoring of a virtual machine |
US10599565B2 (en) | 2013-12-24 | 2020-03-24 | Hewlett-Packard Development Company, L.P. | Hypervisor managing memory addressed above four gigabytes |
US10430614B2 (en) | 2014-01-31 | 2019-10-01 | Bromium, Inc. | Automatic initiation of execution analysis |
US9548873B2 (en) | 2014-02-10 | 2017-01-17 | Brocade Communications Systems, Inc. | Virtual extensible LAN tunnel keepalives |
US9678731B2 (en) | 2014-02-26 | 2017-06-13 | Vmware, Inc. | Methods and apparatus to generate a customized application blueprint |
US10581758B2 (en) | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
US10476698B2 (en) | 2014-03-20 | 2019-11-12 | Avago Technologies International Sales Pte. Limited | Redundent virtual link aggregation group |
US9417902B1 (en) * | 2014-03-24 | 2016-08-16 | Amazon Technologies, Inc. | Managing resource bursting |
US9952877B2 (en) * | 2014-04-23 | 2018-04-24 | Cisco Technology, Inc. | Booting a physical device using custom-created frozen partially-booted virtual machines |
US10063473B2 (en) | 2014-04-30 | 2018-08-28 | Brocade Communications Systems LLC | Method and system for facilitating switch virtualization in a network of interconnected switches |
US10164894B2 (en) | 2014-05-05 | 2018-12-25 | Nicira, Inc. | Buffered subscriber tables for maintaining a consistent network state |
US9800471B2 (en) | 2014-05-13 | 2017-10-24 | Brocade Communications Systems, Inc. | Network extension groups of global VLANs in a fabric switch |
WO2015176029A1 (en) | 2014-05-15 | 2015-11-19 | Lynx Software Technologies, Inc. | Systems and methods involving features of hardware virtualization such as hypervisor, pages of interest, and/or other features |
WO2016004263A1 (en) | 2014-07-01 | 2016-01-07 | Lynx Software Technologies, Inc. | Systems and methods involving aspects of hardware virtualization such as separation kernel hypervisors, hypervisors, hypervisor guest context, hypervisor context, anti-fingerprinting, and/or other features |
US9203855B1 (en) | 2014-05-15 | 2015-12-01 | Lynx Software Technologies, Inc. | Systems and methods involving aspects of hardware virtualization such as hypervisor, detection and interception of code or instruction execution including API calls, and/or other features |
WO2015176046A1 (en) | 2014-05-15 | 2015-11-19 | Lynx Software Technologies, Inc. | Systems and methods involving features of hardware virtualization, hypervisor, apis of interest, and/or other features |
US10884775B2 (en) * | 2014-06-17 | 2021-01-05 | Nokia Solutions And Networks Oy | Methods and apparatus to control a virtual machine |
US9680873B1 (en) | 2014-06-30 | 2017-06-13 | Bromium, Inc. | Trusted network detection |
US20150378763A1 (en) | 2014-06-30 | 2015-12-31 | Vmware, Inc. | Methods and apparatus to manage monitoring agents |
US11782745B2 (en) | 2014-07-01 | 2023-10-10 | Lynx Software Technologies, Inc. | Systems and methods involving aspects of hardware virtualization such as separation kernel hypervisors, hypervisors, hypervisor guest context, hypervisor context, anti-fingerprinting and/or other features |
US10616108B2 (en) | 2014-07-29 | 2020-04-07 | Avago Technologies International Sales Pte. Limited | Scalable MAC address virtualization |
US9544219B2 (en) | 2014-07-31 | 2017-01-10 | Brocade Communications Systems, Inc. | Global VLAN services |
US9807007B2 (en) | 2014-08-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Progressive MAC address learning |
US10311122B1 (en) | 2014-08-22 | 2019-06-04 | Bromium, Inc. | On-demand unprotected mode access |
US10481933B2 (en) | 2014-08-22 | 2019-11-19 | Nicira, Inc. | Enabling virtual machines access to switches configured by different management entities |
US10296320B2 (en) * | 2014-09-10 | 2019-05-21 | International Business Machines Corporation | Patching systems and applications in a virtualized environment |
US9600312B2 (en) * | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
US9524173B2 (en) | 2014-10-09 | 2016-12-20 | Brocade Communications Systems, Inc. | Fast reboot for a switch |
US9699029B2 (en) | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
JP5904514B1 (ja) * | 2014-10-28 | 2016-04-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 仮想マシンのスナップショットに対して更新を自動的に適用する方法、並びに、そのコンピュータ・システム及びコンピュータ・システム用プログラム |
US9740474B2 (en) | 2014-10-29 | 2017-08-22 | Oracle International Corporation | Orchestration of software applications upgrade using automatic hang detection |
US9880828B2 (en) | 2014-11-07 | 2018-01-30 | Oracle International Corporation | Notifications framework for distributed software upgrades |
US9628407B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Multiple software versions in a switch group |
US9626255B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Online restoration of a switch snapshot |
US9942097B2 (en) | 2015-01-05 | 2018-04-10 | Brocade Communications Systems LLC | Power management in a network of interconnected switches |
US10003552B2 (en) | 2015-01-05 | 2018-06-19 | Brocade Communications Systems, Llc. | Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches |
US10719608B2 (en) * | 2015-02-06 | 2020-07-21 | Honeywell International Inc. | Patch monitoring and analysis |
US11061705B2 (en) | 2015-03-16 | 2021-07-13 | Bmc Software, Inc. | Maintaining virtual machine templates |
US10038592B2 (en) | 2015-03-17 | 2018-07-31 | Brocade Communications Systems LLC | Identifier assignment to a new switch in a switch group |
US9807005B2 (en) | 2015-03-17 | 2017-10-31 | Brocade Communications Systems, Inc. | Multi-fabric manager |
US9967134B2 (en) | 2015-04-06 | 2018-05-08 | Nicira, Inc. | Reduction of network churn based on differences in input state |
US10579406B2 (en) | 2015-04-08 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Dynamic orchestration of overlay tunnels |
US9760398B1 (en) * | 2015-06-29 | 2017-09-12 | Amazon Technologies, Inc. | Automatic placement of virtual machine instances |
US9785474B2 (en) | 2015-07-23 | 2017-10-10 | International Business Machines Corporation | Managing a shared pool of configurable computing resources using a set of scaling factors and a set of workload resource data |
US10439929B2 (en) | 2015-07-31 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Graceful recovery of a multicast-enabled switch |
US10169086B2 (en) * | 2015-09-13 | 2019-01-01 | International Business Machines Corporation | Configuration management for a shared pool of configurable computing resources |
US10171303B2 (en) | 2015-09-16 | 2019-01-01 | Avago Technologies International Sales Pte. Limited | IP-based interconnection of switches with a logical chassis |
US9848039B2 (en) * | 2015-09-22 | 2017-12-19 | International Business Machines Corporation | Deployment of virtual machines |
US10204122B2 (en) | 2015-09-30 | 2019-02-12 | Nicira, Inc. | Implementing an interface between tuple and message-driven control entities |
US10846195B2 (en) * | 2015-10-05 | 2020-11-24 | Unisys Corporation | Configuring logging in non-emulated environment using commands and configuration in emulated environment |
US9898325B2 (en) * | 2015-10-20 | 2018-02-20 | Vmware, Inc. | Configuration settings for configurable virtual components |
CN105373477B (zh) * | 2015-11-25 | 2022-01-11 | 普华基础软件股份有限公司 | 一种容量测试方法 |
US9912614B2 (en) | 2015-12-07 | 2018-03-06 | Brocade Communications Systems LLC | Interconnection of switches based on hierarchical overlay tunneling |
US10075557B2 (en) * | 2015-12-30 | 2018-09-11 | Amazon Technologies, Inc. | Service authorization handshake |
US10990507B2 (en) | 2016-02-25 | 2021-04-27 | Dell Products L.P. | System and method for provisioning a virtual machine test environment |
US11019167B2 (en) | 2016-04-29 | 2021-05-25 | Nicira, Inc. | Management of update queues for network controller |
US10768920B2 (en) * | 2016-06-15 | 2020-09-08 | Microsoft Technology Licensing, Llc | Update coordination in a multi-tenant cloud computing environment |
US10402181B2 (en) * | 2016-07-18 | 2019-09-03 | Airwatch Llc | Generating and optimizing deployment configurations for enrolled devices |
US10031834B2 (en) | 2016-08-31 | 2018-07-24 | Microsoft Technology Licensing, Llc | Cache-based tracing for time travel debugging and analysis |
US10331460B2 (en) * | 2016-09-29 | 2019-06-25 | Vmware, Inc. | Upgrading customized configuration files |
US10489273B2 (en) | 2016-10-20 | 2019-11-26 | Microsoft Technology Licensing, Llc | Reuse of a related thread's cache while recording a trace file of code execution |
US10237090B2 (en) | 2016-10-28 | 2019-03-19 | Avago Technologies International Sales Pte. Limited | Rule-based network identifier mapping |
US10572237B2 (en) | 2016-12-12 | 2020-02-25 | AT&T Intellectual Property I, I.P. | Managing software changes to virtual network functions |
KR101954623B1 (ko) * | 2017-02-27 | 2019-03-06 | 한국전자통신연구원 | 가상화 환경에서의 소프트웨어 업데이트 장치 및 방법 |
US11080041B1 (en) * | 2017-03-30 | 2021-08-03 | Amazon Technologies, Inc. | Operating system management for virtual workspaces |
US10318332B2 (en) | 2017-04-01 | 2019-06-11 | Microsoft Technology Licensing, Llc | Virtual machine execution tracing |
US10445007B1 (en) * | 2017-04-19 | 2019-10-15 | Rockwell Collins, Inc. | Multi-core optimized warm-start loading approach |
US10402192B2 (en) | 2017-07-25 | 2019-09-03 | Aurora Labs Ltd. | Constructing software delta updates for vehicle ECU software and abnormality detection based on toolchain |
US10999220B2 (en) | 2018-07-05 | 2021-05-04 | Vmware, Inc. | Context aware middlebox services at datacenter edge |
US11184327B2 (en) | 2018-07-05 | 2021-11-23 | Vmware, Inc. | Context aware middlebox services at datacenter edges |
JP7238351B2 (ja) * | 2018-11-13 | 2023-03-14 | 日本電気株式会社 | 仮想マシンテンプレート管理システム及び仮想マシンテンプレート管理方法 |
US10735541B2 (en) | 2018-11-30 | 2020-08-04 | Vmware, Inc. | Distributed inline proxy |
US10958517B2 (en) | 2019-02-15 | 2021-03-23 | At&T Intellectual Property I, L.P. | Conflict-free change deployment |
US11641305B2 (en) | 2019-12-16 | 2023-05-02 | Vmware, Inc. | Network diagnosis in software-defined networking (SDN) environments |
CN112416369B (zh) * | 2020-11-29 | 2022-11-29 | 中国科学院电子学研究所苏州研究院 | 一种面向异构混合环境的智能化部署方法 |
US20210116982A1 (en) * | 2020-12-23 | 2021-04-22 | Intel Corporation | Methods and apparatus to optimize a guard band of a hardware resource |
CN113326098B (zh) * | 2021-06-11 | 2023-11-14 | 成都精灵云科技有限公司 | 支持kvm虚拟化与容器虚拟化的云管平台 |
CN113486036B (zh) * | 2021-07-07 | 2023-12-29 | 广州博冠信息科技有限公司 | 虚拟资源管理方法及装置、电子设备和存储介质 |
CN117389691B (zh) * | 2023-12-11 | 2024-03-22 | 利尔达科技集团股份有限公司 | 一种基于嵌入式操作系统的虚拟机 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760903B1 (en) * | 1996-08-27 | 2004-07-06 | Compuware Corporation | Coordinated application monitoring in a distributed computing environment |
US5999988A (en) * | 1997-03-31 | 1999-12-07 | Sun Microsystems, Inc. | Method and apparatus for generating and employing a run-time generated stub to reference an object in object oriented systems |
US6349344B1 (en) * | 1997-12-16 | 2002-02-19 | Microsoft Corporation | Combining multiple java class files into a run-time image |
US6795966B1 (en) * | 1998-05-15 | 2004-09-21 | Vmware, Inc. | Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction |
US6430564B1 (en) * | 1999-03-01 | 2002-08-06 | Hewlett-Packard Company | Java data manager for embedded device |
US6460178B1 (en) * | 1999-06-30 | 2002-10-01 | Microsoft Corporation | Shared library optimization for heterogeneous programs |
US6584612B1 (en) * | 1999-07-15 | 2003-06-24 | International Business Machines Corporation | Transparent loading of resources from read-only memory for an application program |
US6404445B1 (en) * | 1999-12-30 | 2002-06-11 | Cybrant Corporation | Method and system for modeling data |
US6760483B1 (en) * | 2000-10-13 | 2004-07-06 | Vimatix (Bvi) Ltd. | Method and apparatus for image analysis and processing by identification of characteristic lines and corresponding parameters |
US7080373B2 (en) * | 2001-03-07 | 2006-07-18 | Freescale Semiconductor, Inc. | Method and device for creating and using pre-internalized program files |
US7043716B2 (en) * | 2001-06-13 | 2006-05-09 | Arius Software Corporation | System and method for multiple level architecture by use of abstract application notation |
US7158972B2 (en) * | 2001-12-11 | 2007-01-02 | Sun Microsystems, Inc. | Methods and apparatus for managing multiple user systems |
US20040044643A1 (en) * | 2002-04-11 | 2004-03-04 | Devries David A. | Managing multiple virtual machines |
US6988139B1 (en) * | 2002-04-26 | 2006-01-17 | Microsoft Corporation | Distributed computing of a job corresponding to a plurality of predefined tasks |
US7535492B2 (en) * | 2002-07-02 | 2009-05-19 | Lightsurf Technologies, Inc. | Imaging system providing automated fulfillment of image photofinishing based on location |
US6792460B2 (en) * | 2002-10-02 | 2004-09-14 | Mercury Interactive Corporation | System and methods for monitoring application server performance |
US7203941B2 (en) * | 2002-11-14 | 2007-04-10 | Microsoft Corporation | Associating a native resource with an application |
US8209680B1 (en) * | 2003-04-11 | 2012-06-26 | Vmware, Inc. | System and method for disk imaging on diverse computers |
KR100871778B1 (ko) * | 2003-10-23 | 2008-12-05 | 이노패스 소프트웨어, 아이엔시. | 중앙집중형 동적 어드레싱 매니저를 이용한 동적 어드레싱방법 및 장치 |
US7243207B1 (en) * | 2004-09-27 | 2007-07-10 | Network Appliance, Inc. | Technique for translating a pure virtual file system data stream into a hybrid virtual volume |
-
2005
- 2005-02-11 US US11/056,645 patent/US20060184937A1/en not_active Abandoned
-
2006
- 2006-02-09 JP JP2006032326A patent/JP2006221649A/ja active Pending
- 2006-02-09 SG SG200600825A patent/SG125199A1/en unknown
- 2006-02-09 GB GB0813842A patent/GB2451574B/en active Active
- 2006-02-09 FR FR0601141A patent/FR2885429B1/fr active Active
- 2006-02-09 IE IE20060086A patent/IE20060086A1/en not_active Application Discontinuation
- 2006-02-09 GB GB0602673A patent/GB2423168B/en active Active
- 2006-02-10 IT IT000097A patent/ITTO20060097A1/it unknown
- 2006-02-10 TW TW095104553A patent/TWI311256B/zh active
- 2006-02-10 DE DE102006006250A patent/DE102006006250A1/de not_active Ceased
- 2006-02-10 AU AU2006200571A patent/AU2006200571A1/en not_active Abandoned
- 2006-02-13 CN CNB2006100592601A patent/CN100410882C/zh active Active
-
2007
- 2007-02-08 HK HK07101506.8A patent/HK1097060A1/xx unknown
Also Published As
Publication number | Publication date |
---|---|
FR2885429B1 (fr) | 2008-12-12 |
CN100410882C (zh) | 2008-08-13 |
SG125199A1 (en) | 2006-09-29 |
US20060184937A1 (en) | 2006-08-17 |
GB2423168B (en) | 2009-07-15 |
AU2006200571A1 (en) | 2006-08-31 |
IE20060086A1 (en) | 2006-08-23 |
JP2006221649A (ja) | 2006-08-24 |
GB2423168A (en) | 2006-08-16 |
GB0813842D0 (en) | 2008-09-03 |
CN1818873A (zh) | 2006-08-16 |
GB2451574A (en) | 2009-02-04 |
HK1097060A1 (en) | 2007-06-15 |
TW200643737A (en) | 2006-12-16 |
FR2885429A1 (fr) | 2006-11-10 |
GB2451574B (en) | 2009-07-15 |
TWI311256B (en) | 2009-06-21 |
ITTO20060097A1 (it) | 2006-08-12 |
GB0602673D0 (en) | 2006-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102006006250A1 (de) | System und Verfahren für zentralisierte Software-Verwaltung in virtuellen Maschinen | |
DE102019133923B4 (de) | Anwendungsverwendung in einem behältermanagementsystem | |
DE60221019T2 (de) | Verwaltung von serverbetriebsmitteln für hostanwendungen | |
DE112011103829B4 (de) | Verfahren und System zum Erzeugen einer virtuellen Maschine auf der Grundlage von Vorlagen | |
CN101326489B (zh) | 用于运行多个环境的操作系统小型引导 | |
US20060184935A1 (en) | System and method using virtual machines for decoupling software from users and services | |
US9652267B2 (en) | Methods and systems for managing virtual and real machines | |
US8078728B1 (en) | Capacity pooling for application reservation and delivery | |
US20100332629A1 (en) | Secure custom application cloud computing architecture | |
DE112010003554B4 (de) | Symmetrische Direktmigration von Virtuellen Maschinen | |
US10620927B2 (en) | Method, arrangement, computer program product and data processing program for deploying a software service | |
DE112012004893B4 (de) | Implementieren eines Software-Abbildes auf mehreren Zielen unter Verwendung einer Datenstromtechnik | |
US20040044643A1 (en) | Managing multiple virtual machines | |
WO2010151273A1 (en) | Secure custom application cloud computing architecture | |
CN107256178A (zh) | 一种容器管理平台 | |
DE112020000912T5 (de) | Verwalten von software-programmen | |
DE102008003905A1 (de) | Softwarelizenzvertragsverwaltung basierend auf temporärer Verwendung | |
DE112011100094T5 (de) | Verfahren und System zum Abstrahieren eines auf nichtfunktionalen Anforderungen beruhenden Einsatzes von virtuellen Maschinen | |
CN103530170A (zh) | 在虚拟机环境中提供硬件虚拟化的系统和方法 | |
DE112021005636T5 (de) | Migrieren von komplexen legacy-anwendungen | |
DE102021127254A1 (de) | Inhaltssensitives Auswählen von Knoten zum Erstellen von Containern | |
DE102016222861A1 (de) | Transparentes, sicheres Durchführen von Abrufvorgängen | |
DE112021004290T5 (de) | Gemeinsames nutzen von zwischengespeicherten klassendaten in einer containerisierten umgebung | |
CN102426530A (zh) | 使用高特权过程远程安装软件 | |
Infrastructure | Resource management with VMware DRS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection | ||
8170 | Reinstatement of the former position | ||
R011 | All appeals rejected, refused or otherwise settled | ||
R003 | Refusal decision now final |
Effective date: 20120224 |