標籤:
前言
Java Service Wrapper是Tanuki Software的一個產品,可以將Java應用註冊成Windows或Linux服務,使其可以隨系統開機啟動,同時可以監控Java應用的狀態,使其在出異常狀況時自動啟動,其具體特性請參考官方文檔Overview of Wrapper features ,本文記錄了筆者在官方文檔指導下在Linux環境下用Java Serivice Wrapper配置Tomcat應用的實踐。
前提
- Suse Linux 64位
- Java 8 Download
- Tomcat 8 Download
- Java Service Wrapper Linux 64bit Download
安裝部署Java安裝到/usr/local/java8/ 具體步驟略Tomcat安裝到/usr/local/tomcat/ 具體步驟略將Java Web應用打成war包,拖到tomcat/webapps/下 具體步驟略解壓縮Java Service Wrapper壓縮包到/usr/local/wrapper/,開始安裝wrapper檔案:bin目錄
複製以下檔案到tomcat/bin目錄:
/usr/local/wrapper/bin/wrapper/usr/local/wrapper/src/bin/sh.script.in
指令檔sh.script.in重新命名為你的應用程式名稱,如ABC。
用編輯器開啟ABC,找到APP_NAME,將值改成與檔案名稱一致,APP_LONG_NAME的值改為應用長名。
APP_NAME="ABC"APP_LONG_NAME="ABC Application Server"
儲存關閉檔案,給指令檔ABC授執行許可權
lib目錄
複製以下檔案到tomcat/lib目錄:
/usr/local/wrapper/lib/libwrapper.so/usr/local/wrapper/lib/wrapper.jar
conf目錄
複製wrapper.conf到tomcat/conf目錄,編輯wrapper.conf檔案:
//配置java路徑,根據具體環境配置,可以用絕對路徑,也可以使用環境變數set.JAVA_HOME=/usr/local/java8/set.CATALINA_HOME=/usr/local/tomcatset.CATALINA_BASE=/usr/local/tomcatwrapper.java.command=/usr/local/java8/bin/java //JVM參數。將應用正常啟動時所配置的參數複製過來。具體步驟:// 1.命令列啟動應用// 2.用ps –ef | grep tomcat找到應用進程// 3.複製該進程的參數,將-D開頭的參數逐條配置到下面wrapper.java.additional.1=-Djava.util.logging.config.file=%CATALINA_HOME%/conf/logging.propertieswrapper.java.additional.2=-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManagerwrapper.java.additional.3=-Djava.endorsed.dirs=%CATALINA_HOME%/common/endorsedwrapper.java.additional.4=-Dcatalina.base=%CATALINA_BASE%wrapper.java.additional.5=-Dcatalina.home=%CATALINA_HOME%wrapper.java.additional.6=-Djava.io.tmpdir=%CATALINA_BASE%/temp //類路徑。與擷取JVM參數方式相同,將類路徑逐條配置到下面wrapper.java.classpath.1=%CATALINA_HOME%/bin/bootstrap.jarwrapper.java.classpath.2=%CATALINA_HOME%/bin/tomcat-juli.jarwrapper.java.classpath.3=%CATALINA_HOME%/lib/wrapper.jar //lib路徑。wrapper.java.library.path.1=%CATALINA_HOME%/lib //Wrapper整合主類。有4種整合方式,適合tomcat這樣啟動使用一個類,//停止使用另一個類的應用的是WrapperStartStopApp類wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperStartStopApp //tomcat應用參數,無需修改wrapper.app.parameter.1=org.apache.catalina.startup.Bootstrapwrapper.app.parameter.2=1wrapper.app.parameter.3=startwrapper.app.parameter.4=org.apache.catalina.startup.Bootstrapwrapper.app.parameter.5=TRUEwrapper.app.parameter.6=1wrapper.app.parameter.7=stop
安裝服務
進入/usr/local/tomcat/bin/目錄,修改指令檔ABC,設定隨系統啟動
//設定服務隨系統啟動USE_UPSTART=true
儲存退出,以root許可權執行
$ sudo ./ABC install
應用將註冊為upstart服務
Notice: 只對Wrapper 版本3.4.0之後有效
測試
執行命令
service start | stop | restart | status
之後到tomcat/logs/目錄下查看wrapper.log,沒有異常就是成功。
重啟機器,登入後查看進程裡有ABC在運行,證明隨系統啟動正常,或者訪問Java Web應用,證明應用正常啟動。
使用Java Service Wrapper在Linux下配置Tomcat應用