解决常见 LSF 问题
大多数问题是由于安装或配置不正确所致。 在开始对 LSF 问题进行故障诊断之前,请始终先检查错误日志文件。 日志消息通常直接指向问题。
查找 LSF 错误日志
发生错误时, LSF 服务器守护程序会在 LSF 日志目录中记录错误消息 (由 lsf.conf 文件中的 LSF_LOGDIR 参数指定)。
过程
- lim.log.host_name
- res.log.host_name
- pim.log.host_name
- mbatchd.log.management_host
- mbschd.log.management_host
- sbatchd.log.management_host
- vemkd.log.management_host
如果这些日志文件包含您不了解的任何错误消息,请联系 IBM 支持人员。
诊断和解决大多数 LSF 问题
大多数 LSF 问题的常规故障诊断步骤。
过程
无法打开 lsf.conf 文件
当您运行 lsid 文件时,可能会看到此消息。 此消息通常表示 LSF无法访问 LSF_CONFDIR/lsf.conf 文件。
关于本任务
缺省情况下, LSF 会检查 lsf.conf 文件的 LSF_ENVDIR 参数定义的目录。 如果 lsf.conf 文件不在 LSF_ENVDIR中,那么 LSF 会在 /etc 目录中查找该文件。
如需了解更多信息,请参阅使用 cshrc.lsf 和 profile.lsf 设置 LSF 环境。
过程
- 确保存在从 /etc/lsf.conf 到 lsf.conf的符号链接
- 使用 csrhc.lsf 或 profile.lsf 脚本来设置 LSF 环境。
- 确保 cshrc.lsf 或 profile.lsf 脚本可供用户设置 LSF 环境变量。
LIM 已悄然死亡
当 LSF LIM 守护程序意外退出时,请检查 LIM 配置文件中是否存在错误。
过程
此命令显示大多数配置错误。 如果该命令未报告任何错误,请检入 LIM 错误日志。
LIM 通信超时
有时 LIM 已启动,但运行 lsload 命令会显示Communication time out。
关于本任务
如果 LIM 刚刚启动,那么 LIM 需要时间通过读取配置文件并与 LIM的其他实例联系来初始化。 如果 LIM 在一两分钟内不可用,请检查您正在处理的主机的 LIM 错误日志。
要在本地 LIM 启动或重新启动时防止通信超时,请在 lsf.conf 文件中定义参数 LSF_SERVER_HOSTS 。 客户机在其中一个 LSF_SERVER_HOSTS 上联系 LIM 并运行命令。 列表中定义的至少一个主机必须具有已启动并正在运行的 LIM 。
当本地 LIM 正在运行但集群没有 管理 主机时, LSF 应用程序将显示Cannot locate master LIM now, try later. 消息。
过程
Host 部分中列出的前几个主机上的 LIM 错误日志。 如果在 lsf.conf 文件中定义了 LSF_MASTER_LIST 参数,请改为在此参数中列出的主机上检查 LIM 错误日志。管理 主机 LIM 已关闭
有时 management host LIM 已启动,但运行 lsload 或 lshosts 命令会显示Master LIM is down; try later.消息。
关于本任务
如果正在运行 管理 主机 LIM 的主机上的 /etc/hosts 文件配置了分配给回送 IP 地址 (127.0.0.1) 的主机名,那么 LSF 客户机 LIM 无法联系 管理 主机 LIM。 当 管理 主机 LIM 启动时,它会将其官方主机名和 IP 地址设置为回送地址。 任何客户机请求都会以 127.0.0.1的形式获取 管理 主机 LIM 地址,并尝试连接到该地址,实际上会尝试访问自身。
过程
LIM 的 IP 配置。 LIM IP 地址设置为回送地址:127.0.0.1 localhost myhostname127.0.0.1 localhost
192.168.123.123 myhostname对于在使用 IPv6 地址的主机上运行的 管理 主机 LIM ,回送地址为 ::1。
LIM IP 地址:::1 localhost ipv6-localhost ipv6-loopback
fe00::0 ipv6-localnet
ff00::0 ipv6-mcastprefix
ff02::1 ipv6-allnodes
ff02::2 ipv6-allrouters
ff02::3 ipv6-allhosts用户许可权被拒绝
如果远程主机无法安全地确定请求远程执行的用户的用户标识,那么远程执行将失败User permission denied。
过程
由于非统一文件名空间,远程执行失败
非统一文件名空间可能导致命令失败,chdir(...) failed: no such file or directory消息。
关于本任务
您正在尝试远程运行命令,但远程主机上不存在当前工作目录,或者当前工作目录映射到远程主机上的其他名称。
如果远程主机上不存在当前工作目录,请不要在该主机上远程运行命令。
过程
批处理守护程序悄然死亡
当 LSF 批处理守护程序 sbatchd 和 mbatchd 意外退出时,请检查配置文件中是否存在错误。
关于本任务
如果 mbatchd 守护程序正在运行,但 sbatchd 守护程序在某些主机上死亡,那么可能是因为 mbatchd 未配置为使用这些主机。
过程
- 检查 sbatchd 和 mbatchd 守护程序错误日志。
- 运行 badmin ckconfig 命令以检查配置。
- 在 LSF 管理员邮箱中检查电子邮件。
sbatchd 已启动,但 mbatchd 未启动
当 sbatchd 守护程序启动但 mbatchd 守护程序未运行时, mbatchd 可能暂时不可用,因为 管理 主机 LIM 暂时未知。 该sbatchd: unknown service 将显示错误消息。
过程
避免孤立作业进程
LSF 使用进程组来跟踪作业的所有进程。 但是,如果应用程序派生了子代,那么该子代将成为新的进程组。 父进程将立即终止,并且子进程组将与父进程孤立,并且无法跟踪。
关于本任务
有关使用 Linux cgroups 跟踪进程的更多信息,请参阅基于 Linux cgroup 内存子系统的内存和交换限制执行。
过程
我的主机不用于 LSF
mbatchd 守护程序允许 sbatchd 守护程序仅在 lsb.hosts 文件的 Host 部分中列出的主机上运行。 如果在以下配置中配置未知主机,那么 mbatchd 会记录错误消息: HostGroup 或 lsb.hosts 文件的 HostPartition 部分,或者作为 lsb.queues 文件中队列的 HOSTS 定义。
关于本任务
如果尝试配置未在 lsb.hosts 文件的 Host 部分中列出的主机,那么 mbatchd 守护程序将记录以下消息。
mbatchd on host: LSB_CONFDIR/cluster1/configdir/file(line #): Host hostname is not used by lsbatch; ignored
如果在 mbatchd 守护程序未知的主机上启动 mbatchd 守护程序,那么 mbatchd 将拒绝 sbatchd。 sbatchd 守护程序记录This host is not used by
lsbatch system.消息并退出。
过程
未知主机类型或型号
模型或类型 UNKNOWN 指示主机已关闭或主机上的 LIM 已关闭。 您需要立即执行操作以在 UNKNOWN 主机上重新启动 LIM 。
过程
缺省主机类型或模型
如果在 lim -t中看到 DEFAULT ,那么意味着自动检测主机类型或模型失败,并且找不到 lsf.shared 文件中配置的主机类型。 LSF 在主机上工作,但由于 CPU 因子不正确, DEFAULT 模型可能效率低下。 DEFAULT 类型还可能导致二进制不兼容,因为可以将来自 DEFAULT 主机类型的作业迁移到其他 DEFAULT 主机类型。
过程
无法在某些主机上运行 b* 命令,因为这些主机上有User permission denied错误
如果您无法从某些主机运行 b* 命令(例如,您看到一个User permission denied消息),主机上的时钟或时区可能与管理主机不同步。 b* 命令需要身份验证,客户端(使用 eauth )会生成一个包含时间戳的用户令牌,并将该令牌与命令请求一起传递给管理主机。 如果令牌过期,命令将被拒绝。 确保群集中的所有主机同步。 您可以在群集中的所有主机上配置 NTP(网络时间协议),以确保所有主机上的所有时钟同步。