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 PDF

Info

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
Application number
DE102006006250A
Other languages
English (en)
Inventor
Timothy Pfluggerville Abels
Balasubramanian Austin Chandrasekaran
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dell Products LP
Original Assignee
Dell Products LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dell Products LP filed Critical Dell Products LP
Publication of DE102006006250A1 publication Critical patent/DE102006006250A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

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 Datenzentrum 10 mit Verwaltungs-Konfigurationen 14 und Anwender-/Dienste-Konfigurationen 16 dar, die jeder virtuellen Maschine 12 zugeordnet sind. Die virtuellen Maschinen 12 arbeiten auf Hardware-Ressourcen 22 eines Servers durch Aufrufen eines Software-Images 18, um basierend auf einer Server-Hardewarekonfiguration 20 zu laufen. Inaktive virtuelle Maschinen werden in globalen Daten 24 gespeichert und durch Zuweisung einer gespeicherten virtuellen Maschine an gewünschte Verarbeitungskomponenten der Server-Hardware-Ressourcen 22 durch eine Ressourcen-Virtualisierungs-Engine 26 aktiviert. Z.B. wird eine Datenverarbeitungsfunktion am Ende eines Geschäftstages durchgeführt, indem eine virtuelle Maschine 12 aufgerufen wird, die die Datenverarbeitungsfunktion durchführt, sobald die Daten verfügbar sind. Ressourcen-Virtualisierungs-Engine 26 weist die virtuelle Maschine 12 einer CPU der Server-Hardware-Ressourcen 22 zu und bootet das Betriebssystem der virtuellen Maschine 12 auf der CPU, um die Funktion auszuführen. Nach dem Abschluss der Datenverarbeitungsfunktion deaktiviert die Ressourcen-Virtualisierungs-Engine 26 die virtuelle Maschine 12 zur Speicherung in den globalen Daten 24. 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 Datenzentrum 10 von 1 umfasst mit jeder virtuellen Maschine 12 eine Verwaltungskonfiguration 14 und eine Anwender-/Dienste-Konfiguration 16, 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 Maschine 12 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 Maschine 12 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 Richtlinieneinhaltungsregeln 28 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-Einhaltungsregeln 28 festgelegt werden. Die Verwaltungskonfiguration 14 kann eine XML-Datei sein, die die Verwaltungspräferenzen in einem standardisierten Format speichert. Das Koppeln von Verwaltungspräferenzen an virtuelle Maschinen mit der Verwaltungskonfiguration 14 unterstützt Verwaltereingaben an Virtualisierungsschichten durch eine Überwachungsengine 30 zum Ressourcengebrauch und Verwalterausgaben an Virtualisierungsschichten durch eine globale Richtlinienengine 32, um Konflikte bei Verwalteraktualisierungen an Anwender, Software und Hardware zu vermeiden, während virtuelle Maschinen laufen. Z.B. definiert die Verwaltungskonfiguration 14 Präferenzen für Ansichten, Leistungen, Ort, Prioritäten und Privilegien einer virtuellen Maschine. Die Präferenzen können durch eine Verwaltungsschnittstelle 34 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-Engine 32 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 Überwachungsengine 30 zum Ressourcengebrauch erzeugt eine Rückkoppelungsschleife mit der globalen Richtlinienengine 32, um die Zuweisung von virtuellen Maschinen über die Verarbeitungskomponenten der Server-Hardwareressourcen 22 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-Engine 30 zum Ressourcengebrauch die Prioritäten, die den Verwaltungspräferenzen von aktiven virtuellen Maschinen zugeordnet sind, so dass die globale Richtlinien-Engine 32 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 Überwachungsengine 30 zum Ressourcengebrauch und die globale Richtlinienengine 32, 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-Konfiguration 16 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-Konfiguration 16 unterstützt Verwaltereingaben an Virtualisierungsschichten durch eine Anwender-/Dienste-Schnittstelle 36 und eine Dienste-Virtualisierungsengine 38. Das Zuordnen der Verwaltungskonfiguration 14 und der Anwender-/Dienste-Konfiguration 16 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-Konfiguration 16 durch eine Anwender-/Dienste-Schnittstelle 36 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 Ressourcengebrauch 30 und die globale Richtlinienengine 32 die Zuweisung der virtuellen Maschine an die Verarbeitungskomponenten der Server-Hardwareressourcen 22 entsprechend der verfügbaren Kapazität und Preiseinschränkungen anpassen, die durch die Einhaltungsregeln 28 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-Image 40 dar, das Laufzeit-Images von mehreren virtuellen Maschinen 12 unterstützt, die Vorbereitungsdateien von Anwendungssystemen in ihren Software-Images 18 aufweisen. Wenn eine virtuelle Maschine 12 von globalen Daten 24 zum Betrieb auf Server-Hardwareressourcen 22 aufgerufen wird, liest die Ressourcen-Virtualisierungs-Engine 26 das nur lesbare Image 40, um die virtuelle Maschine 12 mit dem nur lesbaren Image 40 der Anwendung zu booten, das mit Informationen aus der Vorbereitungsdatei des Anwendungsystems gefüllt ist, die in dem Software-Image 18 gespeichert sind. Z.B. ist das nur lesbare Image 40 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-Konfiguration 16 gespeichert, und die Version oder Klasse des Betriebsystems oder der Anwendung wird in der Verwaltungskonfiguration 14 gespeichert. Deshalb agiert das nur lesbare Anwendungs-Image 40 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-Konfiguration 16 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 Anwendungen 42, die auf dem Betriebssystem 44 und der CPU 46 laufen. Aktualisierungen für das nur lesbare Anwendungs-Image 40 werden durch einen Anwendungs-Patchmanager 48 durchgeführt, der auch auf der virtuellen Maschine 12 läuft, und der über eine Schreibberechtigung verfügt, um Aktualisierungen oder Patches auf das nur lesbare Anwendungs-Image 40 anzuwenden. Bevor der Anwendungs-Patchmanager 48 eine Aktualisierung auf das nur lesbare Anwendungs-Image 40 anwendet, werden virtuelle Maschinen, die diese Anwendungen laufen lassen, entweder beendet oder gespeichert, so dass Leseoperationen von dem nur lesbaren Anwendungs-Image 40 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-Patchmanager 48 durchgeführt wurde, werden die beendeten virtuellen Maschinen neu gestartet, um mit dem aktualisierten nur lesbaren AnwendungsImage 40 zu laufen. Virtuelle Maschinen, die von einer zwischengespeicherten Kopie der Anwendung vor der Aktualisierung laufen, können von dem aktualisierten nur lesbaren Anwendungs-Image 40 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-Image 40 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 Maschinenkloner 50 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-Image 40 zu kopieren.
  • Mit Bezug auf 3 ist eine Schichtansicht von virtuellen Maschinen mit einem gemeinsamen Image dargestellt. Eine Hardwareschicht 52 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 Speicher 54, wie etwa ein oder mehrere untereinander verbundene Festplattenlaufwerke. Der gemeinsam genutzte Speicher 54 speichert das nur lesbare Anwendungs-Image, das geklont wird, um Instanzen von virtuellen Maschinen 12 zu erzeugen. Eine Ressourcen-Virtualisierungsschicht 56 weist die Hardware-Ressourcen der Hardware-Schicht 52 zum Gebrauch durch die virtuelle Maschinenschicht 58 zu. In der virtuellen Maschinenschicht 58 laufen mehrere virtuelle Maschinen 12 als Klone des nur lesbaren Anwendungs-Images 40, das mit für jede virtuelle Maschine 12 eindeutigen Informationen gefüllt ist. Der Anwendungs-Patchmnanager 48 läuft als eine virtuelle Maschine, die auf das nur lesbare Anwendungs-Image 40 Zugriff hat. Wenn Patches auf das nur lesbare Image angewandt werden, beendet der Anwendungs-Patchmanager 48 die virtuellen Maschinen 12, 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)

  1. 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.
  2. System gemäß Anspruch 1, wobei die Anwendung ein Betriebssystem aufweist.
  3. 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.
  4. System gemäß Anspruch 3, wobei der Patchmanager eine virtuelle Maschine aufweist, die geeignet ist, auf den Verarbeitungskomponenten zu laufen.
  5. 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.
  6. 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.
  7. System gemäß Anspruch 1, wobei die virtuellen Maschinen weiterhin eine Verwaltungskonfiguration mit Anwendungsversionsinformationen aufweisen.
  8. System gemäß Anspruch 1, wobei die virtuellen Maschinen weiterhin eine Anwender-/Dienstekonfiguration mit Sicherheitszugangsinformationen aufweisen, die der Anwendung zugeordnet sind.
  9. 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.
  10. System gemäß Anspruch 1, weiterhin aufweisend einen virtuellen Maschinenkloner, der geeignet ist, eine virtuelle Maschine durch Kopieren der Anwendungssystem-Vorbereitungsdatei zu klonen.
  11. 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.
  12. Verfahren gemäß Anspruch 11, wobei die Anwendung ein Betriebssystem aufweist.
  13. 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.
  14. 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.
  15. 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.
  16. Verfahren gemäß Anspruch 11, weiterhin aufweisend: Klonen von einer oder mehreren virtuellen Maschinen durch Kopieren der Systemvorbereitungsdatei.
  17. 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.
  18. 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.
  19. 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.
  20. 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.
DE102006006250A 2005-02-11 2006-02-10 System und Verfahren für zentralisierte Software-Verwaltung in virtuellen Maschinen Ceased DE102006006250A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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