DE112012004247T5 - Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung - Google Patents

Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung Download PDF

Info

Publication number
DE112012004247T5
DE112012004247T5 DE112012004247.6T DE112012004247T DE112012004247T5 DE 112012004247 T5 DE112012004247 T5 DE 112012004247T5 DE 112012004247 T DE112012004247 T DE 112012004247T DE 112012004247 T5 DE112012004247 T5 DE 112012004247T5
Authority
DE
Germany
Prior art keywords
indexing
level
abstraction
virtual
virtual server
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
DE112012004247.6T
Other languages
English (en)
Inventor
Glenn c/o IBM Corp. Ammons
Vasanth c/o IBM Corp. Bala
Sastry c/o IBM Corp. Duri
Todd c/o IBM Corp. Mummert
Darrell c/o IBM Corp. Reimer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112012004247T5 publication Critical patent/DE112012004247T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)

Abstract

Aspekte der vorliegenden Erfindung stellen eine Lösung zum passiven Überwachen eines Computersystems bereit. Bei einer Ausführungsform wirkt ein Indexierungsagent an einem physischen Server, der eine Vielzahl von virtuellen Servern aufweist. Der Indexierungsagent besitzt eine Struktur mit einer Vielzahl von Indexierungsschichten. Jede dieser Indexierungsschichten ist so ausgelegt, dass sie einen virtuellen Server auf einer anderen Abstraktionsebene indexiert, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben. Des Weiteren weist jede der Indexierungsschichten eine Anwendungsprogrammierschnittstelle auf, die so ausgelegt ist, dass sie ein oder mehrere externe Indexierungsmodule aufnimmt, die in die Struktur einfügen sind. Jedes Indexierungsmodul ist so ausgelegt, dass es Befehle dem Indexierungsagenten bereitstellt, während die Indexierungsschicht, in welche er eingefügt wird, die zugehörige Abstraktionsebene der virtuellen Maschine indexiert.

Description

  • TECHNISCHES GEBIET
  • Der Gegenstand dieser Erfindung bezieht sich im Allgemeinen auf das Management von Computersystemen. Insbesondere stellen Aspekte der vorliegenden Erfindung eine Lösung für ein verbessertes passives Überwachen in einer komplexen virtuellen Umgebung bereit.
  • HINTERGRUND
  • In der heutigen elektronischen Umgebung unterliegen Computersysteme ständigen Veränderungen. Um mit diesen Veränderungen Schritt zu halten, ist es wichtig, dass Benutzer dieser Systeme in der Lage sind, die Systeme zu überwachen. Ein Überwachen kann in mehrere verschiedene Typen klassifiziert werden, zu denen aktives Überwachen und passives Überwachen gehören. Zu passivem Überwachen gehört jede Art von Beobachtungen, die das Computersystem nicht verändern. Dabei kann passives Überwachen ein Abtasten eines Dateisystems, um eine Konformitätsprüfung auszuführen, ein Abtasten einer Registratur, um zu ermitteln, welche Anwendungen aktuell in dem System installiert sind, eine Sicherheitsabtastung, eine Dateisystem-Prüfung, ein Überwachen der Lizenznutzung und dergleichen beinhalten. Im Unterschied dazu werden Aktivitäten wie etwa Fehlerbehebung, Anwenden eines Sicherheits-Update usw., die eine Modifikation des Computersystems beinhalten, als aktives Überwachen bezeichnet.
  • Standardisierung kann ein Gewinn beim Verwalten von effektiven Systemen darstellen. Standardisierung eines Datenzentrums hilft Kunden, Unterhaltungskosten durch Begrenzen der Anzahl der verschiedenen Systemvarianten zu kontrollieren, die in dem Datenzentrum betrieben werden. Dadurch können Kosten proportional zu der Anzahl von unterschiedlichen Software-Konfigurationen und nicht proportional zu den verschiedenen Instanzen dieser Konfigurationen ansteigen.
  • Um einige der Vorteile der Standardisierung zu realisieren, können Anbieter eines Computersystems sicherstellen, dass alle verwendeten Instanzen ihren Lebenszyklus an einem oder mehreren Standard-„Abbildern” oder im Voraus konfigurierten Software-Paketen beginnen. Um Ressourcen zu sparen, wird jeder einzelne Typ der verwendeten Instanz häufig auf einen Typ einer Task zugeschnitten, die der Benutzer der Instanz auszuführen wünscht. Das kann erfolgen, indem Funktionen eingeschlossen werden, die für ein Ausführen des bestimmten Typs von Task nützlich sind, und jene Funktionen weggelassen werden, bei denen das nicht der Fall ist. Außerdem kann die Wirksamkeit durch das Verwenden spezieller Betriebssysteme, Middleware und/oder Anwendungen verbessert werden, die den bestimmten Typ von Task wirksam ausführen, zu Lasten jener, bei denen das nicht der Fall ist. Dadurch können mehrere unterschiedliche Typen der verwendeten Instanzen erforderlich werden, die aus verschiedenen im Voraus konfigurierten Software-Paketen erzeugt werden, die unterschiedliche Kombinationen von Betriebssystemen, Middleware, Anwendungen usw. aufweisen, die auf demselben Computer ausgeführt werden.
  • Das kann problematisch werden, wenn es dazu kommt, Operationen des passiven Überwachens auszuführen, die an einer großen Anzahl der verwendeten Instanzen auszuführen sind. Ein Beispiel dieses Operationstyps ist die Drift-Erkennung. Nachdem eine verwendete Instanz die Ausführung beginnt, kann sie infolge von Änderungen in der Instanz von dem standardisierten Zustand abweichen. Diese Änderungen können zufällig, beabsichtigt, jedoch ohne schädlichen Vorsatz, oder von Natur aus böswillig sein. In jedem Fall können diese nicht gewollten Abweichungen bewirken, dass die bestimmte Instanz nicht korrekt funktioniert und/oder die Leistungsfähigkeit der Instanz im gesamten Computersystem beeinflusst wird, wobei möglicherweise weitere Instanzen beeinträchtigt werden. Wenn jedoch die Anzahl der Typen von Instanzen zunimmt, kann es bei der ansteigenden Zahl von Betriebssystemen, Middleware und Anwendungen immer schwieriger werden, ein einzelnes Tool für passives Überwachen bereitzustellen, das für alle Typen verwendet werden kann. Des Weiteren kann jeder Versuch, das Tool zu aktualisieren oder anzupassen, bewirken, dass das Tool immer mehr Ressourcen benötigt oder instabil wird.
  • ZUSAMMENFASSUNG
  • Im Allgemeinen stellen Aspekte der vorliegenden Erfindung eine Lösung zum passiven Überwachen eines Computersystems bereit. Bei einer Ausführungsform wirkt ein Indexierungsagent in einem physischen Server, der eine Vielzahl von virtuellen Servern aufweist. Der Indexierungsagent weist eine Struktur mit einer Vielzahl von Indexierungsschichten auf. Jede dieser Indexierungsschichten ist so ausgelegt, dass sie einen virtuellen Server auf einer anderen Abstraktionsebene indexiert, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben. Des Weiteren weist jede der Indexierungsschichten eine Anwendungsprogrammierschnittstelle auf, die so ausgelegt ist, dass sie ein oder mehrere externe Indexierungsmodule aufnimmt, die in die Struktur einzufügen sind. Jedes Indexierungsmodul ist so ausgelegt, dass es dem Indexierungsagenten Befehle bereitstellt, während die Indexierungsschicht, in die es einzufügen ist, die zugehörige Abstraktionsebene der virtuellen Maschine indexiert.
  • Ein erster Aspekt der Erfindung stellt ein Verfahren zum passiven Überwachen eines Computersystems bereit, wobei das Verfahren aufweist: Zugreifen auf einen virtuellen Server durch einen Indexierungsagenten, wobei der Indexierungsagent aufweist: eine Indexierungsstruktur mit einer Vielzahl von Indexierungsschichten, wobei jede Indexierungsschicht von der Vielzahl von Indexierungsschichten eine Anwendungsprogrammierschnittstelle (API) aufweist; und ein erstes Indexierungsmodul, das in eine erste Indexierungsschicht von der Vielzahl von Indexierungsschichten unter Verwendung einer API der ersten Schicht eingefügt ist; Abrufen eines virtuellen Abbilds des virtuellen Servers durch den Indexierungsagenten; für jede Indexierungsebene von der Vielzahl von Indexierungsebenen Indexieren einer Abstraktionsebene von der Vielzahl von eindeutigen Abstraktionsebenen des virtuellen Abbilds durch den Indexierungsagenten, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben, wobei das Indexieren das erste Indexierungsmodul beinhaltet, das Befehle an den Indexierungsagenten bereitstellt, während die erste Indexierungsschicht eine erste Abstraktionsebene des virtuellen Systems indexiert, das durch die erste Indexierungsschicht indexiert wird; und Analysieren wenigstens eines der Merkmale der Abstraktionsebene, um passives Überwachen des virtuellen Servers auszuführen.
  • Ein zweiter Aspekt der Erfindung stellt ein System zum passiven Überwachen eines Computersystems bereit, wobei das System aufweist: einen physischen Server mit einer Vielzahl von Instanzen des virtuellen Systems, die darin ausgeführt werden; und einen Indexierungsagenten, der in dem physischen Server betrieben wird, wobei der Indexierungsagent aufweist: eine Indexierungsstruktur mit einer Vielzahl von Indexierungsschichten, wobei jede von der Vielzahl von Indexierungsschichten so ausgelegt ist, dass sie eine Instanz eines virtuellen Systems auf einer eindeutigen Abstraktionsebene indexiert, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben, und eine Anwendungsprogrammierschnittstelle (API) aufweist; und ein Indexierungsmodul, wobei das Indexierungsmodul so ausgelegt ist, dass es in eine erste Schicht von der Vielzahl von Indexierungsschichten unter Verwendung einer API der ersten Schicht eingefügt wird, und so ausgelegt ist, dass es Befehle an den Indexierungsagenten bereitstellt, während die erste Indexierungsschicht eine Abstraktionsebene des virtuellen Systems indexiert, das durch die erste Indexierungsschicht indexiert wird.
  • Ein dritter Aspekt der Erfindung stellt ein Computerprogrammprodukt bereit, das in einem computerlesbaren Medium verkörpert ist, um ein Verfahrens zum passiven Überwachen eines Computersystems umzusetzen, wobei das Verfahren aufweist: Zugreifen auf einen virtuellen Server durch einen Indexierungsagenten, wobei der Indexierungsagent aufweist: eine Indexierungsstruktur mit einer Vielzahl von Indexierungsschichten, wobei jede aus der Vielzahl von Indexierungsschichten eine Anwendungsprogrammierschnittstelle (API) aufweist; und ein erstes Indexierungsmodul, das in eine erste Indexierungsschicht aus der Vielzahl von Indexierungsschichten unter Verwendung einer API der ersten Schicht eingefügt wird; Abrufen eines virtuellen Abbilds des virtuellen Servers durch den Indexierungsagenten; für jede aus der Vielzahl von Indexierungsebenen Indexieren von einer aus einer Vielzahl von eindeutigen Indexierungsebenen des virtuellen Abbilds durch den Indexierungsagenten, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben, wobei das Indexieren das erste Indexierungsmodul enthält, das Befehle an den Indexierungsagenten bereitstellt, während die erste Indexierungsschicht eine erste Abstraktionsebene des virtuellen Systems indexiert, das durch die erste Indexierungsschicht indexiert wird; und Analysieren wenigstens eines der Merkmale der Abstraktionsebene, um ein passives Überwachen des virtuellen Servers auszuführen.
  • Ein vierter Aspekt der Erfindung stellt ein Verfahren zum Verwenden einer Anwendung zum passiven Überwachen eines Computersystems bereit, wobei das Verfahren aufweist: Bereitstellen einer Computerinfrastruktur, die in der Lage ist: auf einen virtuellen Server durch einen Indexierungsagenten zuzugreifen, wobei der Indexierungsagent aufweist: eine Indexierungsstruktur mit einer Vielzahl von Indexierungsschichten, wobei jede der Indexierungsschichten eine Anwendungsprogrammierschnittstelle (API) aufweist; und ein erstes Indexierungsmodul, das in eine erste Indexierungsschicht aus der Vielzahl von Indexierungsschichten unter Verwendung einer API der ersten Schicht eingefügt wird; ein virtuelles Abbild des virtuellen Servers durch den Indexierungsagenten abzurufen; für jede aus der Vielzahl von Indexierungsebenen eine von einer Vielzahl von eindeutigen Abstraktionsebenen des virtuellen Abbilds durch den Indexierungsagenten zu indexieren, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben, wobei das Indexieren das erste Indexierungsmodul enthält, das Befehle an den Indexierungsagenten bereitstellt, während die erste Indexierungsschicht die erste Abstraktionsebene des virtuellen Systems indexiert, das durch die erste Indexierungsschicht indexiert wird; und wenigstens eines der Merkmale der Abstraktionsebene zu analysieren, um ein passives Überwachen des virtuellen Servers auszuführen. Des Weiteren könnte jede der Komponenten der vorliegenden Erfindung durch einen Dienstanbieter verwendet, verwaltet, bedient usw. werden, der anbietet, ein passives Überwachen in einem Computersystem umzusetzen.
  • Ausführungsformen der vorliegenden Erfindung stellen außerdem verwandte Systeme, Verfahren und/oder Programmprodukte bereit.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Diese und weitere Merkmale dieser Erfindung werden aus der folgenden genauen Beschreibung der verschiedenen Aspekte leichter verstanden, die in Verbindung mit den beigefügten Zeichnungen erfolgt, bei denen:
  • 1 ein veranschaulichendes Computersystem gemäß Ausführungsformen der vorliegenden Erfindung zeigt.
  • 2 eine Umgebung eines virtualisierten Datenzentrums gemäß Ausführungsformen der Erfindung zeigt.
  • 3 einen beispielhaften virtuellen Server gemäß Ausführungsformen der Erfindung zeigt.
  • 4 einen Indexierungsagenten gemäß Ausführungsformen der Erfindung zeigt.
  • 5 einen beispielhaften Server zeigt, der einen Indexierungsagenten gemäß Ausführungsformen der Erfindung aufweist.
  • 6 die Funktionsweise einer Indexierungsebene in einem Indexierungsagenten gemäß Ausführungsformen der Erfindung zeigt.
  • 7 eine beispielhafte Vergleichsanalyse gemäß Ausführungsformen der Erfindung zeigt.
  • Die Zeichnungen sind nicht zwingend maßstabsgerecht. Die Zeichnungen sind lediglich schematische Darstellungen, die nicht vorgesehen sind, um spezifische Parameter der Erfindung genau darzustellen. Die Zeichnungen sollen lediglich typische Ausführungsformen der Erfindung darstellen und sollten daher nicht als den Umfang der Erfindung beschränkend betrachtet werden. In den Zeichnungen repräsentieren gleiche Nummerierungen gleiche Elemente.
  • GENAUE BESCHREIBUNG
  • Wie oben angegeben wird in Aspekten der vorliegenden Erfindung eine Lösung zum passiven Überwachen eines Computersystems bereitgestellt. Ein Indexierungsagent wird in einem physischen Server betrieben, der eine Vielzahl von virtuellen Servern aufweist. Der Indexierungsagent weist eine Struktur mit einer Vielzahl von Indexierungsschichten auf. Jede dieser Indexierungsschichten ist so ausgelegt, dass sie den virtuellen Server auf einer anderen Abstraktionsebene indexiert, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben. Des Weiteren weist jede der Indexierungsschichten eine Anwendungsprogrammierschnittstelle auf, die so ausgelegt ist, dass sie ein oder mehrere externe Indexierungsmodule aufnimmt, die in die Struktur einzufügen sind. Jedes Indexierungsmodul ist so ausgelegt, dass es Befehle an den Indexierungsagenten bereitstellt, wenn die Indexierungsschicht, in die es eingefügt ist, die zugehörige Abstraktionsebene der virtuellen Maschine indexiert.
  • In den Zeichnungen zeigt 1 eine beispielhafte Umgebung 100 zum passiven Überwachen eines Computersystems. Dabei enthält die Umgebung 100 ein Computersystem 102, das einen hier beschriebenen Prozess ausführen kann, um ein Computersystem passiv zu überwachen. Das Computersystem 102 ist insbesondere so gezeigt, dass es eine Datenverarbeitungseinheit 104 enthält, die ein Programm 140 zum passiven Überwachen enthält, damit die Datenverarbeitungseinheit 104 funktionsmäßig in der Lage ist, ein Computersystem durch Ausführen eines hier beschriebenen Prozesses passiv zu überwachen.
  • Die gezeigte Datenverarbeitungseinheit 104 enthält eine Verarbeitungskomponente 106 (z. B. einen oder mehrere Prozessoren), einen Speicher 110, ein Speichersystem 118 (z. B. eine Speicherhierarchie), eine Eingabe/Ausgabe-(E/A-)-Schnittstellenkomponente 114 (z. B. eine oder mehrere E/A-Schnittstellen und/oder -Einheiten) und einen Datenübertragungspfad 112. Die Verarbeitungskomponente 106 führt im Allgemeinen Programmcode aus wie etwa ein Programm 140 zum passiven Überwachen, das wenigstens teilweise im Speicher 110 gespeichert ist. Dabei kann die Verarbeitungskomponente 106 eine einzelne Verarbeitungseinheit aufweisen oder kann über eine oder mehrere Verarbeitungseinheiten an einem oder mehreren Standorten verteilt sein.
  • Der Speicher 110 kann außerdem einen lokalen Speicher, der während einer tatsächlichen Ausführung des Programmcode verwendet wird, Massenspeicher (Speicher 118) und/oder Cache-Speicher (nicht gezeigt) enthalten, die eine vorübergehende Speicherung von wenigstens einem bestimmten Programmcode gewährleisten, um die Häufigkeit zu vermindern, wie oft Code während der Ausführung vom Massenspeicher 118 abgerufen werden muss. Daher kann der Speicher 110 jeden bekannten Typ von temporären oder dauerhaften Datenspeichermedien aufweisen, darunter magnetische Medien, optische Medien, Direktzugriffsspeicher (RAM), Festwertspeicher (ROM), einen Daten-Cachespeicher, ein Datenobjekt usw. Darüber hinaus kann sich der Speicher 110 ähnlich wie die Verarbeitungseinheit 116 an einem einzigen physischen Standort befinden, einen oder mehrere Typen des Datenspeichers aufweisen oder über eine Vielzahl von physischen Systemen in verschiedenen Formen verteilt sein.
  • Während Programmcode ausgeführt wird, kann die Verarbeitungskomponente 106 Daten verarbeiten, was ein Lesen und/oder Schreiben von transformierten Daten vom/zum Speicher 110 und/oder von/zur E/A-Komponente 114 für eine weitere Verarbeitung zur Folge haben kann. Der Pfad 112 stellt eine direkte oder indirekte Datenübertragungsverbindung zwischen allen Komponenten im Computersystem 102 bereit. Bei der E/A-Schnittstellenkomponente 114 kann es sich um eine oder mehrere manuelle E/A-Einheiten handeln, die es einer Benutzerperson ermöglichen, mit einem Computersystem 102 und/oder einer oder mehreren Datenübertragungseinheiten zu interagieren, damit ein Systembenutzer 120 mit dem Computersystem 102 unter Verwendung eines beliebigen Typs von Datenübertragungsverbindung kommunizieren kann.
  • Dabei kann das Programm 140 zum passiven Überwachen eine Gruppe von Schnittstellen (z. B. grafische Benutzeroberfläche(n), Anwendungsprogrammoberfläche und/oder dergleichen) verwalten, die ermöglichen, dass eine Person und/oder Systembenutzer 120 mit dem Programm 140 zum passiven Überwachen interagieren. Zu Benutzern 120 könnten System-Administratoren und/oder Clients gehören, die unter anderem Ressourcen in einer Umgebung 200 eines virtuellen Datenzentrums nutzen (2). Des Weiteren kann das Programm 140 zum passiven Überwachen die Daten im Speichersystem 118, darunter eine Indexierungsstruktur 152 und/oder Indexierungsmodule 154, ohne auf diese beschränkt zu sein, unter Verwendung einer beliebigen Lösung verwalten (z. B. speichern, abrufen, erzeugen, manipulieren, organisieren, präsentieren usw.).
  • In jedem Fall kann das Computersystem 102 eine oder mehrere Datenverarbeitungseinheiten 104 (z. B. Universal-Datenverarbeitungs-Produkte) aufweisen, die in der Lage sind, Programmcode auszuführen wie etwa das Programm 140 zum passiven Überwachen, das darin installiert ist. Es ist klar, dass der hier verwendete Ausdruck „Programmcode” für jede Sammlung von Befehlen, in jeder Sprache, jedem Code oder jeder Schreibweise, verwendet wird, die bewirken, dass eine Datenverarbeitungseinheit, die eine Informationsverarbeitungskapazität aufweist, eine bestimmte Aktion entweder direkt oder nach einer Kombination aus Folgendem ausführt: (a) Umsetzung in eine andere Sprache, einen anderen Code oder eine andere Schreibweise; (b) Reproduktion in einer anderen materiellen Form; und/oder (c) Dekompression. Dabei kann das Programm 140 zum passiven Überwachen als beliebige Kombination aus Systemsoftware und/oder Anwendungssoftware verkörpert sein. In jedem Fall besteht die technische Wirkung des Computersystems 102 darin, Verarbeitungsbefehle an eine Datenverarbeitungseinheit 104 bereitzustellen, um in einem Computersystem 102 passiv zu überwachen.
  • Des Weiteren kann das Programm 140 zum passiven Überwachen unter Verwendung einer Gruppe von Modulen 142 bis 148 umgesetzt sein. In diesem Fall kann ein Modul 142 bis 148 das Computersystem 102 befähigen, eine Gruppe von Tasks auszuführen, die durch das Programm 140 zum passiven Überwachen verwendet wird, und kann getrennt von anderen Abschnitten des Programms 140 zum passiven Überwachen separat entwickelt und/oder umgesetzt werden. Der hier verwendete Ausdruck „Komponente” wird für jede Konfiguration aus Hardware mit oder ohne Software verwendet, die die in Verbindung mit ihr beschriebene Funktionalität unter Verwendung einer beliebigen Lösung umsetzt, während der Ausdruck „Modul” Programmcode bezeichnet, der ein Computersystem 102 befähigt, die in Verbindung mit ihm beschriebenen Aktionen unter Verwendung einer beliebigen Lösung umzusetzen. Wenn sich ein Modul in einem Speicher 110 eines Computersystems 102 befindet, das eine Verarbeitungskomponente 106 enthält, ist es ein wesentlicher Teil einer Komponente, die die Aktionen umsetzt. Es ist trotzdem klar, dass zwei oder mehrere Komponenten, Module und/oder Systeme einen bestimmten Teil/die Gesamtheit ihrer entsprechenden Hardware und/oder Software gemeinsam nutzen können. Es ist ferner klar, dass ein bestimmter Teil der hier erläuterten Funktionalität möglicherweise nicht umgesetzt wird oder als Teil des Computersystems 102 eine zusätzliche Funktionalität enthalten sein kann.
  • Wenn das Computersystem 102 mehrere Datenverarbeitungseinheiten 104 aufweist, befindet sich in jeder Datenverarbeitungseinheit 104 möglicherweise lediglich ein Abschnitt des Programms 140 zur passiven Überwachung (z. B. ein oder mehrere Module 142 bis 148). Es ist jedoch klar, dass das Computersystem 102 und das Programm 140 zum passiven Überwachen lediglich Beispiele von verschiedenen möglichen gleichwertigen Computersystemen sind, die einen hier beschriebenen Prozess ausführen können. Dabei kann bei anderen Ausführungsformen die durch das Computersystem 102 und das Programm 140 zum passiven Überwachen bereitgestellte Funktionalität wenigstens teilweise durch eine oder mehrere Datenverarbeitungseinheiten umgesetzt werden, die eine beliebige Kombination aus Universal- und/oder Spezial-Hardware mit oder ohne Programmcode enthalten. Bei jeder Ausführungsform können Hardware und Programmcode gegebenenfalls unter Verwendung von Standard-Konstruktions- bzw. Programmiertechniken erzeugt werden.
  • Wenn das Computersystem 102 mehrere Datenverarbeitungseinheiten 104 aufweist, können die Datenverarbeitungseinheiten trotzdem über einen beliebigen Typ der Datenübertragungsverbindung Daten austauschen. Während ein hier beschriebener Prozess ausgeführt wird, kann das Computersystem 102 des Weiteren mit einem oder mehreren anderen Computersystemen unter Verwendung von einem beliebigen Typ der Datenübertragungsverbindung Daten austauschen. Die Datenübertragungsverbindung kann in jedem Fall eine beliebige Kombination aus verschiedenen Typen von leitungsgestützten und/oder drahtlosen Verbindungen aufweisen, eine beliebige Kombination aus einem oder mehreren Typen von Netzwerken aufweisen; und/oder eine beliebige Kombination aus verschiedenen Typen von Übertragungstechniken und -protokollen nutzen.
  • Wie hier erläutert ermöglicht das Programm 140 zum passiven Überwachen dem Computersystem 102, in einem Computersystem passiv zu überwachen. Dabei ist das Programm 140 zum passiven Überwachen so gezeigt, dass es ein Zugriffs-Modul 142 zum Zugreifen auf den virtuellen Server, ein Modul 144 zum Abrufen des virtuellen Abbilds, ein Modul 146 zum Indexieren des virtuellen Abbilds und ein Modul 148 zum Analysieren des virtuellen Abbilds enthält.
  • Wenn das Computersystem 102 das Modul 142 zum Zugreifen auf den virtuellen Server ausführt, greift es auf einen virtuellen Server über einen Indexierungsagenten zu, der in einer Indexierungs-Funktionseinheit enthalten sein kann.
  • In 2 ist eine Umgebung 200 eines virtualisierten Datenzentrums gemäß Ausführungsformen der Erfindung gezeigt. Wie gezeigt weist die Umgebung 200 eines virtualisierten Datenzentrums einen physischen Server 210 auf, der verwendet werden kann, um alle oder einen Teil der Funktionen des Programms 140 (1) zum passiven Überwachen auszuführen. Dabei kann es sich bei dem physischen Server 210 um einen Server eines beliebigen Herstellers handeln, der eine Plattform betreibt, die so ausgelegt ist, dass sie mehrere Instanzen eines virtuellen Servers 230 betreibt. Wie in 2 dargestellt kann eine Umgebung 200 eines virtualisierten Datenzentrums außerdem eine beliebige Anzahl von zugehörigen physischen Servern 212, 214, 216 enthalten. Die zugehörigen physischen Server 212, 214, 216 können für Datenübertragungszwecke über ein Netzwerk 220 mit dem physischen Server 210 verbunden sein. Das Netzwerk 220 kann dem physischen Server 210 ermöglichen, mit zugehörigen physischen Servern 212, 214, 216 und/oder physischen Servern 212, 214, 216 Daten auszutauschen, um untereinander unter Verwendung von Datenübertragungslösungen oder Lösungen, die gegenwärtig bekannt sind oder zukünftig entwickelt werden, Daten auszutauschen. Bei einigen Ausführungsformen kann das Netzwerk 220 im Rahmen einer Cloud-Datenverarbeitung betrieben werden, indem es z. B. Datenverarbeitung, Software, Datenzugriff und weitere Dienste bereitstellt, die keine Kenntnisse des Endbenutzers über den physischen Standort und die Konfiguration des Netzwerks 220 erfordern, das die Dienste bereitstellt.
  • Wie oben festgestellt kann in jedem Fall jede Instanz des virtuellen Servers 230 im physischen Server 210 ohne Aufgabe ihrer Unabhängigkeit gleichzeitig mit anderen Systeminstanzen 230 ausgeführt werden. Das bedeutet, dass jede der Instanzen des virtuellen Servers 230 unabhängig von anderen Instanzen des virtuellen Servers 230 ausgeführt wird und keine Daten mit anderen Instanzen des virtuellen Servers 230 gemeinsam nutzt, selbst wenn die Instanzen des virtuellen Servers 230 in demselben physischen Server 210 ausgeführt werden. Bei Kenntnis der Charakteristiken dieser Instanzen des virtuellen Servers 230 kann ein einzelner physischer Server 210 eine sehr große Anzahl von Instanzen des virtuellen Servers 230 gleichzeitig ausführen. Die unabhängige Funktionsweise dieser Instanzen des virtuellen Servers 230 stellt sicher, dass die Anzahl von gleichzeitigen Instanzen des virtuellen Servers 230 lediglich durch die Hardware-Beschränkungen des physischen Servers 210 begrenzt ist.
  • In 3 ist ein beispielhafter virtueller Server 230 gemäß Ausführungsformen der Erfindung gezeigt. Es sollte klar sein, dass sich der virtuelle Server 230 von einer virtuellen Verarbeitungsmaschine (process vrtual machine) unterscheidet. Eine virtuelle Verarbeitungsmaschine ist eine plattformabhängige Steuerroutine (engine) wie z. B. eine Java Virtual Machine, die plattformabhängigen Code ausführt, der in einer höheren Programmiersprache geschrieben ist wie etwa Java, um eine spezielle Task auszuführen (Java und Java Virtual Machine sind eine Handelsmarke von Sun Microsystems in den Vereinigten Staaten und/oder in weiteren Ländern). Im Unterschied dazu handelt es sich bei dem virtuellen Server 230 der aktuellen Erfindung um ein virtuelles System, das eine vollständige Datenverarbeitungsumgebung simuliert. Bei dem virtuellen Server 230 der aktuellen Erfindung handelt es sich um eine Umgebung, in der nicht nur eine einzelne Task, sondern eine Vielfalt von Tasks, Funktionen, Operationen usw. durch einen Benutzer 120 ausgeführt werden können (1). Daher kann der virtuelle Server 230 so beschaffen sein, dass er aus Sicht eines Benutzers 120 ein eigenständiges Computersystem simuliert (1).
  • Dabei enthält der virtuelle Server 230 auf der untersten Ebene einen Virtualisierungs-Hypervisor 232. Der Virtualisierungs-Hypervisor 232 stellt im Einzelnen eine Plattform bereit, die ermöglicht, dass mehrere „Gast”-Systeme gleichzeitig auf dem physischen Server 210 betrieben werden können (2). Dabei stellt der Virtualisierungs-Hypervisor 232 eine Abstraktionsebene zwischen der Hardware-Ebene des physischen Servers 210 (2) und den höheren Software-Funktionen des virtuellen Servers 230 bereit. Um diese Software-Funktionen bereitzustellen, enthält der virtuelle Server 230 ein Software-Paket 234, das auch als ein Abbild bezeichnet werden kann. Das Software-Paket 234 enthält alles, was zum Simulieren einer „Gast”-Instanz des virtuellen Servers 230 auf dem physischen Server 210 über einen Virtualisierungs-Hypervisor 232 erforderlich ist.
  • Daten im Software-Paket 234 können von einer Vielzahl von unterschiedlichen Standpunkten betrachtet werden. Bei der untersten Ebene der Feinteiligkeit kann es sich um eine einzelne Plattenblockebene 236N handeln (z. B. ein Plattenblock bei einem Offset von 5.032 vom Beginn des Software-Pakets 234). Bei einer höheren Abstraktionsebene kann es sich um eine Plattenpartitionsebene 236F handeln, die den Zugriff auf die Plattenpartitionen des Software-Pakets 234 bereitstellt (z. B. die Swap-Partition, die Boot-Partition, jede Dateisystem-Partition usw.). Einige Abstraktionsebenen 236A bis 236N weiter oben können eine Dateistruktur-Ebene 236D und eine Dateiinhalt-Ebene 236E den Zugang auf die Struktur und den Inhalt des Dateisystem-Software-Pakets 234 bereitstellen. Außerdem können solche Abstraktionsebenen 236A bis 236N wie eine Anwendungsebene 236C, eine Middleware-Ebene 236B und eine Betriebssystemebene 236A ebenfalls im Software-Paket 234 enthalten sein. Es sollte klar sein, dass die hier aufgeführten Abstraktionsebenen 236A bis 236N nicht als vollständig anzusehen sind. Es sollte stattdessen klar sein, dass weitere Abstraktionsebenen 236A bis 236N enthalten sein könnten und/oder spezielle Abstraktionsebenen 236A bis 236N, auf die in 3 Bezug genommen wird, möglicherweise nicht verwendet werden. Außerdem sollte die Reihenfolge, in der die Abstraktionsebenen 236A bis 236N in der Darstellung aufgelistet werden, nicht als einschränkend ausgelegt werden. Des Weiteren könnten die hier gezeigten Abstraktionsebenen 236A bis 236N während des Betriebs verknüpft, in weitere Ebenen unterteilt oder in Funktionskategorien angeordnet werden, die sich von den dargestellten Funktionskategorien unterscheiden. Weiterhin könnten bei einigen Ausführungsformen einige oder alle Abstraktionsebenen 236A bis 236N von anderen Abstraktionsebenen 236A bis 236N abhängig sein, so dass eine oder mehrere Abstraktionsebenen 236A bis 236N in einer bestimmten Abstraktionsebene 236A bis 236N zusammengefasst werden.
  • Wie oben dargestellt kann eine Standardisierung auf dieser Ebene die Unterhaltungskosten beträchtlich verringern, indem die Anzahl von unterschiedlichen Variationen von Systemen begrenzt wird, die in einer Umgebung 200 eines virtualisierten Datenzentrums betrieben werden. Um das zu erreichen, kann aus einem Paket von einer begrenzten Anzahl von im Voraus konfigurierten Paketen ein spezielles Software-Paket 234 erzeugt werden. Diese im Voraus konfigurierten Pakete können durch Anbieter der Umgebung 200 eines virtualisierten Datenzentrums für ihre besondere Funktion optimiert werden. Wenn z. B. ein Benutzer 120 (1) eine Datenbank-Funktionalität nutzen möchte, können speziell für diesen Benutzer 120 ein oder mehrere virtuelle Server 230 erzeugt werden, die dasselbe Software-Paket 234 auf der Grundlage desselben im Voraus konfigurierten Pakets aufweisen. Diese Software-Pakete 234 könnten z. B. ein Betriebssystem eines Typs, der zum Ausführen von Datenbank-Funktionen geeignet ist, Middleware, die ein Datenbank-Managementsystem enthält, und Anwendungen, die so eingerichtet sind, dass sie mit dem Datenbank-Managementsystem ausgeführt werden, enthalten. Wenn ein Benutzer 120 (1) eine Web-Server-Funktionalität nutzen möchte, können gleichfalls ein oder mehrere virtuelle Server 230, die dasselbe Software-Paket 234 auf der Grundlage eines im Voraus konfigurierten Pakets aufweisen, das von dem für das Datenbank-Managementsystem verwendete im Voraus konfigurierte Paket verschieden ist, speziell für diesen Benutzer 120 (1) erzeugt werden. Diese Software-Pakete 234 könnten z. B. ein Betriebssystem eines Typs, das zum Ausführen von Web-Server-Funktionen geeignet ist, Middleware, die ein Web-Server-Managementsystem enthält, und Anwendungen, die so eingerichtet sind, dass sie mit dem Web-Server-Managementsystem ausgeführt werden, enthalten. Es sollte klar sein, dass Software-Pakete 234, die so ausgelegt sind, dass sie verschiedene andere Funktionen in der Umgebung eines virtualisierten Datenzentrums ausführen, ebenfalls erzeugt werden können. Dabei kommen für das Betriebssystem alle Betriebssysteme infrage, die gegenwärtig bekannt sind oder zukünftig entwickelt werden. Des Weiteren können Middleware und Anwendungen alle Lösungen enthalten, die zum Bereitstellen der gewünschten Funktionalität für einen bestimmten Server 230 vorgesehen sind.
  • Die Erfinder der vorliegenden Erfindung haben entdeckt, dass gegenwärtige Systeme zum passiven Überwachen nicht in der Lage sind, den Vorteil der Struktur mit Abstraktionsebenen 236A bis 236N des Software-Pakets 234 vollständig zu nutzen. Des Weiteren bieten gegenwärtige Systeme zum passiven Überwachen für Benutzer 120 (1) keine Möglichkeit, die Fähigkeiten von verwendeten Tools zu erweitern, um ein passives Überwachen in der Weise auszuführen, dass die Tools selbst spezielle Daten sammeln können, die für die Umgebung dieses Benutzers 120 relevant sind. Angenommen, ein Kunde verwendet z. B. eine Software-Komponente, die ihre Konfigurations-Metadaten in einer Datei /opt/myapp/config vorhält. Das interne Format von /opt/myapp/config ist Sonder-Erkennungs-Tools unbekannt, sodass die Möglichkeiten eines Tool zum passiven Überwachen dieser Art darauf beschränkt sind, auf einer höheren Abstraktionsebene 236A bis 236N darauf zuzugreifen, z. B. seinen Hash-Wert auf einer Dateistruktur-Ebene 236D zu berechnen. Deswegen können gegenwärtige Tools zum passiven Überwachen feststellen, ob /opt/myapp/config von einer Abtastung zur nächsten geändert wurde, sie können jedoch nicht feststellen, was genau darin geändert wurde. Das gilt sogar dann, wenn der Benutzer 120 (1) die Struktur der Konfigurations-Metadaten kennt und lediglich eine Alarmierung wünscht, wenn ein spezieller Eintrag in dieser Datei geändert wurde, und alle anderen Änderungen als unkritisch behandeln und sie ignorieren möchte.
  • In 4 ist ein Indexierungsagent 242 gemäß Ausführungsformen der Erfindung gezeigt. Wie dargestellt stellt der Indexierungsagent 242 ein verbessertes Tool zum passiven Überwachen bereit, das den Vorteil von virtuellen Servern 230 nutzt, die mehrere Abstraktionsebenen 236A bis 236N aufweisen wie jene, die in 3 gezeigt sind. Dazu verwendet der Indexierungsagent 242 einen auf Schichten gestützten Ansatz mit einer Indexierungsstruktur 244, die mehrere Indexierungsschichten 246A bis 246N aufweist. Wie in Verbindung mit 3 beschrieben ist jede Indexierungsschicht 246A bis 246N so ausgelegt, dass sie das Software-Paket 234 des virtuellen Servers 230 auf einer bestimmten Abstraktionsebene 236A bis 236N indexiert. Die Indexierungsschicht 246A könnte z. B. so ausgelegt sein, dass sie die Betriebssystem-Ebene 236A indexiert, während die Indexierungsschicht 246N so ausgelegt sein könnte, dass sie die einzelne Plattenblockebene 236N indexiert. Um diese Task auszuführen, können einige oder alle Indexierungsschichten 246A bis 246N (nicht gezeigte) eingebettete Module enthalten, die ermöglichen, dass die Indexierungsschichten 246A bis 246N eine Standard-Indexierung von Abstraktionsebenen 236A bis 236N ausführen. Jede Indexierungsschicht 246A bis 246N kann außerdem eine Anwendungsprogrammierschnittstelle enthalten, die eine Erweiterungsfähigkeit für den Indexierungsagenten 242 auf einer hier beschriebenen Indexierungsschicht 246A bis 246N bereitstellt.
  • Wie außerdem in 5 dargestellt kann der Indexierungsagent 342 ein oder mehrere Indexierungsmodule 260A, 260E enthalten. Jedes Indexierungsmodul 260A, 260E ist so ausgelegt, dass es in eine bestimmte Indexierungsschicht 246A bis 246N unter Verwendung der API 248A bis 248N eingefügt wird, die in der Indexierungsschicht 246A bis 246N enthalten ist. Wenn der Benutzer 120 (1) z. B. wünscht, eine zusätzliche Indexierung an der Betriebssystemebene 236A des Software-Pakets 234 des virtuellen Servers 230 auszuführen, können ein oder mehrere Indexierungsmodule 260A in eine Indexierungsschicht 246A eingefügt werden, die für ein Indexieren der Betriebssystemebene 236A unter Verwendung der API 248A vorgesehen ist. Wenn der Benutzer 120 (1) gleichfalls wünscht, eine zusätzliche Indexierung an der Dateiinhaltebene 236E des Software-Pakets 234 des virtuellen Servers 230 auszuführen (d. h. obigen Beispiel die Metadaten-Inhalte von /opt/myapp/config abzutasten), können ein oder mehrere Indexierungsmodule 260E in eine Indexierungsschicht 244E eingefügt werden, die für ein Indexieren der Dateiinhaltebene 236E unter Verwendung der API 246E vorgesehen ist.
  • In jedem Fall kann jedes Indexierungsmodul 260A, 260E Befehle 262A, 262E enthalten. Diese Befehle 262A, 262E können durch das Indexierungsmodul 260A, 260E an die Indexierungsschicht 246A, 246E bereitgestellt werden, an der es eingefügt ist, während die Indexierungsschicht 246A, 246E ihre zugehörige Abstraktionsebene 236A, 236E indexiert. Die Fähigkeit, Indexierungsmodule 260A, 260E in den Indexierungsagenten 242 einzufügen, ermöglicht es dem Benutzer 120 (1), seine eigene Kundenlogik einzufügen, um die Fähigkeiten des Indexierungsagenten 242 über die API 248A bis 248N zu erweitern. Wie oben in Bezug auf das zuvor angegebene Beispiel erwähnt ermöglicht diese Struktur einem Benutzer 120 (1), Indexierungsmodule 260A, 260E an der API 246A bis 246N hinzuzufügen, die immer dann aufgerufen werden, wenn der Indexierungsagent 242 die Datei besucht, während das Software-Paket 234 indexiert wird. Die Logik des Benutzers 120 (1) in Befehlen 262A, 262E prüft einfach, ob es sich bei dieser Datei um /opt/myapp/config handelt, und wenn das der Fall ist, öffnet der Indexierungsagent 242 die Datei und liest den speziellen Eintrag, der für den Benutzer 120 von Interesse ist. Die Möglichkeiten des Benutzers 120 (1), den Prozess zum passiven Überwachen zu kontrollieren, werden dadurch erheblich vermindert.
  • Außerdem kann das Indexierungsmodul 260A, 260E eine Zeitspanne 264A, 264E enthalten, während der Bedingungen angegeben werden, die erfüllt sein müssen, bevor das Indexierungsmodul 260A, 260E ausgeführt werden kann. Ein Indexierungsmodul 260E könnte z. B. eine Zeitspanne 264E aufweisen, während der festgelegt ist, dass das Indexierungsmodul 260E nach einem anderen Indexierungsmodul 260A auszuführen ist. Wenn dann der Indexierungsagent 242 abläuft, wartet das Indexierungsmodul 260E mit dem Ausführen auf das Indexierungsmodul 260A, und dann führt in Reaktion auf das Beenden des Indexierens durch das Indexierungsmodul 260A das Indexierungsmodul 260E seine Funktionen aus.
  • In 5 ist eine Umgebung 300 gezeigt, die einen beispielhaften physischen Server 310 mit einer Indexierungs-Funktionseinheit 340 gemäß Ausführungsformen der Erfindung enthält. Wie dargestellt ist bei einigen Ausführungsformen die Indexierungs-Funktionseinheit 340 von virtuellen Servern 330 vom physischen Server 310 in einer Umgebung 300 eines virtualisierten Datenzentrums getrennt und kann selbst einen virtuellen Server 330 darstellen. Bei diesen Umgebungen enthält die Indexierungs-Funktionseinheit 340 einen Indexierungsagenten 342, der Dienste zum passiven Überwachen für den gesamten physischen Server 310 ausführen kann. Der Indexierungsagent 342 weist eine Struktur 244 und die in 4 dargestellten mehreren Indexierungsschichten 246A bis 246N auf. Bei dieser Konfiguration kann der Indexierungsagent 342 über den Virtualisierungs-Hypervisor 232 (3) auf jede Instanz des virtuellen Servers 330 zugreifen, um alle Funktionen auszuführen, die für ein passives Überwachen erforderlich sind. Ein Ergebnis davon besteht darin, dass Agenten 242 zum passiven Überwachen (3) aus allen Instanzen des virtuellen Servers 330 vollständig entfernt werden können. Somit kann der Gesamtumfang von Ressourcen, die für ein passives Überwachen bestimmt sind, erheblich verringert werden, selbst wenn die Anzahl von Ressourcen berücksichtigt wird, die für die Indexierungs-Funktionseinheit 340 bestimmt sind.
  • In der 1, 3 und 5 kann das Modul 144 zum Abrufen virtueller Abbilder, das durch das Computersystem 102 realisiert wird, ein virtuelles Abbild 332 einer bestimmten Instanz des virtuellen Servers 330 abrufen, für welches ein passives Überwachen unter Verwendung des Indexierungsagenten 342 erwünscht ist. Dieses Abrufen kann in Reaktion auf eine Anforderung erfolgen, die zu der Indexierungs-Funktionseinheit 340 von einem zentralen Erfassungsserver 350 gesendet wird, die die Indexierungs-Funktionseinheit 340 anweist, an einer bestimmten Instanz des virtuellen Servers 330 ein passives Überwachen auszuführen und eine Adresse bereitstellt, an der sich die Instanz des Server Servers 330 befindet. Bei einigen Ausführungsformen kann der Indexierungsagent 342 anschließend einen Virtualisierungs-Hypervisor 232 eines virtuellen Servers 330 anweisen, eine Prüfpunkt-Operation im virtuellen Server 330 auszuführen. Bei diesen Ausführungsformen kann es sich bei der Prüfpunkt-Operation um eine Funktion im Virtualisierungs-Hypervisor 232 handeln, die einen „Schnappschuss” (Speicherauszug) des virtuellen Abbilds 332 des Software-Pakets 234 des virtuellen Servers 330 aufnimmt, der einige oder alle Abstraktionsebenen 236A bis 236N enthält. Das virtuelle Abbild 332 kann Daten, die sowohl dem Datensystem als auch dem Betriebszustand entsprechen, sowie alle weiteren Daten in dem Software-Paket 234 zum Zeitpunkt des „Schnappschusses” enthalten.
  • Bei weiteren Ausführungsformen kann der Befehl zum Anfahren eines Prüfpunkts des virtuellen Servers 342 von anderen Stellen als der Indexierungs-Funktionseinheit 340 stammen. Prüfpunkt-Operationen können z. B. in periodischen Abständen automatisch erfolgen wie etwa als Teil einer Sicherungs- und/oder Wiederherstellungsoperation. Die vorliegende Erfindung ist jedoch nicht von der Art und Weise abhängig, wie das virtuelle Abbild 332 erzeugt wurde, stattdessen ist jede gegenwärtig bekannte oder zukünftig zu entwickelnde Lösung zum Erzeugen eines virtuellen Abbilds 332 eines Software-Pakets eines virtuellen Servers 330 vorstellbar. In jedem Fall kann bei der Erzeugung das virtuelle Abbild 332 durch den Indexierungsagenten 342 direkt abgerufen werden. Alternativ kann das virtuelle Abbild 332 in einem Speichersystem 318 für einen späteren Abruf durch den Indexierungsagenten 342 gespeichert werden. Es sollte klar sein, dass das Speichersystem 318 in dem physischen Server 310 enthalten sein kann und/oder sich außerhalb befinden kann und eine beliebige Speicherlösung nutzen kann.
  • In den 1, 3 und 5 kann das Modul 146 zum Indexieren eines virtuellen Abbilds, wenn es durch ein Computersystem 102 realisiert wird, ein virtuelles Abbild 332 eines virtuellen Servers 330 indexieren, das durch das Modul 144 zum Abrufen eines virtuellen Abbilds abgerufen wird. Bei einigen Ausführungsformen kann dieses Indexieren durch einen Indexierungsagenten 342 in der Indexierungs-Funktionseinheit 340 ausgeführt werden. Daher kann das Indexieren außerhalb des eigentlichen virtuellen Servers 330 ausgeführt werden und kann ohne Nutzung von Agenten ausgeführt werden, die im virtuellen Server 330 realisiert sind.
  • In 6 ist die Funktionsweise 328 einer Indexierungsebene 346A bis 346N im Indexierungsagenten 342 gemäß Ausführungsformen der Erfindung gezeigt. Wie gezeigt entspricht jede Indexierungsebene 346A bis 346N im Indexierungsagenten 342 einer anderen Abstraktionsschicht 336A bis 336N im virtuellen Abbild 332, das so ausgelegt ist, dass es eine spezielle Abstraktionsebene 336A bis 336N indexiert. Der Indexierungsprozess kann jede Indexierungsschicht 346A bis 346N verwenden, um seine entsprechende Abstraktionsebene 336A bis 336N des Software-Pakets 234 (3) abzutasten, die im virtuellen Abbild 332 enthalten ist, um Merkmale 334 der Extraktionsebene zu extrahieren, die von Interesse sind. Es sollte klar sein, dass nicht alle Abstraktionsebenen 336A bis 336N bei jeder Abtastung indexiert werden müssen. Es könnte stattdessen festgelegt sein, dass eine einzige Abstraktionsebene 336E (oder alternativ eine Teilmenge der Gesamtheit von Abstraktionsebenen 336A bis 336N) indexiert wird. In jedem Fall wird die entsprechende Indexierungsschicht 346A bis 346N für jede Abstraktionsebne 336A bis 336N, die zu indexieren ist, die (nicht gezeigten) eingebetteten Module und alle eingefügten Indexierungsmodule 348A, 348E nutzen, um das Indexieren auszuführen. Wie angegeben weisen Indexierungsmodule 348A, 348E Befehle 262A, 262E (4) auf, die durch einen Benutzer 120 (1) eingerichtet wurden, und sie geben an, welche Elemente in Abstraktionsebenen 336A bis 336N des virtuellen Abbilds 332 in Merkmalen 334 der Extraktionsebene, die aus Gründen der Flexibilität eingeschlossen werden können, eingeschlossen werden sollten. Wenn z. B. eine Abstraktionsebene 336E indexiert werden soll, würde die Indexierungsschicht 344E unter Verwendung ihrer eingebetteten Module und der Befehle 262E (4), die im Modul 348E vorhanden sind, die Abstraktionsebene 336E abtasten. Ergebnisse des Indexierens würden in Merkmalen 334 der Extraktionsebene für die Abstraktionsebene 336E enthalten sein. Diese Merkmale 334 der Extraktionsebene können Informationen enthalten wie etwa Metadaten über die Dateien im Software-Paket 234 (3) (z. B. ihre Pfadnamen, Dateigrößen, zuletzt modifizierte Datenangabe), eine Prüfsumme der Inhalte der Dateien und/oder jede weitere Information vom Software-Paket 234 (3), die verwendet werden kann, um zu erkennen, ob in dem virtuellen Server 330 (5) Änderungen (z. B. infolge von Drift, Malware oder dergleichen) aufgetreten sind. Bei einigen Ausführungsformen werden nicht die Inhalte aller Dateien geprüft. Stattdessen müssen lediglich extrahierte Merkmale 334, die als empfindliche Komponenten des virtuellen Servers 330 eingestuft wurden, für eine Verwendung bei der Analyse extrahiert werden. Des Weiteren könnten extrahierte Merkmale 334 auf der Grundlage des Typs des passiven Überwachens, der auszuführen ist, variieren. Wenn z. B. das passive Überwachen ein Abtasten nach Malware beinhaltet, können ausführbare Dateien oder andere Dateien, in denen Malware wahrscheinlich vorhanden ist, eingeschlossen sein. Alternativ können Steuerungsdateien von anderen derartigen Dateien, die die Konformität des virtuellen Servers 330 mit einer ursprünglichen Vorlage betreffen, bei einem Typ der Drifterkennung des passiven Überwachens eingeschlossen sein.
  • In den 5 und 6 können Merkmale 334 der Abstraktionsebene, die durch die Indexierungsschicht 334E gesammelt wurden, anschließend an Merkmale 334 der Extraktionsebene angefügt werden, die sich aus einem Indexieren von anderen Extraktionsebenen 336A bis 336N ergeben, das durch den Indexierungsagenten 342 ausgeführt wird. Wenn dann eine Analyse am Server 350 der zentralen Erfassung auszuführen ist, können Daten, die einigen oder allen Merkmalen 334 der Extraktionsebene entsprechen, zum Server 350 der zentralen Erfassung weitergeleitet werden. Dagegen könnten Daten, die Merkmalen 334 der Extraktionsebene entsprechen, die sich aus einem Indexieren von einzelnen Abstraktionsebenen 336A bis 336N ergeben, für eine Analyse getrennt weitergeleitet werden. Es sollte ferner klar sein, dass außerdem eine Analyse vor Ort am physischen Server 310 ausgeführt werden könnte.
  • In den 1, 3 und 4 kann ein Analysatormodul 148 des virtuellen Abbilds, das durch ein Computersystem 102 realisiert wird, extrahierte Merkmale 334 analysieren, um ein passives Überwachen des virtuellen Servers 330 auszuführen. Diese Analyse kann sich anhand des Typs passiven Überwachens, der ausgeführt wird, unterscheiden. Zum Beispiel kann bei einer Analyse zur Drifterkennung das Analysatormodul 148 des virtuellen Abbilds ein oder mehrere Elemente von extrahierten Merkmalen 334 mit wenigstens einem Abschnitt eines entsprechenden im Voraus konfigurierten Software-Pakets 352 vergleichen. Durch Vergleichen dieser beiden Elemente kann das Analysatormodul 148 des virtuellen Abbilds den Unterschied zwischen der Dateisystemstruktur, den Inhalten, dem Zustand usw. von jedem berechnen. Dieser Unterschied kann aus drei Teilen bestehen: Daten, die hinzugefügt wurden, Daten, die gelöscht wurden, und Daten, die geändert wurden, jeweils in Bezug auf ein im Voraus konfiguriertes Software-Paket 352. Bei einer Analyse des Malware-Typs können dagegen extrahierte Merkmale 334 mit Signaturen von Agenten bekannter Malware verglichen werden.
  • In 7 sind beispielhafte Vergleichsanalysen 400 gemäß Ausführungsformen der Erfindung gezeigt. Wie dargestellt werden drei Gruppen von Indexergebnisdaten 420 analysiert. Diese drei Gruppen von Indexergebnisdaten 420 werden mit zwei im Voraus konfigurierten Paketen 410 verglichen. Wie gezeigt stammen extrahierte Merkmale 414A und 414B von virtuellen Servern 330 (4), die aus demselben im Voraus konfigurierten Paket erzeugt wurden und somit mit derselben Gruppe von Paketdaten 412A verglichen werden. Die extrahierten Merkmale 414C wurden dagegen von einem virtuellen Server 330 eines anderen Typs gewonnen, der aus einem anderen im Voraus konfigurierten Paket erzeugt wurde und mit Paketdaten 412B verglichen wird. Extrahierte Merkmale 414A sind so dargestellt, dass sie lediglich annehmbare Veränderungen 424 aufweisen und daher wird der Vergleich mit Paketdaten 412A lediglich verhältnismäßig geringe Unterschiede ergeben. Extrahierte Merkmale 414B und 414C weisen jedoch nichtkonforme Änderungen 424, 426 auf, deswegen werden diese Vergleiche beim Vergleichen mit ihren entsprechenden Paketdaten 412A, 412B große Unterschiede ergeben.
  • Nachdem diese Unterschiede bewertet wurden, kann in den 1, 3 und 5 ein passives Überwachen durch Anwenden von Regeln 354 ausgeführt werden, die definieren, welche Änderungen nichtkonform sind. Passives Überwachen kann eine oder mehrere Aktivitäten enthalten wie Abtasten eines Dateisystems, um eine Konformitätsprüfung auszuführen, Abtasten einer Registratur, um festzustellen, welche Anwendungen aktuell in dem System installiert sind, Sicherheitsabtastung, Dateisystem-Inspektion, Überwachung einer Lizenznutzung, Drifterkennung und/oder dergleichen. Die Regeln 354, die verwendet werden, um ein passives Überwachen auszuführen, können durch einen Administrator, einen Benutzer oder eine andere Person konfiguriert werden, die einen virtuellen Server 330 in Bezug auf nichtkonforme Änderungen (z. B. Drift, Malware usw.) bewerten muss. Die Regeln 354 können außerdem statistisch abgeleitet werden durch Analysieren von Unterschieden, die über viele virtuelle Server 330 in einer Umgebung 300 eines virtualisierten Datenzentrums mit einer Toleranz auftreten; können abgeleitet werden durch automatisches Klassifizieren von Dateien als unveränderlich (z. B. ausführbare Dateien), selten veränderlich (Konfigurationsdateien) oder sich ständig verändernd (Log-Dateien); und/oder können von externen Informationsquellen abgeleitet werden wie etwa einer Cluster-Beschreibung anhand einer Bewertung, die durch ein Bewertungs-Tool ausgeführt wird. Ähnliche regelgestützte Invarianten können verwendet werden, um Anomalien oder fehlerhaftes Verhalten im Speicherzustand zu erkennen. Zu Beispielen hiervon gehören Erkennen unbekannter Prozesse, verdächtiger Netzwerkverbindungen und Modifikationen von Codesegmenten, sind jedoch nicht auf diese beschränkt.
  • Zwar wurden Aspekte der Erfindung hier als ein Verfahren und ein System zum passiven Überwachen von Computersystemen gezeigt und beschrieben, es ist jedoch klar, dass Aspekte der Erfindung des Weiteren diverse alternative Ausführungsformen bereitstellen Bei einer Ausführungsform stellt die Erfindung z. B. ein Computerprogramm bereit, das in wenigstens einem computerlesbaren Medium gespeichert ist, das beim Ausführen ein Computersystem befähigt, ein Computersystem passiv zu überwachen. Dabei enthält das computerlesbare Medium Programmcode wie etwa ein Programm 140 zum passiven Überwachen (1), das einige oder alle der hier beschriebenen Prozesse umsetzt. Es ist klar, dass der Begriff „computerlesbares Medium” einen oder mehrere Typen von materiellen Ausdrucksmedien beinhaltet, die gegenwärtig bekannt sind oder zukünftig entwickelt werden, von denen eine Kopie des Programmcode durch eine Datenverarbeitungseinheit aufgenommen, reproduziert oder auf andere Weise kommuniziert werden kann. Das computerlesbare Medium kann z. B. aufweisen: ein oder mehrere tragbare Speicher-Erzeugnisse; eine oder mehrere Speicher/Speicherkomponenten einer Datenverarbeitungseinheit und/oder dergleichen.
  • Bei einer weiteren Ausführungsform stellt die Erfindung ein Verfahren zum Bereitstellen einer Kopie des Programmcode wie etwa ein Programm 140 zum passiven Überwachen (1) bereit, das einen oder alle der hier beschriebenen Prozesse umsetzt. In diesem Fall kann ein Computersystem eine Kopie des Programmcode verarbeiten, der einen oder alle der hier beschriebenen Prozesse umsetzt, um eine Gruppe von Datensignalen zu erzeugen, bei denen eine oder mehrere ihrer Charakteristiken so eingestellt und/oder geändert wurden, dass sie eine Kopie des Programmcode in der Gruppe von Datensignalen codieren, oder für einen Empfang an einer zweiten unterschiedlichen Stelle zu übertragen. Eine Ausführungsform der Erfindung stellt gleichfalls ein Verfahren zum Erlangen einer Kopie von Programmcode, der einige oder alle der hier beschriebenen Prozesse umsetzt, wobei das Verfahren ein Computersystem enthält, das die hier beschriebene Gruppe von Datensignalen empfängt und die Gruppe von Datensignalen in eine Kopie des Computerprogramms übersetzt, das in wenigstens einem computerlesbaren Medium gespeichert ist. In jedem Fall kann die Gruppe von Datensignalen unter Verwendung eines Typs von Datenübertragungsverbindung übertragen/empfangen werden.
  • Bei einer nochmals weiteren Ausführungsform stellt die Erfindung ein Verfahren zum Erzeugen eines Systems zum passiven Überwachen eines Computersystems bereit. In diesem Fall kann ein Computersystem wie etwa das Computersystem 12 (1) erhalten (z. B. erzeugt, vorgehalten, zur Verfügung gestellt usw.) werden und eine oder mehrere Komponenten zum Ausführen eines hier beschriebenen Prozesses können erhalten (erzeugt, gekauft, verwendet, modifiziert usw.) werden und dem Computersystem hinzugefügt werden. Dabei kann das Hinzufügen einen oder mehrere der folgenden Punkte enthalten: (1) Installieren von Programmcode auf einer Datenverarbeitungseinheit; (2) Hinzufügen von einer oder mehreren Datenverarbeitungs- und/oder E/A-Einheiten zu dem Computersystem; (3) Einbeziehen und/oder Modifizieren des Computersystems, damit es in der Lage ist, einen hier beschriebenen Prozess auszuführen; und/oder dergleichen.
  • Falls die Ausdrücke „erste”, „zweite” und dergleichen hier verwendet werden bzw. wo diese verwendet werden, bezeichnen sie keine Reihenfolge, Menge oder Wichtigkeit, sondern werden verwendet, um Elemente voneinander zu unterscheiden, und der Ausdruck „ein” bezeichnet hier keine Mengenbegrenzung, sondern bezeichnet das Vorhandensein wenigstens eines der angegebenen Elemente. Das Bestimmungswort „näherungsweise” beinhaltet bei seiner Verwendung in Verbindung mit einer Größe den angegebenen Wert und hat die durch den Kontext festgelegte Bedeutung (beinhaltet z. B. den Grad des Fehlers, der einer Messung der bestimmten Größe zugehörig ist). Das hier verwendete Suffix „(s)” soll sowohl den Singular als auch den Plural des Ausdrucks, den er modifiziert, einschließen, wodurch ein oder mehrere dieser Ausdrücke eingeschlossen werden (z. B. enthält das Metall bzw. enthalten die Metalle ein oder mehrere Metalle). Darin eingeschlossene Bereiche sind inklusive und unabhängig kombinierbar (z. B. Bereiche von „bis zu näherungsweise 25 Gew.-% oder insbesondere näherungsweise 5 Gew.-% bis zu näherungsweise 20 Gew.-% schließen die Endpunkte und alle Zwischenwerte der Bereiche von „näherungsweise 5 Gew.-% bis näherungsweise 25 Gew.-%” mit ein usw.).
  • Die vorhergehende Beschreibung verschiedener Aspekte der Erfindung wurde für Zwecke der Erläuterung und Beschreibung präsentiert. Sie soll weder erschöpfend sein noch die Erfindung auf die präzise Form, die offenbart wurde, beschränken, wobei offensichtlich viele Modifikationen und Variationen möglich sind. Derartige Modifikationen und Variationen, die für einen Fachmann ersichtlich sind, sind im Umfang der Erfindung enthalten, der durch die angefügten Ansprüche definiert ist.

Claims (10)

  1. Verfahren zum passiven Überwachen eines Computersystems, wobei das Verfahren beinhaltet: Zugreifen auf einen virtuellen Server durch einen Indexierungsagenten, wobei der Indexierungsagent aufweist: eine Indexierungsstruktur mit einer Vielzahl von Indexierungsschichten, wobei jede aus der Vielzahl von Indexierungsschichten eine Anwendungsprogrammierschnittstelle (API) aufweist; und ein erstes Indexierungsmodul, das in eine erste Indexierungsschicht aus der Vielzahl von Indexierungsschichten unter Verwendung einer API der ersten Schicht eingefügt wird; Abrufen eines virtuellen Abbilds des virtuellen Servers durch den Indexierungsagenten; für jede aus der Vielzahl von Indexierungsebenen Indexieren einer entsprechenden Abstraktionsebene des virtuellen Abbilds durch den Indexierungsagenten, um Merkmale der Abstraktionsebene zu extrahieren, die Änderungen in dem virtuellen Server angeben, wobei das Indexieren beinhaltet, dass das erste Indexierungsmodul Befehle dem Indexierungsagenten bereitstellt, während die erste Indexierungsebene eine erste Abstraktionsebene des virtuellen Systems indexiert, das durch die erste Indexierungsebene indexiert wird; und Analysieren wenigstens eines der Merkmale der Abstraktionsebene, um ein passives Überwachen des virtuellen Servers auszuführen.
  2. Verfahren nach Anspruch 1, wobei der Indexierungsagent in einer Indexierungs-Funktionseinheit getrennt von dem virtuellen Server enthalten ist und wobei das Abrufen und das Indexieren ausgeführt werden, ohne Agenten zu nutzen, die in dem virtuellen Server ausgeführt werden.
  3. Verfahren nach Anspruch 1, das ferner vor dem Zugreifen ein Einfügen des ersten Indexierungsmoduls in die erste Indexierungsebene unter Verwendung der API der ersten Indexierungsebene aufweist.
  4. Verfahren nach Anspruch 3, wobei das Analysieren ferner aufweist: vor dem Zugreifen Einfügen eines zweiten Indexierungsmoduls in eine zweite Indexierungsebene des Indexierungsagenten unter Verwendung einer API der zweiten Indexierungsebene, wobei das zweite Indexierungsmodul einen Zeitsteuerungsbefehl enthält, so dass das zweite Indexierungsmodul nach dem ersten Indexierungsmodul auszuführen ist; und in Reaktion auf das Beenden des Indexierens durch das erste Indexierungsmodul Indexieren einer Abstraktionsebene des virtuellen Systems, das durch die zweite Schicht indexiert wird, unter Verwendung von Befehlen, die durch das zweite Indexierungsmodul der zweiten Schicht bereitgestellt werden.
  5. Verfahren nach Anspruch 1, wobei jede aus der Vielzahl von eindeutigen Abstraktionsebenen aus einer anderen Gruppe ausgewählt wird, bestehend aus: einer einzelnen Plattenblock-Ebene, einer Plattenpartitions-Ebene, einer Ebene physischer Eigenschaften, einer Software-Paket-Ebene, einer Betriebssystem-Ebene, einer mittleren Ebene, einer Viruserkennungs-Ebene, einer Dateistruktur-Ebene, eine Dateiinhalts-Ebene und einer Dateiinhalts-Hash-Wert-Ebene.
  6. Verfahren nach Anspruch 1, das ferner vor dem Abrufen aufweist: Einrichten eines Prüfpunkts unter Verwendung eines integrierten Speicherauszugs-Merkmals einer Virtualisierungsschicht des virtuellen Servers; und Erzeugen des virtuellen Abbilds, das Daten enthält, die einem Dateisystem und einem Laufzustand des virtuellen Servers zu einem Zeitpunkt des Prüfpunkts entsprechen.
  7. Verfahren nach Anspruch 1, das ferner aufweist: Zusammenführen der Merkmale einer Abstraktionsebene für eine Vielzahl der Ebenen, um extrahierte Merkmale zu erhalten; Weiterleiten von Daten, die den extrahierten Merkmalen von dem Indexieren entsprechen, zu einem Server der zentralen Erkennung; und Ausführen des Analysierens in dem Server der zentralen Erkennung.
  8. Verfahren nach Anspruch 1, wobei die Merkmale der Abstraktionsebene angeben, ob in dem virtuellen Server eine Drift stattgefunden hat und wobei das Analysieren ein Feststellen enthält, ob eine Drift in dem virtuellen Server aufgetreten ist.
  9. System, das Mittel aufweist, die zum Ausführen aller Schritte des Verfahrens gemäß einem vorhergehenden Verfahrensanspruch ausgelegt sind.
  10. Computerprogramm, das Befehle zum Ausführen aller Schritte des Verfahrens gemäß einem vorhergehenden Verfahrensanspruch aufweist, wenn das Computerprogramm in einem Computersystem ausgeführt wird.
DE112012004247.6T 2011-10-28 2012-10-17 Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung Ceased DE112012004247T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161552797P 2011-10-28 2011-10-28
US61/552,797 2011-10-28
US13/527,994 2012-06-20
US13/527,994 US9229758B2 (en) 2011-10-28 2012-06-20 Passive monitoring of virtual systems using extensible indexing
PCT/IB2012/055648 WO2013061213A1 (en) 2011-10-28 2012-10-17 Passive monitoring of virtual systems using extensible indexing

Publications (1)

Publication Number Publication Date
DE112012004247T5 true DE112012004247T5 (de) 2014-08-21

Family

ID=48167201

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112012004247.6T Ceased DE112012004247T5 (de) 2011-10-28 2012-10-17 Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung

Country Status (5)

Country Link
US (1) US9229758B2 (de)
CN (1) CN103930872B (de)
DE (1) DE112012004247T5 (de)
GB (1) GB2507024B (de)
WO (1) WO2013061213A1 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
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
US9916171B2 (en) * 2014-07-10 2018-03-13 International Business Machines Corporation Application discovery in virtual machines using temporal clustering of installation files
US9762450B2 (en) * 2014-09-04 2017-09-12 Accenture Global Services Limited System architecture for cloud-platform infrastructure layouts
US9846712B2 (en) 2015-04-25 2017-12-19 International Business Machines Corporation Index-only multi-index access
US9563777B2 (en) 2015-04-29 2017-02-07 International Business Machines Corporation Security policy generation based on snapshots of similar virtual machines
CN106844491B (zh) * 2016-12-26 2020-07-10 中国石油天然气集团公司 一种临时数据的写入、读取方法及写入、读取装置
US11431735B2 (en) 2019-01-28 2022-08-30 Orca Security LTD. Techniques for securing virtual machines
CN112306604B (zh) * 2020-08-21 2022-09-23 海信视像科技股份有限公司 一种传输文件的进度显示方法及显示设备
US11627154B2 (en) 2021-04-26 2023-04-11 Orca Security LTD. Forward and rearward facing attack vector visualization

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001025950A1 (en) 1999-10-05 2001-04-12 Ejasent Inc. Dynamic symbolic link resolution
US7085785B2 (en) 2002-02-15 2006-08-01 International Business Machines Corporation Writable file system snapshot with ditto address feature
US7340489B2 (en) 2002-04-10 2008-03-04 Emc Corporation Virtual storage devices
US8447963B2 (en) 2002-06-12 2013-05-21 Bladelogic Inc. Method and system for simplifying distributed server management
US7089552B2 (en) 2002-08-29 2006-08-08 Sun Microsystems, Inc. System and method for verifying installed software
US7277999B1 (en) 2004-08-12 2007-10-02 Vmware, Inc. Restricting memory access to protect data when sharing a common address space
US9329905B2 (en) * 2004-10-15 2016-05-03 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups including a virtual machine
US7899788B2 (en) 2005-04-01 2011-03-01 Microsoft Corporation Using a data protection server to backup and restore data on virtual servers
US7827550B2 (en) 2005-08-17 2010-11-02 Intel Corporation Method and system for measuring a program using a measurement agent
US20070055710A1 (en) 2005-09-06 2007-03-08 Reldata, Inc. BLOCK SNAPSHOTS OVER iSCSI
JP4800031B2 (ja) 2005-12-28 2011-10-26 株式会社日立製作所 ストレージシステム及びスナップショット管理方法
JP4800056B2 (ja) 2006-02-09 2011-10-26 株式会社日立製作所 ストレージシステム及びその制御方法
US20080028034A1 (en) 2006-07-25 2008-01-31 Andrew Currid Method for mapping an iscsi target name to a storage resource based on an initiator hardware class identifier
US7571158B2 (en) 2006-08-25 2009-08-04 Oracle International Corporation Updating content index for content searches on networks
US7802050B2 (en) * 2006-09-29 2010-09-21 Intel Corporation Monitoring a target agent execution pattern on a VT-enabled system
US8234641B2 (en) 2006-10-17 2012-07-31 Managelq, Inc. Compliance-based adaptations in managed virtual systems
US8011010B2 (en) 2007-04-17 2011-08-30 Microsoft Corporation Using antimalware technologies to perform offline scanning of virtual machine images
CA2661398C (en) 2008-04-05 2016-05-17 Third Brigade Inc. System and method for intelligent coordination of host and guest intrusion prevention in virtualized environment
US8615501B2 (en) 2008-06-23 2013-12-24 International Business Machines Corporation Hypervisor service to provide image version control support
US7966290B2 (en) 2008-07-29 2011-06-21 Novell, Inc. Backup without overhead of installed backup agent
US8307177B2 (en) 2008-09-05 2012-11-06 Commvault Systems, Inc. Systems and methods for management of virtualization data
US8499297B2 (en) 2008-10-28 2013-07-30 Vmware, Inc. Low overhead fault tolerance through hybrid checkpointing and replay
US8650562B2 (en) * 2009-06-12 2014-02-11 International Business Machines Corporation Method and apparatus for scalable monitoring of virtual machine environments combining base virtual machine and single monitoring agent for measuring common characteristics and individual virtual machines measuring individualized characteristics
US8732427B2 (en) 2009-08-03 2014-05-20 Quantum Corporation Systems and methods for collapsing a derivative version of a primary storage volume
US8381033B2 (en) 2009-10-30 2013-02-19 International Business Machines Corporation Fault management in virtual computing environments
CN102081548A (zh) * 2009-11-30 2011-06-01 华为技术有限公司 Java应用的处理方法、系统和SAF平台
AU2010339584B2 (en) * 2009-12-31 2014-06-26 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US8621233B1 (en) 2010-01-13 2013-12-31 Symantec Corporation Malware detection using file names
US8607229B2 (en) * 2010-02-05 2013-12-10 Riverbed Technology, Inc. Correcting packet timestamps in virtualized environments
JP5416156B2 (ja) 2011-03-29 2014-02-12 株式会社日立システムズ 統合監視システム及び統合監視プログラム
US9286182B2 (en) 2011-06-17 2016-03-15 Microsoft Technology Licensing, Llc Virtual machine snapshotting and analysis
US20130111018A1 (en) 2011-10-28 2013-05-02 International Business Machines Coporation Passive monitoring of virtual systems using agent-less, offline indexing
US8806625B1 (en) 2012-10-02 2014-08-12 Symantec Corporation Systems and methods for performing security scans
US9386028B2 (en) 2012-10-23 2016-07-05 Verint Systems Ltd. System and method for malware detection using multidimensional feature clustering
JP2015026112A (ja) 2013-07-24 2015-02-05 富士通株式会社 ストレージ制御装置、制御プログラム及び制御方法

Also Published As

Publication number Publication date
US20130111473A1 (en) 2013-05-02
US9229758B2 (en) 2016-01-05
CN103930872B (zh) 2017-03-15
GB2507024B (en) 2014-07-23
CN103930872A (zh) 2014-07-16
WO2013061213A1 (en) 2013-05-02
GB201402601D0 (en) 2014-04-02
GB2507024A (en) 2014-04-16

Similar Documents

Publication Publication Date Title
DE112012004247T5 (de) Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung
DE102012218699A1 (de) Passives überwachen virtueller systeme mittels agentenlosem offline-indexieren
DE112012002362B4 (de) Automatisierte Empfehlungen für Cloud-Computing-Optionen
DE60017457T2 (de) Verfahren zur isolierung eines fehlers in fehlernachrichten
DE112016003949T5 (de) Webbasierte programmierumgebung für eingebettete geräte
DE102015004127A1 (de) Verfahren und System zum Vergleichen von verschienenen Versionen einer cloud-basierten Anwendung in einer Produktionsumgebung unter Verwendung von getrennten Back-End-Systemen
DE112011102243T5 (de) Konfigurieren eines Computersystems für die Installation von Softwarepaketen
DE112012004776T5 (de) Erzeugen einer Produktionsserver-Lastaktivität für einen Testserver
DE102013200159A1 (de) Management von Sicherheitsrichtlinien unter Verwendung einer Störungsanalyse
DE102005051980B4 (de) System und Verfahren zur Netzwerkübertragung eines Informationsverarbeitungssystem-Images
DE102013215009A1 (de) Verfahren und System zur Optimierung der Datenübertragung
DE112006003004T5 (de) Kommunikation zwischen Partitionen in einer Virtualisierungsumgebung
DE102012208751A1 (de) Datensicherheit für eine Datenbank in einer Mehrknotenumgebung
DE102005049055A1 (de) Verfahren, um Ereignisse in einem Systemereignisprotokoll in eine Reihenfolge zu bringen
DE102015004128A1 (de) Verfahren und System zum Testen cloud-basierter Anwendungen und Dienste in einer Produktionsumgebung unter Verwendung von getrennten Back-End-Systemen
DE10119876A1 (de) Verfahren, System und Computerprorammprodukt zur Bereitstellung einer Jobüberwachung
DE112014002877T5 (de) Passives Überwachen von virtuellen Systemen mithilfe von agentenunabhängiger, echtzeitnaher Indexierung
DE102015102434A1 (de) Verfahren und System zum Bereitstellen eines robusten und effizienten Verwaltungs- und Verifikationsdienstes für Verwundbarkeiten von virtuellen Betriebsmitteln
DE102014114585A1 (de) Verfahren zum Betreiben eines Bedienfelds für ein Produktionssystem sowie Steuervorrichtung für ein Produktionssystem
DE10051022B4 (de) Verfahren, System und Computerprogrammprodukt für die Neukonfiguration logischer Drucker in einem Druckernetzsystem beim Wechsel von einem Überwachungsprogramm zu einem zweiten Überwachungsprogramm
DE112014001997T5 (de) Kennzeichnen von Client-Zuständen
DE112013006588T5 (de) Verwaltungssystem zum Verwalten eines Computersystems und Verwaltungsverfahren hierfür
DE112020005949T5 (de) Informationsverarbeitungsvorrichtung, Anomalieerfassungsverfahren und Computerprogramm
DE202015009296U1 (de) System zum Laden virtueller Maschinen
DE202015009316U1 (de) Metadatenmanagement in einem dezentralen Verarbeitungssystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final