Linux上のモニタtomcat downが落ちたら自動的にtomcatを再起動します。

3264 ワード

Linux上のモニタtomcat downが落ちたら自動的にtomcatを再起動します。
 
考えをまとめる
Linux上のモニタtomcat downが落ちたら自動的にtomcatを再起動します。
  • 第一歩編集:monitor.shファイル(ファイルの内容は以下を参照)
  • 第二ステップは、crontabをインストールします。
  • を参照してください。
  • 第3ステップタイムタスクを追加します。crontab-e
  • 第四部にcrontabの内容*/1***/usr/java/monitor.sh
  • を追加しました。
  • 第5ステップは、crontabを再読み込みする。  `crontab/etc/crontab`
  • 第6歩は手動でtomcatを切って、自動的に再起動できるかどうか確認します。
     
    monitor.shの内容を設定します。
    monitor.shファイルの内容(配置が完了したら手動で実行してください。/monitor.shが保留されているtomcatを起動するかどうかを確認してください。)
    ========monitor.sh開始=================================================================
    #!/bin/sh
    
    #      (      jdk    )
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jdk1.7.0_79/bin
    export JAVA_HOME=/usr/java/jdk1.7.0_79
    export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin
    
    #   tomcat  ID(    tomcat7      tomcat   )
    TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat7'|grep -v 'grep'|awk '{print $2}') 
    
    # tomcat    (         tomcat       )  
    StartTomcat=/usr/java/tomcat7/bin/startup.sh 
    TomcatCache=/usr/java/tomcat/work 
    
    #             ,       ,  :     success   
    WebUrl=http://ip:  /test.jsp
    #      (      ,               )
    TomcatMonitorLog=/usr/java/monitor/TomcatMonitor.log  
    GetPageInfo=/usr/java/monitor/PageInfo.log
    
    Monitor() 
    {  
      echo "[info]    tomcat...[$(date +'%F %H:%M:%S')]"  
      if [[ $TomcatID ]];then #     TOMCAT        
        echo "[info]  tomcat  ID :$TomcatID,      ..."  
        #         (           "200")  
        TomcatServiceCode=$(curl -s -o $GetPageInfo -m 10 --connect-timeout 10 $WebUrl -w %{http_code})  
        if [ $TomcatServiceCode -eq 200 ];then  
            echo "[info]      $TomcatServiceCode,tomcat    ,      ......"  
        else  
            echo "[error]tomcat    ,   ......    $TomcatServiceCode,        $GetPageInfo"  
            echo "[error]      ,    tomcat"  
            kill -9 $TomcatID  #    tomcat    
            #sleep 3  
            #rm -rf $TomcatCache #   tomcat    
            #$StartTomcat  
        fi  
      else  
        echo "[error]tomcat     !tomcat      ..."  
        echo "[info]$StartTomcat,   ......"  
        #rm -rf $TomcatCache  
        $StartTomcat  
      fi  
      echo "------------------------------"  
    }  
    Monitor>>$TomcatMonitorLog
    
    
    ========monitor.sh終了==================================================================
     
    crontabをインストールする
    インストール:yum install-y vixie-cron
    インストールに失敗した場合:ngnixのあるリソースグラム404は、以下のように動作することができる。
    cd/etc/yum.repos.d
    vingnix.repo
    握り http://nginx.org/packages/OS/OSRELEASE/$basearch/
    せいにするhttp://nginx.org/packages/centos/6/$basearch/
    この住所は私がいます。http://nginx.org/packages/もちろん、あなたのlinuxシステムとマッチするかどうかを確認してください。
     
    crontabがインストールされているかどうかを確認します。
    crontabタスクリストを表示します。crontab-l
    crontabの状態を調べます。service crond status。
    スタートcrontab:service cron start
     
    crontabが自動的に起動するかどうかを確認します。
    chkconfig grep crond
    クロノド           0:1を閉じる:2を閉じる:3を有効にする:4を有効にする:5を有効にする:6を有効にする:オフにする
    2,3,4,5が起動されているかどうかを確認します。
     
    その他の常用命令
    ブートを設定するかどうかは自動的に起動します。chkconfig—list crond
    CentOSシステムにブートを入れて自動起動する:chkconfig--level 35 crond on