24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1275  |  回复: 17

wuy069

铁杆木虫 (正式写手)

引用回帖:
10楼: Originally posted by chembetsey at 2012-12-11 06:03:29
既然你感兴趣,我也没必要敝帚自珍了。

查看节点Qnod

qhost -j | \
awk ' BEGIN {
        print "------------------------------------------------------------------------------------------------&qu ...

qnod命令还是有问题:
如果执行主机关掉了,
qhost -j输出如下:
HOSTNAME                ARCH         NCPU  LOAD  MEMTOT  MEMUSE  SWAPTO  SWAPUS
-------------------------------------------------------------------------------
global                  -               -     -       -       -       -       -
cluster                 lx26-amd64      4     -    3.9G       -    4.0G       -

这时用qhost |grep ' -' |grep -v global来判断有没有执行主机的load为' -',如果有这个执行主机的状态state为down。

当执行主机没有任务时,且LOAD不为' -'时,state显示也要为free。你写的这个qnod命令显示为空。

qnod基于qhost -j输出的能否加上个listflag,就是输出的Load,MemUse,SwapUse超出系统固有值时给加一个星号(*),比如Load的值为4.87,这样超出4,多余0.5就加星(4.87*)。状态state的输出down,free,busy为加粗且为不同的颜色。

qjob基于qstat命令输出等候的任务能不能不要给出逝去时间,只是运行的任务才给出逝去时间;qjob的输出有点慢

能做到以上就perfect了。
11楼2012-12-11 08:40:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuy069

铁杆木虫 (正式写手)

引用回帖:
10楼: Originally posted by chembetsey at 2012-12-11 06:03:29
既然你感兴趣,我也没必要敝帚自珍了。

查看节点Qnod

qhost -j | \
awk ' BEGIN {
        print "------------------------------------------------------------------------------------------------&qu ...

提交一个单独的4核任务,用qnod命令显示的task时输出是5,这个没弄好。
[wuy@cluster test]$ qstat
job-ID  prior   name       user         state submit/start at     queue                          slots ja-task-ID
-----------------------------------------------------------------------------------------------------------------
     36 0.55500 test5.sh   wuy          r     12/11/2012 08:21:52 [email]all.q@cluster.loca[/email]l                4

[wuy@cluster test]$ qnod
------------------------------------------------------------------------------------------------
Node                    Load    Ncpu   Mem   MemUse     Swap  SwapUse    State  Task  Job/User
------------------------------------------------------------------------------------------------
cluster                  2.36    4     3.9G     1.1G     4.0G      0.0    Busy    5    36/wuy
------------------------------------------------------------------------------------------------
12楼2012-12-11 08:46:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tracel

木虫 (正式写手)


jjdg: 金币+1, 赞同你的观点 2012-12-11 23:18:35
有问题就解决问题才是讨论的样子,总不能什么都让人帮你弄吧。
13楼2012-12-11 10:23:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuy069

铁杆木虫 (正式写手)

引用回帖:
13楼: Originally posted by tracel at 2012-12-11 10:23:57
有问题就解决问题才是讨论的样子,总不能什么都让人帮你弄吧。

awk真的不咋会,就会个简单的cat test.e |awk '{print $1, $1}'
bash shell到时会不少,但是打印不出我想要的。
所以在这求助了;以后也会慢慢学awk
14楼2012-12-11 10:44:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tracel

木虫 (正式写手)

先看懂别人的脚本,稍微改下满足自己的要求,应该没什么难度吧
15楼2012-12-11 10:48:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuy069

铁杆木虫 (正式写手)

引用回帖:
15楼: Originally posted by tracel at 2012-12-11 10:48:20
先看懂别人的脚本,稍微改下满足自己的要求,应该没什么难度吧

大哥,我真看不懂,至少现在来说,花一周的功夫应该可以;但如果有那时间,我也不会花这么多金币来求助了,金币倒不是问题;如果只是稍微修改下,就能满足,也不会提这要求了。当然,我也不会说懒到什么都要求助;自己学会了,会自己写才是根本;自己也会朝这个方向走的
16楼2012-12-11 10:54:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tracel

木虫 (正式写手)

【答案】应助回帖

awk '{print "\033[40;33m"$1"\033[0m",$2}'

显示颜色的可以这样搞。
17楼2012-12-11 11:09:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wuy069

铁杆木虫 (正式写手)

引用回帖:
17楼: Originally posted by tracel at 2012-12-11 11:09:40
awk '{print "\033[40;33m"$1"\033[0m",$2}'

显示颜色的可以这样搞。

谢谢!从网上能看到一些:
颜色:"\033[1;5;37;41mdown\033[0m"

flag:
# Flag nodes with status down, offline or unknown
        if (state[node] == "busy" || state[node] == "down" || state[node] == "offl" || state[node] == "UNKN" {
                stateflag="*"
                listnode++
        } else
                stateflag=" "

        # Flag unexpected CPU load average
        loaddiff = loadave[node] - numtasks[node]
        if (loaddiff > 0.5 || loaddiff < -0.5) {
                loadflag="*"
                listnode++
        } else
                loadflag=" "

        # Resident memory
        resi = (totmem[node]-availmem[node])/1024
        if (resi > 50 && resi > physmem[node]/1024 - 50) {      # High memory usage
                resiflag="*"
                listnode++
        } else
                resiflag=" "

        # Flag unexpected number of processes or users
        if (nsessions[node] > 2*ncpus[node] + 1) {      # More than 2 sessions per job
                sessflag="*"
                listnode++
        } else if (nusers[node] > ncpus[node]) {        # More users than nCPUs is bad
                sessflag="*"
                listnode++
        } else
                sessflag=" "

        # Flag unexpected number of jobs
        if (numjobs[node] > numtasks[node]) {           # Should be at least 1 task per job
                jobflag="*"
                listnode++
        } else
                jobflag=" "

组合在一起不会,抽时间看看教程;
谢谢!
18楼2012-12-11 11:16:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wuy069 的主题更新
信息提示
请填处理意见