当前位置:首页 > 代码·功能 > 正文

openshift红帽窘机自动重启

最近挂Q站刚换了新的收费主机,速度比博客站快的多,而且很稳定,全国内高速访问(很给力的)(打个小广告:出售两台洛杉矶节点的主机,有意者E-mail)但是悲催的是被不知道那个无良的人给举报了IP,导致IP段无法登陆QQ,挂Q站换主机计划落空,又换成了openshift的主机,可是我分配的节点又不咋地,老是窘机,于是弄了个窘机自动重启的文件

红帽虽然免费,但是可能会因为线程过多,访问太多导致突然当机

基本表现为,卡死,访问页面出现503,502错误。

最快速的解决方式就是重启下应用

问题是我不能一直守着启动啊。于是,来个自动脚本

 

1、首先WINSCP(如果你喜欢用putty的话请自己看原理琢磨命令吧 重启的指令是 ctl_all restart)登录到你的应用

2、在/var/lib/openshift/你的应用名/app-root/runtime/repo/.openshift/cron/minutely下新建一个chognqi.sh文件

3、用文本编辑器打开chognqi.sh文件(不太推荐用记事本,最好用专门的文本编辑器)

4、把下边的代码复制粘贴进去,保存

#!/bin/bash
  
#配置你的Openshift ssh用户名
sshid=52ddc9e5e2b8cd010f0011c6
  
#脚本运行部分
curl -I tieba-tjmoon.rhcloud.com 2> /dev/null | head -1 | grep -q 200
s=$?
let t=`date +"%M"`%10
if [ $t -eq 0 ];
then
  if [ $s != 0 ];
  then
      /usr/bin/gear stop 2>&1 /dev/null
      /usr/bin/gear start 2>&1 /dev/null
      echo "`date +"%Y-%m-%d %I:%M:%S"` restarted" > /var/lib/$sshid/app-root/data/web_error.log
  fi
else
    echo "`date +"%Y-%m-%d %I:%M:%S"` is ok" > /var/lib/openshift/$sshid/app-root/data/web_run.log
fi

注意把红色字体部分的东西替换为你自己的。

sshid=是你的应用名,你连WINSCP时可以在地址栏看到

curl -I 是你的应用的域名,不加HTTPS://  是刚注册时候的,不是绑定的

 

基本原理就是每分钟访问一次你的应用域名,如果返回http状态不是200,就运行/usr/bin/gear stop和/usr/bin/gear start来重启你的红帽应用,

并且把这次重启日志放到/var/lib/$sshid/app-root/data/web_error.log里边去

标签:
上一篇: 下一篇:

暂无评论

发表评论

不理你。不要啊!吃饭。吃惊。吃西瓜。飞吻!恭喜!Hi纠结!膜拜!OK抛媚眼。泡泡糖。抛钱。忍!生闷气!调皮。偷看。委屈。献花。疑问?抓狂!

小提示:Ctrl+Enter快速提交助您一臂之力~
加载中……