当前位置: X-MOL 学术ACM Trans. Comput. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Diciclo: Flexible User-level Services for Efficient Multitenant Isolation
ACM Transactions on Computer Systems ( IF 1.5 ) Pub Date : 2024-02-13 , DOI: 10.1145/3639404
Giorgos Kappes 1 , Stergios V. Anastasiadis 1
Affiliation  

Containers are a mainstream virtualization technique for running stateful workloads over persistent storage. In highly utilized multitenant hosts, resource contention at the system kernel leads to inefficient container input/output (I/O) handling. Although there are interesting techniques to address this issue, they incur high implementation complexity and execution overhead. As a cost-effective alternative, we introduce the Diciclo architecture with our assumptions, goals, and principles. For each tenant, Diciclo isolates the control and data I/O path at user level and runs dedicated storage systems. Diciclo includes the libservice unified user-level abstraction of system services and the node structure design pattern for the application and server side. We prototyped a toolkit of user-level components that comprise the library to invoke the standard I/O calls, the I/O communication mechanism, and the I/O services. Based on Diciclo, we built Danaus, a filesystem client that integrates a union filesystem with a Ceph distributed filesystem client and configurable shared cache. Across different host configurations, workloads, and systems, Danaus achieves improved performance stability, because it handles I/O with reserved per-tenant resources and avoids intensive kernel locking. Based on having built and evaluated Danaus, we share valuable lessons about resource contention, file management, service separation, and performance stability in multitenant systems.



中文翻译:

Diciclo:灵活的用户级服务,实现高效的多租户隔离

容器是一种主流虚拟化技术,用于在持久存储上运行有状态工作负载。在高利用率的多租户主机中,系统内核的资源争用会导致容器输入/输出 (I/O) 处理效率低下。尽管有一些有趣的技术可以解决这个问题,但它们会带来很高的实现复杂性和执行开销。作为一种经济高效的替代方案,我们引入了 Diciclo 架构以及我们的假设、目标和原则。对于每个租户,Diciclo 在用户级别隔离控制和数据 I/O 路径,并运行专用存储系统。 Diciclo 包括 libservice 系统服务的统一用户级抽象以及应用程序和服务器端的节点结构设计模式。我们原型设计了一个用户级组件工具包,其中包含调用标准 I/O 调用、I/O 通信机制和 I/O 服务的库。基于 Diciclo,我们构建了 Danaus,一个文件系统客户端,它将联合文件系统与 Ceph 分布式文件系统客户端和可配置共享缓存集成在一起。在不同的主机配置、工作负载和系统中,Danaus 实现了更高的性能稳定性,因为它使用保留的每租户资源来处理 I/O,并避免了密集的内核锁定。基于构建和评估 Danaus,我们分享了有关多租户系统中的资源争用、文件管理、服务分离和性能稳定性的宝贵经验教训。

更新日期:2024-02-13
down
wechat
bug