US 12,014,222 B1
Solver for cluster management system
Albert Yen Shau, Sunnyvale, CA (US); Christopher Gianelloni, Santa Clara, CA (US); Derek Lewis Wood, Sunnyvale, CA (US); Jonathan Michael Gray, Hermosa Beach, CA (US); Nitin Motgi, Santa Clara, CA (US); Poorna Chandra Gowda Bannikkuppe Ramachandra, San Mateo, CA (US); and Rohit Sarma Nistala, Torrance, CA (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Apr. 15, 2022, as Appl. No. 17/721,886.
Application 17/721,886 is a continuation of application No. 17/011,464, filed on Sep. 3, 2020, granted, now 11,307,906, issued on Apr. 19, 2022.
Application 17/011,464 is a continuation of application No. 16/429,649, filed on Jun. 3, 2019, granted, now 10,776,175, issued on Sep. 15, 2020.
Application 16/429,649 is a continuation of application No. 14/657,592, filed on Mar. 13, 2015, granted, now 10,310,911, issued on Jun. 4, 2019.
Claims priority of provisional application 61/953,106, filed on Mar. 14, 2014.
Int. Cl. H04L 29/08 (2006.01); G06F 9/48 (2006.01); G06F 9/50 (2006.01); H04L 67/01 (2022.01); H04L 67/10 (2022.01); H04L 67/1001 (2022.01); H04L 69/40 (2022.01)
CPC G06F 9/5088 (2013.01) [G06F 9/4881 (2013.01); G06F 9/5061 (2013.01); H04L 67/01 (2022.05); H04L 67/10 (2013.01); H04L 67/1001 (2022.05); H04L 69/40 (2013.01); G06F 2209/505 (2013.01)] 19 Claims
OG exemplary drawing
 
1. A method comprising:
receiving a request for deploying a multi-tiered application comprising a plurality of cluster templates, each cluster template associated with a different respective tier of a multi-tiered application, and a plurality of sets of criteria, each set of criteria corresponding to a different respective tier of the multi-tiered application, wherein the plurality of sets of criteria include a first set of criteria for a database layer of the multi-tiered application, a second set of criteria for an application server layer of the multi-tiered application, and a third set of criteria for a web application layer of the multi-tiered application;
for each tier of the multi-tiered application, generating a respective cluster layout for implementing the tier of the multi-tiered application, in accordance with the plurality of cluster templates and each respective set of criteria;
deploying a plurality of clusters of resources in accordance with the generated cluster layouts, the plurality of clusters configured to execute the multi-tiered application;
receiving a cluster management operation request including one or more constraints to the one or more of the plurality of cluster templates;
determining an updated cluster layout in accordance with the plurality of cluster templates and the one or more constraints; and
modifying one or more of the previously deployed plurality of clusters.