A Layered Approach for Modular Container Construction and Orchestration in HPC Environments

Quincy Wofford, P. Bridges, Patrick M. Widener
{"title":"A Layered Approach for Modular Container Construction and Orchestration in HPC Environments","authors":"Quincy Wofford, P. Bridges, Patrick M. Widener","doi":"10.1145/3452370.3466001","DOIUrl":null,"url":null,"abstract":"Large-scale, high-throughput computational science faces an accelerating convergence of software and hardware. Software container-based solutions have become common in cloud-based datacenter environments, and are considered promising tools for addressing heterogeneity and portability concerns. However, container solutions reflect a set of assumptions which complicate their adoption by developers and users of scientific workflow applications. Nor are containers a universal solution for deployment in high-performance computing (HPC) environments which have specialized and vertically integrated scheduling and runtime software stacks. In this paper, we present a container design and deployment approach which uses modular layering to ease the deployment of containers into existing HPC environments. This layered approach allows operating system integrations, support for different communication and performance monitoring libraries, and application code to be defined and interchanged in isolation. We describe in this paper the details of our approach, including specifics about container deployment and orchestration for different HPC scheduling systems. We also describe how this layering method can be used to build containers for two separate applications, each deployed on clusters with different batch schedulers, MPI networking support, and performance monitoring requirements. Our experience indicates that the layered approach is a viable strategy for building applications intended to provide similar behavior across widely varying deployment targets.","PeriodicalId":224355,"journal":{"name":"Proceedings of the 11th Workshop on Scientific Cloud Computing","volume":"100 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-06-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 11th Workshop on Scientific Cloud Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3452370.3466001","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

Abstract

Large-scale, high-throughput computational science faces an accelerating convergence of software and hardware. Software container-based solutions have become common in cloud-based datacenter environments, and are considered promising tools for addressing heterogeneity and portability concerns. However, container solutions reflect a set of assumptions which complicate their adoption by developers and users of scientific workflow applications. Nor are containers a universal solution for deployment in high-performance computing (HPC) environments which have specialized and vertically integrated scheduling and runtime software stacks. In this paper, we present a container design and deployment approach which uses modular layering to ease the deployment of containers into existing HPC environments. This layered approach allows operating system integrations, support for different communication and performance monitoring libraries, and application code to be defined and interchanged in isolation. We describe in this paper the details of our approach, including specifics about container deployment and orchestration for different HPC scheduling systems. We also describe how this layering method can be used to build containers for two separate applications, each deployed on clusters with different batch schedulers, MPI networking support, and performance monitoring requirements. Our experience indicates that the layered approach is a viable strategy for building applications intended to provide similar behavior across widely varying deployment targets.
HPC环境中模块化容器构建和编排的分层方法
大规模、高通量的计算科学面临着软件和硬件的加速融合。基于软件容器的解决方案在基于云的数据中心环境中已经变得很常见,并且被认为是解决异构性和可移植性问题的有前途的工具。然而,容器解决方案反映了一组假设,这使得科学工作流应用程序的开发人员和用户采用容器解决方案变得复杂。容器也不是高性能计算(HPC)环境中部署的通用解决方案,这些环境具有专门的、垂直集成的调度和运行时软件堆栈。在本文中,我们提出了一种容器设计和部署方法,该方法使用模块化分层来简化容器在现有HPC环境中的部署。这种分层方法允许操作系统集成、对不同通信和性能监视库的支持以及应用程序代码的定义和交换。我们在本文中详细描述了我们的方法,包括针对不同HPC调度系统的容器部署和编排的细节。我们还描述了如何使用这种分层方法为两个独立的应用程序构建容器,每个应用程序部署在具有不同批处理调度器、MPI网络支持和性能监视需求的集群上。我们的经验表明,分层方法是构建应用程序的一种可行策略,该应用程序旨在跨广泛不同的部署目标提供类似的行为。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信