Effective migration and upgrade of virtual machines in cloud environments
First Claim
1. A method, in a data processing system, for performing a system upgrade, the method comprising:
- receiving selection of a computing environment to upgrade with an upgrade package, wherein the upgrade package is configured to perform an upgrade on one or more software applications in the computing environment;
discovering application dependencies for the upgrade in the computing environment;
configuring a plurality of upgrade phases based on the application dependencies;
selecting one or more upgrade validation tests for the upgrade package based on applications to be upgraded of the computing environment and the application dependencies, wherein the one or more upgrade validation tests are specific for the selected computing environment;
generating a pre-upgrade snapshot of the computing environment;
performing each upgrade phase in the plurality of upgrade phases to form an upgraded computing environment and performing the one or more upgrade validation tests on the upgraded computing environment, wherein each phase is validated before processing to a next phase in the plurality of upgrade phases; and
responsive to a given upgrade validation test failing for a given virtual machine in the computing environment, reverting the given virtual machine back to the pre-upgrade snapshot without human intervention.
1 Assignment
0 Petitions
Accused Products
Abstract
A mechanism is provided in a data processing system for performing a system upgrade. Responsive to receiving selection of one or more virtual machines to upgrade with an upgrade package, the mechanism identifies a plurality of upgrade phases. The mechanism configures the plurality of upgrade phases and generates a pre-upgrade snapshot of each of the one or more virtual machines. The mechanism performs each upgrade phase in the plurality of upgrade phases to form an upgraded virtual machine and performs one or more upgrade validation tests on the upgraded virtual machine. Responsive to the one or more upgrade validation tests succeeding, the mechanism reverts back to the pre-upgrade snapshot.
61 Citations
21 Claims
-
1. A method, in a data processing system, for performing a system upgrade, the method comprising:
-
receiving selection of a computing environment to upgrade with an upgrade package, wherein the upgrade package is configured to perform an upgrade on one or more software applications in the computing environment; discovering application dependencies for the upgrade in the computing environment; configuring a plurality of upgrade phases based on the application dependencies; selecting one or more upgrade validation tests for the upgrade package based on applications to be upgraded of the computing environment and the application dependencies, wherein the one or more upgrade validation tests are specific for the selected computing environment; generating a pre-upgrade snapshot of the computing environment; performing each upgrade phase in the plurality of upgrade phases to form an upgraded computing environment and performing the one or more upgrade validation tests on the upgraded computing environment, wherein each phase is validated before processing to a next phase in the plurality of upgrade phases; and responsive to a given upgrade validation test failing for a given virtual machine in the computing environment, reverting the given virtual machine back to the pre-upgrade snapshot without human intervention. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product comprising a non-transitory computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to:
-
receive selection of a computing environment to upgrade with an upgrade package, wherein the upgrade package is configured to perform an upgrade on one or more software applications in the computing environment; discover application dependencies for the upgrade in the computing environment; configure a plurality of upgrade phases based on the application dependencies; selecting one or more upgrade validation test for the upgrade package based on applications to be upgraded of the computing environment and the application dependencies, wherein the one or more upgrade validation tests are specific for the selected computing environment; generate a pre-upgrade snapshot of the computing environment; perform each upgrade phase in the plurality of upgrade phases to form an upgraded computing environment and perform the one or more upgrade validation tests on the upgraded computing environment, wherein each phase is validated before processing to a next phase in the plurality of upgrade phases; and responsive to a given upgrade validation test failing for a given virtual machine in the computing environment, revert the given virtual machine back to the pre-upgrade snapshot without human intervention. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. An apparatus, comprising:
- a hardware processor; and
a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to;receive selection of a computing environment to upgrade with an upgrade package, wherein the upgrade package is configured to perform an upgrade on one or more software applications in the computing environment; discover application dependencies for the upgrade in the computing environment; configure a plurality of upgrade phases based on the application dependencies; selecting one or more upgrade validation test for the upgrade package based on applications to be upgraded of the computing environment and the application dependencies, wherein the one or more upgrade validation tests are specific for the selected computing environment; generate a pre-upgrade snapshot of the computing environment; perform each upgrade phase in the plurality of upgrade phases to form an upgraded computing environment and perform the one or more upgrade validation tests on the upgraded computing environment, wherein each phase is validated before processing to a next phase in the plurality of upgrade phases; and responsive to a given upgrade validation test failing for a given virtual machine in the computing environment, revert the given virtual machine back to the pre-upgrade snapshot without human intervention. - View Dependent Claims (19, 20, 21)
- a hardware processor; and
Specification