バナー

GlassFishインストール編

GlassFishとは

SUN Microsystems Inc.が開発しているアプリケーションサーバをオープンソース化したもののようです。 詳しくは、GlassfishのWebサイトをごらんください。 とりあえずTomcatより速いということみたいなのでインストールしてみます。

ダウンロード

日本語のサイトでは最新版はGlassFish V2となっていますが、英語版でよければGlassFish V2 Update Release 1が最新の安定版です。 また、GlassFish V2の国際化版のダウンロードファイル名が全てglassfish-installer-v2-b58g-ml.jarとなっているのでlinux版とかWindows版を同時にダウンロードする場合は注意が必要です。 今回は、最新ということでGlassFish V2 Update Release 1をダウンロードしてみました。 この他、99.99%の可用率を実現するHADBによるセッションレプリケーションをバンドルしたものは、SUNから有償での提供となるようですので無償版ではインメモリのセッションレプリケーションのみの対応です。 また、実行するにはJAVAのSDKが必要となりますのでSUNのサイトからダウンロードしてください。今回は、執筆時点での最新版であるJDK6Update4をダウンロードしました。

インストール

Linux

Glassfishをインストールするディレクトリに移動して、コマンドラインから以下のコマンドを実行します。

Linux
% cd anyinstalldir
% java -Xmx256m -jar downloaddir/glassfish-installer-v2ur1-b09d-linux.jar
Windows
% cd anyinstalldir
% java -Xmx256m -jar downloaddir\glassfish-installer-v2ur1-b09d-linux.jar

glassfishというディレクトリが作成されファイルが展開されます。次にセットアッププログラムを起動して初期設定を行います。 今回は2台のアプリケーションサーバを連携させるのでクラスタ用のセットアップをします。

Linux
% cd glassfish
% chmod -R +x lib/ant/bin
% lib/ant/bin/ant -f setup-cluster.xml
Windows
% cd glassfish
% lib\ant\bin\ant -f setup-cluster.xml
以上で必要な初期設定がされます。

管理サーバ起動

今回予定している構成は図の通りで、App1とApp2にGlassFishをインストールしました。
GlassFishでもHTTPを受けられますが、今回は別途Apache2.2をインストールしたWebサーバをたてて特定のURIをApp1、App2に転送することにします。

よって、管理サーバはlinuxマシンのみで起動します。
%asadmin start-domain

これでlinuxマシンでDomain1というドメインで管理サーバが起動しました。 管理サーバはPort 4848で起動していますので以下のURLにて接続できます。

http://192.168.0.2:4848/

管理画面へのデフォルトのID/Passwordはadmin/adminadminとなっております。

Node-Agent起動

GlassFishでアプリケーションサーバのクラスタを作成する場合、各ノードでNode-Agentを起動しておきます。 各Node-Agentと管理サーバが通信を行い一台の管理サーバでクラスタの管理をすることができます。 最初にNode-Agentを作成するために、各ノードにて以下のコマンドを実行してください。

%asadmin create-node-agent --host 192.168.0.2 Node-Agent-Name

Node-Agent-Nameは、ユニークな任意の名前です。 Node-Agentを起動するには、各ノードにて次のコマンドを実行します。

%asadmin start-node-agent Node-Agent-Name

これで管理サーバのnode-agentの所にApp1、App2が起動中のステータスになれば準備完了です。

注意点

管理サーバと各ノードはデフォルトで名前ベースで通信するようですので各サーバは名前で接続できる必要があります。 IPアドレスで行いたい場合は、管理サーバのノード管理にて各ノードのclientnameをIPアドレスに変更してください。