参考网址:https://developer.aliyun.com/article/1024108
Slurm 的数据库功能是通过 slurmdbd 服务来实现的,slurmdbd 服务是一个用于与数据库服务器交互的守护进程,它可以接收来自 slurmctld 和 slurm sacct 命令的请求,并将数据存储或查询到数据库中。
MySQL或MariaDB是首选的数据库,本次选用MariaDB,Slurm使用MySQL中的InnoDB存储引擎,使回滚成为可能。这必须在MySQL安装中可用,否则回滚将无法工作。
只需要在数据库服务器中创建一个空的数据库,并配置相关的权限,slurmdbd 服务会在第一次启动时,自动检测数据库的版本和结构,如果发现数据库是空的或者版本不匹配,它会自动创建或更新数据库的结构,以便存储 Slurm 的数据。
一、安装mariadb-server
apt install mariadb-server #安装数据库服务器
apt install libmysqlclient-dev #安装C程序编译和链接库
systemctl enable mariadb #设置开机启动mariadb
systemctl start mariadb #启动mariadb
systemctl status mariadb #查看mariadb状态
确认支持innodb
mysql -u root -p #以root用户登录mariadb
show engines;
二、创建数据库和用户
sudo su
mysql -u root -p` 以 root 用户身份登录数据库服务器,输入密码。
CREATE DATABASE slurm_acct_db;` 创建一个名为 slurm_acct_db 的数据库。
CREATE USER 'slurm'@'localhost' IDENTIFIED BY 'laohe2023';` 创建一个名为 slurm 的用户,只能从本地访问,密码为laohe2023。
GRANT ALL PRIVILEGES ON slurm_acct_db.* TO 'slurm'@'localhost';` 授予 slurm 用户对 slurm_acct_db 数据库的所有权限。
FLUSH PRIVILEGES;` 刷新权限表。
exit;` 退出数据库服务器。
三、配置slurmdbd