「Tomcat」複数インスタンスで起動する
Tomcat を複数のインスタンスで起動してみました。その時のメモです。
[ 環境情報 ]
CentOS 6.2
Apache Tomcat 7.0.52
ドキュメント的には以下の「Advanced Configuration - Multiple Tomcat Instances」の箇所になります。
・Running The Apache Tomcat 7.0 Servlet/JSP Container
https://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt
環境変数 CATALINA_HOME と CATALINA_BASE を設定して、それぞれに必要なディレクトリ、ファイルを配置してやるって感じでいけそうですね。あと、もちろんインスタンス毎にポート番号を変えると。
1. CATALINA_HOME、CATALINA_BASE にそれぞれ必要なディレクトリ、ファイルを配置する
ドキュメントに記載の感じで以下のディレクトリ構成にする。
■ CATALINA_HOME ( /usr/local/tomcat/apache-tomcat-7.0.52 )
[root@centos62 tomcat]# ll apache-tomcat-7.0.52 合計 8 drwxr-xr-x. 2 root root 4096 3月 8 18:04 2014 bin drwxr-xr-x. 2 root root 4096 3月 8 18:04 2014 lib
■ CATALINA_BASE ( /usr/local/tomcat/instance1 )
[root@centos62 tomcat]# ll instance1 合計 28 drwxr-xr-x. 2 root root 4096 3月 8 18:05 2014 bin drwxr-xr-x. 2 root root 4096 3月 8 18:05 2014 conf drwxr-xr-x. 2 root root 4096 3月 8 18:05 2014 lib drwxr-xr-x. 2 root root 4096 3月 8 18:05 2014 logs drwxr-xr-x. 2 root root 4096 3月 8 18:05 2014 temp drwxr-xr-x. 7 root root 4096 3月 8 18:05 2014 webapps drwxr-xr-x. 2 root root 4096 3月 8 18:05 2014 work
■ CATALINA_BASE ( /usr/local/tomcat/instance2 )
[root@centos62 tomcat]# ll instance2 合計 28 drwxr-xr-x. 2 root root 4096 3月 8 18:06 2014 bin drwxr-xr-x. 2 root root 4096 3月 8 18:06 2014 conf drwxr-xr-x. 2 root root 4096 3月 8 18:06 2014 lib drwxr-xr-x. 2 root root 4096 3月 8 18:06 2014 logs drwxr-xr-x. 2 root root 4096 3月 8 18:06 2014 temp drwxr-xr-x. 7 root root 4096 3月 8 18:06 2014 webapps drwxr-xr-x. 2 root root 4096 3月 8 18:06 2014 work
2. $CATALINA_BASE/conf/server.xml のポート番号を書き換える
書き換えが必要なポート番号は以下です。
シャットダウン用のポート ( 8005 ) HTTP のポート ( 8080 ) AJP のポート ( 8009 )
今回はインスタンス1、インスタンス2でそれぞれ以下に変更しました。
■ インスタンス1
シャットダウン用のポート ( 18005 ) HTTP のポート ( 18080 ) AJP のポート ( 18009 )
■ インスタンス2
シャットダウン用のポート ( 28005 ) HTTP のポート ( 28080 ) AJP のポート ( 28009 )
上記で作業完了です。あとは、CATALINA_HOME、CATALINA_BASE を設定して起動するだけ。
export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-7.0.52 export CATALINA_BASE=/usr/local/tomcat/instance1 $CATALINA_HOME/bin/startup.sh export CATALINA_BASE=/usr/local/tomcat/instance2 $CATALINA_HOME/bin/startup.sh
停止は以下で。
export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-7.0.52 export CATALINA_BASE=/usr/local/tomcat/instance1 $CATALINA_HOME/bin/shutdown.sh export CATALINA_BASE=/usr/local/tomcat/instance2 $CATALINA_HOME/bin/shutdown.sh
※ シェルスクリプト用意した方が後々楽ですね。
起動したら「http://localhost:18080」、「http://localhost:28080」で Tomcat のホーム画面にアクセスできるはずです。
以上です。