SLURM 节点状态总是drained问题

6 篇文章 1 订阅

问题描述

新装的 SLURM 集群在运行了一些作业并修改一些配置项目以后,用sinfo查看信息的时候看到部分节点状态总是 drained ,但是在这个节点上并没有作业在运行,重启 slurm 服务问题依旧,如下

$ sinfo

PARTITION AVAIL  TIMELIMIT  NODES  STATE NODELIST
debug*       up   infinite      1  drain mycentos6x

并且用 “scontrol show node”查看节点的时候看到 “Reason=Low RealMemory [root@2015-07-20T21:23:33]”,好像参数修改并没有生效

$ scontrol show node

NodeName=mycentos6x Arch=x86_64 CoresPerSocket=2
   CPUAlloc=0 CPUErr=0 CPUTot=2 CPULoad=0.55 Features=(null)
   Gres=(null)
   NodeAddr=mycentos6x NodeHostName=mycentos6x Version=14.11
   OS=Linux RealMemory=1000 AllocMem=0 Sockets=2 Boards=1
   State=IDLE+DRAIN ThreadsPerCore=1 TmpDisk=0 Weight=1
   BootTime=2015-07-21T09:19:03 SlurmdStartTime=2015-07-21T09:19:32
   CurrentWatts=0 LowestJoules=0 ConsumedJoules=0
   ExtSensorsJoules=n/s ExtSensorsWatts=0 ExtSensorsTemp=n/s
   Reason=Low RealMemory [root@2015-07-20T21:23:33]

最后查了一下,可能是前面运行了部分作业有问题,作业状态一直是“CG (completing)”,导致节点不可用。

解决办法

依次运行下面几个命令

# scontrol update NodeName=<node> State=DOWN Reason=hung_completing
# /etc/init.d/slurm restart
# scontrol update NodeName=<node> State=RESUME

之后再查看状态

$ sinfo
PARTITION AVAIL  TIMELIMIT  NODES  STATE NODELIST
debug*       up   infinite      1   idle mycentos6x
$ scontrol show node
NodeName=mycentos6x Arch=x86_64 CoresPerSocket=2
   CPUAlloc=0 CPUErr=0 CPUTot=2 CPULoad=0.17 Features=(null)
   Gres=(null)
   NodeAddr=mycentos6x NodeHostName=mycentos6x Version=14.11
   OS=Linux RealMemory=1000000 AllocMem=0 Sockets=2 Boards=1
   State=IDLE ThreadsPerCore=1 TmpDisk=0 Weight=1
   BootTime=2015-07-21T09:19:03 SlurmdStartTime=2015-07-21T09:23:15
   CurrentWatts=0 LowestJoules=0 ConsumedJoules=0
   ExtSensorsJoules=n/s ExtSensorsWatts=0 ExtSensorsTemp=n/s

转载请以链接形式标明本文地址
本文地址:http://blog.csdn.net/kongxx/article/details/48193333

### Slurm 节点状态总是显示为 Drain 的解决方案 当遇到 Slurm 集群中的节点状态持续显示为 `drain` 时,这通常意味着这些节点已被标记为即将维护或已检测到某些问题。为了排查并解决问题,可以从以下几个方面入手: #### 检查节点配置文件 确认 `/etc/slurm.conf` 或其他相关配置文件中是否有针对该节点设置的特殊参数导致其自动进入排水模式。例如,可能存在如下配置项: ```bash NodeName=compute-01 State=DRAIN Reason="Maintenance" ``` #### 查看日志记录 通过查看 Slurm 日志来获取更多信息可以帮助定位具体原因。一般情况下,Slurm 的主要日志位于 `/var/log/slurm/` 目录下。可以使用以下命令查找最近的日志条目: ```bash tail -f /var/log/slurm/slurmctld.log | grep "DRAINED" ``` #### 查询详细的节点信息 利用 `scontrol show node <nodename>` 命令可以获得更详尽的状态描述以及任何附加的原因说明[^1]。 #### 清除排水标志 一旦确定了引起排水的具体因素,则可以通过执行下面这条指令尝试清除排水标签: ```bash scontrol update NodeName=<nodename> state=RESUME ``` 需要注意的是,在实际操作前应当仔细评估影响范围,并确保不会因为误操作而中断正在进行的工作负载。 对于由管理员手动置入排水模式的情况,建议联系负责管理集群的人士询问具体情况;如果是由于硬件故障等原因触发,则需进一步诊断修复对应的物理设备后再恢复服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值