Virtual machine snapshotting and analysis
AssigneeMicrosoft Technology Licensing, LLC
InventorsRobert Fries, Galen Hunt, Shobana Balakrishnan
Life of this patent
Estimating the term…
Abstract
Described are techniques for capturing and analyzing snapshots of virtual machines. One or more computers may automatically obtain snapshots of virtual machines as they are executing to form a pool of virtual machine snapshots. The virtual machine snapshots are then read to obtain a set of features properties of the virtual machine snapshots, including information about a running guest operating system, software installed on the virtual machine, metadata about the virtual machine itself, and others. The features or properties are analyzed, in one embodiment using a machine learning algorithm, to automatically compute and store information about the virtual machines.
Claims19
A method, comprising:
- accessing stored virtual machine snapshots, the virtual machine snapshots having been captured from one or more executing virtual machines;
- and
- automatically forming a pool of features comprised of features obtained from the accessed virtual machine snapshots;
- and
- performing automated analysis on the pool of features to identify one or more traits of one or more of the virtual machine snapshots, wherein the automated analysis either:
- computes probabilities that correspond to the one or more virtual machines, respectively;
- categorizes one or more of the virtual machines into one or more pre-defined categories;
- or
- ranks the one or more virtual machines relative to each other with respect to relevance to a predefined trait, wherein a rank of a virtual machine indicates its relative relevance to the predefined trait.
One or more computer-readable storage media storing information to cause one or more computers to perform a process, the process comprising:
- performing feature extraction on a plurality of concurrently stored virtual machine snapshots to obtain a set of feature values of features of the virtual machine snapshots, the virtual machine snapshots having been previously captured during execution of one or more virtual machines by capturing virtualized memory and virtualized disk data of the one or more virtual machines while the one or more virtual machines were online;
- and
- performing automated reasoning on the extracted feature values to rank, identify, classify, and/or compute probabilities of traits of the virtual machines that corresponds to the feature values of trait the virtual machine snapshots, wherein the automated analysis comprises either:
- computing probabilities that correspond to the virtual machines, respectively;
- categorizing one or more of the virtual machines into one or more pre-defined categories;
- or
- ranking the virtual machines relative to each other with respect to relevance to a predefined trait, wherein a rank of a virtual machine indicates its relative relevance to the predefined trait.
A method for analyzing virtual machines, the method performed by one or more computers and comprising:
- automatically periodically snapshotting each of the virtual machines as they are executing to form a pool of virtual machine snapshots, wherein the virtual machines remain online while being snapshotted, and wherein the pool of virtual machine snapshots comprises pluralities of periodically automatically captured snapshots of the respective virtual machines;
- retaining the pool of virtual machine snapshots together in a snapshot repository;
- reading the virtual machine snapshots in the snapshot repository to obtain therefrom a set of properties of the virtual machine snapshots;
- storing the set of properties in a datastore;
- and
- automatically computing and storing information about the virtual machines based on the set of properties in the datastore, the information about the virtual machines obtained by statistical computation, based on the properties, by the one or more computers, the statistical computation comprising at least:
- computing probabilities that correspond to the virtual machines, respectively;
- categorizing the virtual machines into one or more pre-defined categories;
- or
- ranking the virtual machines relative to each other with respect to relevance to a predefined trait, wherein a rank of a virtual machine corresponds to its relative relevance to the predefined trait.
Dependencies are inferred from the claim text.