![AWS 上の Slurm ノードは起動時にドレインするように設定されています](https://rvso.com/image/1601149/AWS%20%E4%B8%8A%E3%81%AE%20Slurm%20%E3%83%8E%E3%83%BC%E3%83%89%E3%81%AF%E8%B5%B7%E5%8B%95%E6%99%82%E3%81%AB%E3%83%89%E3%83%AC%E3%82%A4%E3%83%B3%E3%81%99%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E8%A8%AD%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99.png)
CloudFormationで作成されたAWSクラスターでslurmを設定しようとしています。起動時に、一部のノードが「ドレイン」状態に設定されますが、その理由は「ソケット容量不足」です。芯スレッド数」ですが、クラスター内のすべてのノードは同じ EC2 インスタンス タイプであり、同じ slurm.conf ファイルがインストールされており、同じ AMI から取得されています。一部のノードのみが「ドレイン」状態になり、パターンは見当たりません。「ドレイン」ノードの状態を手動で「再開」に更新すると、タスクを処理できるようになります。これまでにこれを見たことがある人はいますか?
ubuntu@ip-10-0-0-10:~$ sinfo
PARTITION AVAIL TIMELIMIT NODES STATE NODELIST
compute* up infinite 2 drain ip-10-0-0-10,node1
compute* up infinite 1 idle node2
ubuntu@ip-10-0-0-10:~$ scontrol show node node1
NodeName=node1 Arch=x86_64 CoresPerSocket=1
CPUAlloc=0 CPUErr=0 CPUTot=4 CPULoad=0.40 Features=(null)
Gres=(null)
NodeAddr=node1 NodeHostName=node1 Version=15.08
OS=Linux RealMemory=1 AllocMem=0 FreeMem=15062 Sockets=4 Boards=1
State=IDLE+DRAIN ThreadsPerCore=1 TmpDisk=0 Weight=1 Owner=N/A
BootTime=2019-08-19T21:46:44 SlurmdStartTime=2019-08-19T21:48:36
CapWatts=n/a
CurrentWatts=0 LowestJoules=0 ConsumedJoules=0
ExtSensorsJoules=n/s ExtSensorsWatts=0 ExtSensorsTemp=n/s
Reason=Low socket*core*thread count, Low CPUs [slurm@2019-08-19T21:47:06]
ubuntu@ip-10-0-0-10:~$ sudo scontrol update nodename=node1,ip-10-0-0-10 state=RESUME
ubuntu@ip-10-0-0-10:~$ sinfo
PARTITION AVAIL TIMELIMIT NODES STATE NODELIST
compute* up infinite 3 idle ip-10-0-0-10,node[1-2]
答え1
slurm.confで「ReturnToService=2」を設定してください(まだ設定されていない場合)。その後、slurmサービスを再起動します。ここで、値2は
DOWN ノードは、有効な構成で登録されると使用可能になります。ノードは、何らかの理由で DOWN に設定されている可能性があります。ノードのメモリ、GRES、CPU 数などが slurm.conf で構成された値以上である場合、ノードは有効な構成で登録されます。(Cray ALPS システムでは無効です。)
デフォルト値は 0 です。