Linux下配置多個tomcat
阿新 • • 發佈:2018-12-18
Linux環境下部署多臺tomcat伺服器,最近用到虛擬機器就順便整理一個親測的方法,下面用虛擬機器環境示範:
1、原理簡述:
- 1.1 tomcat啟動時會去查詢tomcat的根目錄,並且會通過CATALINA_BASE和CATALINA_HOME 這兩個變數去查詢,所以同一伺服器下部署多個不同tomcat需要把tomcat根目錄以及上述兩個變數的值設定一下(也就是需要為每一個tomcat配置指向自己的環境變數)。
- 1.2 tomcat需配置三個端口才能啟動,安裝時預設配置並啟用了這三個埠,所以要執行多個tomcat服務則需要修改這三個埠,否則會埠衝突。
2、準備工作:
- 2.1 在/usr/local/目錄下新建兩個tomcat資料夾(tomcat1、tomcat2),並放入要使用的tomcat的tar包(如:apache-tomcat-8.5.6.tar.gz ),使用 ‘tar -zxvf tomcat的tar路徑’ 命令解壓;
3、開始配置:
-
1、修改/ect/profile檔案(注意:是根目錄下的etc ,cd /etc/profile)
cd /etc ll vi /etc/profile 按o或者i新增如下: ####第一個Tomcat#### export CATALINA_BASE=/usr/local/tomcat1/apache-tomcat-8.5.6 export CATALINA_HOME=/usr/local/tomcat1/apache-tomcat-8.5.6 export TOMCAT_HOME=/usr/local/tomcat1/apache-tomcat-8.5.6 ####第二個Tomcat#### export CATALINA_BASE=/usr/local/tomcat2/apache-tomcat-8.5.6 export CATALINA_HOME=/usr/local/tomcat2/apache-tomcat-8.5.6 export TOMCAT_HOME=/usr/local/tomcat2/apache-tomcat-8.5.6 按ESC 輸入 ::wq(注意是:wq) 輸入source /etc/profile使其生效。
-
2、修改其他tomcat(除了第一個tomcat1)根目錄bin下的catalina.sh檔案 具體操作是切換到tomcat2的bin目錄下,vim catalina.sh,找到下面的註釋程式碼
# OS specific support. $var _must_ be set to either true or false.
並在上述程式碼下面新增以下程式碼,目的是為了tomcat2啟動的時候能通過該檔案的裡的$CATALINA_2_BASE 和 $CATALINA_2_HOME找到/etc/profile配置檔案裡我們前一步配好的具體路徑,完成tomcat2的啟動過程。
# myself : add export CATALINA_BASE=$CATALINA_2_BASE export CATALINA_HOME=$CATALINA_2_HOME
如果有多個tomcat,修改方法如上方式繼續新增。
-
-
3、將server.xml中的三個埠都改大一些
3.1 http訪問埠(預設為8080埠): <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 3.2 監聽tomcat關閉的埠(預設為8005): <Server port="8005" shutdown="SHUTDOWN"> <Listener className="org.apache.catalina.startup.VersionLoggerListener" /> 3.3 負責接收其他http伺服器的請求埠(預設為8009): <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
-
4、儲存並重啟這兩臺tomcat進行訪問。
注意:上述是在Linux虛擬機器中操作,不存在“雲伺服器埠未開放等安全問題”,如果有問題請執行看配置是否正確,比如目錄是否對應等;