Joining Jolie to Docker - Orchestration of Microservices on a Containers-as-a-Service Layer
云计算正在稳步增长,随着IaaS供应商开始提供按需付费的计费策略,实现尽可能多的弹性,避免过度配置(这将意味着更高的成本)至关重要。在本文中,我们简要分析了PaaSSOA的编排特征,PaaSSOA是一种已经为Jolie微服务实现的拟议架构,Kubernetes是Docker的各种编排插件之一;然后,我们概述了两种方法的相似性和差异,就其各自的应用领域而言。此外,我们还研究了实现这两种技术联合的一些想法,提出了Docker容器即服务层上Jolie微服务的架构组合。
2017-09-17 cs.DC cs.SE
Mitigating Docker Security Issues
本文分析 Docker 因共享 Linux 内核导致的权限提升等安全风险,梳理内外部攻击及缓解措施,并提出安全部署配置指南。
2023-04-24 cs.CR cs.DC
Resource Management Schemes for Cloud-Native Platforms with Computing Containers of Docker and Kubernetes
Fordham University(福特汉姆大学);Dublin City University(都柏林城市大学)
本文评估 Docker 与 Kubernetes 云原生环境中大数据和深度学习应用的性能,揭示默认设置、资源管理方案及资源释放延迟对完成时间和资源使用的显著影响。
2025-09-29 cs.DC cs.PF
DocLite: A Docker-Based Lightweight Cloud Benchmarking Tool
现有的基准测试方法是耗时的过程,因为它们通常对整个虚拟机(VM)进行基准测试,以生成准确的性能数据,这使得它们不太适合实时分析。本文的研究正是为了克服上述挑战,提出了一种基于Docker容器的轻量级基准测试工具DocLite。DocLite探索轻量级云基准测试方法,用于近实时快速执行基准测试。DocLite基于Docker容器技术构建,允许用户定义内存大小和虚拟机的CPU核心数量。该工具包含两种基准测试方法-第一种称为本机方法,采用容器对VM的一小部分进行基准测试并生成性能排名,第二种使用历史基准测试数据以及本机方法作为混合方法来生成VM排名。在三个用例上对所提出的方法进行了评估,并观察到比整个VM的基准测试快91倍。在这两种方法中,小容器提供与大容器相同的排名质量。与基准测试整个VM相比,本机方法生成的应用程序顺序和并行执行的准确率分别超过90%和86%。混合方法并没有显著提高排名的质量。
2016-03-23 cs.DC
Differentiate Quality of Experience Scheduling for Deep Learning Inferences with Docker Containers in the Cloud
随着大数据驱动的应用程序的普及,例如智能手机上的人脸识别和Google Ads的量身定制推荐,我们正在朝着比以往任何时候都更加智能的生活方式迈进。各种神经网络驱动的模型在其智能的后端运行,以实现对用户的快速响应。支持这些模型需要大量基于云的计算资源,例如,CPU和GPU。云计算提供商根据客户占用的资源量向他们收费。客户必须平衡预算和体验质量(例如,响应时间)。预算依赖于个体企业主,所需的体验质量(QoE)取决于不同应用的使用场景。例如,自动驾驶汽车需要实时响应,但解锁智能手机可以容忍延迟。然而,云提供商未能向其客户提供基于QoE的选项。在本文中,我们提出了DQoES,用于深度学习推理的差异化体验质量调度器。DQoES接受客户端对目标QoE的规范,并动态调整资源以接近其目标。通过大量基于云的实验,DQoES表明,它可以针对各种QoE调度多个并发作业,并且与现有系统相比,可以实现高达8倍的满意度模型
2022-09-22 cs.DC cs.PF
Performance Overhead Comparison between Hypervisor and Container based Virtualization
当前的云虚拟化解决方案广泛依赖于基于虚拟机管理程序的技术。随着Docker最近的流行,基于容器的虚拟化开始受到更多的关注,因为它是一个有前途的替代方案。由于这两种虚拟化解决方案都不是无资源的,它们的性能开销会对云服务的质量产生负面影响。为了帮助从根本上理解这两种类型的虚拟化解决方案之间的性能差异,我们使用具有“刚好足够”资源的物理机作为基线,以调查独立Docker容器相对于独立虚拟机(VM)的性能开销。与相关工作的调查结果相反,我们的评估结果表明,虚拟化的性能开销可能会有所不同,不仅对功能的基础上,但也对作业的基础上。尽管基于容器的解决方案无疑是轻量级的,但基于虚拟机管理程序的技术并不是在每种情况下都会带来更高的性能开销。例如,Docker容器在存储事务速度方面表现出较低的QoS。
2017-08-04 cs.DC
Securing 3rd Party App Integration in Docker-based Cloud Software Ecosystems
针对基于Docker的云软件生态系统中第三方应用集成的安全风险,提出覆盖全软件生命周期、含沙箱测试的安全集成方案,提升生态系统安全性。
2024-05-18 cs.CR cs.DC
It's Not Just Timestamps: A Study on Docker Reproducibility
Case Western Reserve University(凯斯西储大学)
研究发现Docker构建的可重复性受开发者控制因素影响显著,提出具体指南以提高容器构建的可重复性。
2026-02-03 cs.CR cs.DC cs.SE
Investigating the Impact of Isolation on Synchronized Benchmarks
TU Berlin(柏林工业大学)
本研究评估了cgroups、Docker和Firecracker三种隔离策略对同步基准测试中VM内部资源争用的影响,发现进程隔离通常能降低误报,但Docker容器例外,建议同步工作负载采用进程隔离。
2025-11-05 cs.DC cs.SE
Building a Virtual HPC Cluster with Auto Scaling by the Docker
解决高性能计算环境下的软件依赖问题一直是计算系统管理员和应用科学家的一项艰巨任务。这项工作希望通过引入现代容器技术来解决这个问题,具体来说就是Docker。通过将服务发现的自动扩展功能与轻量级虚拟化工具Docker集成,尝试在物理集群硬件之上构建虚拟集群。因此,通过计算环境的隔离,HPC环境的软件依赖性的补救是可能的。
2015-09-28 cs.DC
Performance Evaluation of Container-based Virtualization for High Performance Computing Environments
虚拟化技术是随着计算环境的发展而发展起来的,它提供了隔离、可靠、资源分配、资源公平共享等功能,新的处理器技术为商用计算机提供了模拟各种计算环境的可能性。随着处理器的发展,系统开发人员已经创建了不同的虚拟化机制,其中每个新的开发都增强了以前虚拟化环境的性能。近年来,基于操作系统的虚拟化技术由于其在性能方面的重要改进而引起了国外业界和学术界的广泛关注。介绍了三种基于容器的操作系统虚拟化工具(LXC、Docker和Singularity)的特点。LXC、Docker、Singularity和裸金属通过定制的单节点HPL-Benchmark和基于MPI的多节点测试平台应用程序进行测试。测试了COS技术与裸机的磁盘I/O性能、内存性能、网络带宽和GPU性能。初步结果和结论,围绕他们提出和讨论。
2017-09-28 cs.DC cs.OS cs.PF
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
The Rockerverse: Packages and Applications for Containerization with R
Rocker项目为R在不同的应用场景中提供了广泛使用的Docker镜像。本文调查了基于Rocker Project镜像构建的下游项目,并介绍了用于管理Docker镜像和控制容器的R包的当前状态。这些用例涵盖了不同的主题,例如包开发,可重复的研究,协作工作,基于云的数据处理和服务的生产部署。各种各样的应用证明了洛克项目的力量,特别是集装箱化。在使用容器的各种方式中,我们确定了共同的主题:可复制的环境,可扩展性和效率,以及跨云的可移植性。我们的结论是,目前用例的增长和多样化可能会继续产生积极的影响,但我们认为有必要巩固Rockerverse包生态系统,开发应用程序的通用实践,并探索替代的容器化软件。
2020-08-17 cs.DC cs.SE
About Microservices, Containers and their Underestimated Impact on Network Performance
微服务用于构建由小型、独立和高度解耦的流程组成的复杂应用程序。最近,微服务经常与Docker等容器技术相提并论。这就是操作系统虚拟化在云计算中复兴的原因。这些方法将提供水平可扩展,易于部署的系统和高性能的替代管理程序。然而,几乎没有研究虚拟机管理程序之上的容器的性能影响。此外,微服务框架通常与软件定义网络一起出现。本文介绍了量化容器、软件定义网络和加密对网络性能影响的基准测试结果。即使是容器,虽然假设是轻量级的,但对网络性能也有显著的影响。这些影响可以在几个系统层上最小化。最后,本文给出了遵循微服务架构模式的云部署系统的设计建议。
2017-09-14 cs.DC
Toward Scalable Docker-Based Emulations of Blockchain Networks for Research and Development
本文提出利用Linux和Docker在单台物理机上运行大规模真实区块链软件的方法,解决大规模网络仿真中的技术问题,并通过两个涉及3000多个容器的实验验证其可扩展性与实用性。
2024-02-22 cs.DC cs.PF
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
A Comprehensive Feature Comparison Study of Open-Source Container Orchestration Frameworks
(1)背景:容器编排框架为复杂的分布式应用程序的管理提供了支持。不同的框架只是最近才出现的,随着新特性的引入,它们一直在不断发展。这一现实使得从业者和研究人员很难对技术空间保持清晰的看法。(2)研究方法:我们提出了一个描述性的功能比较研究的三个最突出的编排框架:Docker Swarm,Kubernetes和Mesos,可以与Marathon,Aurora或DC/OS结合使用。本研究旨在(i)识别所有框架的共同和独特功能,(ii)定性和定量地比较这些框架在支持功能方面的通用性,以及(iii)通过研究GitHub上框架的历史演变,调查框架的成熟度和稳定性以及每个框架的开创性。(3)结果如下:(i)我们已识别出124项共通功能及54项独特功能,并将其分为9个功能范畴及27个功能次范畴。(ii)Kubernetes支持所有9个功能方面的最高数量的累积通用和独特功能;然而,没有证据表明Docker Swarm和DC/OS在通用性方面存在显著差异。这些由Kubernetes,Mesos和Marathon按降序排列。(4)结论:所有容器编排框架都有一个广泛而成熟的基础。进一步发展和创新的可能领域包括系统支持改进的集群安全性和容器安全性,GPU,磁盘和网络资源的性能隔离,以及网络插件架构。
2021-03-05 cs.DC
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
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
i2kit: A Tool for Immutable Infrastructure Deployments based on Lightweight Virtual Machines specialized to run Containers
Docker等容器技术正变得越来越流行。容器提供了卓越的开发人员体验,因为容器提供了轻量级的隔离和易于软件分发。容器还广泛用于生产环境中,在生产环境中会出现一系列不同的挑战,例如安全性,网络,服务发现和负载均衡。容器集群管理工具(如Kubernetes)试图通过引入一个新的控制层来解决这些问题,该控制层将容器作为部署单元。但是,添加新的控制层是一个额外的配置步骤,也是运行时错误的另一个潜在来源。云提供商提供的虚拟机技术在安全性、网络、服务发现和负载均衡方面更加成熟和成熟。然而,对于本地开发而言,虚拟机比容器更重,对于资源分配而言不太灵活,并且遭受更长的引导时间。本文提出了一种容器的替代方案,它具有两种方法的最佳特性:(1)使用成熟的、经过验证的云供应商技术;(2)不需要新的控制层;(3)与容器一样轻量级。我们的解决方案是i2 kit,这是一个基于不可变基础架构模式的部署工具,其中虚拟机是部署单元。i2 kit工具接受简化格式的Kubernetes部署清单,以便重用Kubernetes最成功的原则,但它使用Linuxkit为每个Pod创建轻量级虚拟机。Linuxkit消除了使用虚拟机所带来的大小缺陷,因为Linuxkit的占用空间大约为60 MB。最后,由于Linuxkit只安装最小的OS依赖集来运行容器,并且不同的Pod通过hypervisor技术隔离,因此系统的攻击面减少。
2018-02-28 cs.DC cs.SE
Survey of adaptive containerization architectures for HPC
本文针对当前容器研究多聚焦云环境、HPC容器选型信息不足的问题,梳理HPC对容器工具的特定需求,深入分析容器化全栈技术,研究编排器与HPC工作负载管理器的集成场景,提出加速HPC应用与工作流容器化部署的自适应容器化思路。
2023-08-23 cs.DC
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
Packaging, containerization, and virtualization of computational omics methods: Advances, challenges, and opportunities
组学软件工具重塑了现代生物学的格局,并成为生物医学研究的重要组成部分。生物医学科学家越来越依赖这些强大的工具,这就需要更容易安装和更好的可用性。打包、虚拟化和容器化是满足这一需求的不同方法,它们将组学工具包装在附加软件中,使组学工具更易于安装和使用。在这里,我们系统地回顾了主要的打包、虚拟化和容器化平台的实践。我们从用户、软件开发人员和系统管理员的角度概述了每种方法的挑战、优势和局限性,以及一些最广泛使用的平台。我们还提出了使组学软件的包装,虚拟化和容器化更具可持续性和鲁棒性的原则,以提高生物医学和生命科学研究的可重复性。
2022-03-30 cs.DC cs.SE q-bio.GN