跳到主要内容

配置使用slurm的集群

选定slurm节点和部署slurm适配器

在集群中选定一个节点作为slurm节点。此节点需要部署slurm适配器并保证正确运行。

修改集群配置

config/clusters/{使用slurm的集群的ID}.yml中,修改配置(使用适配器的ip地址和端口号)

config/clusters/{使用slurm的集群的集群ID}.yml
# ...
adapterUrl: localhost:8972

导入已有用户信息

如果您已有一个slurm集群,在管理系统部署完成后,可以使用本功能将slurm中的用户信息导入本系统。

导入已有用户信息

系统会从slurm集群中读取用户和账户信息,显示在表格中。不存在名字的用户的初始名字默认为自己的ID。

系统默认将a_用户ID == 账户ID的用户设置为拥有者。此外,您也可以在系统中选择拥有者,需要注意系统要求账户的拥有者字段不能为空。

在系统初始化时,或者系统初始化后使用平台管理员用户登录后选择平台管理->导入用户,即可使用导入用户功能。如果需要将新加入的账户都加入白名单中,请勾选将所有账户加入白名单。点击确定,即可将所有账户导入指定租户中。

OpenSCOW和slurm用户信息的关系

为了保存如计费收费等更多信息,OpenSCOW自己维护一套用户账户信息,并在进行各种与用户信息有关的操作时自动将这个操作同步到slurm的用户账户信息中。

为了保证OpenSCOW操作的正确性,我们要求OpenSCOW的用户信息为slurm用户信息的子集

以下情况是允许的:

  • slurm中或者认证系统中存在的用户OpenSCOW中不存在
    • 在OpenSCOW创建这个用户时(用户ID和已有用户相同),OpenSCOW将会提示认证系统中已存在此用户,并允许用户直接在OpenSCOW中添加用户
  • slurm中存在的账户OpenSCOW中不存在
    • 在OpenSCOW中创建这个账户时,如果slurm中已经存在,OpenSCOW将直接添加到OpenSCOW数据库中,并尝试把拥有者加入账户中
  • slurm中一个用户存在于一个账户中,OpenSCOW中没有
    • 在OpenSCOW中将这个用户加入账户时,如果slurm中用户已经存在于账户中,OpenSCOW将会直接在slurm的用户信息中添加这个用户账户关系

以下情况在进行和slurm有关的操作(如封锁解封)时会出错,在进行只和OpenSCOW有关的操作(如设置限额、设置用户管理员权限等)时不会报错:

  • OpenSCOW中一个用户于一个账户中,slurm中没有
  • OpenSCOW中存在的用户或者账户时slurm中不存在

我们建议,部署好OpenSCOW系统后,所有OpenSCOW中支持的功能都从OpenSCOW中操作。如果需要一些OpenSCOW中不支持的操作,请完成操作后立即手动修改数据库,使OpenSCOW和slurm的用户信息同步。