slurmd
部分:Slurm 守护进程 (8)更新:Slurm 守护进程
索引
名称
slurmd - Slurm 的计算节点守护进程。概要
slurmd [选项...]描述
slurmd 是 Slurm 的计算节点守护进程。它监控计算节点上运行的所有任务,接受工作(任务),启动任务,并根据请求终止正在运行的任务。选项
- --authinfo
- 与无配置一起使用,以设置备用的 AuthInfo 参数,以便在配置文件被检索之前与 slurmctld 建立通信。(例如,指定备用的 MUNGE 套接字位置。)
-
- -b
- 当守护进程重新启动时报告节点已重启。用于测试目的。
-
- -c
- 根据需要清除系统锁定。如果 slurmd 异常终止,则可能需要此操作。
-
- -C
- 打印实际的硬件配置(不是来自 slurm.conf 文件的配置)并退出。 输出格式与在 slurm.conf 中描述节点配置的格式相同,外加其正常运行时间。
-
- --ca-cert-file <file>
- 在启用 TLS 的集群中运行无配置时用于获取配置的 CA 证书的绝对路径。
-
- --conf <节点参数>
- 与 -Z 选项一起使用。用于覆盖或定义动态节点的附加参数,使用与在 slurm.conf 中定义节点相同的语法和参数。指定任何 CPUs、Boards、SocketsPerBoard、CoresPerSocket 或 ThreadsPerCore 将覆盖 -C 选项定义的默认值。NodeName 和 Port 不受支持。
例如,如果 slurmd -C 报告NodeName=node1 CPUs=16 Boards=1 SocketsPerBoard=1 CoresPerSocket=8 ThreadsPerCore=2 RealMemory=31848
以下 --conf 规范将生成相应的节点定义:
--conf "Gres=gpu:2" NodeName=node1 CPUs=16 Boards=1 SocketsPerBoard=1 CoresPerSocket=8 ThreadsPerCore=2 RealMemory=31848 Gres=gpu:2
--conf "RealMemory=30000" NodeName=node1 CPUs=16 Boards=1 SocketsPerBoard=1 CoresPerSocket=8 ThreadsPerCore=2 RealMemory=30000
--conf "CPUs=16" NodeName=node1 CPUs=16 RealMemory=331848
--conf "CPUs=16 RealMemory=30000 Gres=gpu:2" NodeName=node1 CPUs=16 RealMemory=30000 Gres=gpu:2"
-
- --conf-server <host|ip address>[:<port>]
- 以逗号分隔的控制器列表,第一个为主 slurmctld。可以(可选)为每个控制器指定一个端口。这些主机是 slurnd 在“无配置”模式下获取配置的地方。 注意:如果指定 IPv6 地址,请将 <ip address> 包裹在 [] 中,以区分地址和端口。即使未指定端口,这也是必需的。
-
- -d <file>
- 指定用于管理用户作业步骤的 slurmstepd 程序的完全合格路径名。这对于测试目的可能很有用。
-
- -D
- 以前台运行 slurmd,并将日志复制到 stderr。
-
- --extra <任意字符串>
- 在节点启动时设置“额外”数据。如果这是一个 json 字符串,并且在 slurm.conf 中设置了 SchedulerParameters=extra_constraints,则作业可以使用 --extra 选项根据此“额外”数据进行过滤。
-
- -f <file>
- 从指定文件读取配置。请参见下面的 注意事项。
-
- -F[feature]
- 将此节点作为动态未来节点启动。它将尝试匹配状态为 FUTURE 的节点定义,可选地使用指定的特征来匹配节点定义。
-
- -G
- 打印通用资源 (GRES) 配置(基于 slurm.conf GRES 与此节点的 gres.conf 内容合并)并退出。
-
- -h
- 帮助;打印命令选项的简要摘要。
-
- --instance-id <云实例 ID>
- 在节点启动时设置云实例 ID。
-
- --instance-type <云实例类型>
- 在节点启动时设置云实例类型。
-
- -L <file>
- 将日志消息写入指定文件。
-
- -M
- 使用 mlockall (2) 将 slurmd 页面锁定到系统内存中,以禁用 slurmd 进程的分页。这可能有助于在节点在大量交换活动期间被标记为 DOWN 的情况下。如果 mlockall (2) 系统调用不可用,将在日志中打印错误,slurmd 将正常继续。
建议在设置 -M 时在 slurm.conf(5) 中设置 LaunchParameters=slurmstepd_memlock。
-
- -n <value>
- 将守护进程的优先级值设置为指定值,通常是负数。还请注意 PropagatePrioProcess 配置参数。
-
- -N <nodename>
- 使用给定的节点名称运行守护进程。用于模拟每个节点有多个 slurmd 守护进程的更大系统。要求 Slurm 使用 --enable-multiple-slurmd 配置选项构建。
-
- -s
- 如果可能,将 slurmd 的工作目录更改为 SlurmdLogFile 路径,否则更改为 SlurmdSpoolDir。如果两者都失败,将回退到 /var/tmp。
-
- --systemd
- 在使用 systemd 启动守护进程时使用。这将允许 slurmd 在使用 'scontrol reconfigure' 时通知 systemd 新的 PID。
-
- -v
- 详细操作。多个 -v 会增加详细程度。
-
- -V, --version
- 打印版本信息并退出。
-
- -Z
- 将此节点作为动态正常节点启动。如果未指定 --conf,则 slurmd 将以 -C 选项定义的相同硬件配置注册。
-
环境变量
以下环境变量可用于覆盖编译到 slurmd 中的设置。
- ABORT_ON_FATAL
- 当检测到致命错误时,使用 abort() 而不是 exit() 来终止进程。这允许在不重新编译 Slurm 的情况下捕获回溯。
-
- SLURM_CONF
- Slurm 配置文件的位置。通过在命令行上显式命名配置文件来覆盖此设置。
-
- SLURM_DEBUG_FLAGS
- 指定 slurmd 使用的调试标志。有关完整的标志列表,请参见 slurm.conf(5) 手册页。环境变量优先于 slurm.conf 中的设置。
-
信号
- SIGTERM SIGINT SIGQUIT
- slurmd 将干净地关闭。
-
- SIGHUP
- 重新加载 slurm 配置文件,类似于 'scontrol reconfigure'。
-
- SIGUSR2
- 从配置中重新读取日志级别,然后重新打开日志文件。这应该在设置 logrotate(8) 时使用。
-
- SIGPIPE
- 此信号被明确忽略。
-
核心文件位置
如果 slurmd 是使用 -D 选项启动的,则核心文件将写入当前工作目录。 否则,如果 SlurmdLogFile 是完全合格的路径名(以斜杠开头),核心文件将写入与日志文件相同的目录。否则,核心文件将写入 SlurmdSpoolDir 目录,或作为最后的手段写入 “/var/tmp/”。如果上述目录都无法写入,则不会生成核心文件。注意事项
使用不同的 slurmd 特定配置参数(例如超时)进行实验可能会很有用,使用一个独特的配置文件。然而,除非您明确告诉每个守护进程或 Slurm 程序使用它,否则此特殊配置文件将不会被 slurmctld 守护进程或 Slurm 程序使用。如果您希望更改通信端口、临时文件系统的位置或其他 Slurm 组件使用的参数,请更改公共配置文件 slurm.conf。如果您使用无配置模式,并且登录节点运行大量客户端命令,您可能考虑在该机器上运行 slurmd,以便它可以管理配置文件的缓存版本。否则,每个客户端命令将使用 DNS 记录与控制器联系并获取配置信息,这可能会对控制器造成额外负担。
版权
版权 (C) 2002-2007 加州大学理事会。 版权 (C) 2008-2010 劳伦斯利弗莫尔国家实验室。 版权 (C) 2010-2022 SchedMD LLC。 在劳伦斯利弗莫尔国家实验室制作(参见免责声明)。此文件是 Slurm 的一部分,一个资源管理程序。 详细信息,请参见 <https://slurm.schedmd.com/>。
Slurm 是自由软件;您可以根据自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它;许可证的版本 2,或(根据您的选择)任何更高版本。
Slurm 的分发是希望它会有用,但不提供任何担保;甚至没有适销性或特定用途适用性的默示担保。有关详细信息,请参见 GNU 通用公共许可证。
文件
/etc/slurm.conf
另见
slurm.conf(5), slurmctld(8)
索引
此文档是由 man2html 使用手册页创建的。
时间:2025年7月2日 13:21:54 GMT