这个问题是公号一位网友提出来的,因为近期工作事情实在太多拖了很久,今天周末有空写篇文章正式回复这位网友。

先说结论:Slurm和Laxcus的差别,其实非常大。Slurm是Simple Linux Utility for Resource Management的缩写,它的产品定位是分布任务调度工具,目前主要应用在超算上,用来管理控制分布式业务。而Laxcus的产品定位是操作系统,作为操作系统自然需要管控一切,Slurm提供的功能,Laxcus在0.x版本的时候就已经实现了。从Laxcus分布式操作系统3.0版本开始,已经可以支持多人共享使用。现在的Laxcus分布式操作系统,是由可视化的前端客户机和不可视的后端计算机集群组成。同时Laxcus集成了大数据、大算力、人工智能机器算法、容器、虚拟化等多种前沿技术,用户可以象使用Windows、Macintosh一样,通过分布式应用软件的GUI界面,用鼠标和键盘去控制后端计算机集群上的分布式作业流,处理大规模、超大规模的分布式业务。这种使用操作要比Slurm简单和方便太多。因为Laxcus涵盖的技术内容更丰富,比Slurm更简单容易操作。这其实也意味着Laxcus远比Slurm更复杂,是真正的一站式分布式工作平台。

下面详细说说具体的异同。

一、应用领域

根据目前已知的情况,Slurm的主要应用场景是超级计算机。目前全球TOP 500的超级计算机,60%都在使用Slurm做任务调度,可见Slurm在超算行业的影响力。

Laxcus分布式操作系统主要应用在商业领域,包括云计算、物联网等行业。这些应用场景对弹性有更高的要求,能够为每个用户快速分配虚拟资源,使用结束后可以释放,然后再分配给其它用户使用,这些工作属于虚拟化范畴。Laxcus分布式操作系统完全适配云三层,并且在这个领域做了大量技术研发和实现工作。这个能力,Slurm不具备。

Laxcus主要应用在云端等商业环境,和超算的科学计算完全不同
Laxcus分布式操作系统适配云三层

二、操作方式

因为Slurm运行环境是Linux、Unix,不可避免的,它操作使用也受到Linux、Unix的影响,需要用户编写shell脚本,以命令行方式去控制分布式的作业流。这种操作方式,对于熟悉计算机器的专业开发者和运维管理人员来说不是问题,但是对于普通的非专业用户和计算机初学者来说,却是一个难以逾越的障碍。虽然Slurm后期也开始支持图形界面,但是和Laxcus分布式操作系统的图形桌面相比,仍然不是一个量级。

因为这个原因,Laxcus分布式操作系统的前端采用了Windows、Macintosh风格的GUI桌面,保证普通用户一以贯之使用,后端的计算机集群不需要可视化,类似Linux、Unix,计算机集群由系统管理员负责远程监控管理。在Laxcus分布式操作系统上处理应用业务,全部通过Laxcus分布式应用软件来实现。和所有单机操作系统一样,用户在使用应用业务之前,需要安装Laxcus分布式应用软件。软件安装对用户透明,完全是由系统调度分配和实施。它会被分别安装在Laxcus桌面和部署到Laxcus集群的后端服务器上。用户使用的时候,是由前端的可视化界面发出指令,去控制后端分散在各种计算机节点上的非可视化进程。

Laxcus媲美Windows、Macintosh的图形桌面,是Slurm不具备的
一个简单的分布式散列计算,已经调度了后端N台计算机协同工作。

三、分布式作业

Slurm的目标是负责分布式作业流的调度管理,并不直接提供分布式计算所需的编程接口、规范、测试等一整套完全的作业流程,这些工作本身都属于操作系统的内容,所以Slurm对分布式作业的定义非常宽松。

Laxcus分布式操作系统则完全不同,为了让用户简单容易去实现各种各样的大规模、超大规模的分布式业务,它有自己编程接口、分布处理模型,以及运行、调度管理流程,应用范式要比Slurm严格很多,这些已经形成完整的开发闭环。所有开发者需要按照Laxcus分布式编程模型和DSDK,遵守Laxcus分布式编程规范来开发分布式应用软件,这样的应用软件才能最后在Laxcus平台上运行。这个情况,也是所有操作系统的共同特点。

Laxcus分布式应用软件链接了终端、边缘端、云端,驱动大数据、大算力、机器算法一起参与大规模、超大规模存储和计算,在Laxcus分布式计算体系里起到承下启下的作用。

四、技术组成

因为Slurm目标需求单一,只负责分布式作业流的调度管理,所以它的技术组成要比Laxcus简单太多。

Laxcus分布式操作系统作为一款操作系统,而且是在分布环境下运行的操作系统,需要为用户提供图形化的GUI界面,以及管理后端计算机集群的功能模块、分布式计算的运行环境,所以无论是从涉及的技术,还是从功能实现,或者研发难度,Laxcus都要比Slurm复杂太多、庞大太多。目前是Laxcus分布式操作系统,这些技术组成大致包括了“松耦合架构、虚拟化、多模通信网络、分布资源管理、HTAP分布存储、分布计算、流计算、分布锁、数据库、冗灾冗余、日志服务、安全管理、人工智能模型、应用容器、应用运行环境、语言模型、人机交互、边缘计算、终端服务、DSDK(分布编程开发工具包)”,这些技术和功能都是Laxcus远超Slurm,是Slurm不具备的。

Laxcus功能组成
Laxcus集群拓扑结构

所以说,如果剔除对分布式管理这个概念,回到产品本身来说,Slurm和Laxcus完全不是一个维度产品,这一点请大家仔细理解。Laxcus分布式操作系详细的产品和技术介绍,请大家参见相关文档。这些在Laxcus官网都有提供。更多的细节,还请大家在使用中体会。

了解更多Laxcus分布式操作系统的图形设计、网络通信、分布式存储、大数据、分布式计算、边缘计算、人工智能、云原生、安全管理、分布式应用软件开发和其它前沿技术,请关注公众号“Laxcus分布式操作系统”,或者联系小编微信,加入产品技术群,让我们一起讨论最新的技术知识。