IP Library Granted Patent US 11,474,980
Granted Patent B1
US 11,474,980 · App. 17/137,315 · Granted Oct 18, 2022

Cloud resource tagging and inventory

Inventors: Sai Varun Prasanth Soundararajan (Raleigh, NC); Sindy Giraldo (Fort Lauderdale, FL)
Assignee: Citrix Systems, Inc.
G06F16/212G06F16/22G06F16/285G06Q10/087G06Q10/105H04L67/10H04L67/51
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,474,980
App. No.
17/137,315
Granted
Oct 18, 2022
Kind
B1
Abstract

Data characterizing a list of resources including a first resource within a first remote computing environment and a second resource within a second remote computing environment is received from a database separate from a plurality of remote computing systems. Metadata characterizing a first tag to be applied to the first resource and a second tag to be applied to the second resource is received. A data model of the resources is generated. The data model associates the first resource with the first tag and the second resource with the second tag. The data model is stored within a second database. Related apparatus, systems, techniques and articles are also described.

Claims (38)

1. A method comprising:

receiving, from a database separate from a plurality of remote computing systems, data characterizing a list of resources including a first resource within a first remote computing environment and a second resource within a second remote computing environment;

receiving metadata characterizing a first tag to be applied to the first resource and a second tag to be applied to the second resource;

generating a data model of the resources, the data model associating the first resource with the first tag and the second resource with the second tag;

storing the data model within a second database;

updating the data model based on receiving data characterizing changes to the metadata and/or changes to at least one of the first resource or the second resource;

maintaining the database, wherein the maintaining includes using at least a services discovery agent to register new instantiations of services to the database, the database forming part of a service registry containing identities of available service instances and associated connection information for services within a computing infrastructure.

2. The method of claim 1 , wherein the first remote computing environment includes a first cloud resource provider and the second remote computing environment includes a second cloud resource provider different from the first cloud resource provider.

3. The method of claim 1 , wherein the first remote computing environment includes an on premise computing environment.

4. The method of claim 1 , wherein the database forms part of a services discovery platform including a service registry containing identities of available service instances and associated connection information for the available service instances within the plurality of remote computing systems, wherein new service instances, during or after instantiation, register with the services registry.

5. The method of claim 4 , wherein the data characterizing the list of resources includes a first identity associated with a first software application and a first identity of a host of the first software application; wherein the data characterizing the list of resources further includes a second identity associated with a second software application and a second identity associated with a host of the second software application.

6. The method of claim 5 , wherein the services discovery platform is separate from the first host and separate from the second host, the first host including a first entity operating and/or providing the first remote computing environment, the second host including a second entity operating and/or providing the second remote computing environment.

7. The method of claim 1 , wherein the first resource includes a virtual machine, a storage account, a web application, a database, and/or a virtual network.

8. The method of claim 1 , wherein the metadata further characterizes a cost center identity, a department name, a product name, an application name, a service name, an environment, a role, and/or a software version.

9. The method of claim 1 , further comprising providing an application programming interface configured to enable a user to provide new tags, modify existing tags, and identify resources associated with the first tag.

10. A system comprising:

at least one data processor: and

memory storing instructions which, when executed by the at least one data processor, causes the at least one data processor to perform operations comprising:

receiving, from a database separate from a plurality of remote computing systems, data characterizing a list of resources including a first resource within a first remote computing environment and a second resource within a second remote computing environment;

receiving metadata characterizing a first tag to be applied to the first resource and a second tag to be applied to the second resource;

generating a data model of the resources, the data model associating the first resource with the first tag and the second resource with the second tag;

storing the data model within a second database;

updating the data model based on receiving data characterizing changes to the metadata and/or changes to at least one of the first resource or the second resource;

maintaining the database, wherein the maintaining includes using at least a services discovery agent to register new instantiations of services to the database, the database forming part of a service registry containing identities of available service instances and associated connection information for services within a computing infrastructure.

11. The system of claim 10 , wherein the first remote computing environment includes a first cloud resource provider and the second remote computing environment includes a second cloud resource provider different from the first cloud resource provider.

12. The system of claim 10 , wherein the first remote computing environment includes an on premise computing environment.

13. The system of claim 10 , wherein the database forms part of a services discovery platform including a service registry containing identities of available service instances and associated connection information for the available service instances within the plurality of remote computing systems, wherein new service instances, during or after instantiation, register with the services registry.

14. The system of claim 13 , wherein the data characterizing the list of resources includes a first identity associated with a first software application and a first identity of a host of the first software application; wherein the data characterizing the list of resources further includes a second identity associated with a second software application and a second identity associated with a host of the second software application.

15. The system of claim 14 , wherein the services discovery platform is separate from the first host and separate from the second host, the first host including a first entity operating and/or providing the first remote computing environment, the second host including a second entity operating and/or providing the second remote computing environment.

16. The system of claim 10 , wherein the first resource includes a virtual machine, a storage account, a web application, a database, and/or a virtual network.

17. The system of claim 10 , wherein the metadata further characterizes a cost center identity, a department name, a product name, an application name, a service name, an environment, a role, and/or a software version.

18. A non-transitory computer readable medium storing instructions which, when executed by at least one data processor forming part of at least one computing system, causes the at least one data processor to perform operations comprising:

receiving, from a database separate from a plurality of remote computing systems, data characterizing a list of resources including a first resource within a first remote computing environment and a second resource within a second remote computing environment;

receiving metadata characterizing a first tag to be applied to the first resource and a second tag to be applied to the second resource;

generating a data model of the resources, the data model associating the first resource with the first tag and the second resource with the second tag;

storing the data model within a second database;

updating the data model based on receiving data characterizing changes to the metadata and/or changes to at least one of the first resource or the second resource;

maintaining the database, wherein the maintaining includes using at least a services discovery agent to register new instantiations of services to the database, the database forming part of a service registry containing identities of available service instances and associated connection information for services within a computing infrastructure.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2021
From: SOUNDARARAJAN, SAI VARUN PRASANTH; GIRALDO, SINDY
To: CITRIX SYSTEMS, INC.
Reel/Frame 054871/0903 →
Cited By (1)
US 12,693,841