IP Library Granted Patent US 11,616,690
Granted Patent B2
US 11,616,690 · App. 17/375,386 · Granted Mar 28, 2023

Discovery of virtualization environments

Inventors: Alexandra Feiguine (Petah Tikva, IL); Tom Bar Oz (Petah Tikva, IL); Shiri Hameiri (Petah Tikva, IL); Hail Tal (Petah Tikva, IL)
Assignee: ServiceNow, Inc.
H04L41/0813H04L63/08H04L67/10
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 11,616,690
App. No.
17/375,386
Granted
Mar 28, 2023
Kind
B2
Abstract

A discovery application on a computing system is provided. The discovery application receives a user input, which is for discovery of resources associated with a cloud operating system of a cloud computing system. The user input includes an authentication credential and account information associated with the cloud operating system. Based on the received input, the discovery application executes a discovery pattern comprising operations for the discovery of resources. The cloud operating system includes a group of services to access such resources. At least one of the operations corresponds to an API call to an API endpoint associated with a service of the group of services. The discovery application receives a response to the API call from the cloud operating system. The response includes a payload of information associated with the resources. The discovery application updates, based on the received response, one or more configuration items in a configuration management database.

Claims (37)

1. A computer-implemented method comprising:

receiving a user input from an application interface on a user device;

setting, based on the user input, a discovery schedule associated with discovery of resources of a remote virtualization system;

executing, based on the discovery schedule, a discovery pattern comprising a sequence of operations for discovery of the resources, wherein execution of the discovery pattern corresponds to querying a manager instance of the remote virtualization system through a set of one or more application programming interface (API) calls to an API associated with the manager instance;

receiving a response to the set of API calls from the manager instance, wherein the response comprises payload of information associated with the resources; and

updating, based on the response and in a configuration management database (CMDB), one or more configuration items (Cis) representing the resources.

2. The computer-implemented method of claim 1 , wherein the user input includes a uniform resource locator (URL) of the API associated with the manager instance, and wherein the manager instance is specified in a substring of the URL.

3. The computer-implemented method of claim 1 , wherein the discovery schedule specifies one or more of the resources or types of the resources to be discovered on a regular, recurring, or on-demand basis.

4. The computer-implemented method of claim 1 , wherein the discovery pattern specifies a format of the response.

5. The computer-implemented method of claim 1 , wherein the discovery pattern specifies a parsing strategy to apply to the response.

6. The computer-implemented method of claim 1 , wherein the resources include specifications of a logical data center, one or more virtual clusters, and one or more virtual machines, wherein the logical data center contains the one or more virtual clusters, and the one or more virtual machines are hosted on the one or more virtual clusters.

7. The computer-implemented method of claim 6 , wherein the logical data center is associated with a service account, and wherein the user input specifies the service account, and wherein the service account includes authentication credentials usable to access the logical data center.

8. The computer-implemented method of claim 6 , wherein the CMDB includes separate tables respectively storing configuration items for each of the logical data center, one or more virtual clusters, and one or more virtual machines.

9. The computer-implemented method of claim 8 , wherein the CMDB includes a relationship table that specifies existence of relationships between pairs of entries in the tables and types of relationships between the entries.

10. The computer-implemented method of claim 1 , wherein executing the discovery pattern comprises executing a pre-script that creates associations, in the CMDB, between identifiers of virtual machines contained within the remote virtualization system and operating systems running upon the virtual machines.

11. The computer-implemented method of claim 1 , wherein executing the discovery pattern comprises executing a post-script that deletes, from the CMDB, stale associations involving virtual machines contained within the remote virtualization system.

12. The computer-implemented method of claim 1 , wherein the payload of information associated with the resources includes statistical and diagnostic information related to the remote virtualization system that can be used to deploy additional virtualized components within the remote virtualization system or to identify faulty virtualized components within the remote virtualization system.

13. The computer-implemented method of claim 1 , wherein the payload of information associated with the resources includes identification of: processor types and architecture employed by a virtual cluster within the remote virtualization system, and an address, domain name, number of disks, memory, and execution schedule of a virtual machine within the virtual cluster.

14. A computing system comprising:

persistent storage containing a configuration management database (CMDB); and

one or more processors configured to:

receive a user input from an application interface on a user device;

set, based on the user input, a discovery schedule associated with discovery of resources of a remote virtualization system;

execute, based on the discovery schedule, a discovery pattern comprising a sequence of operations for discovery of the resources, wherein execution of the discovery pattern corresponds to querying a manager instance of the remote virtualization system through a set of one or more application programming interface (API) calls to an API associated with the manager instance;

receive a response to the set of API calls from the manager instance, wherein the response comprises payload of information associated with the resources; and

update, based on the response and in the CMDB, one or more configuration items (CIs) representing the resources.

15. A non-transitory computer-readable medium having stored thereon, computer-executable instructions which, when executed by a computing system, causes the computing system to execute operations, the operations comprising:

receiving a user input from an application interface on a user device;

setting, based on the user input, a discovery schedule associated with discovery of resources of a remote virtualization system;

executing, based on the discovery schedule, a discovery pattern comprising a sequence of operations for discovery of the resources, wherein execution of the discovery pattern corresponds to querying a manager instance of the remote virtualization system through a set of one or more application programming interface (API) calls to an API associated with the manager instance;

receiving a response to the set of API calls from the manager instance, wherein the response comprises payload of information associated with the resources; and

updating, based on the response and in a configuration management database (CMDB), one or more configuration items (CIs) representing the resources.

16. The non-transitory computer-readable medium of claim 15 , wherein the resources include specifications of a logical data center, one or more virtual clusters, and one or more virtual machines, wherein the logical data center contains the one or more virtual clusters, and the one or more virtual machines are hosted on the one or more virtual clusters.

17. The non-transitory computer-readable medium of claim 16 , wherein the logical data center is associated with a service account, and wherein the user input specifies the service account, and wherein the service account includes authentication credentials usable to access the logical data center.

18. The non-transitory computer-readable medium of claim 16 , wherein the CMDB includes separate tables respectively storing configuration items for each of the logical data center, one or more virtual clusters, and one or more virtual machines.

19. The non-transitory computer-readable medium of claim 18 , wherein the CMDB includes a relationship table that specifies existence of relationships between pairs of entries in the tables and types of relationships between the entries.

20. The non-transitory computer-readable medium of claim 15 , wherein executing the discovery pattern comprises executing a post-script that deletes, from the CMDB, stale associations involving virtual machines contained within the remote virtualization system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2021
From: FEIGUINE, ALEXANDRA; BAR OZ, TOM; HAMEIRI, SHIRI; TAL, HAIL
To: SERVICENOW, INC.
Reel/Frame 056855/0453 →
Continuity (3)
Continuation 16997724 · Aug 19, 2020
Provisional Application 63055215 · Jul 22, 2020
Related Publication 20220029880A1 · Jan 27, 2022
Cited By (17)
US 12,254,014 US 12,259,998 US 12,271,719 US 12,282,385 US 12,309,235 US 12,333,041 US 12,362,995 US 12,399,712 US 12,438,790 US 12,499,016 US 12,554,380 US 12,563,115 US 12,587,432 US 12,603,823 US 12,619,402 US 12,664,002 US 12,683,852