Towards a More Reliable and Available Docker-based Container Cloud
操作系统级虚拟化技术,或者说是通常所说的容器,代表了下一代轻量级虚拟化,主要以Docker为代表。然而,Docker目前的设计并没有补充基于Docker的容器云产品的SLA,这些产品承诺了可靠性和高可用性。容器和Docker守护进程之间的紧密耦合在守护进程由于故障或升级而不可用期间对容器的恢复是致命的。我们提出了HYDRONIC的设计和实现,它从根本上隔离了运行守护进程的容器。我们的评估表明,HYDRONIC即使在负载下也只会产生适度的开销,同时实现更高的容器可用性。
2017-08-28 cs.DC
The Art of CPU-Pinning: Evaluating and Improving the Performance of Virtualization and Containerization Platforms
云提供商以裸机、VM和容器的形式提供各种执行平台。然而,由于每个执行平台的优点和缺点,为特定的基于云的应用程序选择合适的平台已经成为解决方案架构师的挑战。结合这些平台的可能性(例如在虚拟机中部署容器)提供了新的能力,使挑战变得更加复杂。然而,在文献中很少有关于在各种执行平台上部署不同应用程序类型的利弊的研究。特别是,评估不同的硬件配置和不同的CPU配置方法,如CPU钉扎,还没有得到充分的研究文献。在这项工作中,针对四类现实应用程序(即视频处理、并行处理(MPI)、Web处理和No-SQL),测量和分析了容器、虚拟机和裸金属执行平台的性能开销,分别代表CPU密集型、并行处理和两个IO密集型进程。我们的分析揭示了一组有趣的,有时违反直觉的发现,可以作为解决方案架构师有效部署基于云的应用程序的最佳实践。这里有一些值得注意的地方:(A)在特定情况下,容器可以比VM施加更高的开销;(B)VM顶部的容器可以减轻某些应用程序的VM开销;(C)具有大量核心的容器比具有少数核心的容器施加更低的开销。
2020-06-03 cs.DC cs.OS cs.PF
Power Consumption of Virtualization Technologies: an Empirical Investigation
由于虚拟化领域的替代解决方案越来越多,以及应用领域的广泛性,虚拟化正在迅速发展。到目前为止,基于虚拟机管理程序的虚拟化一直是执行服务器虚拟化的事实上的解决方案。最近,基于容器的虚拟化-虚拟机管理程序的替代方案-由于轻量级特性而受到更多关注,吸引了已经利用它来提供服务的云提供商。然而,在现有的集装箱研究中,在功耗方面存在差距。本文介绍了四种不同虚拟化技术的功耗性能比较结果:基于虚拟机管理程序虚拟化的KVM和Xen,基于容器虚拟化的Docker和LXC。通过测试平台进行的这项实证调查的目的是了解这些技术如何对特定的工作负载做出反应。我们的初步结果显示,尽管运行的虚拟实体的数量,这两种虚拟化的替代品在空闲状态和CPU/内存压力测试中的行为相似。结果表明,两种技术在网络性能上存在差异。
2015-11-04 cs.DC cs.PF
A Performance Evaluation of Container Technologies on Internet of Things Devices
虚拟化技术在云环境、物联网(IoT)、软件定义网络(SDN)等不同环境中的使用在过去几年中迅速增加。在这些技术中,基于容器的解决方案具有部署分布式和轻量级应用程序的特点。本文介绍了容器技术在受限设备上的性能评估,在这种情况下,在树莓派。研究表明,总体而言,容器增加的开销可以忽略不计。
2016-03-09 cs.DC cs.PF
Enabling Message Passing Interface Containers on the LUMI Supercomputer
本文提出了一种在LUMI超级计算机上部署基于MPI的容器化应用程序的方法,展示了用户如何构建运行容器并获得预期性能,且该方法可推广至其他超算。
2024-07-29 cs.DC
A Multi-Tenant Framework for Cloud Container Services
容器技术在云原生时代发展迅速。Kubernetes作为一个生产级容器编排平台,已被证明在内部部署的容器化应用程序管理方面是成功的。然而,Kubernetes在设计上缺乏足够的多租户支持,这意味着在云环境中,需要专用集群来服务多个用户,即,租户.这种限制大大削弱了云计算的优势,并使得使用Kubernetes构建多租户软件即服务(SaaS)产品变得困难。在本文中,我们提出了Virtual-Cluster,这是一个新的多租户框架,它扩展了Kubernetes并提供了足够的多租户支持。基本上,VirtualCluster提供控制平面和数据平面隔离,同时在租户之间共享底层计算资源。新框架通过避免修改Kubernetes核心组件来保持API兼容性。因此,它可以很容易地与现有的Kubernetes用例集成。我们的实验结果表明,VirtualCluster引入的开销,在延迟和吞吐量方面,是适度的。
2021-03-24 cs.DC
Build and Execution Environment (BEE): an Encapsulated Environment Enabling HPC Applications Running Everywhere
高性能计算(HPC)系统软件配置的变化意味着应用程序通常是针对特定HPC环境配置和构建的。构建应用程序可能需要应用程序用户投入大量的时间和精力,并且需要应用程序用户具有额外的技术知识。Docker和Charliecloud等Linux容器技术为应用程序开发、构建和部署过程带来了巨大的好处。虽然云平台已经广泛支持容器,但HPC系统对容器技术的支持仍然不统一。在这项工作中,我们提出了一个统一的运行时框架-构建和执行环境(BEE)在HPC和云平台,允许用户在所有支持的平台上运行他们的容器化HPC应用程序,而无需修改。我们为四种不同类别的HPC或云平台设计了四个BEE后端,以便它们共同覆盖HPC用户的大多数主流计算平台。评估表明,BEE提供了一个易于使用的统一的用户界面,执行环境,和可比的性能。
2021-02-27 cs.DC
Speculative Container Scheduling for Deep Learning Applications in a Kubernetes Cluster
在过去十年中,我们目睹了从各种来源收集的数据量急剧增加。数据爆炸改变了世界,因为比以往任何时候都有更多的信息可供收集和分析。为了最大化利用率,已经开发了各种机器和深度学习模型,例如CNN [1]和RNN [2],以研究数据并从不同角度提取有价值的信息。虽然数据驱动的应用程序改进了无数的产品,但用于超参数调优的训练模型仍然是一个耗时且资源密集型的过程。云计算为深度学习应用的训练提供基础设施支持。云服务提供商,如Amazon Web Services [3],为客户端创建一个隔离的虚拟环境(虚拟机和容器),客户端共享物理资源,例如,CPU和内存。在云上,实现了资源管理方案,以实现用户之间的更好共享,并提高系统范围的性能。然而,一般的调度方法,如分散优先级和平衡资源调度器,不能很好地与深度学习工作负载一起工作。在这个项目中,我们提出了SpeCon,这是一种新型的容器调度器,针对短期深度学习应用程序进行了优化。基于虚拟化容器,如Kubernetes [4]和Docker [5],SpeCon分析了训练过程的共同特征。我们设计了一套算法来监控训练的进度,并推测性地迁移增长缓慢的模型,为快速增长的模型释放资源。具体来说,广泛的实验表明,SpeCon将单个作业的完成时间提高了41.5%,在系统范围内提高了14.8%,在完工时间方面提高了24.7%。
2020-10-21 cs.DC cs.PF
Container Profiler: Profiling Resource Utilization of Containerized Big Data Pipelines
本文介绍了容器分析器,一个软件工具,测量和记录任何容器化任务的资源使用情况。我们的工具分析了容器化任务的CPU、内存、磁盘和网络利用率,在虚拟机、容器和进程级别收集了50多个Linux操作系统指标。Container Profiler支持以可配置的采样间隔执行时间序列分析,以持续监控容器化任务和管道消耗的资源。为了研究Container Profiler的实用性,我们分析了多阶段生物信息学分析管道(使用独特分子标识符的RNA测序)的资源利用要求。我们检查分析指标,以评估跨管道的不同阶段的CPU、磁盘和网络资源利用率的模式。我们还量化了我们的容器分析器工具的分析开销,以评估分析具有不同级别的分析粒度的运行管道的影响,验证影响可以忽略不计。Container Profiler提供了一个有用的工具,可用于持续监控本地或云上运行的长时间复杂容器化应用程序的资源消耗。这可以帮助识别需要更多资源来提高性能的瓶颈。
2023-02-07 cs.DC cs.PF
Understanding Layered Portability from HPC to Cloud in Containerized Environments
该研究在三个 ARM 平台上用六个 HPC 应用评估容器虚拟化、主机 OS/内核及执行模式对 HPC 向云迁移的性能影响,发现多数应用开销较低,且无根与特权模式差异可忽略。
2024-06-17 cs.DC
Container-Based Cloud Virtual Machine Benchmarking
随着各种云虚拟机(VM)的可用性,很难确定哪些VM可以最大化应用程序的性能。基准测试通常用于捕获VM的性能。大多数云基准测试技术通常都是重量级的,耗时的过程,必须对整个VM进行基准测试才能获得准确的基准测试数据。这样的基准不能在云上实时使用,甚至在部署应用程序之前也会产生额外的成本。在本文中,我们提出了轻量级云基准测试技术,这些技术可以快速执行,并可以在云上近乎实时地使用。轻量级基准测试技术的探索通过DocLite - Docker Container-based Lightweight Benchmarking的开发得到了促进。DocLite构建在Docker容器技术之上,允许对VM的用户定义部分(例如内存大小和CPU核心数量)进行基准测试。DocLite以两种模式运行,在第一种模式下,容器用于对VM的一小部分进行基准测试以生成性能排名。在第二模式中,历史基准数据与第一模式一起作为混合使用以生成VM排名。生成的排名进行评估,对三个科学的高性能计算应用程序。所提出的技术比对整个VM进行基准测试的重量级技术快91倍。据观察,第一种模式可以产生排名超过90%和86%的准确性顺序和并行执行的应用程序。混合模式稍微提高了相关性,但第一种模式足以对云虚拟机进行基准测试。
2016-01-15 cs.DC
Container Density Improvements with Dynamic Memory Extension using NAND Flash
虽然容器有效地实现了操作系统级应用程序虚拟化的思想,但它们通常不足以将服务器利用率提高到理想的水平。原因是在实践中,许多容器化应用程序的负载量有限,而具有高负载的容器很少。在这种情况下,即使活动容器的工作集将适合主存储器,虚拟内存管理系统也可能成为容器密度的限制因素。在本文中,我们描述和评估一个系统,用于透明地移动内存页面进出DRAM和NAND闪存介质,它是通过内存总线连接。这种技术被称为暗黑破坏神内存扩展(DMX),在预测模型上运行,能够减轻内存系统的压力。我们提出了一个容器密度的基准测试,并表明即使在整体恒定的工作负载下,添加额外的容器也会对Docker中的性能关键型应用程序产生不利影响。但是,当使用Memory1系统的DMX技术时,关键工作负载的性能保持稳定。
2019-06-24 cs.DC cs.OS
Evaluating Container Orchestration for Neuromorphic Workloads in Virtual Edge Environments
本文研究了在虚拟边缘环境中使用Kubernetes部署和编排SNN工作负载的可行性,探讨了资源限制对端到端延迟、吞吐量和分类准确率的影响,揭示了容器编排配置的重要性。
2026-05-15 cs.DC
A Decentralized Framework with Dynamic and Event-Driven Container Orchestration at the Edge
虚拟化为物联网技术提供了一个抽象层,以解决边缘网络的异构性。它支持在具有不同架构的设备上部署应用程序,以实现统一性。这项研究奠定了动态和事件驱动的编排框架的基础,以实现完全分散的边缘。它为通过分布式文件系统(即InterPlanetary文件系统(IPFS))上的注册表注册其资源需求的容器化应用程序提供了基于区块链的交付平台。分散式资源管理器在从主机和虚拟化平台抓取的度量上运行,即,Docker在我们的实现中,动态优化了分配给每个容器的资源。该框架确保异构环境的可变工作负载可以在多个边缘设备上共存。事件驱动的体系结构构建在轻量级消息传递协议MQTT之上,利用发布/订阅模式的异步和分布式特性来实现真正的分布式系统。
2022-09-26 cs.DC
Server Structure Proposal and Automatic Verification Technology on IaaS Cloud of Plural Type Servers
在本文中,我们提出了一个服务器结构的建议和自动性能验证技术,提出并验证了一个适当的服务器结构上的基础设施即服务(IaaS)云与裸金属服务器,基于容器的虚拟服务器和虚拟机。最近,云服务已经取得了进展,并且提供商不仅提供虚拟机,而且还提供裸金属服务器和基于容器的虚拟服务器。然而,用户需要设计一个合适的服务器结构,他们的需求的基础上的3种类型的定量性能和用户需要很多的技术知识,以优化他们的系统性能。因此,我们研究一种技术,满足用户的性能要求,在这三种类型的IaaS云。首先,我们测量了在OpenStack上的裸机服务器,Docker容器,KVM(基于内核的虚拟机)虚拟机的性能与虚拟服务器数量的变化。其次,我们提出了一种基于量化测量数据的服务器结构建议技术。服务器结构建议技术接收OpenStack Heat和功能/性能需求的抽象模板,然后创建具有服务器规范信息的具体模板。第三,我们提出了一种自动性能验证技术,根据模板自动执行必要的性能测试提供的用户环境。
2022-11-01 cs.DC
Self-Scaling Clusters and Reproducible Containers to Enable Scientific Computing
Docker等容器技术已经成为许多软件行业实践的重要组成部分,特别是那些与可复制性和可移植性有关的实践。容器化哲学影响了科学计算界,科学计算界已经开始采用甚至开发容器技术(例如Singularity)。将容器用于科学软件通常会带来与工业中遇到的挑战不同的挑战,并且需要不同的方法。对于HPC来说尤其如此。随着云中HPC的选择越来越多(包括NSF资助的云项目),人们有强烈的动机寻求解决方案,这些解决方案能够以可移植和可复制的方式在各种计算基础设施上灵活地开发和部署科学软件。云服务提供的灵活性使虚拟HPC集群能够按需扩展,XSEDE项目中的网络基础设施资源集成团队开发了一套工具,可在云中提供可扩展的基础设施。我们现在提出一个解决方案,它在一个支持MPI的Docker容器中使用Nix包管理器,该容器被转换为Singularity。它在每个映像中提供一致的安装、依赖项和环境,这些映像可跨科学计算基础架构进行复制和移植。我们使用部署在Jetstream和Aristotle Red Cloud OpenStack云中的Slurm调度器在自扩展虚拟集群中运行集群基准测试来演示这些容器的实用性。我们的结论是,这种技术是有用的科学软件应用程序容器的模板中使用的XSEDE计算环境,其他奇点HPC环境,和云计算环境。
2020-08-03 cs.DC
Edge System Design Using Containers and Unikernels for IoT Applications
针对边缘物联网部署缺乏统一框架的问题,提出结合容器与unikernel的混合边缘系统,按应用复杂度分配技术并加入容器编排,经ARM设备实验验证可提升资源利用率、降低延迟。
2024-12-08 cs.DC
Cost-Efficient Orchestration of Containers in Clouds: A Vision, Architectural Elements, and Future Directions
本文提出了一个架构框架,在云环境中的容器的有效编排。它围绕资源调度和重新调度策略以及自动缩放算法,使创建弹性虚拟集群。通过这种方式,所提出的框架使得能够在封装在容器中的不同客户端应用之间共享计算环境,包括Web服务、离线分析作业和后端预处理任务。所设计的资源管理算法和策略将提高可用虚拟资源的利用率,以降低提供商的运营成本,同时满足各种类型的应用程序的资源需求。所提出的算法将考虑以前被其他解决方案忽略的因素,包括1)获取资源的定价模型,2)应用程序的容错性,以及3)运行应用程序的QoS要求,如Web服务的延迟和吞吐量以及分析和预处理作业的截止日期。建议的解决方案将通过开发一个基于现有容器编排平台的原型平台进行评估。
2018-07-10 cs.DC
About Microservices, Containers and their Underestimated Impact on Network Performance
微服务用于构建由小型、独立和高度解耦的流程组成的复杂应用程序。最近,微服务经常与Docker等容器技术相提并论。这就是操作系统虚拟化在云计算中复兴的原因。这些方法将提供水平可扩展,易于部署的系统和高性能的替代管理程序。然而,几乎没有研究虚拟机管理程序之上的容器的性能影响。此外,微服务框架通常与软件定义网络一起出现。本文介绍了量化容器、软件定义网络和加密对网络性能影响的基准测试结果。即使是容器,虽然假设是轻量级的,但对网络性能也有显著的影响。这些影响可以在几个系统层上最小化。最后,本文给出了遵循微服务架构模式的云部署系统的设计建议。
2017-09-14 cs.DC
Evaluation of Docker Containers for Scientific Workloads in the Cloud
HPC社区正在积极研究和评估工具,以支持在基于云的环境中执行科学应用程序。在各种技术中,容器最近变得越来越重要,因为与全面虚拟化相比,它们具有更好的性能,支持微服务和DevOps,并与工作流和编排工具无缝配合。Docker目前是容器化技术的领导者,因为它提供了低开销,灵活性,应用程序的可移植性和可重复性。Singularity是另一个有趣的容器解决方案,因为它是专门为科学应用而设计的。对容器技术进行性能和功能分析,以了解它们对每个应用程序和目标执行环境的适用性,这一点很重要。本文介绍了(1)Docker和Singularity在Chameleon云中的裸金属节点上的性能评估;(2)Docker容器可以通过RDMA通信与InfiniBand硬件映射的机制;(3)分析并行工作负载到容器的映射元素,以便使用容器就绪的编排工具进行最佳资源管理。我们的实验针对应用程序开发人员,以便他们能够在选择适合云基础设施上HPC工作负载的容器技术和方法方面做出明智的决定。我们的性能分析表明,基于Docker和Singularity的容器的科学工作负载可以实现接近原生的性能。Singularity专为HPC工作负载而设计。然而,Docker在云中的使用仍然优于Singularity,因为它提供了覆盖网络和一种直观的方式来运行MPI应用程序,每个等级一个容器,以进行细粒度的资源分配。
2019-05-21 cs.DC cs.PF
RunPHI: Enabling Mixed-criticality Containers via Partitioning Hypervisors in Industry 4.0
在工业4.0(I4.0)等具有关键性要求的许多领域中,演示系统正在成为自动管理分布式计算资源的关键组件。然而,它们主要与操作系统级虚拟化有关,众所周知,这会降低隔离性。在本文中,我们提出了RunPHI的目的是集成分区管理程序,作为一种解决方案,以确保强隔离,与操作系统级的编排系统。其目的是通过分区容器在具有隔离要求的混合关键度系统中实现容器编排。
2022-09-05 cs.DC cs.OS
Containers for portable, productive and performant scientific computing
容器是一种新兴技术,有望提高科学计算的生产力和代码可移植性。我们研究了Linux容器技术,用于分发非平凡的科学计算软件堆栈,并在从膝上计算机到高性能计算(HPC)系统的各种平台上执行。我们在一个工作站和一个领先的HPC系统上显示,当部署得当时,在容器内运行科学程序不会有性能损失。对于在大型并行计算机上运行的Python代码,由于更快的库导入,容器内的运行时间减少了。我们提供的软件分发方法和数据将帮助开发人员和用户决定容器技术是否适合他们。我们还为依赖专有库来提高性能的HPC系统供应商提供指导,说明他们可以做些什么来使容器无缝工作,而不会带来性能损失。
2016-11-03 cs.DC cs.MS cs.SE
Lifting the Fog of Uncertainties: Dynamic Resource Orchestration for the Containerized Cloud
针对容器化云的配置不确定性,本文提出基于 Contextual Bandit 的 Drone 动态资源编排框架,自适应调参以兼顾性能与成本,并通过次线性遗憾理论和实验验证其收益。
2023-09-29 cs.DC
Scylla: A Mesos Framework for Container Based MPI Jobs
开源云技术为创建定制的计算节点集群以调度任务和管理资源提供了广泛的支持。在用于科学研究的云基础设施(如Jetstream和Chameleon)中,用户可以完全控制分配给他们的虚拟机(VM)。重要的是,用户可以获得对VM的root访问权限。这为HPC用户提供了一个试验新的资源管理技术的机会,如Apache Mesos,这些技术具有经过验证的可扩展性、灵活性和容错能力。为了简化HPC工具在云上的开发和部署,容器化技术已经成熟,并在科学界引起了兴趣。特别是,几个著名的科学代码库现在都有公开的Docker容器。虽然Mesos支持Docker容器单独执行,但它不支持并行或分布式应用程序的容器内部通信或容器编排。在本文中,我们介绍了Mesos框架Scylla的设计、实现和性能分析,Scylla将Mesos与Docker Swarm集成在一起,以便在从Chameleon云[1]获得的VM集群上编排MPI作业。Scylla使用Docker Swarm进行容器化任务(MPI进程)之间的通信,使用Apache Mesos进行资源池和分配。Scylla允许一种策略驱动的方法,根据每个应用程序的CPU、内存和网络吞吐量需求来确定容器应该如何在节点上分布。
2019-05-20 cs.DC cs.PF
Portable, high-performance containers for HPC
在高端计算系统上构建和部署软件是一项具有挑战性的任务。高性能应用程序必须在多个平台和环境中可靠地运行,并利用特定于站点的资源,同时解决复杂的软件堆栈依赖关系。容器是一种轻量级虚拟化技术,它试图通过将应用程序及其环境打包到标准软件单元中来解决这个问题,这些软件单元具有以下特点:可移植性,易于构建和部署,占用空间小,运行时开销低。在这项工作中,我们对Shifter的容器运行时进行了扩展,为容器化应用程序提供了一种从主机系统访问GPU加速器和专用网络的机制,有效地实现了容器在HPC资源中的性能可移植性。所提出的扩展可以从在非HPC商品硬件(例如研究人员的笔记本电脑或工作站)中开发,构建和测试的容器化应用程序中快速在超级计算机上部署高性能软件。
2017-04-11 cs.DC
Batch Auction Design For Cloud Container Services
云容器代表了云计算中虚拟机的一种新的轻量级替代方案。用户作业可以由指定每个容器的资源简档和容器依赖关系的容器图来描述。这项工作是第一个在云计算文学,设计有效的市场机制,基于容器的云作业。我们的设计目标同时激励兼容性,计算效率和经济效率。它进一步将批量在线优化的思想融入到机制设计的范式中,利用云容器的敏捷创建和弹性云作业的延迟容忍。我们采用的新的和经典的技术包括:(一)紧凑的指数优化表达和处理非传统的约束,所产生的集装箱依赖和工作的最后期限;(二)原始-对偶模式设计高效的近似算法社会福利最大化;和(iii)公布的价格机制,批量决策和真实的支付设计。理论分析和跟踪驱动的实证评估验证了我们的集装箱拍卖算法的有效性。
2018-01-18 cs.DC cs.GT
Serverless Containers -- rising viable approach to Scientific Workflows
无服务器计算方法的日益普及导致了在容器即服务(CaaS)模型中工作的新云基础设施的出现,如AWS Fargate,Google Cloud Run或Azure Container Cloud。他们引入了一种创新的方法来运行云容器,使开发人员从管理底层资源中解放出来。在本文中,我们专注于评估弹性容器的功能及其在使用AWS Fargate和Google Cloud Run基础设施的科学工作流范例中对科学计算的有用性。为了对我们的方法进行实验评估,我们扩展了HyperFlow引擎以支持这些CaaS平台,并调整了由几十到一百多个任务组成的四个真实科学工作流,这些任务被组织成一个依赖图。我们使用这些工作流来创建成本性能基准和流执行图,测量延迟,弹性和可扩展性。实验证明,无服务器容器可以成功地应用于科学工作流。此外,这些结果使我们能够深入了解这些平台的具体优势和局限性。
2020-10-21 cs.DC
Rosetta: a container-centric science platform for resource-intensive, interactive data analysis
Rosetta是一个用于资源密集型、交互式数据分析的科学平台,它将用户任务作为软件容器运行。它建立在一个新的架构之上,该架构基于将用户任务框架为微服务-独立和自包含的单元-允许完全支持自定义和用户定义的软件包,库和环境。这些包括完整的远程桌面和GUI应用程序,以及常见的分析环境,如Xueyter Notebooks。Rosetta依赖于Open Container Initiative容器,允许安全,有效和可再现的代码执行;可以使用许多容器引擎和运行时;并无缝支持多个工作负载管理系统,从而在广泛的计算资源上实现容器化工作负载。虽然Rosetta是在天文学和天体物理学领域开发的,但它实际上可以支持任何需要资源密集型、交互式数据分析的科学和技术领域。
2022-09-05 astro-ph.IM cs.DC
Task Containerization and Container Placement Optimization for MEC: A Joint Communication and Computing Perspective
针对MEC中容器部署导致的通信开销与资源不均衡问题,提出基于工作流的数学模型与多目标组合优化方法,联合优化任务容器化与容器放置,有效降低开销并平衡资源。
2023-05-23 cs.DC cs.NI
C-Balancer: A System for Container Profiling and Scheduling
Linux容器在最近一段时间获得了很高的人气。这种流行主要是由于容器相对于虚拟机(VM)的各种优势。这些容器是轻量级的,占用更少的存储,具有快速的启动待用时间,易于部署和更快的自动扩展。容器流行背后的关键原因是它们利用了微服务风格软件开发的机制,其中应用程序被设计为可独立部署的服务。有各种容器编排工具用于部署和管理集群中的容器。其中最突出的是Docker Swarm和Kubernetes。然而,当在节点上部署多个容器时,它们没有解决资源争用的影响。此外,它们不支持在发生攻击或资源争用增加的情况下进行容器迁移。为了解决这些问题,我们提出了C-Balancer,一个调度框架,用于在集群环境中有效地放置容器。C-Balancer通过定期分析容器并决定最佳容器到节点的位置来工作。我们提出的方法提高了容器的性能,在资源利用率和吞吐量方面。使用Stress-NG和iPerf基准测试的工作负载组合的实验表明,我们提出的方法实现了最大的性能提高58%的工作负载组合。我们的方法还将整个集群的资源利用率差异平均降低了60%。
2020-09-18 cs.DC
LaSS: Running Latency Sensitive Serverless Computations at the Edge
无服务器计算已经成为在云中运行短期计算的新范例。由于其处理物联网工作负载的能力,人们对在边缘运行无服务器功能非常感兴趣。然而,边缘的约束性质和工作负载的延迟敏感性质导致无服务器平台面临许多挑战。在本文中,我们介绍了LaSS,一个使用模型驱动方法在边缘资源上运行延迟敏感的无服务器计算的平台。LaSS使用基于原则的方法来确定每个托管功能的适当分配,并根据工作负载动态自动缩放分配的资源。LaSS使用公平共享分配方法来保证在存在过载的情况下向每个功能分配最小的资源。此外,它利用基于容器收缩和终止的资源回收方法,将资源从过度配置的功能重新分配到配置不足的功能。我们在OpenWhisk无服务器边缘集群上实现了我们方法的原型,并进行了详细的实验评估。我们的研究结果表明,LaSS可以准确地预测高度动态工作负载下无服务器功能所需的资源,并在数百毫秒内重新配置容器容量,同时保持公平的份额分配保证。
2021-04-29 cs.DC
Performance Estimation of Container-Based Cloud-to-Fog Offloading
雾计算将在云上运行的延迟关键应用服务卸载到位于网络边缘的资源上,这些服务非常接近最终用户设备。本文中的研究是出于对特征和估计所需的时间卸载服务使用容器,这是在“保存和加载”容器迁移技术的背景下进行调查。为此,该研究解决了诸如雾卸载是否可以准确建模以及哪些系统和网络相关参数影响卸载等问题。这些都是通过探索一个目录的21个不同的指标,在系统和过程的水平,被用作输入到四个估计技术,使用集体模型和个人模型来预测卸载所需的时间。这项研究收集了110多万个数据点,初步结果表明,可以准确地模拟卸载。
2019-09-11 cs.DC
Kubernetes in Action: Exploring the Performance of Kubernetes Distributions in the Cloud
本文在 CloudLab 上基于 OpenFaaS 比较四种 Kubernetes 发行版,并评估 Xen 的 HVM/PV 模式及 Docker、Containerd 运行时在磁盘与 CPU 密集型负载下的性能。
2024-03-03 cs.DC cs.PF
Comparing Security and Efficiency of WebAssembly and Linux Containers in Kubernetes Cloud Computing
本研究比较了WebAssembly与Linux容器在Kubernetes中的安全性和效率,发现WebAssembly攻击面更小、性能开销可忽略,但并非万能解决方案。
2024-11-02 cs.CR cs.DC
Characterizing Co-located Datacenter Workloads: An Alibaba Case Study
仓库规模的云计算中心将具有不同且通常互补特征的工作负载放在一起,以提高资源利用率。为了更好地理解在提供有质量保证的资源编排和用户体验的同时管理如此复杂的异构工作负载所面临的挑战,我们分析了阿里巴巴的协同工作负载跟踪,这是第一个公开的数据集,其中包含有关每个作业类别的精确信息。两种类型的工作负载--长时间运行的、面向用户的、容器化的生产作业,以及瞬态的、高度动态的、非容器化的、非生产批处理作业--正在一个由1313台机器组成的共享集群上运行。我们的多方面分析揭示了我们认为对从事集群管理系统的系统设计人员和IT从业人员有用的见解。
2018-08-15 cs.DC
A DPU Solution for Container Overlay Networks
将混合环境作为跨边缘、云和HPC系统的工作流的一部分的需求越来越大。在云计算和HPC的这种融合环境中,容器开始发挥更重要的作用,将其网络基础设施与之一起。然而,目前的工作表明,通常用于连接物理主机上的容器的容器覆盖网络不适合HPC环境。它们往往会带来显著的开销和噪声,导致性能下降,并干扰同一主机上的协同进程。本文重点介绍了利用一类新的硬件,数据处理单元,卸载覆盖网络的网络堆栈从主机上的DPU。我们打算表明,这种辅助卸载是可能的,它会导致主机节点上的开销减少,这反过来又会提高运行过程的性能。
2022-11-18 cs.DC cs.NI
Experience Deploying Containerized GenAI Services at an HPC Center
Sandia National Laboratories(桑迪亚国家实验室)
本文总结在 HPC 中心集成 Kubernetes 与 HPC 平台、利用多种容器运行时和 vLLM 部署 Llama 等容器化 GenAI 服务的实践经验。
2025-09-29 cs.AI cs.AR cs.DC
Towards Multi-container Deployment on IoT Gateways
高级物联网(IoT)应用程序中严格的延迟要求以及云数据中心负载的增加促使人们转向更加分散的方法,通过部署多用途物联网网关,使物联网数据的存储和处理更接近终端设备。然而,这些网关的资源受限性质和多样性在开发可以广泛部署的应用程序方面提出了挑战。这一挑战可以通过容器化来克服,容器化是一种轻量级虚拟化的形式,支持广泛的硬件架构和物联网网关上应用程序的操作系统不可知部署。本文讨论了容器化的架构方面,并研究了可用的容器化工具在物联网网关上下文中用于多容器部署的适用性。我们在AGILE的背景下介绍了容器化,AGILE是一个基于多容器和微服务的物联网网关开源框架,作为Horizon 2020项目的一部分开发。我们对容器化服务进行了研究,以执行常见的网关功能,如设备发现,数据管理和云集成等,揭示了在使用基础映像层次结构和映像分层进行容器内和跨容器性能优化方面,为物联网网关提供容器化环境的优势。我们说明了这些结果在本文中的一组基准实验。
2018-10-04 cs.DC cs.SE
Integration of FogBus2 Framework with Container Orchestration Tools in Cloud and Edge Computing Environments
目前,由于容器技术具有重量轻、部署简单、支持多环境、启动时间短、可扩展、易迁移等优点,在云计算和边缘/雾计算中得到了广泛应用,并解决了不同计算环境下的设备异构问题。在此基础上,作为最流行的容器编排和管理系统之一,Kubernetes几乎主导了云环境。但是,由于它主要是为计算资源充足的集中式资源管理场景而设计的,因此由于硬件限制,该系统在边缘环境中不稳定。因此,为了实现云和边缘/雾混合计算环境下的容器编排,提出了一种可行的基于K3 s构建混合集群的方法,解决了不同环境下虚拟实例因IP地址而无法连接的问题。我们还提出了将FogBus 2框架部署到混合环境中的三种设计模式,包括1)主机网络模式,2)代理服务器和3)环境变量。
2021-12-11 cs.DC
Container-based Cluster Orchestration Systems: A Taxonomy and Future Directions
容器能够实现轻量级的环境和性能隔离,快速灵活的部署以及细粒度的资源共享,除了硬件虚拟化之外,还在更好的应用程序管理和部署方面获得了普及。它们正被组织广泛用于在专有集群或私有云和公共云数据中心中部署来自现代应用程序(如Web服务、大数据和物联网)的日益多样化的工作负载。这导致了容器编排平台的出现,这些平台旨在管理大规模集群中容器化应用程序的部署。这些系统能够在数千台机器上运行数十万个作业。为了有效地做到这一点,他们必须解决几个重要的挑战,包括可伸缩性,容错和可用性,有效的资源利用率,以及请求吞吐量最大化等。本文研究了这些管理系统,并提出了一个分类,确定不同的机制,可用于满足上述挑战。建议的分类,然后应用到各种国家的最先进的系统,导致识别开放的研究挑战和差距,在文献中打算作为未来的研究方向。
2018-11-02 cs.DC
High availability using virtualization
高可用性一直是数据中心的主要问题之一。到目前为止,高可用性是通过每台主机的冗余来实现的,这是一种在硬件和人力成本方面非常昂贵的方法。虚拟化可以为解决这一问题提供一种新的方法。使用虚拟化,可以为数据中心上运行的所有服务实现冗余系统。这种实现高可用性的新方法允许在启动和运行的服务器上共享正在运行的虚拟机,方法是利用虚拟化层的功能:在物理主机之间启动、停止和移动虚拟机。该系统(3RC)基于具有滞后的有限状态机,可以通过任何物理主机重新启动每个虚拟机,或从头开始重新安装它。已经开发了一个完整的基础设施,可以在几分钟内安装操作系统和中间件。为了虚拟化数据中心的主服务器,开发了一种新的过程来将物理主机迁移到虚拟主机。整个网格数据中心SNS-PISA目前运行在高可用系统下的虚拟环境中。作为3RC体系结构的扩展,已经测试了几种存储解决方案,以存储和集中所有虚拟磁盘,从NAS到SAN,以保证数据安全和从任何地方访问。利用虚拟化和自动重新安装主机的能力,我们提供了一种按需主机,只有在发生灾难时才执行虚拟机上的操作。
2009-10-09 cs.DC cs.PF
Online Container Scheduling for Low-Latency IoT Services in Edge Cluster Upgrade: A Reinforcement Learning Approach
针对边缘集群升级时传统云调度策略不适配、易影响运行任务的问题,提出基于策略梯度的强化学习在线容器调度算法,可将总任务时延较基线降低约27%。
2023-07-22 cs.DC
Dynamic scheduling of virtual machines running hpc workloads in scientific grids
采用虚拟化的主要动机是资源隔离、容量管理和资源定制,允许资源提供商将其资源整合到虚拟机中。已经采取了各种方法来将虚拟化集成到科学网格中,特别是在高性能计算(HPC)的领域中,以在虚拟机中运行网格作业,从而能够更好地提供底层资源并在运行时定制执行环境。尽管有这些好处,但虚拟化层也会带来性能损失,而且还没有很好地理解这种开销将如何影响系统的性能,其中作业的调度时间很紧。由于这种开销会改变工作负载的类型,无论它们是内存密集型,CPU密集型还是网络I/O绑定,并且可能导致系统中运行作业的不可预测的截止日期估计。在我们的研究中,我们试图通过开发一种智能调度技术来解决这个问题,该技术用于监控虚拟机的工作负载类型和最后期限,并实时的计算系统开销,以最大限度地提高在商定的最后期限内完成的作业数量。
2010-09-24 cs.DC cs.DS cs.PF
Multitenant Containers as a Service (CaaS) for Clouds and Edge Clouds
针对云和边缘云中CaaS多租户隔离开销大的问题,提出原生多租户框架,租户共享集群,通过节点级切片实现隔离与定制,已开源并用于EdgeNet。
2023-04-21 cs.DC cs.NI
DCSim: Computing and Networking Integration based Container Scheduling Simulator for Data Centers
本文提出DCSim容器调度模拟器,融合计算与网络建模,基于SimPy和Mininet实现数据中心容器调度仿真,以解决传统模拟器忽视网络影响的问题。
2024-11-21 cs.DC
Investigating the Impact of Isolation on Synchronized Benchmarks
TU Berlin(柏林工业大学)
本研究评估了cgroups、Docker和Firecracker三种隔离策略对同步基准测试中VM内部资源争用的影响,发现进程隔离通常能降低误报,但Docker容器例外,建议同步工作负载采用进程隔离。
2025-11-05 cs.DC cs.SE
Cost-efficient Auto-scaling of Container-based Elastic Processes
在业务流程环境中,一个常见的挑战是提供必要的计算资源来执行单个流程步骤。以成本有效的方式解决这个问题的一个众所周知的方法是使用弹性的概念,即,以快速的方式提供基于云的计算资源,并在这些资源上执行单个处理步骤。现有的提供弹性进程的方法大多基于虚拟机(VM)。利用容器技术可以更细粒度地将过程步骤分配给计算资源,从而提高资源利用率和成本效率。在本文中,我们提出了一种通过应用四重自动扩展方法来优化弹性流程的资源分配的方法。主要目标是通过使用容器来最小化流程制定的成本。为此,我们制定和实现了一个多目标优化问题,应用混合线性规划,并使用转换步骤来分配软件服务的容器。我们彻底评估的优化问题,并表明它可以导致显着的成本节约,同时保持服务水平
2022-09-14 cs.DC
FaaSNet: Scalable and Fast Provisioning of Custom Serverless Container Runtimes at Alibaba Cloud Function Compute
无服务器计算或功能即服务(FaaS)通过允许用户部署细粒度功能,同时提供完全托管的资源配置和自动扩展,实现了构建和扩展应用程序的新方式。自定义FaaS容器支持越来越受欢迎,因为它可以更好地控制操作系统、版本控制和工具,以实现FaaS应用程序的现代化。然而,提供快速的容器供应给FaaS提供商带来了不小的挑战,因为容器供应成本很高,而且现实世界的FaaS工作负载呈现出高度动态的模式。在本文中,我们设计FaaSNet,一个高度可扩展的中间件系统,用于加速FaaS容器配置。FaaSNet由全球最大的云提供商之一阿里云功能计算的FaaS平台的工作负载和基础设施需求驱动。FaaSNet通过轻量级的自适应功能树(FT)结构实现可扩展的容器配置。FaaSNet使用I/O高效的按需获取机制,进一步降低大规模配置成本。我们在阿里云函数计算中实现并集成了FaaSNet。测试结果表明,FaaSNet:(1)在8.3秒内完成在1000台虚拟机上配置2500个函数容器;(2)扩展速度分别比阿里云当前的FaaS平台和最先进的P2P容器注册中心(Kraken)快13.4倍和16.3倍;(3)在承受突发工作负载时,所用时间比优化基准少75.2%。
2021-07-15 cs.DC
Machine Learning-based Orchestration of Containers: A Taxonomy and Future Directions
The University of Melbourne(墨尔本大学);Shenzhen Institute of Advanced Technology, Chinese Academy of Sciences(中国科学院深圳先进技术研究院);The University of Macau(澳门大学)
容器化是一种轻量级的应用程序虚拟化技术,提供高环境一致性、操作系统分发可移植性和资源隔离。现有的主流云服务提供商在其分布式系统基础设施中优先采用容器技术,以实现自动化应用管理。为了处理容器化应用的部署、维护、自动扩展和联网的自动化,容器编排被认为是一个重要的研究问题。然而,云工作负载和环境的高度动态和多样性大大提高了编排机制的复杂性。因此,容器编排系统采用机器学习算法来进行行为建模和多维性能度量的预测。这些见解可以进一步提高资源配置决策的质量,以应对复杂环境下不断变化的工作负载。在本文中,我们对现有的基于机器学习的容器编排方法进行了全面的文献回顾。最后,根据这些研究的共同特点,提出了详细的分类法。此外,基于机器学习的容器编排技术从2016年到2021年的发展是基于目标和指标设计的。根据拟议的分类法,对审查过的技术进行了比较分析,重点是它们的关键特征。最后,各种开放的研究挑战和潜在的未来方向突出。
2021-06-24 cs.DC cs.LG
Building a Virtual HPC Cluster with Auto Scaling by the Docker
解决高性能计算环境下的软件依赖问题一直是计算系统管理员和应用科学家的一项艰巨任务。这项工作希望通过引入现代容器技术来解决这个问题,具体来说就是Docker。通过将服务发现的自动扩展功能与轻量级虚拟化工具Docker集成,尝试在物理集群硬件之上构建虚拟集群。因此,通过计算环境的隔离,HPC环境的软件依赖性的补救是可能的。
2015-09-28 cs.DC
Low-Latency Layer-Aware Proactive and Passive Container Migration in Meta Computing
针对元计算中容器迁移研究不足的问题,本文提出考虑层依赖、融合主动与被动迁移的低延迟策略,采用带专家演示的策略梯度强化学习算法优化决策,实验验证其相比基准算法能有效降低总延迟。
2024-06-19 cs.DC
Carbon Containers: A System-level Facility for Managing Application-level Carbon Emissions
本文提出系统级设施 Carbon Containers,通过纵向扩缩容、迁移和挂起/恢复透明约束应用碳排放率,实验证明其在相同排放下提升碳效率与性能。
2023-09-25 cs.DC cs.ET cs.OS
HPX with Spack and Singularity Containers: Evaluating Overheads for HPX/Kokkos using an astrophysics application
本文使用天体物理学应用评估HPX/Kokkos在容器化环境中的计算开销,发现在同构和异构资源上运行容器时可能丢失机器特定优化,并报告了编译、运行和性能差异的挑战。
2024-05-07 astro-ph.IM cs.DC
Reliability of Computational Experiments on Virtualised Hardware
我们提出了初步的调查结果,虚拟化硬件的适用性-特别是云-运行计算实验。我们主要担心的是报告的CPU时间不可靠和可重复。结果表明,虽然在许多虚拟机在相同的物理硬件上运行的情况下这是正确的,但与非虚拟化硬件相比,使用虚拟化硬件不会引入固有的变化。
2011-10-28 cs.DC