Slurm集群搭建的教程
发表于:2024-12-13 作者:千家信息网编辑
千家信息网最后更新 2024年12月13日,本篇内容主要讲解"Slurm集群搭建的教程",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Slurm集群搭建的教程"吧!一、系统环境a) Centos 7.
千家信息网最后更新 2024年12月13日Slurm集群搭建的教程
本篇内容主要讲解"Slurm集群搭建的教程",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Slurm集群搭建的教程"吧!
一、系统环境
a) Centos 7.8b) 两台机器规划IP 分别为10.10.0.20 与10.10.0.21c) 机器主机名分别为node1、node2d) 均关闭了防火墙以及selinuxe) 已经配置好SSH 免密、NIS、NFS
二、配置munge 及Slurm
a) 安装依赖 yum install -y epel-release yum install -y gtk2 gtk2-devel munge munge-devel python python3b) 配置munge #两台机器均要配置 chown slurm:slurm /etc/munge chown slurm:slurm /var/run/munge chown slurm:slurm /var/lib/munge chown slurm:slurm /var/log/munge create-munge-key #此步骤只在node1 节点做即可 scp /etc/munge/munge.key node2:/etc/munge/ chown slurm:slurm /etc/munge/munge.key su - slurm #所有节点使用slurm 用户启动munged mungedc) 配置Slurm #所有节点配置相同 tar xvf slurm-20.11.5.tar.bz2 cd slurm-20.11.5/ ./configure make -j3 make install -j3 cp etc/{slurmctld.service,slurmdbd.service,slurmd.service} /usr/lib/systemd/system vi /usr/local/etc/slurm.conf #配置文件附在PS 中 scp /usr/local/etc/slurm.conf node2:/usr/local/etc/ chown slurm:slurm /var/spool/ systemctl start slurmctld #主节点启动slurmctld、slurmd systemctl start slurmd #从节点只需启动slurmd 即可
三、测试
a) 系统命令测试 [root[@node1](https://my.oschina.net/u/4273199) ~]# sinfo PARTITION AVAIL TIMELIMIT NODES STATE NODELIST control up infinite 1 idle node1 compute* up infinite 2 idle node[1-2] [root[@node1](https://my.oschina.net/u/4273199) ~]# srun -N 2 -l hostname # -N 2 执行的节点数 0: node1 1: node2 至此Slurm 集群搭建完成b) mpi 测试 vi test.c #测试程序在PS 中 mpicc -o test test.c #编译mpi 程序 vi tj.sh #作业脚本在PS 中 sbatch tj.sh #提交作业 squeue #查看作业状态 [root[@node1](https://my.oschina.net/u/4273199) ~]# cat test.out #查看作业结果 node2: Hello world from process 2 number of processes: 4 ...node1: Hello world from process 0 node2: Hello world from process 3 node1: Hello world from process 1
四、PS
a) tj.sh 作业脚本 #!/bin/sh #SBATCH -o /root/test.out #结果输出到test.out #SBATCH --nodes=2 #节点数:2 #SBATCH --ntasks-per-node=2 mpirun /root/testb) slurm.conf 配置文件 SlurmctldHost=node1 #主节点 MpiDefault=none ProctrackType=proctrack/pgid #通过网站配置注意修改 ReturnToService=1 SlurmctldPidFile=/var/run/slurmctld.pid SlurmctldPort=6817 SlurmdPidFile=/var/run/slurmd.pid SlurmdPort=6818 SlurmdSpoolDir=/var/spool/slurmd SlurmUser=slurm #slurm 管理用户 StateSaveLocation=/var/spool SwitchType=switch/none TaskPlugin=task/affinity InactiveLimit=0 KillWait=30 MinJobAge=300 SlurmctldTimeout=120 SlurmdTimeout=300 Waittime=0 SchedulerType=sched/backfill SelectType=select/cons_tres SelectTypeParameters=CR_Core AccountingStorageType=accounting_storage/none AccountingStoreJobComment=YES ClusterName=siton #集群名 JobCompType=jobcomp/none JobAcctGatherFrequency=30 JobAcctGatherType=jobacct_gather/none SlurmctldDebug=info SlurmdDebug=info NodeName=node1,node2 CPUs=4 RealMemory=2 Sockets=4 CoresPerSocket=1 ThreadsPerCore=1 State=UNKNOWN /*节点名称,CPUs 核数,corepersocket,threadspersocket,使用lscpu 查看,realmemory 实际分配给slurm 内存,procs 是实际CPU 个数,/proc/cpuinfo 里查看state=unknown是启动集群的时候为unknown,之后会变成idle*/ PartitionName=control Nodes=node1 Default=YES MaxTime=INFINITE State=UP PartitionName=compute Nodes=node1,node2 Default=YES MaxTime=INFINITE State=UP /*partitionname 是分成control 和compute,default=yes 是说这个用来计算*/ 可以通过https://slurm.schedmd.com/configurator.html 生成配置文件c) mpi 测试程序 #include#include #include #include int main(int argc, char* argv[]) { int myid, numprocs, namelen; char processor_name[MPI_MAX_PROCESSOR_NAME]; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &myid); MPI_Comm_size(MPI_COMM_WORLD, &numprocs); MPI_Get_processor_name(processor_name, &namelen); if (myid == 0) printf("number of processes: %d\n...", numprocs); printf("%s: Hello world from process %d \n", processor_name, myid); MPI_Finalize(); return 0; }
五、进阶(GPU)
修改slurm.conf 文件GresTypes=gpuNodeName=slave3 Sockets=2 Procs=32 CoresPerSocket=8 ThreadsPerCore=2RealMemory=3000 Gres=gpu:tesla:2 State=UNKNOWN NodeAddr=10.135.12.29此外,slave3 这个机器需配置GPU 信息,编辑/usr/local/etc/gres.conf 文件Name=gpu Type=tesla File=/dev/nvidia0Name=gpu Type=tesla File=/dev/nvidia1slurm 脚本中添加gres 指定gpu 资源#SBATCH --gres=gpu:tesla:2
到此,相信大家对"Slurm集群搭建的教程"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
配置
节点
集群
文件
作业
测试
机器
教程
实际
程序
脚本
内容
点数
用户
系统
结果
网站
别为
学习
实用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
课程设计之数据库网页设计
辰亦斗罗服务器下载安装
软件开发源代码模板
典型的软件开发模型都有哪些
易之悦网络技术公司联系号码
化学中英文数据库
专科计算机网络技术关联专业
创金合信软件开发加班多吗
河南在线项目管控软件开发平台
上传图片服务器代码
服务器多个显卡运行程序
长寿区提供网络技术流程内容
商丘服务器
连接数据库下所有表
产品网络安全之加密描述
网络安全标语学校
2014主要网络安全事件
网络安全 调研文章
增强服务器安全的建议
适合网络技术专业的就业岗位
课程设计之数据库网页设计
上海永久网络技术
广东工业软件开发定制
路由器连服务器指令
温州创梦互联网科技园
节点服务器什么意思
生死2什么服务器未开放
河北省人民医院网络安全中标
数据库119参数
数据库在线链接