Patent ID: 9697266
Date: 2017-07-04
CPC Classifications: G06F,G06Q

Claim:
1. A method comprising: obtaining, at a migration management system, a first data set specifying configuration information associated with elements of a computing system, a second data set specifying dependency information associated with the elements of the computing system, and a third data set specifying deployment constraint information associated with the elements of the computing system; generating, at an environment constructor component of the migration management system, an in-memory representation of a current configuration of the elements of the computing system by assimilating data from a plurality of tables in the first data set, the plurality of tables comprising a first table specifying a plurality of servers in the current configuration of the elements of the computing system and at least a second table specifying applications hosted by respective ones of the plurality of servers in the current configuration of the elements of the computing system; generating, at a dependency analyzer component of the migration management system, a dependency model for the current configuration of the elements of the computing system based on at least a portion of the first data set and at least a portion of the second data set, the second data set comprising dependencies between the plurality of servers in the current configuration of the elements of the computing system; generating, at a constraint builder component of the migration management system, a set of constraints based on at least a portion of the third data set, wherein the set of constraints comprises one or more bundling constraints and one or more deployment constraints, the one or more bundling constraints specifying dependencies between at least one of one or more servers and one or more applications, the one or more deployment constraints specifying one or more temporal constraints associated with migrating specified ones of the servers and one or more ordering constraints associated with migrating specified ones of the servers; wherein generating the set of constraints comprises invoking a constraint application programming interface to initialize the set of constraints, the third data set being obtained at least in part by specification of one or more of the set of constraints via the constraint application programming interface, and wherein the third data set is isolated from the first data set and the second data set such that the third data set is modifiable via the constraint application programming interface without affecting the first data set and the second data set; generating a set of validated constraints, wherein generating the set of validated constraints comprises identifying, at a constraint checker component of the migration management system, one or more conflicting ones of the set of constraints utilizing the dependency model and the in-memory representation of the current configuration of the elements of the computing system; automatically generating, by a joint plan generator of the migration management system, a migration plan for migrating one or more of the elements of the computing system based on the set of validated constraints, the migration plan comprising a schedule for migrating two or more different bundles of servers in the current configuration of the elements of the computing system at different times, each bundle comprising a set of the plurality of servers in the current configuration of the elements of the computing system that is identified based on the deployment constraints and the bundling constraints; and responsive to modifying the third data set via the constraint application programming interface, the joint plan generator is configured to automatically generate a modified migration plan; wherein the method is performed by at least one processing device configured to implement the migration management system for automatically generating the migration plan such that at least a portion of the elements of the computing system are deployed in accordance with the generated migration plan.