目次
はじめに
本ページでは、OpenSolaris がインストールされた環境に GlassFish と OpenSSO をインストール・設定する方法について説明します。
対象ソフトウェア
- OpenSolaris 2008.05
- GlassFish V2 UR2 最終ビルド (多言語版)
- OpenSSO ナイトリー・ビルド (執筆時点の版は 20080531.1)
JDK のインストール
ユーザ root に su し、pkg install を実行して、対象の各パッケージ (SUNWj6dev、SUNWj6cfg、SUNWj6man、SUNWj6dmo) をインストールします。
$ su Password: # pkg install -v SUNWj6dev SUNWj6cfg SUNWj6man SUNWj6dmo Before evaluation: UNEVALUATED: +pkg:/SUNWj6dev@0.5.11,5.11-0.86:20080426T174949Z +pkg:/SUNWj6cfg@0.5.11,5.11-0.86:20080426T174949Z +pkg:/SUNWj6man@0.5.11,5.11-0.86:20080426T175029Z +pkg:/SUNWj6dmo@0.5.11,5.11-0.86:20080426T175002Z After evaluation: None -> pkg:/SUNWj6dev@0.5.11,5.11-0.86:20080426T174949Z None -> pkg:/SUNWj6cfg@0.5.11,5.11-0.86:20080426T174949Z None -> pkg:/SUNWj6man@0.5.11,5.11-0.86:20080426T175029Z None -> pkg:/SUNWj6dmo@0.5.11,5.11-0.86:20080426T175002Z None DOWNLOAD PKGS FILES XFER (MB) Completed 4/4 1900/1900 70.40/70.40 PHASE ACTIONS Install Phase 2354/2354 #
JDK がインストールされたことを確認します。
# exit $ command -v javac /usr/bin/javac
GlassFish のインストール
配布アーカイブの展開
一般ユーザ (本稿では demo) として、GlassFish のインストールを実行します。
$ pwd
/export/home/demo
$ java -Xmx256m -jar ~/tmp/glassfish/glassfish-installer-v2ur2-b04-sunos_x86-ml.jar
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
(中略)
Accept or Decline? [A,D,a,d] A
glassfish
glassfish/imq
glassfish/imq/lib
(中略)
glassfish/registry.properties
glassfish/3RD-PARTY-LICENSE.txt
installation complete
$ cd glassfish
$ chmod -R +x lib/ant/bin
$ lib/ant/bin/ant -f setup.xml
Buildfile: setup.xml
all:
[mkdir] Created dir: /export/home/demo/glassfish/bin
(中略)
create.domain:
[exec] Admin のポート 4848 を使用しています。
[exec] HTTP Instance のポート 8080 を使用しています。
[exec] JMS のポート 7676 を使用しています。
[exec] IIOP のポート 3700 を使用しています。
[exec] HTTP_SSL のポート 8181 を使用しています。
[exec] IIOP_SSL のデフォルトポート 3820 を使用しています。
[exec] IIOP_MUTUALAUTH のデフォルトポート 3920 を使用しています。
[exec] JMX_ADMIN のデフォルトポート 8686 を使用しています。
[exec] 設定ファイルの変数 AS_ADMIN_PROFILE による の指定どおりにプロファイル developer を使用してドメインを作成しています。
[exec] 指定されたロケール [ja_JP] のファイルが [/export/home/demo/glassfish/lib/install/templates/locales/ja_JP/index.html] に見つかりませんでした。デフォルト (en_US) の index.html を使用します。
[exec] 使用するセキュリティーストア: JKS
[exec] ドメイン domain1 が作成されました。
[exec] このドメイン [domain1] の管理ユーザー名 [admin] に関連するログイン情報が [/export/home/demo/.asadminpass] に正常に格納されました。
[exec] このファイルが保護されたままであることを確認します。このファイルに格納された情報は、このドメインを管理するために asadmin コマンドによって使用されます。
[delete] Deleting: /export/home/demo/glassfish/passfile
BUILD SUCCESSFUL
Total time: 37 seconds
$
domain.xml の修正
~/glassfish/domains/domain1/config/domain.xml を編集し、以下の記述を変更します。
変更前
<jvm-options>-client</jvm-options>
(中略)
<jvm-options>-Xmx512m</jvm-options>
変更後
<jvm-options>-server</jvm-options>
(中略)
<jvm-options>-Xmx1G</jvm-options>
| -Xmx の値の調整 OpenSSO の初期設定時にエラーが発生した場合には、-Xmx の値を 512m に戻すなどして調整してみてください。 |
GlassFish の起動
asadmin start-domain を実行します。
$ ~/glassfish/bin/asadmin start-domain ドメイン domain1 を起動しています。お待ちください。 ログは /export/home/demo/glassfish/domains/domain1/logs/server.log にリダイレクトされます。 出力を /export/home/demo/glassfish/domains/domain1/logs/server.log にリダイレクトしています ドメイン domain1 はクライアントの要求を受信する準備ができています。追加のサービスがバックグラウンドで開始されます。 ドメイン [domain1] はその設定で [Sun Java System Application Server 9.1_02 (build b04-fcs)] を実行しています。ログは [/export/home/demo/glassfish/domains] にあります。 管理コンソールは [http://localhost:4848] で使用できます。 "asadmin" コマンドにも同じポート [4848] を使用します。 ユーザーの Web アプリケーションは次の URL で使用できます: [http://localhost:8080 https://localhost:8181 ]。 次の web-contexts を使用できます: [/web1 /__wstx-services ]。 標準の JMX クライアント (JConsole など) はドメイン管理のために JMXServiceURL: [service:jmx:rmi:///jndi/rmi://opensolaris:8686/jmxrmi] に接続できます。 ドメインは少なくとも次のポートで接続を待機しています: [8080 8181 4848 3700 3820 3920 8686 ]。 ドメインはアプリケーションサーバークラスタおよびその他のスタンドアロンインスタンスをサポートしません。 $
OpenSSO の配備・設定
opensso.war を GlassFish に配備
asadmin deploy を実行し、OpenSSO を GlassFish に配備します。
$ ~/glassfish/bin/asadmin deploy ~/tmp/opensso/20080531.1/opensso.war コマンド deploy は正常に実行されました。 $ ~/glassfish/bin/asadmin list-components opensso <web-module> コマンド list-components は正常に実行されました。 $
OpenSSO の初期設定
設定オプションの選択
Web ブラウザを起動し、http://opensolaris.example.com:8080/opensso にアクセスします。
| FQDN の設定 OpenSSO の初期設定時にアクセスするホスト名は、localhost や 127.0.0.1、あるいは opensolaris などではなく、FQDN である必要があります。初期設定に先立ち、/etc/hosts を編集し FQDN を追加しておいてください。本稿では opensolaris.example.com としています。 127.0.0.1 opensolaris opensolaris.local localhost loghost opensolaris opensolaris.example.com |
ここでは 「カスタム設定」 を実行するために、「新しい設定の作成」 をクリックします。
手順 1: 一般
OpenSSO の管理ユーザ (amAdmin) のパスワードを入力し、Next をクリックします。
手順 2: サーバー設定
Cookie ドメインが適切に設定されていること (本稿では .example.com) を確認し、Next をクリックします。
手順 3: 設定ストア設定
- First Instance
- 組み込み (Open DS)
- ポート: 50389
のように選択されていることを確認し、Next をクリックします。
手順 4: ユーザーストア設定
初期状態では 「リモートディレクトリ」 が選択されています。
これを 「組み込み」 に変更し、Next をクリックします。
手順 5: サイト設定
「いいえ」 が選択されていることを確認し、Next をクリックします。
手順 6: Default Agent User
デフォルト・エージェント (amldapuser) のパスワードを入力し、Next をクリックします。
手順 7: Configurator Summary Details
設定される内容を確認し、「設定の作成」 をクリックします。
設定が開始されます。
しばらくすると設定が完了し、上のようなダイアログが表示されます。
動作確認
先のダイアログにある 「ログインに進む」 をクリックすると、ログイン・ページが表示されます。User Name に amadmin、Password にさきほど指定したパスワードを入力し、「ログイン」 をクリックします。
![]()
| もしログイン・ページが表示されなかったら OpenSSO の設定完了後に GlassFish を再起動し、直接 http://opensolaris.example.com:8080/opensso へアクセスしてください。 $ ~/glassfish/bin/amadmin stop-domain && ~/glassfish/bin/amadmin start-domain |
管理ユーザ amadmin によってログインすることで、管理者向けのページが表示されます。
右上の 「ログアウト」 ボタンをクリックし、ログアウトします。
再度ログイン・ページへアクセスし、今度は User Name に demo、Password に changeit と入力し、「ログイン」 をクリックします。
エンド・ユーザ向けのページが表示されます。
以上で動作確認は完了です。
サービスの停止
asadmin stop-domain を実行し、GlassFish を停止します。
$ ~/glassfish/bin/asadmin stop-domain ドメイン domain1 が停止しました。 $