CentOS 6.5下安裝Tomcat

Tomcat安裝

一般狀況下咱們要配置Tomcat是很容易的一件事情,可是若是您要架設多用戶多服務的Java虛擬主機就不那麼容易了。其中最大的一個問題就是Tomcat執行權限。普通方式配置的Tomcat是以root超級管理員的身份運行的,顯然,這是很是危險的,可想而知,一但網站被掛馬,您的整個服務器均可以被黑客控制了。而經過編譯或在線(例如RedHat系列的yum, debian系列的apt-get)的方式安裝,一個服務器上又只能裝一個tomcat的服務,若是將多個網站放到同一個tomcat服務中,一但某一個網站出問題致使tomcat服務被卡死,則服務器上全部的網站都打不開了,沒法知足各網站程序獨享tomcat的需求。爲了解決這些問題,咱們須要配置Tomcat以指定的身份運行,且一臺服務器上能夠安裝任意多個tomcat服務。前端

測試機器環境:

VMware Workstation 10 虛擬機java

內存:1Glinux

Linux版本:CentOS MinimalCD 6.5apache

JAVA:JAVA_HOME=/opt/jdkwindows

1、先在 Linux系統上配置好JDK環境( CentOS下安裝JDK筆記 http://www.linuxidc.com/Linux/2015-01/111414.htm)tomcat

      假設您已經在Linux系統上正確安裝了JDK開發環境,且JDK安裝的位置在: /opt/jdk/服務器

2、下載並解壓最新版本的Tomcat,http://tomcat.apache.org,將其下載下來(我下到的是apache-tomcat-6.0.41.tar.gz)放到Linux系統的/opt/目錄下,運行命令解壓(並將解壓出來的目錄改名爲tomcat):負載均衡

tar xzvf apache-tomcat-6.0.41.tar.gz
mv apache-tomcat-6.0.41/ tomcat

3、編譯安裝tomcat daemon服務守候程序:curl

cd /opt/tomcat/bin/
tar xvzf commons-daemon-native.tar.gz
一、解壓後會生成一個commons-daemon-1.0.15-native-src目錄,cd到這個目錄的Linux子目錄:
cd commons-daemon-1.0.10-native-src/unix
二、註釋:安裝gcc(默認Mini版本沒有安裝gcc)
yum -y install gcc
三、執行編譯配置
./configure  #(注意:須要先安裝好make,gcc等編譯工具)
./configure --with-java=/opt/jdk 若是提示沒有jdk,使用這個命令。主要是java目錄未寫入系統目錄
四、運行完成後會提示以下信息說明操做成功:
...
*** All done ***
Now you can issue "make"
五、執行make:
make
六、執行make後會生成一個jsvc的文件,將其複製到tomcat的bin目錄。
cp jsvc /opt/tomcat/bin/

七、在tomcat/bin目錄裏面有一個daemon.sh 這個文件就是啓動和關閉tomcat的服務守候程序。tcp

注意:以前的一些tomcat版本,例如tomcat 6.0.x, 可能沒有這個文件, 其實這個文件就是放在commons-daemon-x.x.x-native-src/unix/samples/Tomcat7.sh這兒的(此目錄還有一個Tomcat5.sh),只不過新版本的tomcat把它移動到了bin目錄下,並取名爲daemon.sh了。因此,若是您使用的是tomcat 6,那就把這個Tomcat7.sh文件複製到bin目錄下,並取名爲daemon.sh便可。

八、修改daemon環境變量 :

用文本編輯器(vi或emacs等)編輯它,找到相似下面這樣配置段:

test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
# Set JAVA_HOME to working JDK or JRE
# JAVA_HOME=/opt/jdk-1.6.0.22

九、修改TOMCAT_USER=tomcat爲您要指定身份運行的linux帳號用戶名,此處指定用戶名爲tomcat。

並把JAVA_HOME=...前面的註釋(即「#」號)去掉,並設置爲jdk的安裝目錄路徑,最後,修改好後的配置段變成以下:

test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
# Set JAVA_HOME to working JDK or JRE
JAVA_HOME=/opt/jdk

十、如今修改/opt/tomcat目錄的全部者爲tomcat(即您要指定身份運行的linux賬號):

useradd -M tomcat #建立沒有主目錄的tomcat用戶
chsh tomcat -s /sbin/nologin  #禁止tomcat登錄操做,相似於windows的系統帳戶
chown -R tomcat /opt/tomcat   #將/opt/tomcat下的全部檔案與子目錄進行相同的擁有者變動爲tomcat用戶

十一、爲tomcat/bin/目錄下的*.sh添加相應的x權限位:

chmod +x /opt/tomcat/bin/*.sh

十二、如今,能夠測試一下daemon是否能夠啓動運行,啓動方式以下:

/opt/tomcat/bin/daemon.sh  start
 curl http://localhost:8080   #測試一下是否啓動

 

(若是出錯,重點查驗tomcat的bin目錄下的*.sh是否有x可執行權限、linux賬號是否有tomcat目錄的讀寫權限,是否有tomcat/logs日誌目錄的寫權限等等。)如無錯誤,則tomcat的daemon守候程序已經設置成功了。

1三、這時本機能夠訪問tomcat了,遠程機器訪問不了,是防火牆的問題,在 /etc/sysconfig/iptables添加

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT   #8080是tomcat的訪問端口

重啓iptable

service iptables restart

 

這樣就能夠訪問了。

1四、中止tomcat, 對應的命令爲:

/opt/tomcat/bin/daemon.sh  stop

1五、添加tomcat爲Linux的服務,這時就簡單了,只須要建立一個軟鏈到/etc/init.d/目錄中便可

ln  -s  /opt/tomcat/bin/daemon.sh  /etc/init.d/tomcat

1六、如今就能夠用它啓動/關閉tomcat了:

/etc/init.d/tomcat  start #啓動tomcat
service tomcat start      #啓動tomcat
/etc/init.d/tomcat  stop  #關閉tomcat
service tomcat stop       #關閉tomcat

1七、設置tomcat服務開機啓動,須要在daemon.sh中增長如下的語句:

#!/bin/sh      #這句是原文件裏有的,下面的2句是要添加的
# chkconfig: 2345 90 15
# description: Tomcat-en Manager

1八、再運行 chkconfig命令增長tomcat服務,而達到自啓動:

chkconfig --add  tomcat

 重啓機器,測試一下。

4、若是想再建立一個tomcat服務,只須要將/opt/tomcat這個目錄複製一份,例如:

cp /opt/tomcat /opt/tomcat1

再修改一下tomcat1的端口號(/opt/tomcat/opt/tomcat1/conf/server.xml中的端口號不能與其它的服務重複)。最後從上面所述第8步開始,建立另外一個服務便可。

經過這種方式,您就能夠爲一臺Linux服務器建立任意多個tomcat服務了。最後只須要安裝一個前端服務器(例如Nginx或Apache),將不一樣域名的請求轉發到不一樣的tomcat服務程序就能夠了。

Linux下Apache與多個Tomcat 集羣負載均衡 http://www.linuxidc.com/Linux/2012-01/51731.htm

Nginx Tomcat 集羣負載均衡解決筆記 http://www.linuxidc.com/Linux/2013-07/86827.htm

實例詳解Tomcat組件安裝+Nginx反向代理Tomcat+Apache使用mod_jk和mod_proxy反向代理和負載均衡 http://www.linuxidc.com/Linux/2013-06/85290.htm

CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日誌服務器 http://www.linuxidc.com/Linux/2014-06/103836.htm

Apache+Tomcat 環境搭建(JK部署過程) http://www.linuxidc.com/Linux/2012-11/74474.htm

Tomcat 的詳細介紹請點這裏
Tomcat 的下載地址請點這裏

更多CentOS相關信息見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14

本文永久更新連接地址http://www.linuxidc.com/Linux/2015-01/111415.htm

相關文章
相關標籤/搜索