论文标题
高性能计算系统的容器化:调查和前景
Containerisation for High Performance Computing Systems: Survey and Prospects
论文作者
论文摘要
容器提高了应用程序部署的效率,因此已广泛用于云和高性能计算(HPC)环境中。容器将复杂程序及其依赖项封装在孤立的环境中,从而使应用程序更加兼容和便携。与云系统相比,HPC系统通常具有更高的安全水平,云系统限制了用户自定义环境的能力。因此,HPC上的容器需要包括大量的库,使其尺寸相对较大。这些库通常针对硬件进行了专门优化,这会损害容器的便携性。根据contra,云容器的体积较小,并且更便宜。此外,容器将受益于促进大规模部署和管理容器的编排者。实践中的云系统通常结合了复杂的容器编排机制,而不是HPC系统。然而,在最新情况下,已经提出了一些在HPC系统上实现容器编排的解决方案。本文对集装箱化及其在HPC系统上的编排策略进行了调查和分类。它突出显示了云和HPC之间的差异。最后,讨论了挑战,并设想了研究和工程的潜力。
Containers improve the efficiency in application deployment and thus have been widely utilised on Cloud and lately in High Performance Computing (HPC) environments. Containers encapsulate complex programs with their dependencies in isolated environments making applications more compatible and portable. Often HPC systems have higher security levels compared to Cloud systems, which restrict users' ability to customise environments. Therefore, containers on HPC need to include a heavy package of libraries making their size relatively large. These libraries usually are specifically optimised for the hardware, which compromises portability of containers. Per contra, a Cloud container has smaller volume and is more portable. Furthermore, containers would benefit from orchestrators that facilitate deployment and management of containers at a large scale. Cloud systems in practice usually incorporate sophisticated container orchestration mechanisms as opposed to HPC systems. Nevertheless, some solutions to enable container orchestration on HPC systems have been proposed in state of the art. This paper gives a survey and taxonomy of efforts in both containerisation and its orchestration strategies on HPC systems. It highlights differences thereof between Cloud and HPC. Lastly, challenges are discussed and the potentials for research and engineering are envisioned.