IP Library Granted Patent US 9,135,342
Granted Patent B2
US 9,135,342 · App. 12/783,621 · Granted Sep 15, 2015

Comprehensive, relevant, and dynamic data searching in a virtualization environment

Inventors: Liang Cui (Beijing, CN); Hailing Xu (Peking, CN); Ying He (Palo Alto, CA)
Assignee: VMware, Inc.
G06F17/30864G06F17/30312
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,135,342
App. No.
12/783,621
Granted
Sep 15, 2015
Kind
B2
Abstract

A method includes indexing data and/or metadata in online virtual machines (VMs), offline VMs, virtual applications, and/or snapshots thereof on one or more host server(s) in a virtualization environment through a search architecture in the virtualization environment. The online VMs are VMs that are powered on, and the offline VMs are VMs that are powered off. The method also includes maintaining a database of the indexed data and/or metadata in the online VMs, the offline VMs, the virtual applications, and/or the snapshots thereof to enable a comprehensive search result to a search query through the search architecture. The database is associated with the search architecture.

Claims (72)

1. A method for maintaining a search capability offered by a search system in a virtualization environment, the method comprising:

receiving, by the search system, first index data from an agent running in a currently running VM, wherein the agent is configured to generate the first index data wherein first index data corresponds to files stored on a file system used by the currently running VM;

determining, by the search system, an event for the currently running VM that indicates a change in state for the currently running VM to an offline VM, the offline VM being a VM that is not currently running;

when the event is determined by the search system, using an offline VM adapter to generate second index data, wherein using the offline VM adapter comprises:

mounting, by the offline VM adapter in the search system, a virtual disk image file associated with the offline VM to access file systems stored in the virtual disk image file; and

generating the second index data wherein second index data corresponds to the file systems stored in the virtual disk image file; and

maintaining, by the search system, a database of the first index data received from the agent and the second index data generated by offline VM adapter in the search system from the file systems stored in the virtual disk image files to enable a search result in response to a search query received by the search system.

2. The method of claim 1 , further comprises

consolidating the first index data and the second index data in the database of the search system.

3. The method of claim 1 , further comprising at least one of:

utilizing a third-party search engine to generate the search result; and

leveraging the third-party search engine to index at least one of data and metadata of the currently running VM and the offline VM.

4. The method of claim 1 , further comprising

transmitting the search query through at least one of a virtualization environment client and a user interface provided therein.

5. The method of claim 1 , further comprising

enforcing a security policy to enable authentication and authorization services through the search system.

6. The method of claim 1 , further comprising

deploying the search system as a VM image in a cloud operating system environment.

7. The method of claim 1 , further comprising

communicating with at least one host server, the currently running VM, and the offline VM in the virtualization environment to obtain an inventory property thereof.

8. The method of claim 1 , further comprising

providing information about an operating system associated with one of the currently running VM and the offline VM in the search result.

9. The method of claim 1 , wherein the virtualization environment includes an internal cloud located in an enterprise datacenter and an external cloud located at an external service provider, the internal cloud and the external cloud being configured to communicate with one another through the search system to generate the search result.

10. The method of claim 1 , wherein the change in state of the currently running VM and the offline VM includes at least one of

a powering on of the offline VM,

a powering off of the currently running VMs,

a migration of the currently running VM from a host server in the virtualization environment to another host server in the virtualization environment,

a file change in one of the currently running VM and the offline VM,

a service change in the virtualization environment, and

a program change in one of the currently running VM and the offline VM.

11. The method of claim 3 , wherein utilizing the third-party search engine to generate the search result includes

utilizing a set of search related Application Programming Interfaces (APIs) associated with the third-party search engine.

12. The method of claim 4 , further comprising

presenting the search result in at least one of the virtualization environment client and a web browser.

13. The method of claim 4 , further comprising at least one of

powering on the offline VM and powering off the currently running VM through an interface provided through the search result.

14. The method of claim 6 , further comprising

implementing the search system as an extension to the cloud operating system.

15. The method of claim 9 , further comprising

grouping the currently running VM and the offline VM in at least one of the internal cloud and the external cloud based on at least one of a geographical region and a network topology.

16. A method for maintaining a search capability offered by a search system in a virtualization environment, the method comprising:

receiving, by the search system, first index data from an agent running in a currently running VM, wherein the agent is configured to generate the first index data wherein the first index data corresponds to files stored on a file system used by the currently running VM;

determining, by the search system, an event for the currently running VM that indicates a change in state for the currently running VM to an offline VM, the offline VM being a VM that is not currently running;

when the event is determined by the search system, using an offline VM adapter to generate second index data, wherein using the offline VM adapter comprises:

mounting, by the offline VM adapter in the search system, a virtual disk image file associated with the offline VM to access file systems stored in the virtual disk image file; and

generating the second index data wherein the second index data corresponds to the file systems stored in the virtual disk image file; and

updating the first index data received from the agent and the second index data generated by offline VM adapter based on the change in state for the currently running VM and the offline VM through the search system in the virtualization environment to enable a search result in response to a search query received by the search system.

17. The method of claim 16 , wherein the change in state includes at least one of

a powering on of the offline VM,

a powering off of the currently running VM,

a migration of the currently running VM from a host server in the virtualization environment to another host server in the virtualization environment,

a file change in one of the currently running VM and the offline VM,

a service change in the virtualization environment, and

a program change in one of the currently running VM and the offline VM.

18. The method of claim 16 , further comprising

utilizing a set of search related APIs associated with a third-party search engine to generate the search result.

19. A system for searching in a virtualization environment, comprising:

at least one host server comprising a currently running VM; and

a search architecture implemented by a processor and configured to

receive first index data from an agent running in the currently running VM, wherein the agent is configured to generate the first index data wherein the first index data corresponds to files stored on a file system used by the currently running VM;

determine an event for the currently running VM that indicates a change in state for the currently running VM to an offline VM, the offline VM being a VM that is not currently running;

when the event is determined, by the search system, using an offline VM adapter to generate second index data, wherein using the offline VM adapter comprises:

mount, by the offline VM adapter in the search system, a virtual disk image file associated with the offline VM to access file systems stored in the virtual disk image file; and

generate the second index data wherein the second index data correspond to the file systems stored in the virtual disk image file; and

maintain a database of the first index data received from the agent and the second index data generated by the offline VM adapter from the file systems stored in the virtual disk image file to enable a search result in response to a search query received by the search architecture.

20. The system of claim 19 , wherein the search architecture comprises

an online VM adapter configured to communicate with the VM agent to collect the first index data, wherein

the offline VM adapter, having at least one driver with knowledge of data structure of the virtual disk image file associated with the offline VM, is configured to access the virtual disk image file offline to generate the second index data.

21. The system of claim 19 , wherein the search architecture comprises

a search host agent operating in a host operating system (OS) configured to

communicate with the VM agent to collect the first index data, and

mount the virtual disk image file associated with the offline VM to generate the second index data.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2010
From: CUI, LIANG; XU, HAILING; HE, YING
To: VMWARE, INC.
Reel/Frame 024413/0829 →
Priority Claims (1)
CN 2010 1 0114852 · Feb 26, 2010 · national
Continuity (1)
Related Publication 20110213765A1 · Sep 1, 2011