IP Library › Granted Patent US 12,748,605
Granted Patent B2
US 12,748,605 · App. 18/336,544 · Granted Sep 29, 2026

Discovery and inventory control for remote resource integration with cloud services

Inventors: Erik Sabiun (Vilnius, LT); Zheyu Ding (Kirkland, WA)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F9/44526G06F9/45558G06F9/4875G06F9/5072G06F9/5077H04L41/084G06F2009/45583
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 12,748,605
App. No.
18/336,544
Granted
Sep 29, 2026
Kind
B2
Abstract

Techniques are disclosed herein for extending a cloud service's reach into on- or off-premises environments and other cloud platforms to enable migration and multi-cloud use cases. In one aspect, a computer-implemented method is provided that includes deploying a remote agent appliance with a discovery plugin in an external environment of a user, creating an asset source specifying a location of the external environment from which external assets and associated asset metadata should be discovered, generating a discovery job for the purpose of retrieving the asset metadata for the external assets discovered within the asset source, executing, using the discovery plugin, the discovery job to discover and retrieve the external assets and the associated asset metadata within the asset source, and providing a collection of assets that includes the asset metadata for the external assets as at least part of an inventory to the user.

Claims (57)

1 . A computer-implemented method comprising:

deploying, by a computing system, a remote agent appliance comprising a discovery plugin in an external environment of a user, wherein the remote agent appliance comprises a virtual appliance that is sealed to prevent a remote access of the user and prohibit execution of arbitrary code by the user, so that the user is capable of interacting with the remote agent appliance via a local console for registration, with all other management operations of the remote agent appliance being orchestrated by a cloud infrastructure;

creating, by the computing system, an asset source specifying a location of the external environment from which external assets and associated asset metadata should be discovered, wherein the asset source references credentials stored in a secure data store of the cloud infrastructure, with credential access for discovery operations being orchestrated by the cloud infrastructure;

creating, by the computing system, a discovery policy for discovering the external assets within the asset source;

generating, by the computing system, a discovery job for retrieving the asset metadata for the external assets discovered within the asset source;

executing, by the computing system using the discovery plugin, the discovery job to discover the external assets within the asset source based on the discovery policy, wherein the executing the discovery job comprises retrieving the asset metadata for the external assets discovered within the asset source and populating an inventory with the asset metadata, and wherein the inventory contains a collection of assets that includes the asset metadata for the external assets and comprises a single global view of assets across multiple external environments, wherein each asset is uniquely identified by a tuple of external identifier and source identifier, and de-duplication logic is employed to ensure that assets discovered from different sources or environments are presented as a single representation to the user; and

providing, by the computing system, the collection of assets and the associated asset metadata within the inventory to the user.

2 . The computer-implemented method of claim 1 , further comprising generating, by the computing system, the inventory on the cloud infrastructure, wherein the cloud infrastructure is in communication with the remote agent appliance.

3 . The computer-implemented method of claim 1 , wherein the discovery policy is a schedule that identifies a time for when the computing system is to execute the discovery job.

4 . The computer-implemented method of claim 1 , further comprising:

receiving, by the computing system, a query from the user regarding the asset metadata;

executing, by the computing system, the query on the inventory; and

providing, by the computing system, results of the query to the user based on the executing.

5 . The computer-implemented method of claim 1 , further comprising in response to generating the asset source, generating, by the computing system, connectors between the discovery plugin and the location of the external environment, wherein the asset metadata is retrieved for the external assets using the connectors.

6 . The computer-implemented method of claim 1 , further comprising:

generating, by the computing system, a migration project based on one or more assets within the collection of assets and the associated asset metadata within the inventory; and

executing, by the computing system, a migration of the one or more assets to the cloud infrastructure based on the migration project.

7 . The computer-implemented method of claim 1 , wherein the providing the collection of assets and the associated asset metadata within the inventory to the user comprises displaying the collection of assets and the associated asset metadata to the user in a graphical user interface.

8 . A system comprising:

one or more processors; and

one or more non-transitory computer-readable media storing instructions which, when executed by the one or more processors, cause the one or more processors to perform operations including:

deploying a remote agent appliance comprising a discovery plugin in an external environment of a user, wherein the remote agent appliance comprises a virtual appliance that is sealed to prevent a remote access of the user and prohibit execution of arbitrary code by the user, so that the user is capable of interacting with the remote agent appliance via a local console for registration, with all other management operations of the remote agent appliance being orchestrated by a cloud infrastructure;

creating an asset source specifying a location of the external environment from which external assets and associated asset metadata should be discovered, wherein the asset source references credentials stored in a secure data store of the cloud infrastructure, with credential access for discovery operations being orchestrated by the cloud infrastructure;

creating a discovery policy for discovering the external assets within the asset source;

generating a discovery job for retrieving the asset metadata for the external assets discovered within the asset source;

executing, by the discovery plugin, the discovery job to discover the external assets within the asset source based on the discovery policy, wherein the executing the discovery job includes retrieving the asset metadata for the external assets discovered within the asset source and populating an inventory with the asset metadata, and wherein the inventory contains a collection of assets that includes the asset metadata for the external assets; and comprises a single global view of assets across multiple external environments, wherein each asset is uniquely identified by a tuple of external identifier and source identifier, and de-duplication logic is employed to ensure that assets discovered from different sources or environments are presented as a single representation to the user; and

providing the collection of assets and the associated asset metadata within the inventory to the user.

9 . The system of claim 8 , wherein the operations further include generating the inventory on the cloud infrastructure, and wherein the cloud infrastructure is in communication with the remote agent appliance.

10 . The system of claim 8 , wherein the discovery policy is a schedule that identifies a time for when the one or more processors are to execute the discovery job.

11 . The system of claim 8 , wherein the operations further include:

receiving a query from the user regarding the asset metadata;

executing the query on the inventory; and

providing results of the query to the user based on the executing.

12 . The system of claim 8 , wherein the operations further include:

in response to generating the asset source, generating connectors between the discovery plugin and the location of the external environment, and wherein the asset metadata is retrieved for the external assets using the connectors.

13 . The system of claim 8 , wherein the operations further include:

generating a migration project based on one or more assets within the collection of assets and the associated asset metadata within the inventory; and

executing a migration of the one or more assets to the cloud infrastructure based on the migration project.

14 . The system of claim 8 , wherein the providing the collection of assets and the associated asset metadata within the inventory to the user includes displaying the collection of assets and the associated asset metadata to the user in a graphical user interface.

15 . A computer-program product tangibly embodied in one or more non-transitory machine-readable media, including instructions that, when executed by one or more data processors, cause the one or more data processors to perform operations including:

deploying a remote agent appliance comprising a discovery plugin in an external environment of a user, wherein the remote agent appliance comprises a virtual appliance that is sealed to prevent a remote access of the user and prohibit execution of arbitrary code by the user, so that the user is capable of interacting with the remote agent appliance via a local console for registration, with all other management operations of the remote agent appliance being orchestrated by a cloud infrastructure;

creating an asset source specifying a location of the external environment from which external assets and associated asset metadata should be discovered, wherein the asset source references credentials stored in a secure data store of the cloud infrastructure, with credential access for discovery operations being orchestrated by the cloud infrastructure;

creating a discovery policy for discovering the external assets within the asset source;

generating a discovery job for retrieving the asset metadata for the external assets discovered within the asset source;

executing, by the discovery plugin, the discovery job to discover the external assets within the asset source based on the discovery policy, wherein the executing the discovery job includes retrieving the asset metadata for the external assets discovered within the asset source and populating an inventory with the asset metadata, and wherein the inventory contains a collection of assets that includes the asset metadata for the external assets and comprises a single global view of assets across multiple external environments, wherein each asset is uniquely identified by a tuple of external identifier and source identifier, and de-duplication logic is employed to ensure that assets discovered from different sources or environments are presented as a single representation to the user; and

providing the collection of assets and the associated asset metadata within the inventory to the user.

16 . The computer-program product of claim 15 , wherein the operations further include generating the inventory on the cloud infrastructure, and wherein the cloud infrastructure is in communication with the remote agent appliance.

17 . The computer-program product of claim 15 , wherein the discovery policy is a schedule that identifies a time for when the one or more data processors are to execute the discovery job.

18 . The computer-program product of claim 15 , wherein the operations further include:

receiving a query from the user regarding the asset metadata;

executing the query on the inventory; and

providing results of the query to the user based on the executing.

19 . The computer-program product of claim 15 , wherein the operations further include:

in response to generating the asset source, generating connectors between the discovery plugin and the location of the external environment, and wherein the asset metadata is retrieved for the external assets using the connectors.

20 . The computer-program product of claim 15 , wherein the operations further include:

generating a migration project based on one or more assets within the collection of assets and the associated asset metadata within the inventory; and

executing a migration of the one or more assets to the cloud infrastructure based on the migration project.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: SABIUN, ERIK; DING, ZHEYU
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 063976/0673 →
Continuity (3)
Provisional Application 63434846 · Dec 22, 2022
Provisional Application 63434879 · Dec 22, 2022
Related Publication 20240211319A1 · Jun 27, 2024
References Cited (59)
US 7493388B2 · Wen · 2009 [cited by examiner]
US 9778952B1 · Sutton et al. · 2017 [cited by applicant]
US 10079730B2 · Subramanian et al. · 2018 [cited by applicant]
US 10469314B2 · Ennis, Jr. et al. · 2019 [cited by applicant]
US 10673716B1 · Sethuramalingam et al. · 2020 [cited by applicant]
US 11301487B1 · Kumar · 2022 [cited by examiner]
US 11412044B1 · Song et al. · 2022 [cited by applicant]
US 11422838B2 · Wang et al. · 2022 [cited by applicant]
US 20090094673A1 · Seguin · 2009 [cited by examiner]
US 20110055299A1 · Phillips et al. · 2011 [cited by applicant]
US 20110107406A1 · Frost · 2011 [cited by examiner]
US 20120304179A1 · Devarakonda et al. · 2012 [cited by applicant]
US 20130091285A1 · Devarakonda et al. · 2013 [cited by applicant]
US 20150096011A1 · Watt · 2015 [cited by applicant]
US 20160048408A1 · Madhu · 2016 [cited by examiner]
US 20170093640A1 · Subramanian · 2017 [cited by examiner]
US 20170097845A1 · Kouznetsov et al. · 2017 [cited by applicant]
US 20170109190A1 · Sha · 2017 [cited by examiner]
US 20170373933A1 · Subramanian · 2017 [cited by examiner]
US 20190087232A1 · Bergsma et al. · 2019 [cited by applicant]
US 20190266268A1 · Polinati · 2019 [cited by examiner]
US 20190288915A1 · Denyer · 2019 [cited by examiner]
US 20190340003A1 · Ramanathan et al. · 2019 [cited by applicant]
US 20190340100A1 · Patil et al. · 2019 [cited by applicant]
US 20200004582A1 · Fornash et al. · 2020 [cited by applicant]
US 20200019424A1 · Wang et al. · 2020 [cited by applicant]
US 20200351347A1 · Chang · 2020 [cited by examiner]
US 20210011816A1 · Mitkar · 2021 [cited by examiner]
US 20210365339A1 · Liu et al. · 2021 [cited by applicant]
US 20220021652A1 · Moghe et al. · 2022 [cited by applicant]
US 20220027241A1 · Shrivastava et al. · 2022 [cited by applicant]
US 20220030064A1 · Dreyband · 2022 [cited by examiner]
US 20220214997A1 · Kavaipatti Anantharamakrishnan et al. · 2022 [cited by applicant]
US 20220327007A1 · Adogla et al. · 2022 [cited by applicant]
US 20230094990A1 · Tammana et al. · 2023 [cited by applicant]
US 20240012720A1 · Wang et al. · 2024 [cited by applicant]
US 20240070435A1 · Shinde et al. · 2024 [cited by applicant]
CN 113485787A · 2021 [cited by applicant]
CN 114296649A · 2022 [cited by applicant]
AWS Application Discovery Service: User Guide Amazon Web Services, Inc. web.archive.org/web/20221005192021/http://docs.aws.amazon.com:80/application-discovery/latest/userguide/appdiscovery-ug.pdf (Year: 2022). [cited by examiner]
Unikernels: Library Operating Systems for the Cloud Anil Madhavapeddy, Richard Mortier, Charalampos Rotsos, David Scott, Balraj Singh, Thomas Gazagnaire, Steven Smith, Steven Hand and Jon Crowcroft (Year: 2013). [cited by examiner]
IT Autopilot: A flexible IT service management and delivery medium business S. Mastrianni, D. F. Bantz, K. A. Beaty, T. Chefalas, S. Jalan, G. Kar, A. Kochut, D. J. Lan, L. O'Connell, A. Sailer, G. Wang, Q. B. Wang, D. … [cited by examiner]
International Application No. PCT/US2023/082312, International Search Report and Written Opinion mailed Mar. 13, 2024, 15 pages. [cited by applicant]
“AWS Application Discovery Service Resources—Amazon Web Services:” retrieved from https://aws.amazon.com/application-discovery/resources/ printed on Jul. 21, 2023, 5 pages. [cited by applicant]
International Application No. PCT/US2023/082312, International Preliminary Report on Patentability mailed Jul. 3, 2025, 12 pages. [cited by applicant]
Agentless Migration Architecture, Available online at: https://learn.microsoft.com/en-us/azure/migrate/concepts-vmware-agentless-migration?view=migrate, Accessed from Internet on Mar. 16, 2026, 11 pages. [cited by applicant]
Uploading Terraform States to Yandex Object Storage, Available online at: https://yandex.cloud/en/docs/tutorials/infrastructure-management/terraform-state-storage?utm_referrer=about%3Ablank, Mar. 5, 2026, 8 pages. [cited by applicant]
VM Migration Process, Available online at: https://docs.cloud.google.com/migrate/virtual-machines/docs/5.0/discover/lifecycle, Accessed from Internet on Mar. 16, 2026, 7 pages. [cited by applicant]
VMware VM Migration to AWS Application Migration Services with Pure Storage Cloud Dedicated, Available online at: https://support.purestorage.com/csh?topicname=c_vmware_vm_migration_to_aws_application_migration_services… [cited by applicant]
U.S. Appl. No. 18/377,160, Non-Final Office Action mailed on Jan. 30, 2026, 12 pages. [cited by applicant]
U.S. Appl. No. 18/533,704, Non-Final Office Action mailed on Mar. 17, 2026, 20 pages. [cited by applicant]
Armour, Azure Stack IaaS—Part One, Microsoft 365 Community Conference, Feb. 11, 2019, 6 pages. [cited by applicant]
Babarinde, How to Migrate on-Premises Workloads with AWS Application Migration Service, Available online at: https://aws.amazon.com/blogs/publicsector/how-migrate-on-premises-workloads-aws-application-migration-service/… [cited by applicant]
International Application No. PCT/US2023/085338, International Preliminary Report on Patentability mailed on Jul. 3, 2025, 11 pages. [cited by applicant]
International Application No. PCT/US2023/085338, International Search Report and Written Opinion mailed on May 27, 2024, 14 pages. [cited by applicant]
International Application No. PCT/US2023/085769, International Preliminary Report on Patentability mailed on Jul. 3, 2025, 11 pages. [cited by applicant]
International Application No. PCT/US2023/085769, International Search Report and Written Opinion mailed on May 10, 2024, 14 pages. [cited by applicant]
Radu, Azure Stack Hub Infrastructure as Code Using Terraform, Microsoft 365 Community Conference, May 8, 2020, 10 pages. [cited by applicant]
U.S. Appl. No. 18/377,160 , Notice of Allowance, Mailed On May 11, 2026, 8 pages. [cited by applicant]