免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 825 | 回复: 1
打印 上一主题 下一主题

[help]对不在线机器的处理方法?[help] [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-12-27 11:29 |只看该作者 |倒序浏览
兄弟有一个脚本,用来做个小小的负载均衡:

  1. #!/bin/sh
  2. RANDOM=${user}.`/usr/bin/date +%Y%m%d%I%M%S`
  3. TEMPFILENAME="/tmp/.${RANDOM}"
  4. #rup beeda02  >> ${TEMPFILENAME} 2>/dev/null
  5. #rup beeda03  >> ${TEMPFILENAME} 2>/dev/null
  6. rup beeda04  >> ${TEMPFILENAME} 2>/dev/null
  7. rup beeda05  >> ${TEMPFILENAME} 2>/dev/null
  8. rup beeda07  >> ${TEMPFILENAME} 2>/dev/null
  9. rup beeda08  >> ${TEMPFILENAME} 2>/dev/null
  10. rup beeda09  >> ${TEMPFILENAME} 2>/dev/null
  11. rup beeda10  >> ${TEMPFILENAME} 2>/dev/null
  12. rup beeda11  >> ${TEMPFILENAME} 2>/dev/null
  13. rup beeda13  >> ${TEMPFILENAME} 2>/dev/null
  14. rup beeda14  >> ${TEMPFILENAME} 2>/dev/null
  15. HOST=`cat ${TEMPFILENAME}|sort -t\, -n -k5|head -1|awk '{print $1}'`
  16. rm -f ${TEMPFILENAME}
  17. /usr/bin/ssh ${HOST}

复制代码

大意就是看看每台机器的负载然后再ssh到load最小的一台机器上。
但是当某台机器不在线的时候。比如beeda03现在不在线那么当你运行rup beeda03的时候就会非常慢。从而导致整个脚本运行非常的慢。
有没有什么办法可以快速的确定一下某台机器是否在线呢?
一定要快速。
谢谢 8-)

论坛徽章:
0
2 [报告]
发表于 2004-12-27 13:30 |只看该作者

[help]对不在线机器的处理方法?[help]

建议使用后台的方式进行检查,思想就是当检测到第一个个时就停止其它的检查(停止办法就是killall),接着执行ssh。

我这没有测试环境,楼主试一下,如果有问题,贴出来再进一步解决。^-^

rup beeda04;killall -9 rup ;/usr/bin/ssh beeda04 &
rup beeda05;killall -9 rup ;/usr/bin/ssh beeda05 &
rup beeda06;killall -9 rup ;/usr/bin/ssh beeda06 &
rup beeda07;killall -9 rup ;/usr/bin/ssh beeda07 &
rup beeda08;killall -9 rup ;/usr/bin/ssh beeda08 &
rup beeda09;killall -9 rup ;/usr/bin/ssh beeda09 &
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP