This paper presents ColonyOS, an open-source meta-operating system designed to improve integration and utilization of diverse computing platforms, including IoT, edge, cloud, and HPC. Operating as an overlay, ColonyOS can interface with a wide range of computing environments, fostering creation of so-called compute continuums. This makes it possible to develop AI workflows and applications that can operate across platforms. At its core, ColonyOS consists of distributed executors that integrate with various underlying platforms based on a distributed microservice architecture. These executors collectively form a colony, serving as a unified computing unit. To enable secure integration of various platforms, each colony is provisioned with precisely the resources needed, and all communication is confined within the colony governed by a strict zero-trust security protocol. Interaction with ColonyOS is done by submitting functional meta-descriptions of computational tasks, called function specifications. These are sent to a Colonies server, which acts as intermediary between applications and the executors. Upon assignment, an executor interprets the meta-description and translates it into an executable format, e.g. a Kubernetes deployment description, a Slurm script, or a direct function call within the executor. Furthermore, a built-in meta-file system enables data synchronization directives to be included in meta-descriptions, enabling seamless data management across platforms. Ultimately, ColonyOS paves the way for development of hyper-distributed applications and workflows, which can seamlessly operate in a computing continuum. The paper describes design principles and implementation details of ColonyOS.
翻译:本文介绍了ColonyOS,一个旨在提升物联网、边缘、云端及高性能计算等多样化计算平台集成与利用效率的开源元操作系统。作为覆盖层运行,ColonyOS能够与多种计算环境交互,促进所谓计算连续体的构建,从而支持跨平台的AI工作流与应用程序开发。其核心基于分布式微服务架构,由与各类底层平台集成的分布式执行器组成。这些执行器共同构成一个"Colony",作为统一计算单元。为实现各平台的安全集成,每个Colony仅配置所需资源,所有通信严格限制在其内部,并遵循零信任安全协议。与ColonyOS的交互通过提交计算任务的功能性元描述(即函数规格说明)完成。这些描述被发送至Colonies服务器,该服务器充当应用程序与执行器之间的中介。任务分配后,执行器解析元描述并将其转化为可执行格式(如Kubernetes部署描述、Slurm脚本或执行器内的直接函数调用)。此外,内置元文件系统支持将数据同步指令纳入元描述,实现跨平台无缝数据管理。最终,ColonyOS为超分布式应用与工作流的开发铺平道路,使其能在计算连续体中无缝运行。本文阐述了ColonyOS的设计原理与实现细节。