产品 / 面向 AI 开发者
Slurm on TAIP
正式版在 Kubernetes 上运行现有 Slurm 脚本,共用平台账号、主目录和配额。
Slurm on TAIP 基于 SchedMD 的 Slinky slurm-operator,在 Kubernetes 集群上运行多租户 Slurm。作业由 slurmctld / slurmd / slurmdbd / slurmrestd 调度,保留 Slurm 的 MPI、计费、分区、QOS 和数组作业行为。SSH 登录经 SSSD 接入平台 LDAP 目录,首次登录时在共享存储上创建 /home。支持 Leader 选举的 account-sync 控制器将 ConsoleX 工作空间配额同步为 Slurm 账户和 GrpTRES 上限,并严格执行。GPU 通过 cgroup 隔离。Open OnDemand 门户提供浏览器内文件管理、作业管理、Shell、JupyterLab 和基于 VNC 的 Xfce 桌面。队列深度、节点状态和 account-sync 健康指标接入平台 Prometheus,配套提供仪表盘与告警。Slurm 25.11 使用 auth/slurm,无需维护 MUNGE;上游镜像直接同步使用,不另行维护分支。
产品规格
- 状态
- v0.8.5 — 已在 Kubernetes 上投产
- Slurm
- 原生 Slurm 25.11 · Slinky slurm-operator 1.1.1 · auth/slurm(无 MUNGE)
- 接入方式
- SSH(LDAP/SSSD)· JWT slurmrestd · Open OnDemand — 文件、作业、Shell、JupyterLab、经 VNC 的 Xfce 桌面
- 身份认证
- 平台 LDAP 目录 · POSIX uid/gid · 首次登录时通过 pam_mkhomedir 创建主目录 · SSH 公钥在 ConsoleX 自助登记
- 监控
- Slurm 队列与节点指标、account-sync 健康度 → 平台 Prometheus,附带仪表盘与告警
- 存储
- 共享 /home 与 /scratch,与其他 TAIP 应用访问同一份数据
- 多租户
- ConsoleX 配额 → Slurm 账户 + GrpTRES(CPU/内存/GPU),严格执行
- GPU
- gres/gpu + gpu 分区 · 硬性 cgroup ConstrainDevices 隔离
使用示例
通过示例了解用法。
无需专用 SDK,也无需重写客户端。 Slurm on TAIP 可直接与现有工具对接。
$ ssh you@taip-login # 使用统一的平台密码
$ ls ~ # /home 已挂载在集群存储上
data/ train.slurm
$ sbatch train.slurm # 原样不动——0 行改动
Submitted batch job 4127
$ squeue --me # 作业在 GPU 节点上运行
JOBID PARTITION NAME ST TIME NODES
4127 gpu train R 0:08 1▌ 运行原生 Slurm 25.11,保留 sbatch / srun / salloc / sacct、分区、QOS 和数组作业的使用方式,并纳入 Kubernetes 平台统一管理。
核心能力
Slurm on TAIP 的主要功能
沿用现有 Slurm 脚本
由上游 Slurm 25.11 的 slurmctld / slurmd / slurmdbd / slurmrestd 调度作业,保留 sbatch、srun、salloc、sacct、分区、QOS 和数组作业的原有行为,无需修改现有脚本。
使用现有平台账号登录
登录节点通过 SSSD 接入平台 LDAP 目录,用户可使用现有凭据 SSH 登录。公钥在 ConsoleX 登记后自动同步,无需逐集群上传。POSIX uid/gid 来自平台目录,pam_mkhomedir 在首次登录时创建主目录,无需另建 Slurm 用户库或设置第二套密码。
共享同一份数据
/home/<user> 和 /scratch 使用平台共享存储。Slurm 作业生成的文件可直接在 Notebook 中读取,无需在不同环境之间复制。
自动同步平台配额
account-sync 控制器支持 Leader 选举,将 ConsoleX 工作空间配额同步为 Slurm 账户、关联关系和 GrpTRES 上限(CPU / 内存 / gres/gpu),严格限制资源使用并拒绝超限作业。
GPU 调度与资源隔离
通过 -p gpu --gres=gpu:1 申请 GPU 资源,由 Slurm 统一调度。cgroup ConstrainDevices 限制设备访问,作业无法使用未分配给自己的 GPU。
通过 Web 门户使用集群
Open OnDemand 提供文件管理、作业管理和 Shell,并在用户配额内以 Slurm 作业运行交互式应用,包括自有 conda/venv 环境中的 JupyterLab(可选 GPU),以及通过 VNC 访问的 Xfce 桌面。门户接入平台 OIDC 单点登录,Shell 可直接连接作业所在的计算节点。
通过 REST API 管理作业
除 SSH 外,还有一个 JWT 认证的 slurmrestd(含 /slurmdb 计费端点),支持通过 CI、流水线或自有工具提交与跟踪作业。
统一监控 Slurm 集群
队列深度、节点状态和 account-sync 健康指标统一接入平台 Prometheus,Grafana 仪表盘与告警规则随 Chart 提供。运维人员可在同一套工具中监控 HPC 和其他平台服务。
直接采用上游版本
基于 SchedMD 官方支持的 Slinky operator,直接同步官方 slurmctld / slurmd / slurmrestd 镜像,仅在 login 镜像中增加 SSSD 和集群存储支持。通过 Helm 安装,由 operator 持续同步资源状态,以 Secret 管理密钥,无需维护独立代码分支。
工作原理
使用平台账号,运行现有 Slurm 作业。
- 步骤 01
用平台身份登录
使用现有平台凭据通过 SSH 或 Web 门户登录。SSSD 对接平台 LDAP 目录完成认证,首次登录时在共享存储上创建主目录。
- 步骤 02
提交现有脚本
使用 sbatch train.slurm 提交现有脚本,由原生 Slurm 25.11 调度到专用节点池,保留分区、QOS 和数组作业功能。
- 步骤 03
在配额内分配 GPU
申请 gpu 分区和显卡后,由 Slurm 调度并实施设备隔离。ConsoleX 工作空间配额自动同步为 GrpTRES 上限,并严格执行。
- 步骤 04
使用现有工具跟踪作业
用 squeue/sacct、Open OnDemand 门户,或 JWT slurmrestd API 跟踪作业——全部由同一份共享计费数据库支撑。
适用团队
适合哪些团队
- 已有 Slurm 脚本和使用经验的科研与机器学习团队
- 正在统一采用 Kubernetes,同时需要支持 HPC 用户的平台团队
- 希望将独立裸机 Slurm 集群纳入统一管理的组织
- 需要批处理调度和配额管理,并希望共用身份与存储系统的团队
搭配使用
其他开发者产品
ConsoleX
正式版登录即可获得独立的 Kubernetes 工作空间,无需 kubectl 或人工开通。
首次通过单点登录(SSO)访问时,系统自动创建隔离的命名空间,配置配额、网络策略、存储和 Web 终端,并持续同步配置。ConsoleX 还统一提供平台令牌、SSH 网关和由集群分发的 taip 命令行工具。
了解更多DevSpace
正式版几秒钟内启动配备 GPU 的 Jupyter 或 VS Code 环境,闲置时自动关停。
一键创建 Jupyter、Marimo、Streamlit、Gradio 或 VS Code 环境,按需分配 GPU。每个环境通过独立认证代理控制访问,可授权指定同事使用,默认在闲置时自动关停。
了解更多TrainX
正式版通过模板或项目配置提交训练作业,由 Kubernetes 统一运行。
支持两种作业配置方式:根据模板自动生成表单,或通过项目中的 trainx.yaml 声明运行要求、使用平台提供的镜像。提交前实时校验配额,运行时提供日志、进度、MLflow 记录和断点恢复,训练产物可继续用于评测或部署。
了解更多