IP Library Granted Patent US 11,449,776
Granted Patent B2
US 11,449,776 · App. 16/777,038 · Granted Sep 20, 2022

Topology-based migration assessment

Inventors: Adarsh Suparna (Bangalore, IN); Hemant Kumar C H (Bangalore, IN); Pramod Annachira Vitala (Bangalore, IN)
Assignee: MICRO FOCUS LCC
G06N5/04G06N20/00H04L41/12H04L67/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,449,776
App. No.
16/777,038
Granted
Sep 20, 2022
Kind
B2
Abstract

According to examples, an apparatus may include a processor that may generate a migration assessment for resources of a computer system. In particular, the apparatus may logically divide topological information to facilitate identification of a resource, components used by the resource, and dependencies. The system further enables users to specify user-defined migration parameters that specify the migration. For instance, the parameters may specify a cost associated with the migration of the component, a license model of the component, a security requirement of the component, a performance of the component, a customization of the component, or requirement of the component. Migration assessments and decisions may be stored to train machine-learned models. For instance, the model may assess whether a parameter will be satisfied by using a certain cloud service and whether substitutes have sufficiently satisfied dependencies based on observed migration assessments and actual migrations.

Claims (72)

1. An apparatus comprising:

a processor; and

a non-transitory computer readable medium storing instructions that when executed by the processor, cause the processor to:

access a migration parameter;

obtain topology information relating to a resource to be potentially migrated from a first computer system to a second computer system, wherein the resource uses components of the first computer system;

logically divide the topology information into a plurality of topological layers, wherein each topological layer is associated with a respective set of components of the first computer system used by the resource;

for each topological layer of the plurality of topological layers:

identify each component from among the respective set of components; and

for each of the identified components, generate an assessment of whether the identified component is to be migrated to the second computer system based on the migration parameter.

2. The apparatus of claim 1 , wherein the instructions cause the processor to:

obtain a predefined rule; and

apply the predefined rule with the migration parameter to generate the assessment for each component.

3. The apparatus of claim 1 , wherein the instructions cause the processor to:

instantiate a machine-learned model of component migrations, the machine-learned model based on previous migration outcomes and previous parameters; and

apply the machine-learned model to generate the assessment for each component.

4. The apparatus of claim 1 , Wherein the migration parameter comprises, for each component, one of: a cost associated with a migration of the component, a license model of the component, a security requirement of the component, a performance of the component, a customization of the component, or requirement of the component.

5. The apparatus of claim 1 , wherein the instructions cause the processor to:

receive, after generation of a first assessment that a first component of a first topological layers is to be migrated, a request to migrate the first component;

identify a plurality of dependencies of the first component;

determine whether or not the second computer system satisfies the plurality of dependencies of the first component; and

generate a migration recommendation for the first component based on the determination of whether or not the second computer system satisfies the plurality of dependencies.

6. The apparatus of claim 5 , wherein the second computer system comprises a cloud-based system provided by a cloud service provider, and wherein to determine whether or not the second computer system satisfies the plurality of dependencies of the first component, the instructions cause the processor to:

obtain an image of the cloud-based system that specifies available components provided at a compute instance of the cloud-based system; and

compare the available components with the plurality of dependencies.

7. The apparatus of claim 6 , wherein the instructions cause the processor to:

determine that each of the plurality of dependencies is included in the available components of the compute instance based on the comparison, wherein the migration recommendation specifies that a migration of the first component be performed.

8. The apparatus of claim 6 , wherein the instructions cause the processor to:

determine a dependency is not included in the available components of the compute instance based on the comparison; and

identify an available component from among the available components that is a potential replacement for the dependency, wherein the migration recommendation includes a recommendation to use the available component instead of the dependency.

9. The apparatus of claim 8 , wherein the instructions cause the processor to:

automatically migrate the first component to the second computer system; and

store an indication that the first component was migrated with the available component used instead of the dependency.

10. The apparatus of claim 9 , wherein the instructions cause the processor to:

update, based on the stored indication, a machine-learned model of resource migrations that includes a model of whether or not certain dependencies are interchangeable with certain available components.

11. The apparatus of claim 1 , wherein the instructions cause the processor to:

determine that a first component of a first topological layer is governed by an acquired license; and

generate a recommendation that the first component not be automatically migrated but be installed at the second computer system via a platform as a service model.

12. The apparatus of claim 1 , wherein the plurality of topological layers includes an application layer, and wherein to identify each component in the application layer, the instructions cause the processor to:

identify software components used in the application layer.

13. The apparatus of claim 1 , wherein the plurality of topological layers includes a platform layer, and wherein to identify each component in the platform layer, the instructions cause the processor to:

identify middleware components used in the platform layer.

14. The apparatus of claim 1 , wherein the plurality of topological layers includes an infrastructure layer, and wherein to identify each component in the infrastructure layer, the instructions cause the processor to:

identify backend or networking components used in the infrastructure layer.

15. The apparatus of claim 1 , wherein the instructions cause the processor to:

detect a change in a topology of the first computer system, the change affecting a first component of the first computer system; and

update a first assessment of whether or not the first component is to be migrated based on the detected change.

16. A non-transitory computer readable medium storing machine readable instructions that when executed by a processor, cause the processor to:

access a migration parameter;

perform automated discovery on a first computer system;

generate topology information relating to the first computer system based on the automated discovery;

logically divide the topology information into a plurality of topological layers, wherein each topological layer is associated with a respective set of components of the first computer system used by a resource to be potentially migrated from the first computer system to a cloud computer system;

for each topological layer of the plurality of topological layers:

identify each component from among the respective set of components; and

for each of the identified components, generate an assessment of whether the identified component is to be migrated to the cloud computer system based on the migration parameter; and

store the assessments for the plurality of topological layers in association with the topology information.

17. The non-transitory computer readable medium of claim 16 , wherein the instructions further cause the processor to:

identify migrated components of the first computer system that were migrated to the cloud computer system;

obtain an update to the topological information that describes a change made to the topological information since the migrated components were migrated; and

generate a reverse migration recommendation that specifies migration of the components back to the first computer system from the cloud computer system based on the update.

18. A method comprising:

accessing, by a processor, a migration parameter;

obtaining, by the processor, topology information relating to a resource to be potentially migrated from a first computer system to a second computer system, wherein the resource uses components of the first computer system;

logically dividing, by the processor, the topology information into a plurality of topological layers, wherein each topological layer is associated with a respective set of components of the first computer system used by the resource;

for each topological layer of the plurality of topological layers:

identifying, by the processor, each component from among the respective set of components; and

for each of the identified components, generating, by the processor, an assessment of whether the identified component is to be migrated to the second computer system based on the migration parameter.

19. The method of claim 18 , further comprising:

obtaining a predefined rule; and

applying the predefined rule with the migration parameter to generate the assessment for each component.

20. The method of claim 18 , further comprising:

instantiating a machine-learned model of component migrations, the machine-learned model based on previous migration outcomes and previous parameters; and

applying the machine-learned model to generate the assessment for each component.

Assignments (6)
RELEASE OF SECURITY INTEREST REEL/FRAME 052294/0522 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062624/0449 →
RELEASE OF SECURITY INTEREST REEL/FRAME 052295/0041 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062625/0754 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: MICRO FOCUS LLC; BORLAND SOFTWARE CORPORATION; MICRO FOCUS SOFTWARE INC.; NETIQ CORPORATION; MICRO FOCUS (US), INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 052294/0522 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: MICRO FOCUS LLC; BORLAND SOFTWARE CORPORATION; MICRO FOCUS SOFTWARE INC.; NETIQ CORPORATION; MICRO FOCUS (US), INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 052295/0041 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2020
From: SUPARNA, ADARSH; C H, HEMANT KUMAR; VITALA, PRAMOD ANNACHIRA
To: ENTIT SOFTWARE LLC
Reel/Frame 051673/0537 →
CHANGE OF NAME Recorded Jan 30, 2020
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 051758/0606 →