TY - GEN
T1 - Kraken
T2 - 12th Annual ACM Symposium on Cloud Computing, SoCC 2021
AU - Bhasi, Vivek M.
AU - Gunasekaran, Jashwant Raj
AU - Thinakaran, Prashanth
AU - Mishra, Cyan Subhra
AU - Kandemir, Mahmut Taylan
AU - Das, Chita
N1 - Funding Information:
8 Acknowledgement We are indebted to the anonymous reviewers for their insightful comments. This research was partially supported by NSF grants #1931531, #1955815, #1763681, #2116962, #2122155 and #2028929. We also thank the NSF Chameleon Cloud project CH-819640 for their generous compute grant. All product names used here are for identification purposes only and may be trademarks of their respective companies.
Publisher Copyright:
© 2021 Association for Computing Machinery.
PY - 2021/11/1
Y1 - 2021/11/1
N2 - The growing popularity of microservices has led to the proliferation of online cloud service-based applications, which are typically modelled as Directed Acyclic Graphs (DAGs) comprising of tens to hundreds of microservices. The vast majority of these applications are user-facing, and hence, have stringent SLO requirements. Serverless functions, having short resource provisioning times and instant scalability, are suitable candidates for developing such latency-critical applications. However, existing serverless providers are unaware of the workflow characteristics of application DAGs, leading to container over-provisioning in many cases. This is further exacerbated in the case of dynamic DAGs, where the function chain for an application is not known a priori. Motivated by these observations, we propose Kraken, a workflow-aware resource management framework that minimizes the number of containers provisioned for an application DAG while ensuring SLO-compliance. We design and implement Kraken on OpenFaaS and evaluate it on a multi-node Kubernetes-managed cluster. Our extensive experimental evaluation using DeathStarbench workload suite and real-world traces demonstrates that Kraken spawns up to 76% fewer containers, thereby improving container utilization and saving cluster-wide energy by up to 4x and 48%, respectively, when compared to state-of-the art schedulers employed in serverless platforms.
AB - The growing popularity of microservices has led to the proliferation of online cloud service-based applications, which are typically modelled as Directed Acyclic Graphs (DAGs) comprising of tens to hundreds of microservices. The vast majority of these applications are user-facing, and hence, have stringent SLO requirements. Serverless functions, having short resource provisioning times and instant scalability, are suitable candidates for developing such latency-critical applications. However, existing serverless providers are unaware of the workflow characteristics of application DAGs, leading to container over-provisioning in many cases. This is further exacerbated in the case of dynamic DAGs, where the function chain for an application is not known a priori. Motivated by these observations, we propose Kraken, a workflow-aware resource management framework that minimizes the number of containers provisioned for an application DAG while ensuring SLO-compliance. We design and implement Kraken on OpenFaaS and evaluate it on a multi-node Kubernetes-managed cluster. Our extensive experimental evaluation using DeathStarbench workload suite and real-world traces demonstrates that Kraken spawns up to 76% fewer containers, thereby improving container utilization and saving cluster-wide energy by up to 4x and 48%, respectively, when compared to state-of-the art schedulers employed in serverless platforms.
UR - http://www.scopus.com/inward/record.url?scp=85119277087&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85119277087&partnerID=8YFLogxK
U2 - 10.1145/3472883.3486992
DO - 10.1145/3472883.3486992
M3 - Conference contribution
AN - SCOPUS:85119277087
T3 - SoCC 2021 - Proceedings of the 2021 ACM Symposium on Cloud Computing
SP - 153
EP - 167
BT - SoCC 2021 - Proceedings of the 2021 ACM Symposium on Cloud Computing
PB - Association for Computing Machinery, Inc
Y2 - 1 November 2021 through 4 November 2021
ER -