参考网址: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;
二、修改数据库存放路径
将数据库默认存放路径修改为/data
mkdir /data #创建文件夹
chown mysql:mysql /data #修改所有者为mysql
systemctl stop mariadb #停止数据库服务
cp -ar /var/lib/mysql/* /data/ #-a参数带权限复制,-r参数包含子目录
vim /etc/mysql/mariadb.conf.d/50-server.cnf
修改为:datadir =/data
systemctl start mariadb #启动mariadb服务
systemctl status mariadb #检查mariadb状态
如果出错,多半是/data下面的文件权限问题,复制的时候没有带权限复制
二、创建数据库和用户
sudo su
mysql -u root -p` 以 root 用户身份登录数据库服务器,输入密码。
CREATE DATABASE slurm_acct_db;` 创建一个名为 slurm_acct_db 的数据库。
CREATE DATABASE slurm_job_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 数据库的所有权限。
GRANT ALL PRIVILEGES ON slurm_job_db.* TO 'slurm'@'localhost';` 授予 slurm 用户对 slurm_job_db 数据库的所有权限。
FLUSH PRIVILEGES;` 刷新权限表。
exit;` 退出数据库服务器。
三、配置slurmdbd
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved