Kraken: Adaptive Container Provisioning for Deploying Dynamic DAGs in Serverless Platforms

Kraken: Adaptive Container Provisioning for Deploying Dynamic DAGs in Serverless Platforms
复制标题

DOI:
10.1145/3472883.3486992
复制
发表时间:
2021-11
期刊:
Proceedings of the ACM Symposium on Cloud Computing
影响因子:
--
通讯作者:
Vivek M. Bhasi;Jashwant Raj Gunasekaran;P. Thinakaran;Cyan Subhra Mishra;M. Kandemir;C. Das
Vivek M. Bhasi;Jashwant Raj Gunasekaran;P. Thinakaran;Cyan Subhra Mishra;M. Kandemir;C. Das
中科院分区:
其他
文献类型:
--
作者:
Vivek M. Bhasi;Jashwant Raj Gunasekaran;P. Thinakaran;Cyan Subhra Mishra;M. Kandemir;C. Das

文献摘要

被引文献

相似文献

微服务的日益普及导致了基于在线云服务的应用程序的扩散,这些应用程序通常按照定向的无环图(DAG)建模,包括数十至数百个微服务。这些应用程序中的绝大多数是面向用户的,因此具有严格的SLO要求。无服务器功能,具有简短的资源配置时间和即时可扩展性,是用于开发此类关键延迟应用程序的合适候选者。但是,现有的无服务器提供商不知道应用程序DAG的工作流程特性,从而导致容器过度提供。在动态dags的情况下,这进一步加剧了这一点,在动态dags的情况下,该应用程序的函数链不知道先验。在这些观察结果的激励下,我们提出了Kraken,Kraken是一个工作流吸引的资源管理框架,可最大程度地减少为应用程序DAG提供的容器数量,同时确保SLO符合性。我们在OpenFAAS上设计和实施Kraken,并在多节点Kubernetes管理的集群上进行评估。我们使用DeathStarbench Workload Suite和Real-World Traces进行了广泛的实验评估,表明,与在无用平台中使用的最先进的现有调度程序相比,Kraken的卵产生的容器最多减少了76%,从而提高了容器利用率和节省群集的能源的76%。
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.