1. 程式人生 > >centos6.9下安裝javaweb執行環境

centos6.9下安裝javaweb執行環境

1、安裝jdk

使用jdk-8u181-linux-x64.rpm安裝包

給安裝包賦予執行許可權

[[email protected] local]# chmod 755 jdk-8u181-linux-x64.rpm

安裝rpm安裝包

[[email protected] local]# rpm -i jdk-8u181-linux-x64.rpm
設定環境變數

[[email protected] jdk1.8.0_181-amd64]# vi /etc/profile

在profile的最後加入

export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

儲存退出。

[[email protected] jdk1.8.0_181-amd64]# java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

jdk安裝完成

2、安裝tomcat

使用apache-tomcat-8.5.34.tar.gz安裝包

[[email protected] bin]# tar zxvf apache-tomcat-8.5.34.tar.gz

[[email protected] bin]# ./startup.sh

[[email protected] bin]# netstat -apn|grep 8080
tcp        0      0 :::8080                     :::*                        LISTEN      3692/java

啟動成功

3、配置iptables

[[email protected] ~]# vi /etc/sysconfig/iptables

在iptables中新增規則

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

重啟生效

[[email protected] ~]# service iptables restart

4、檢視開機自啟動中是否有定時器crond

命令為 chkconfig --list

如果沒有crond項,在開機自啟動中新增chkconfig --add crond

5、在定時器中定時檢測tomcat

在定時器中新增定時執行的指令碼crontab -e

*/5 * * * * /usr/local/crondtomcat.sh

crondtomcat.sh的內容如下(網上搜索的內容,不是自己寫的):

#!/bin/sh

# func:自動監控tomcat指令碼並且執行重啟操作
# author:EagleHao
# date:2018-04-08
# DEFINE

# 獲取tomcat程序ID(其中[grep -w 'tomcat']程式碼中的tomcat需要替換為你的tomcat資料夾名)
export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
export CATALINA_HOME=/usr/local/apache-tomcat-8.0.53
TomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat'|grep -v 'grep'|awk '{print $2}')

# tomcat啟動程式(這裡注意tomcat實際安裝的路徑)
StartTomcat=/usr/local/apache-tomcat-8.0.53/bin/startup.sh
TomcatCache=/usr/local/apache-tomcat-8.0.53/work

#定義要監控的頁面地址
WebUrl=http://localhost:8080

#日誌輸出
GetPageInfo=/tmp/TomcatMonitor.Info
TomcatMonitorLog=/tmp/TomcatMonitor.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