集群系统介绍
SonmiHPC 是基于 Go 语言设计开发并应用于高性能计算使用场景的集群平台,并基于适用在稳定环境下的企业级linux发行版 Rocky Linux (9.4) 集成的下游发行版。该系统目前的最新版本为 v0.8.0。
系统组件
以下为该集群系统主要的组件,及其在集群系统中的作用。
- sonmi-sonmictld-installer:主节点集群系统安装器,主要用于引导设置集群的基础套件、网络拓扑和存储系统等;
- sonmi-sonmictld:主节点控制器,主要用于相关文件同步、节点通信RPC服务端、PXE服务端、相关集群服务的守护进程;
- sonmi-sonmid:计算节点守护进程,主要用于文件同步客户端以及节点通信RPC客户端;
- sonmi-sonmid-register:用于计算节点在PXE安装后向主节点进行注册;
- sonmi-sonmictl:主节点的命令行工具,用于查看集群状态、任务队列状态、控制集群组件等;
- sonmi-mail:实现了slurm队列的任务邮件系统,用于使用邮件通知相对应用户;
- sonmi-test-suite:集群性能测试套件,包含了集群性能测试以及稳定性测试;
- smpvestatd:用于节点部署于PVE平台时,获取宿主机状态并与对应虚拟机进行通信;
- sonmi-node-exporter: 集群节点性能指标收集器;
- sonmi-prometheus: 基于集群改造的具有零配置及自动发现的prometheus服务端;
- sonmi-grafana-provisioning: 基于集群改造的零配置grafana监控面板组件;
- sonmi-vnc-daemon: 集群VNC代理组件;
- sonmi-pam-control: 节点PAM认证一键设置组件。
系统特性
该系统的目前主要实现的特性如下:
- [x] 集成了 slurm 队列任务组件;
- [x] 套件自实现集群系统时间同步功能、用户文件同步;
- [x] 集群间实现TLS加密通讯,提高集群安全性;
- [x] 实现了文件服务器,支持http和ftp协议;
- [x] 实现集群防火墙功能;
- [x] 支持万兆以太网以及InfiniBand网络;
- [x] 网络存储默认支持 NFS 以及 Gluster、Lustre、Ceph 等分布式网络存储;
- [x] 支持异地多集群状态及任务状态监控;
- [x] 实现计算节点的全自动PXE网络安装,降低集群组建难度;
- [x] 实现对集群登录节点用户资源控制,保证集群登录节点的稳定性;
- [x] 实现对集群节点强制隔离,严格限制用户对节点资源的访问权限;
- [x] 实现对集群的整体性能指标收集及监控;
- [x] 实现对集群用户行为审计。