查看队列资源限额和用户资源使用情况

查看队列资源限额和用户资源使用情况

背景

LSF中的 limits 配置模块允许管理员很方便地设置集群资源限额,可以在队列、主机对、应用维度对用户使用的资源如slot/core,、任务数/jobs、内存/mem、交换区/swap,以及自定义资源比如许可证进行限制。

问题

在实际工作中,用户遇到的问题是如何方便快捷地查看队列上设置的资源限额,以及当前用户资源使用情况?

解决方案

LSF提供了 blimits 命令查询限额配置和用户资源使用情况,但需要使用不同的参数组合,运行多次。 我们可以通过创建脚本 bquota 通过一条命令显示队列上配置的资源限额和用户资源使用情况。简化用户操作,不需要记忆复杂的参数。

bquota 脚本示例如下:

bash 复制代码
#!/bin/bash

queueName=$1

[ "x$queueName" == "x" ] && {
    echo "请指定队列名称。"
    exit 1
}

echo "***** 队列 ${queueName} 任务资源限额配置 *****"
echo
t=$(blimits -c -q ${queueName})
[ "$t" == "No resource configuration found." ] && {
    echo "没有配置队列任务资源限额"
} || {
    blimits -c -q ${queueName}
}

echo

for l in $(blimits -c -q ${queueName}|grep NAME|awk -F = '{ print $2 }')
do
    echo "***** ${l} 资源使用 *****"
    t=$(blimits -w -n $l)
    [ "$t" == "No resource usage found." ] && {
        echo "无资源使用记录"
    } || {
        blimits -w -n $l
    }
    echo
done

使用方式

使用方式很直接,在命令行跟上队列名称即可

复制代码
bquota queue_name
ini 复制代码
[lsfadmin@master bin]$ bquota admin
***** 队列 admin 任务资源限额配置 *****

Begin Limit
  NAME 		= admin_limit
  PER_USER 	= lsfadmin
  PER_QUEUE 	= admin
  SLOTS    	= 100
  JOBS     	= 10
End Limit


***** admin_limit 资源使用 *****

INTERNAL RESOURCE LIMITS:

    NAME          USERS            QUEUES           HOSTS           PROJECTS       APPS    SLOTS     MEM      TMP      SWP      JOBS
admin_limit      lsfadmin          admin              -                -            -      10/100     -        -        -      10/10
相关推荐
大大大大肉包41 分钟前
私有化部署DeepSeek
linux·运维·服务器
xyd陈宇阳1 小时前
Linux 入门五:Makefile—— 从手动编译到工程自动化的蜕变
linux·运维·服务器·makefile
冰滚水2 小时前
网络建设与运维神州数码DCN sFlow网络流量信息协议
运维·网络·sflow·网络建设与运维·网络搭建·神州数码
三天不学习2 小时前
NginxWebUI:可视化 Nginx 配置管理工具,告别繁琐命令行!
运维·nginx
穷儒公羊3 小时前
第一部分——Docker篇 第六章 容器监控
运维·后端·学习·docker·云原生·容器
krack716x3 小时前
服务器信息收集
运维·服务器
Brandon汐3 小时前
Linux文件传输:让数据飞起来!
linux·运维·网络
AI服务老曹3 小时前
包含网络、平台、数据及安全四大体系的智慧快消开源了
运维·人工智能·安全·开源·音视频
开发小能手-roy4 小时前
linux Ubuntu 用户权限设置
linux·运维·ubuntu
小白探索世界欧耶!~4 小时前
【踩坑】GitHub Actions 运行的 Linux 环境中,文件名是大小写敏感的
linux·运维·服务器·前端·vue.js·笔记·github