Method and system for application migration using per-application persistent configuration dependency
AssigneeInternational Business Machines Corporation
InventorsHai Huang, Yaoping Ruan, Sambit Sahu, Anees A. Shaikh
Life of this patent
Estimating the term…
Abstract
A system and method for determining application dependent components includes capturing interactions of an application stored in memory of a first environment with other components at runtime. The interactions are parsed and categorized to determine dependency information. The application is migrated to a new environment using the dependency information to reconfigure the application after migration without application-specific knowledge.
Claims25
A method for migrating an application without application-specific knowledge, comprising:
- determining components that the application depends on by capturing interactions of system calls of the application stored in memory of a first environment with other components at runtime, wherein the interactions include at least one of read and write system calls and networking system calls;
- parsing and categorizing the interactions of the system calls to determine dependency information of the application without application specific knowledge, wherein the dependency information includes dependent components in one or more configuration file for the application and a list of dependent resources that the application uses;
- migrating the application to a new environment;
- and
- reconfiguring the application after migration using the dependency information by verifying and modifying dependent components in one or more configuration file for the application to configure the application for the new environment;
- and
- reconfiguring dependent resources from the list of dependent resources to configure the new environment for the application.
A method for migrating an application without application-specific knowledge, comprising:
- capturing system calls, wherein the system calls are interactions that include at least one of read and write system calls and networking system calls of the application stored in memory of a first environment with other components at runtime;
- parsing and categorizing interactions of the system calls by applying a program, implemented in software and stored on a memory to determine dependency information of the application without application specific knowledge, wherein the dependency information includes dependent components in one or more configuration file for the application and a list of dependent resources that the application uses;
- and
- migrating the application to a new environment using the dependency information to reconfigure the application after migration for execution in the new environment by:
- verifying and modifying dependent components in one or more configuration file for the application to configure the application for the new environment;
- and
- reconfiguring dependent resources from the list of dependent resources to configure the new environment for the application.
A non-transitory computer readable storage medium comprising a computer readable program for migrating an application without application-specific knowledge, wherein the computer readable program when executed on a computer causes the computer to perform the steps of:
- determining components that the application depends on by capturing interactions of system calls of the application stored in memory of a first environment with other components at runtime, wherein the interactions include at least one of read and write system calls and networking system calls,
- parsing and categorizing the interactions of the system calls to determine dependency information of the application without application specific knowledge, wherein the dependency information includes dependent components in one or more configuration file for the application and a list of dependent resources that the application uses;
- migrating the application to a new environment using the dependency information;
- and
- reconfiguring the application after migration without application-specific knowledge by verifying and modifying dependent components in one or more configuration file for the application to configure the application for the new environment;
- and
- reconfiguring dependent resources from the list of dependent resources to configure the new environment for the application.
A system for migrating applications, comprising:
- a first computational environment and a second computational environment, each computational environment including a processing element configured to run software applications;
- the first computational environment including a target application stored in memory wherein the target application is to be migrated to the second computational environment;
- and
- a program, implemented in software and stored on a memory medium, being configured to determine dependencies of the target application, including dependent components in one or more configuration file for the application and a list of dependent resources that the application uses, by capturing interactions of system calls between the target application and other components at runtime without application-specific knowledge such that migrating the application to the second computational environment employs the dependencies to reconfigure the application after migration for execution in the second computational environment by verifying and modifying dependent components in one or more configuration file for the application to configure the application for the new environment and reconfiguring dependent resources from the list of dependent resources to configure the new environment for the application.
Dependencies are inferred from the claim text.