2010年6月25日金曜日

Apache2.2+AJP+tomcat4サーバ構築メモ

仕事でサイトを1つ移行したので手順をメモ。

CentOS5.2+Apache1.3+mod_jk+jdk1.4.2_16+tomcat4.1.37+postgresql7.4.2+postfix-2.3.3-2な構成のマシンが老朽化したので、パワーが余っている別サーバに移行した。

移行先のマシンもすでにWebサーバとして稼働しており、下記の構成。
RHEL4+Apache2.2.4+PHP5.2.5

概要は下記の通り

①Apache停止
②Apacheリコンパイル
③Javaインストール
④Tomcatインストール
⑤ajp設定
⑥Postgresインストール
⑦Postfixインストール
⑧稼働確認


①Apache停止
/usr/local/apache2/bin/apachectl stop
tail -f [アクセスログ]
# ⇒アクセスがないことを確認


②Apacheリコンパイル
/usr/local/apache2/bin/apachectl -l > apache_module_pre.lst
cd /usr/local/src/httpd-2.2.4
./configure --enable-so --enable-rewrite=shared --with-included-apr --enable-proxy --enable-proxy-ajp
# ⇒aprがすでに入っている環境をリコンパイルする場合は--with-included-aprが必要みたい。よくわからん
echo $?
make clean
echo $?
make
echo $?
make install
echo $?
/usr/local/apache2/bin/apachectl -l > apache_module_post.lst
diff apache_module_pre.lst apache_module_post.lst
下記のとおりであること
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14a15,20
>   mod_proxy.c
>   mod_proxy_connect.c
>   mod_proxy_ftp.c
>   mod_proxy_http.c
>   mod_proxy_ajp.c
>   mod_proxy_balancer.c
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


③Javaインストール
cd /usr/local/src/
chmod 700 jrockit-R27.5.0-jdk1.4.2_16-linux-ia32.bin
./jrockit-R27.5.0-jdk1.4.2_16-linux-ia32.bin
(途中の選択肢は下記の通り選択すること)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter [Exit][Next]> Next
Enter new Product Installation Directory OR [Exit][Previous][Next]> /usr/local/jrockit-R27.5.0-jdk1.4.2_16
Enter option number to select OR [Exit][Previous][Next]> Next
Press [Enter] to continue or type [Exit]> [空のままでEnterを押す]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cd ..
ln -s jrockit-R27.5.0-jdk1.4.2_16 java

vi ~/.bash_profile 
(最終行に下記追加)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[空行]
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

source ~/.bash_profile


④Tomcatインストール
cd /usr/local/src
unzip apache-tomcat-4.1.37.zip
mv apache-tomcat-4.1.37 ../
cd ..
ln -s apache-tomcat-4.1.37 tomcat



cp tomcat /etc/init.d/
# ⇒tomcatファイルは適当に作る。ちゃんとjavaのプロセスを見るように作った方が良いかも
chmod 755 /etc/init.d/tomcat
chown root.root /etc/init.d/tomcat
chkconfig --add tomcat
chkconfig --level 2 tomcat on
chkconfig --list | grep tomcat

⑤ajp設定
cd /usr/local/apache2/conf/extra
vi httpd-vhosts-ajp.conf
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<Location [JkMount先]>
  ProxyPass ajp://localhost/[JkMount先]
</Location>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# ⇒<>は全角にしています。ブログに弾かれるため。。
# http.confのInclude行に上記conf追加

⑥Postgresインストール
groupadd postgres
useradd postgres
passwd postgres
[パスワード入力]

su - postgres

vi ~/.bash_profile 
(最終行に下記追加)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[空行]
export PATH="$PATH":/usr/local/pgsql/bin 
export POSTGRES_HOME=/usr/local/pgsql 
export PGLIB=$POSTGRES_HOME/lib 
export PGDATA=$POSTGRES_HOME/data 
export MANPATH="$MANPATH":$POSTGRES_HOME/man 
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$PGLIB"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

source ~/.bash_profile

exit

cd /usr/local/src
tar -zxvf postgresql-7.4.2.tar.gz
cd postgresql-7.4.2
./configure --enable-multibyte=EUC_JP
echo $?
make 
echo $?
make install
echo $?

cd /usr/local
chown -R postgres.postgres pgsql/

cp /usr/local/src/postgresql-7.4.2/contrib/start-scripts/linux /etc/init.d/postgres
chmod 755 /etc/init.d/postgres
chown root.root /etc/init.d/postgres
chkconfig --add postgres
chkconfig --level 2 postgres on
chkconfig --list | grep postgres


su - postgres


initdb -D /usr/local/pgsql/data -E EUC_JP
# ⇒この環境ではなぜかうまくいかず、もう一回リコンパイルするとできるようになる。

exit


cd /usr/local/src/postgresql-7.4.2
./configure --enable-multibyte=EUC_JP
echo $?
make clean
echo $?
make 
echo $?
make install
echo $?


su - postgres


initdb -D /usr/local/pgsql/data -E EUC_JP

⑦Postfixインストール
rpm -ihv postfix-2.3.3-2.rhel4.i386.rpm
echo $?
alternatives --config mta
#Enterを押して現在の選択[+]を保持するか、選択番号を入力します:2
alternatives --display mta

⑧稼働確認
/etc/init.d/postfix start

/etc/init.d/postgres start

/etc/init.d/tomcat start

/usr/local/apache2/bin/apachectl stop
tail -f [アクセスログ]
# ⇒アクセスがあることを確認

0 件のコメント:

コメントを投稿