跳到主要内容

安装

本节介绍如何在已有的超算集群上部署SCOW系统。您可参考本文档在生产环境中部署SCOW。

一. 前提条件

  1. slurm集群准备完毕
  2. slurm集群各节点实现了LDAP认证,提供两个基于CentOS7的脚本用来快速搭建和配置LDAP,修改两个文件开头部分的相关配置(Start Configuratin PartEnd Configuration Part之间的变量),运行即可:
    • provider.sh: 用于配置LDAP服务器
    • client.sh: 用于配置LDAP客户端(slurm集群所有节点都需要执行)
  3. slurm集群挂载了并行文件系统,例如lustre、gpfs等,提供NFS的搭建供参考;
  4. 登录节点和计算节点安装TurboVNC,版本3.0以上,官方安装教程
  5. 登录节点安装桌面,例如Xfce、KDE、MATE等。

二. 部署流程

1. 准备SCOW部署节点

我们推荐将SCOW部署在一个单独的节点上。下文称部署这些组件的节点为服务节点,要求如下:

  • 最小配置:8C16G,推荐配置(生产级):16C32G;

  • 与slurm集群各节点网络可达,或者至少与slurm集群登录节点和管理节点网络可达(代理网关方案)。

  • 服务节点可以免密以root用户SSH登录到slurm集群各个登录节点,并且服务节点~/.ssh目录下有登录所需要的id_rsa.pubid_rsa文件

    • 运行所有部署的命令用户不需要为root,但是此用户的~/.ssh下的密钥对需可以以root用户登录登录节点
  • 服务节点/代理网关节点可以SSH连接到所有计算节点,并且计算节点登录节点的所有用户共享同样的SSH authorized_keys配置文件

警告

因为这个issue,如果您的登录节点和计算节点的所使用的OpenSSH的版本高于8.2(大多比CentOS 7新的操作系统默认的版本均高于此),那么即使您能在SCOW节点上通过ssh命令连接到登录和计算节点上,SCOW可能也无法通过SSH连接到这些节点上。如果您遇到了这个问题,您需要在您的各个节点的/etc/ssh/sshd_config文件中增加以下内容,并重启sshd服务。

PubkeyAcceptedKeyTypes=+ssh-rsa

这是因为OpenSSH从8.2版本开始默认取消了对ssh-rsa公钥签名算法的支持(OpenSSH 8.2 Release Note)。当前系统仅支持使用ssh-rsa类型的公钥对进行SSH登录,在后续我们会增加对使用更新算法(例如ed25519)的公私钥对的默认支持。

另外,Rocky Linux 9.3 或 RHEL 9 中,需调整加密策略到 LEGACY 以支持加密算法(如 ssh-rsa)。

sudo update-crypto-policies --set LEGACY

为了简化部署,系统组件以docker镜像的形式分发。服务节点应该安装好

2. 编译和部署适配器

针对不同种类的调度器,需要在集群上部署对应的适配器。适配器是在SCOW和底层调度器之间的中间层,向SCOW提供一组接口,SCOW通过这组接口调用适配器功能。理论上,只要适配器实现了接口所定义的功能,SCOW就能方便地部署在对应集群上。

适配器本质上是一个gRPC服务器,我们已经实现了部分调度器对应的适配器,可以参考下列文档部署适配器

提示
  • 适配器运行依赖本机glibc版本,强烈建议在与运行环境(slurm管理节点)一致的环境中下载源码自行编译
  • 适配器将会暴露一个端口来提供服务,SCOW将通过ip地址+端口号访问适配器,调用接口。请记录下适配器的地址信息,用于后续部署。

3. 安装和配置SCOW

3.1 下载scow-cli

scow-cli是我们官方维护的SCOW部署和运维工具,能够帮助您快速部署、管理和维护SCOW集群。

参考scow-cli下载scow-cli,并将其存放到一个你用于存放SCOW配置文件的目录下。

# scow目录将会用于存在SCOW相关的配置文件
mkdir scow
cd scow

# 将下载的scow-cli移动到scow目录下
cp /path/to/scow-cli ./
chmod +x scow-cli

3.2 配置文件

运行以下命令生成示例配置文件:

# 生成安装配置文件./install.yaml和示例配置文件目录./config
./cli init

主要配置文件及说明(根据以下顺序配置系统):

顺序配置文件功能说明是否必须配置DEMO备注
1install.yaml安装文件必须install.yaml按照集群需求修改对应参数
2{集群ID}.yaml集群配置文件必须{集群ID}.yaml支持多集群,一个集群一个配置文件
3auth.yaml认证系统必须auth.yaml所有集群同一个认证系统
4mis.yaml管理系统可选mis.yaml
5portal.yaml门户系统可选portal.yaml若登录节点不是安装的xfce,需要对应进行修改
6audit.yaml审计系统可选audit.yaml

3.3 其他配置(可选)

配置完成后,运行以下命令启动系统。

./cli compose up -d

当修改了配置文件后,运行以下命令重启系统

./cli compose restart