How to install Apache Tomcat 7.0 on Linux
公式ドキュメントに従って Apache Tomcat 7.0 をインストールしてみました。
前提条件
実行ユーザ
実行ユーザを作成します。ここでは tomcat:tomcat とします。
sudo useradd -d /var/lib/tomcat -s /sbin/nologin -r tomcat id tomcat sudo mkdir -p /var/lib/tomcat sudo chown -R tomcat:tomcat /var/lib/tomcat ls -l /var/lib/tomcat
Directory structure
アーカイブを展開します。ここでは /opt/tomcat/default にしました。
sudo mkdir /opt/tomcat
drwxr-xr-x. 8 root root 4096 10月 8 14:00 2012 apache-tomcat-7.0.30 lrwxrwxrwx. 1 root root 20 10月 7 14:52 2012 default -> apache-tomcat-7.0.30
ログや一時ファイル等の格納場所を /var に移動します。
cd /opt/tomcat/default sudo rm -fr logs/ temp/ work/ sudo mkdir /var/lib/tomcat/temp /var/lib/tomcat/work /var/log/tomcat sudo chown tomcat:tomcat /var/lib/tomcat/temp /var/lib/tomcat/work /var/log/tomcat /var/webapps sudo ln -s /var/lib/tomcat/temp sudo ln -s /var/lib/tomcat/work sudo ln -s /var/log/tomcat logs sudo ln -s /var/webapps
/opt/tomcat/default
drwxr-xr-x. 4 root root 4096 10月 8 13:49 2012 bin drwxr-xr-x. 2 root root 4096 10月 8 13:52 2012 conf drwxr-xr-x. 2 root root 4096 10月 7 14:33 2012 lib lrwxrwxrwx. 1 root root 15 10月 8 01:52 2012 logs -> /var/log/tomcat lrwxrwxrwx. 1 root root 20 10月 8 01:55 2012 temp -> /var/lib/tomcat/temp lrwxrwxrwx. 1 root root 12 10月 8 16:23 2012 webapps -> /var/webapps drwxr-xr-x. 7 root root 4096 9月 2 17:52 2012 webapps.dist lrwxrwxrwx. 1 root root 20 10月 8 01:55 2012 work -> /var/lib/tomcat/work
/opt/tomcat/default/conf は実行ユーザが読めるようにしておきます。
sudo chgrp tomcat /opt/tomcat/default/conf/* sudo chmod 640 /opt/tomcat/default/conf/*
-rw-r-----. 1 root tomcat 12128 9月 2 17:52 2012 catalina.policy -rw-r-----. 1 root tomcat 6374 9月 2 17:52 2012 catalina.properties -rw-r-----. 1 root tomcat 1394 9月 2 17:52 2012 context.xml -rw-r-----. 1 root tomcat 3288 9月 2 17:52 2012 logging.properties -rw-r-----. 1 root tomcat 6569 10月 8 13:52 2012 server.xml -rw-r-----. 1 root tomcat 1530 9月 2 17:52 2012 tomcat-users.xml -rw-r-----. 1 root tomcat 152724 9月 2 17:52 2012 web.xml
APR native connector
APR native connector を使う場合はインストールします。ビルドには apr-devel, openssl-devel が必要です。
cd /opt/tomcat/default/bin sudo tar zxf tomcat-native.tar.gz sudo chown 0.0 -R tomcat-native-*-src/ cd tomcat-native-*-src/jni/native sudo ./configure --prefix=/opt/tomcat/default/apr --with-apr=/usr/bin/apr-1-config --with-java-home=/usr/java/default --with-ssl=/usr/lib64 sudo make clean all sudo make install
commons daemon
commons-daemon をインストールします。ビルドには libcap-devel が必要です。
cd /opt/tomcat/default/bin sudo tar zxf commons-daemon-native.tar.gz sudo chown 0.0 -R commons-daemon-*-native-src/ cd commons-daemon-*-native-src/unix sudo ./configure --with-java=/usr/java/default sudo make clean all cd /opt/tomcat/default/bin sudo cp -a commons-daemon-*-native-src/unix/jsvc .
/etc/init.d/tomcat
/opt/tomcat/default/bin/daemon.sh を /etc/init.d/tomcat にコピーして、先頭に以下を加えます。
#!/bin/sh # chkconfig: 345 99 01 # description: Apache Tomcat server export JAVA_HOME=/usr/java/default export CATALINA_HOME=/opt/tomcat/default export LD_LIBRARY_PATH=/opt/tomcat/default/apr/lib # JVM引数はチューニングすること export CATALINA_OPTS='-Xmx512m -Xms512m -Xmn128m -XX:PermSize=128m -XX:MaxPermSize=128m' # 以下は /opt/tomcat/default/bin/daemon.sh
sudo chkconfig --add tomcat
sudo service tomcat version
/opt/tomcat/default/conf/server.xml
コネクタを設定します。ここでは AJP Native Connector を使います。
<!--The connectors can use a shared executor, you can define one or more named thread pools--> <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="50" minSpareThreads="4"/> <!-- Define an AJP 1.3 Connector on port 8009 --> <Connector port="8009" protocol="org.apache.coyote.ajp.AjpAprProtocol" executor="tomcatThreadPool" URIEncoding="UTF-8" />
see Apache Tomcat 7 Configuration Reference (7.0.52) - The AJP Connector
Start
sudo service tomcat start sudo less /var/log/tomcat/catalina-daemon.out