Optimized efficient LPAR capacity consolidation
First Claim
1. A computer-implemented method of optimizing a configuration of a plurality of logical partitions (LPARs) and a plurality of server computer systems (servers) that host the LPARs, said method comprising:
- a processor of a computer determining an optimal placement of an LPAR onto a target server, said LPAR included in said plurality of LPARs and being hosted on a current server, and said target server and said current server being different servers included in said plurality of servers, wherein said determining said optimal placement includes;
said computer determining a plurality of shadow costs, each shadow cost being a shadow cost of migrating said LPAR from said current server to a respective server included in said plurality of servers, each shadow cost including an amount of a computing resource allocated to said LPAR multiplied by a cost per said computing resource in use on said respective server divided by an amount of said computing resource in use by said respective server;
identifying a lowest shadow cost included in the plurality of shadow costs;
determining a target server included in said plurality of servers to which a migration of said LPAR specifies said lowest shadow cost; and
identifying said optimal placement as a placement of said LPAR onto said target server; and
migrating one or more LPARs of said plurality of LPARs to one or more servers of said plurality of servers, wherein a result of said migrating is said LPAR being in said optimal placement.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for optimizing a configuration of a set of LPARs and a set of servers that host the LPARs. Configuration data and optimization characteristics are received. By applying the configuration data and optimization characteristics, a best fit of the LPARs into the servers is determined, thereby determining an optimized configuration. The best fit is based on a variant of bin packing or multidimensional bin packing methodology. The optimized configuration is stored. In one embodiment, comparisons of shadow costs are utilized to determine an optimal placement of the LPARs in the servers. LPAR(s) in the set of LPARs are migrated to other server(s) in the set of servers, which results in the LPARs and servers being configured in the optimized configuration.
57 Citations
10 Claims
-
1. A computer-implemented method of optimizing a configuration of a plurality of logical partitions (LPARs) and a plurality of server computer systems (servers) that host the LPARs, said method comprising:
-
a processor of a computer determining an optimal placement of an LPAR onto a target server, said LPAR included in said plurality of LPARs and being hosted on a current server, and said target server and said current server being different servers included in said plurality of servers, wherein said determining said optimal placement includes; said computer determining a plurality of shadow costs, each shadow cost being a shadow cost of migrating said LPAR from said current server to a respective server included in said plurality of servers, each shadow cost including an amount of a computing resource allocated to said LPAR multiplied by a cost per said computing resource in use on said respective server divided by an amount of said computing resource in use by said respective server; identifying a lowest shadow cost included in the plurality of shadow costs; determining a target server included in said plurality of servers to which a migration of said LPAR specifies said lowest shadow cost; and identifying said optimal placement as a placement of said LPAR onto said target server; and migrating one or more LPARs of said plurality of LPARs to one or more servers of said plurality of servers, wherein a result of said migrating is said LPAR being in said optimal placement. - View Dependent Claims (2, 3, 4)
-
-
5. A computer-implemented method of determining an optimal configuration of a plurality of logical partitions (LPARs) and a plurality of server computer systems (servers) that host the LPARs, said method comprising:
-
receiving a first specification of said plurality of LPARs and a plurality of resources required by each LPAR; receiving a second specification of said plurality of servers and a plurality of available resources provided by said plurality of servers in a current configuration of said plurality of LPARs and said plurality of servers; receiving a plurality of optimization characteristics; a processor of a computing system determining a draft configuration of said plurality of LPARs and said plurality of servers is a tentative version of said optimal configuration of said plurality of LPARs and said plurality of servers by performing an iteration of a first loop, wherein said performing said iteration of said first loop includes iteratively evaluating LPARs from a list of n LPARs in a second loop, and wherein said tentative version of said optimal configuration has a tentative final total cost; determining no other draft configuration resulting from one or more additional iterations of said second loop or one or more additional iterations of said first loop has a draft total cost less than said tentative final total cost of said tentative version of said optimal configuration; in response to said determining no other draft configuration has said draft total cost less than said tentative final total cost, saving said tentative version of said optimal configuration as a final version of said optimal configuration of said plurality of LPARs and said plurality of servers; migrating one or more LPARs of said plurality of LPARs to one or more servers of said plurality of servers so that said plurality of LPARs and said plurality of servers are configured in said final version of said optimal configuration; and initializing a migrate count to an initialization value prior to said determining said draft configuration is said tentative version of said optimal configuration, wherein said plurality of LPARs consists of said n LPARs, and wherein said iteratively evaluating LPARs from said list of n LPARs includes evaluating an i-th LPAR from said list of n LPARs in an i-th iteration of said second loop, wherein 1 <
i <
n, and wherein said evaluating said i-th LPAR includes;selecting an i-th LPAR from said list of n LPARs, wherein said i-th LPAR is in an i-th position in said list of LPARs, and wherein said i-th LPAR is hosted on a corresponding server of said plurality of servers in said current configuration; identifying an i-th set of one or more target servers from said plurality of servers based on each server of said i-th set of one or more target servers having a capacity of said available resources that is sufficient to satisfy an amount of said resources required by said i-th LPAR; determining an i-th optimal placement of said i-th LPAR on a target server of said i-th set of one or more target servers, wherein said determining said i-th optimal placement is based on said plurality of optimization characteristics, wherein said i-th optimal placement is included in an i-th draft configuration of said plurality of LPARs and said plurality of servers, and wherein said draft configuration of said plurality of LPARs and said plurality of servers is said i-th draft configuration; determining said target server of said i-th set of one or more target servers is not said corresponding server hosting said i-th LPAR; in response to said determining said target server of said i-th set of one or more target servers is not said corresponding server hosting said i-th LPAR, indicating a migration of said i-th LPAR to said target server of said i-th set of one or more target servers and updating said migrate count; determining a total cost of said i-th draft configuration; determining said total cost of said i-th draft configuration is less than a total cost of said current configuration and less than one or more total costs of one or more other draft configurations resulting from 1 . . . (i−
1)-th iterations of said second loop; andin response to said determining said total cost of said i-th draft configuration is less than said total cost of said current configuration and less than said one or more total costs of one or more other draft configurations resulting from said 1 . . . (i−
1)-th iterations, saving said i-th draft configuration as said tentative version of said optimal configuration and saving said total cost of said i-th draft configuration as said tentative final total cost of said tentative version of said optimal configuration. - View Dependent Claims (6, 7, 8)
-
-
9. A computer program product, comprising a computer readable storage device having a computer readable program code stored in the computer readable storage device, said computer readable program code containing instructions carried out by a processor of a computer system to implement a method of determining an optimal configuration of a plurality of logical partitions (LPARs) and a plurality of server computer systems (servers) that host the LPARs, said method comprising:
-
receiving a first specification of said plurality of LPARs and a plurality of resources required by each LPAR; receiving a second specification of said plurality of servers and a plurality of available resources provided by said plurality of servers in a current configuration of said plurality of LPARs and said plurality of servers; receiving a plurality of optimization characteristics; determining a draft configuration of said plurality of LPARs and said plurality of servers is a tentative version of said optimal configuration of said plurality of LPARs and said plurality of servers by performing an iteration of a first loop, wherein said performing said iteration of said first loop includes iteratively evaluating LPARs from a list of n LPARs in a second loop, and wherein said tentative version of said optimal configuration has a tentative final total cost; determining no other draft configuration resulting from one or more additional iterations of said second loop or one or more additional iterations of said first loop has a draft total cost less than said tentative final total cost of said tentative version of said optimal configuration; in response to said determining no other draft configuration has said draft total cost less than said tentative final total cost, saving said tentative version of said optimal configuration as a final version of said optimal configuration of said plurality of LPARs and said plurality of servers; migrating one or more LPARs of said plurality of LPARs to one or more servers of said plurality of servers so that said plurality of LPARs and said plurality of servers are configured in said final version of said optimal configuration; and initializing a migrate count to an initialization value prior to said determining said draft configuration is said tentative version of said optimal configuration, wherein said plurality of LPARs consists of said n LPARs, and wherein said iteratively evaluating LPARs from said list of n LPARs includes evaluating an i-th LPAR from said list of n LPARs in an i-th iteration of said second loop, wherein 1 <
i <
n, and wherein said evaluating said i-th LPAR includes;selecting an i-th LPAR from said list of n LPARs, wherein said i-th LPAR is in an i-th position in said list of LPARs, and wherein said i-th LPAR is hosted on a corresponding server of said plurality of servers in said current configuration; identifying an i-th set of one or more target servers from said plurality of servers based on each server of said i-th set of one or more target servers having a capacity of said available resources that is sufficient to satisfy an amount of said resources required by said i-th LPAR; said computer system determining an i-th optimal placement of said i-th LPAR on a target server of said i-th set of one or more target servers, wherein said determining said i-th optimal placement is based on said plurality of optimization characteristics, wherein said i-th optimal placement is included in an i-th draft configuration of said plurality of LPARs and said plurality of servers, and wherein said draft configuration of said plurality of LPARs and said plurality of servers is said i-th draft configuration; determining said target server of said i-th set of one or more target servers is not said corresponding server hosting said i-th LPAR; in response to said determining said target server of said i-th set of one or more target servers is not said corresponding server hosting said i-th LPAR, indicating a migration of said i-th LPAR to said target server of said i-th set of one or more target servers and updating said migrate count; determining a total cost of said i-th draft configuration; determining said total cost of said i-th draft configuration is less than a total cost of said current configuration and less than one or more total costs of one or more other draft configurations resulting from 1 . . . (i−
1)-th iterations of said second loop; andin response to said determining said total cost of said i-th draft configuration is less than said total cost of said current configuration and less than said one or more total costs of one or more other draft configurations resulting from said 1 . . . (i−
1)-th iterations, saving said i-th draft configuration as said tentative version of said optimal configuration and saving said total cost of said i-th draft configuration as said tentative final total cost of said tentative version of said optimal configuration.
-
-
10. A process for supporting computing infrastructure, said process comprising providing at least one support service for at least one of creating, integrating, hosting, maintaining, and deploying computer-readable code in a computing system comprising a processor, wherein said processor carries out instructions of said code to cause the computing system to specify a method of determining an optimal configuration of a plurality of logical partitions (LPARs) and a plurality of server computer systems (servers) that host the LPARs, said method comprising:
-
receiving a first specification of said plurality of LPARs and a plurality of resources required by each LPAR; receiving a second specification of said plurality of servers and a plurality of available resources provided by said plurality of servers in a current configuration of said plurality of LPARs and said plurality of servers; and receiving a plurality of optimization characteristics; determining a draft configuration of said plurality of LPARs and said plurality of servers is a tentative version of said optimal configuration of said plurality of LPARs and said plurality of servers by performing an iteration of a first loop, wherein said performing said iteration of said first loop includes iteratively evaluating LPARs from a list of n LPARs in a second loop, and wherein said tentative version of said optimal configuration has a tentative final total cost; determining no other draft configuration resulting from one or more additional iterations of said second loop or one or more additional iterations of said first loop has a draft total cost less than said tentative final total cost of said tentative version of said optimal configuration; in response to said determining no other draft configuration has said draft total cost less than said tentative final total cost, saving said tentative version of said optimal configuration as a final version of said optimal configuration of said plurality of LPARs and said plurality of servers; migrating one or more LPARs of said plurality of LPARs to one or more servers of said plurality of servers so that said plurality of LPARs and said plurality of servers are configured in said final version of said optimal configuration; and initializing a migrate count to an initialization value prior to said determining said draft configuration is said tentative version of said optimal configuration, wherein said plurality of LPARs consists of said n LPARs, and wherein said iteratively evaluating LPARs from said list of n LPARs includes evaluating an i-th LPAR from said list of n LPARs in an i-th iteration of said second loop, wherein 1 <
i <
n, and wherein said evaluating said i-th LPAR includes;selecting an i-th LPAR from said list of n LPARs, wherein said i-th LPAR is in an i-th position in said list of LPARs, and wherein said i-th LPAR is hosted on a corresponding server of said plurality of servers in said current configuration; identifying an i-th set of one or more target servers from said plurality of servers based on each server of said i-th set of one or more target servers having a capacity of said available resources that is sufficient to satisfy an amount of said resources required by said i-th LPAR; determining an i-th optimal placement of said i-th LPAR on a target server of said i-th set of one or more target servers, wherein said determining said i-th optimal placement is based on said plurality of optimization characteristics, wherein said i-th optimal placement is included in an i-th draft configuration of said plurality of LPARs and said plurality of servers, and wherein said draft configuration of said plurality of LPARs and said plurality of servers is said i-th draft configuration; determining said target server of said i-th set of one or more target servers is not said corresponding server hosting said i-th LPAR; in response to said determining said target server of said i-th set of one or more target servers is not said corresponding server hosting said i-th LPAR, indicating a migration of said i-th LPAR to said target server of said i-th set of one or more target servers and updating said migrate count; determining a total cost of said i-th draft configuration; determining said total cost of said i-th draft configuration is less than a total cost of said current configuration and less than one or more total costs of one or more other draft configurations resulting from 1. . . (i−
1)-th iterations of said second loop; andin response to said determining said total cost of said i-th draft configuration is less than said total cost of said current configuration and less than said one or more total costs of one or more other draft configurations resulting from said 1 . . . (i−
1)-th iterations, saving said i-th draft configuration as said tentative version of said optimal configuration and saving said total cost of said i-th draft configuration as said tentative final total cost of said tentative version of said optimal configuration.
-
Specification