Patent ID: 11886917
Assignee: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 0:
1. A method for upgrading resources in a system providing Infrastructure-as-a-Service (IaaS) in an iterative process, comprising:
receiving an upgrade request indicating requested changes to a current configuration of the system;
creating, in response to the upgrade request, one or more graph representations of the current configuration and the requested changes, the one or more graph representations including a control graph having vertices representing resource groups of one or more resources each and edges representing dependencies among the resource groups;
identifying, from the resource groups, a batch of one or more resource groups to upgrade in a current iteration based on the dependencies and Service Level Agreement (SLA) requirements including availability and elasticity of the system;
executing upgrade operations on the identified batch using selected one or more upgrade methods which handle potential incompatibilities during a transition between the current configuration and an upgraded configuration of the system;
iteratively updating the one or more graph representations to include any new requested changes and recovery operations in response to feedback of failed upgrade operations, identifying a next batch of one or more resource groups to upgrade in a next iteration, and upgrading remaining one or more resource groups;
migrating, in an iteration of the iterative process when the resources in a VM supporting subsystem are upgraded from an old version to a new version, a number of VMs from an old partition of compute hosts to a new partition incompatible with the old partition, wherein the VM supporting subsystem includes one or more of hypervisors, storage and controllers;
calculating the number of VMs to be migrated in the iteration based on a number of compute hosts eligible for hosting the new version of the VMs and a number of compute hosts reserved for scaling and failover of the new version of the VMs during the iteration;
migrating the VMs in a plurality sub-iterations of the iteration according to an anti-affinity grouping requirement on the VMs;
creating a new configuration of the VM supporting subsystem composed of the resources of the new version hosted by the new partition of the compute hosts; and
maintaining in parallel the current configuration of the resources of the old version in the old partition of the compute hosts until all VMs compatible with the new version are migrated from the old partition to the new partition.