2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

VMWare PlayerなCentOS5.3+Apache Tomcatのインストール手順!

手っ取り早く、VMWarePlayer&CentOS+Apache+Tomcat+Sambaサーバ を構築。目的としては、Windowsデスクトップ上でのServlet、JSPデバッグ環境の構築。
ここでは、VMWarePlayerでWindowsXP上にLinux(CentOS)の仮想環境を作り、SambaでLinux側にファイルサーバを立てて、Windows側からLinux側のフォルダへアクセス出来るようにして、Apache+TomcatでJavaアプリケーションサーバを構築して、サーブレットとJSPが動く環境を作る。本書は、その手順を説明する。

■インストールマシン環境
ノートPC FMV-S8200 CeleronM 1.3GHz
メモリ 1GB HDD 150GB

■ホストOS
WindowsXP Professional

■ゲストOS
CentOS5.3

■VMWare Player
VMWare-player-2.5.2

■仮想ディスク作成ソフト
qemu-0.9.0-windows


1.VMWarePlayerのダウンロードをインストール

1)VMWareのダウンロード
ここ
 から、ダウンロードしてインストールする。2009年8月現在は、VMwareplayer-2.5.2が最新だった。

2)VMWareのインストール
インストールは、Windows形式のインストールのため、特に難しくは無い。説明するまでも無いと思ったので割愛する。


2.qemuのダウンロードとインストール

1)まずは、ダウンロードとインストール

http://www.h7.dion.ne.jp/%7Eqemu-win/index-ja.html ここからダウンロードする。
qemu-0.9.0-windows.zipが最新であった。パッチ、 qemu-0.9.0-patches.zip もあるのでインストqemu-0.8.2-windows が最新であった。ファイルは、zip形式になってるため、ただ解凍して適当なフォルダへ放り込めばインストールは終わりである。

2)仮想ディスクを作成する
そして仮想ディスクを作る場合は、以下図1のように「DOS窓」からコマンドを打って仮想ディスクを作る。以下参照。

C:\> qemu-img.exe create -f vmdk C:\centos.vmdk 10G

注:仮想ディスク領域は、ここでは10Gで設定してるが、本来は自分のディスクサイズと相談して適正な容量を設定すること。
これにより、VMWare virtual disk fileが作成される。


3.VMwarePlayerのvmxファイルを作る


1)vmxファイルの記載内容を決める
適当なフォルダに、以下のようなVMwarePlayerのセットアップファイルcentos.vmxファイルを作る。以下に内容を示す。ここでは、isoイメージをC:\tmpへ予めダウンロードして用意しておく。isoイメージはあたかもCD-ROMドライブのCDのように扱われる。さらにmemサイズは、256程度がちょうど良いだろう。

2)vmxファイルを作成する
vmxファイルを作成する。以下、centos.vmxファイルの内容(例)

#VMWare Playerの場合のバージョン指定
.encoding = “Shift_JIS”

config.version = “8”

virtualHW.version = “3”

#ゲストOSの表示名
displayName = “CentOS”

uuid.action = “create”

#ゲストOSの識別名
guestOS = “rhel5”

nvram = “CentOS.nvram”

#仮想マシンのメモリサイズ指定
memsize = “256”

#USBデバイスが存在することを示すフラグ
usb.present = “TRUE”

#フロッピーはついていないマシンなのでFALSEにした
floppy0.present = “FALSE”

#プライマリのマスターハードディスクの指定
ide0:0.present = “TRUE”

ide0:0.fileName = “centos.vmdk”

ide0:0.deviceType = “disk”

ide0:0.autodetect = “TRUE”

ide0:0.mode = “persistent”

ide0:0.redo = “”

ide0:0.startConnected = “TRUE”

#プライマリのスレーブにはインストーライメージを設定する

ide0:1.present = “TRUE”

ide0:1.fileName = “C:\tmp\CentOS-5.3-i386-bin-DVD.iso”

ide0:1.deviceType = “cdrom-image”

ide0:1.mode = “persistent”

ide0:1.autodetect = “TRUE”

ide0:1.startConnected = “TRUE”

#セカンダリは未使用

ide1:0.present = “FALSE”

ide1:1.present = “FALSE”

#デフォルトではSCSIデバイスを使う設定になるため、
#SCSIが不要な場合は明示的に指定する
scsi0.present = “FALSE”

#イーサネットカードの設定
ethernet0.present = “TRUE”

ethernet0.connectionType = “bridged”

#サスペンド時の仮想マシン設定が保存されるファイル名
checkpoint.vmState = “”

#VMWare Toolsがインストールされていない場合にその旨を
#伝えるメッセージを表示するかどうかのフラグ
tools.remindInstall = “FALSE”

extendedConfigFile = “centos.vmxf”

virtualHW.productCompatibility = “hosted”
tools.upgrade.policy = “manual”

ethernet0.addressType = “generated”

#sharedFolder0.enabled = “TRUE”
#sharedFolder0.present = “TRUE”
#sharedFolder0.writeAccess = “TRUE”
#sharedFolder0.readAccess = “TRUE”
#sharedFolder0.hostPath = “/tmp” 
      #共有したいディレクトリ
#sharedFolder0.guestName = “mity”
#sharedFolder0.eXpiration = “never”
#sharedFolder.maxNum = “1”

tools.syncTime = “FALSE”

isolation.tools.hgfs.disable = “FALSE”


4.ゲストOSをインストールする


1)VMWareの起動

VMwarePlayerを起動して、centos.vmxを選択する。もしくは、そのままcentos.vmxを起動する

2)CentOSのインストール

C:\tmp\CentOS-5.3-i386-bin-DVD.isoがちゃんと有れば、CentOSのインストールが始まる

3)CentOSに関する設定

■ユーザアカウントとそのパスワードを作る
# useradd -g users ユーザ名

# passwd ユーザ名

■Proxyを設定する
以下を追加する。

# vi /etc/yum.conf
proxy=http://proxy3:8080/

■リポジトリを最適化する
yum-fastestmirrorを実行する。

# yum install yum-fastestmirror

■最新モジュールにアップデートする
以下のコマンドを実行して、アップデートする。

# yum -y update


5.Tomcatのインストール

1)JDKダウンロード

J2SEのサイト からリンクをDownload Java SE (J2SE)⇒Download JDK・・・とたどっていき、Accept License Agreementをチェックし、Linux RPM in self-extracting fileのリンクをクリックしてダウンロードし、サーバー上の適当なディレクトリへ格納する

2)JDKインストール

# chmod +x jdk-6u16-linux-i586-rpm.bin ← 実行権限付加

# ./jdk-6u16-linux-i586-rpm.bin ← JDKインストール

※ライセンスが大量に表示されるのでSPACEキー押下で流す

Do you agree to the above license terms? [yes or no]
yes ← yes応答
Unpacking…
Checksumming…
0
0
Extracting…
UnZipSFX 5.42 of 14 January 2001, by Info-ZIP (Zip-Bugs@lists.wku.edu).
inflating: jdk-6u16-linux-i586-rpm
Preparing… ########################################### [100%]
1:jdk ########################################### [100%]

Done.

# rm -f jdk-6u16-linux-i586-rpm ← 不要ならば抽出したRPMファイルを削除

# rm -f jdk-6u16-linux-i586-rpm.bin ← 不要ならばダウンロードしたファイルを削除


3)JDK設定

# vi /etc/profile ← 環境変数設定ファイルを編集
以下を最終行へ追加
export JAVA_HOME=/usr/java/jdk1.6.0_16
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

# source /etc/profile ← 環境変数設定を反映


4)JDK確認

JDKの動作確認のため、サンプルプログラムを作成して実行する
# vi HelloWorld.java ← JAVAサンプルプログラム作成
public class HelloWorld {
public static void main(String[] args) {
System.out.println(“Hello World”);
}
}

※Hello Worldと標準出力に出力するJAVAサンプルプログラム

# javac HelloWorld.java ← JAVAサンプルプログラムコンパイル

# ls -al ← JAVAサンプルプログラムコンパイル結果確認
合計 16
-rw-rw-r– 1 root root 425 3月 11 22:22 HelloWorld.class ← classファイルが作成されていることを確認
-rw-rw-r– 1 root root 115 3月 11 22:22 HelloWorld.java

# java HelloWorld ← JAVAサンプルプログラム実行
Hello World ← Javaサンプルプログラム実行結果

# rm -f HelloWorld.* ← 不要であれば作成したJAVAサンプルプログラムを削除

5)Tomcatインストール

# wget http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-5/jv5.5.28/bin/apache-tomcat-5.5.12.tar.gz ← Tomcatダウンロード

※最新版のURLはダウンロードページで確認すること

# tar zxvf apache-tomcat-5.5.12.tar.gz ← Tomcat展開

# mv apache-tomcat-5.5.12/ /usr/local/tomcat ← Tomcat展開ディレクトリをリネームして移動

# rm -f apache-tomcat-5.5.12.tar.gz ← 不要ならダウンロードしたTomcatを削除


6)Tomcat設定
環境変数にTomcatのパスを追加

# vi /etc/profile ← 環境変数を編集
以下を最終行へ追加
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
export CLASSPATH=$CLASSPATH:$CATALINA_HOME/common/lib

# source /etc/profile ← 環境変数を反映

7)Tomcat起動

# vi /etc/rc.d/init.d/tomcat ← Tomcat起動スクリプト作成
#!/bin/bash
#
# Startup script for the tomcat
#
# chkconfig: 345 80 15
# description: Tomcat is a Servlet+JSP Engine.

# Source function library.
. /etc/rc.d/init.d/functions
source /etc/profile

start(){
if [ -z $(/sbin/pidof java) ]; then
echo “Starting tomcat”
$CATALINA_HOME/bin/startup.sh
touch /var/lock/subsys/tomcat
else
echo “tomcat allready running”
fi
}

stop(){
if [ ! -z $(/sbin/pidof java) ]; then
echo “Shutting down tomcat”
$CATALINA_HOME/bin/shutdown.sh
until [ -z $(/sbin/pidof java) ]; do :; done
rm -f /var/lock/subsys/tomcat
else
echo “tomcat not running”
fi
}

case “$1” in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
$CATALINA_HOME/bin/catalina.sh version
;;
*)
echo “Usage: $0 {start|stop|restart|status}”
esac

exit 0

# chmod +x /etc/rc.d/init.d/tomcat ← Tomcat起動スクリプトに実行権限付加

# /etc/rc.d/init.d/tomcat start ← Tomcat起動
Starting tomcat
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.6.0_16
Using CLASS_PATH: /usr/local/tomcat/bin/bootstrap.jar

# chkconfig –add tomcat ← Tomcat起動スクリプトをchkconfigへ追加

# chkconfig tomcat on ← Tomcat自動起動設定

# chkconfig –list tomcat ← Tomcat自動起動設定確認
tomcat 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← ランレベル2と5のonを確認


8)Tomcat確認
http://サーバー名:8080/servlets-examples/ にアクセスしてServlet Examplesページが表示されることを確認
http://サーバー名:8080/jsp-examples/ にアクセスしてJSP Examplesページが表示されることを確認


9)JKインストール
URLに8080を指定しなくてもいいように、ApacheとTomcatを連携するためのコネクタであるJKをインストールする
httpd-develインストール
JKインストールに必要なapxsコマンドが含まれるhttpd-develをインストールする

# yum -y install httpd-devel ← httpd-develインストール

# wget http://www.meisei-u.ac.jp/mirror/apache/dist/tomcat/tomcat-connectors/jk/source/tomcat-connectors-current-src.tar.gz ← JKダウンロード

※最新版のURLはダウンロードページで確認すること

# tar zxvf tomcat-connectors-current-src.tar.gz ← JK展開

# cd tomcat-connectors-1.2.25-src/native/ ← JK展開先ディレクトリへ移動

# ./configure –with-apxs=/usr/sbin/apxs && make && make install ← JKインストール

# cp ../conf/workers.properties /etc/httpd/conf/ ← workers.propertiesをApache設定ファイル格納ディレクトリへコピー

# cd ../../ ← JK展開先ディレクトリを抜ける

# rm -rf tomcat-connectors-1.2.25-src/ ← 不要ならJK展開先ディレクトリを削除

# rm -f tomcat-connectors-current-src.tar.gz ← 不要ならダウンロードしたJKを削除

10)JK設定

Apache設定
# vi /etc/httpd/conf/httpd.conf
ServerNameを追加

# vi /etc/httpd/conf.d/jk.conf ← Apache用JK設定ファイル作成
LoadModule jk_module modules/mod_jk.so
JkWorkersFile /etc/httpd/conf/workers.properties
JkMount /servlets-examples/* ajp13
JkMount /jsp-examples/* ajp13

# /etc/rc.d/init.d/httpd restart ← Apache再起動
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]

Apacheの起動登録
# chkconfig httpd on

Tomcat設定
# vi /usr/local/tomcat/conf/server.xml ← Tomcat設定ファイル編集
<!– Define a non-SSL HTTP/1.1 Connector on port 8080 –>
<!– ← 追加(ポート8080でのTomcatアクセスを無効化)
<Connector port=”8080″ maxHttpHeaderSize=”8192″
maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″
enableLookups=”false” redirectPort=”8443″ acceptCount=”100″
connectionTimeout=”20000″ disableUploadTimeout=”true” />
–>
 ← 追加(ポート8080でのTomcatアクセスを無効化)

# /etc/rc.d/init.d/tomcat restart ← Tomcat再起動
Shutting down tomcat
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.6.0_16
Starting tomcat
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.6.0_16

11)JK確認
http://サーバー名:8080/servlets-examples/にアクセスしてエラーとなることを確認
http://サーバー名:8080/jsp-examples/にアクセスしてエラーとなることを確認

http://サーバー名/servlets-examples/にアクセスしてServlet Examplesページが表示されることを確認
http://サーバー名/jsp-examples/にアクセスしてJSP Examplesページが表示されることを確認


6.ファイルの共有


sambaを入れて、ホストOSとゲストOS間のファイル共有を実現する

1)サンバをインストール

# yum -y install samba

2)サンバを設定

# more /etc/samba/smb.conf

[global]

workgroup = NEWFACE
server string = Samba Server Version %v

; netbios name = MYSERVER

# logs split per machine
; log file = /var/log/samba/%m.log
# max 50KB per log file, then rotate
; max log size = 50

security = user
passdb backend = tdbsam

load printers = no
cups options = raw

#============================ Share Definitions ==============================

[homes]
comment = Home Directories
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S

[public]
comment = Public Stuff
path = /tmp
public = yes
writable = yes
printable = no
; write list = +staff

3)サンバの再起動

# /etc/init.d/smb restart

4)サンバユーザを作る

# smbpasswd -a ユーザ名
※ユーザ名は、Linuxユーザアカウント

5)サンバの起動登録

# chkconfig smb on

以上

コメント