BigAdmin System Administration Portal
Solaris ゾーンでの Sun Java System Application Server 9.1 のインストール
Print-friendly VersionPrint-friendly Version

この記事では、Solaris 10 ゾーンに Sun Java System Application Server 9.1 をインストールする方法を説明します。可能インストールおよびアップグレードのシナリオ、制限事項、およびこれらに対処する方法について説明します。

目次

Sun Java System Application Server 9.1 は、オープンソースである GlassFish Version 2 アプリケーションサーバーの Sun がサポートしているディストリビューションです。この記事では、区別が必要な場合を除いて、Application Server という記述で両方のアプリケーションサーバーを表します。

この記事を通して、Solaris および Solaris OS という記述は、区別が必要な場合を除き、Solaris 10 オペレーティングシステムを表します。

Solaris ゾーンは、集中ソフトウェア管理や高い信頼性が重要な場合の配備に有効です。Solaris ゾーンに Application Server をインストールする場合は、特別な注意が必要です。

Solaris OS のゾーンについて

Solaris ゾーンは、Solaris OS 内部で分割された仮想 OS 環境です。各ゾーンは 1 台のマシン内で、完全に分離された仮想サーバーとして動作します。オペレーティングシステムの資源管理機能と一緒に使用された場合、Solaris 「コンテナ」として知られているゾーンが基本型となります。

アプリケーションは、ゾーンを独立した安全なオペレーティングシステム環境と見なします。したがって、アプリケーションを別のゾーンにインストールしてそれぞれ分離しながら、特定のオペレーティングシステム資源の集中管理を維持することができます。

複数ゾーンをサポートするオペレーティングシステムから見ると、オペレーティングシステム資源には、プロセス管理、メモリー、ネットワーク設定、ファイルシステム、パッケージレジストリ、ユーザーアカウント、共用ライブラリ、場合によってはインストールされたアプリケーションなどがあります。

Solaris OS には、常に 1 つのゾーン (「大域」ゾーン) が定義されます。大域ゾーンとは、Solaris OS がインストールされている従来の OS 環境です。大域ゾーンには、他のゾーンを含めることができます。大域ゾーンがホストしたゾーンは、「非大域」ゾーンまたは単にゾーンと呼ばれます。

ゾーンは最小のディスク容量で作成できます。これらのゾーンは「疎ゾーン」と呼ばれます。または、オペレーティングシステム全体を複製する、「完全ルートゾーン」を作成できます。

次の図では、ゾーン、大域ゾーン、オペレーティングシステムのカーネル、および基礎となるハードウェア資源の関係を示しています。

Solaris ゾーンによるアプリケーションの分離
図 1 Solaris ゾーンによるアプリケーションの分離
ここをクリックすると大きな画像が表示されます。
 

詳しい概要は、OpenSolaris Zones and Containers FAQを参照してください。詳細は、『Solaris のシステム管理 (Solaris コンテナ: 資源管理と Solaris ゾーン)』を参照してください。

Application Server について

Application Server (Sun Java System Application Server 9.1 および GlassFish Version 2) はソースをダウンロードして、バイナリとして入手できます。バイナリは、ネイティブパッケージベースの形式 (Linux OS の RPM パッケージ、および Solaris OS の SVR4 パッケージ) でも配布されます。この記事では、ダウンロード可能なスタンドアロンのパッケージベースインストーラを通してインストールされたネイティブ Solaris パッケージベースのバイナリのインストールについてのみ説明します。ファイルベースのインストーラ (一般的には zip 形式) は、書き込み可能なディレクトリにインストールするかぎり、ゾーンサポートの制限を受けることなくどこにでもインストールできます。

次のインストールオプションは、Solaris ゾーンで Application Server をインストールまたはアップグレードするときに、混乱の原因となる可能性があります。

  • Solaris OS 10 にバンドルされた Application Server – Solaris 10 OS に Sun Java System Application Server の Version 8.x がバンドルされ、/usr/appserver 以下にインストールされます。

  • Solaris OS 10 にバンドルされた Sun Java System Message Queue – Solaris 10 OS に Sun Java System Message Queue (以降、Message Queue) の Version 3.7 Update Release 1 がバンドルされ、/usr 以下にインストールされます。

  • インストール済みの Java Enterprise System (Java ES) – 以前のバージョンの Java ES パッケージが、いずれかのゾーンにインストールされている可能性があります。この場合、Java ES インストーラは、以前の Java ES インストーラによってインストールされた Application Server と Message Queue のアップグレード版を自動的に処理します。ただし、Message Queue は大域ゾーンと完全ルートゾーンでのみアップグレード可能で、疎ゾーンではアップグレードできません。

  • SVR4 パッケージの伝播レベルの違い - Application Server パッケージと関連したコンポーネントのゾーン内の伝播は、インストールの方法に応じて異なる場合があります。たとえば、次のような場合があります。

    • Solaris にバンドルされた Application Server の場合、パッケージはすべてのゾーンに伝播されるように設定されます。結果として、大域ゾーンからパッケージを削除すると、疎ゾーン内にあるこのパッケージの参照は削除されます。

    • Solaris にバンドルされた Application Server を Java ES インストーラを使ってアップグレードする場合、伝播レベルは「大域ゾーン」のみにリセットされます。

    • Application Server インストーラは、Sun Java System Message Queue 4.1、High-Availability Database 4.4.3-6 (HADB)、JDK 5 Update 12 などの一連の共用コンポーネントもインストールします。Application Server インストーラは、大域ゾーンおよび完全ルートゾーンでこれらのコンポーネントの古いバージョンを検出すると、自動的にコンポーネントをアップグレードします。HADB は疎ゾーンでアップグレードできます。

    • Sun Java System Application Server 9.1 の Application Server と HADB パッケージ部分は、大域ゾーンにインストールするときに、ほかのゾーンに伝播されません。結果として、大域ゾーンにインストールした Application Server のバージョンと競合することなく、非大域ゾーンに複数のバージョンをインストールすることができます。

    • 一方、共用コンポーネントと Message Queue のパッケージは、Application Server が大域ゾーンにインストールされるときに、常にすべてのゾーンに伝播されます。

次の節では、ゾーンにインストールされた既存の Application Server の種類を考察し、新しいインストールとの関連について説明します。

Application Server が大域ゾーンにインストールされる前に、インストール環境は次の条件の 1 つを満たします。

  1. Solaris バンドル版の Application Server が、大域ゾーンにインストールされている。

  2. Java ES ソフトウェアのいずれかのバージョンがインストールされている。

  3. バンドル版の Application Server も、以前のバージョンの Java ES もインストールされていない。これは、Application Server がインストールされていない、「クリーン」な環境です。

明らかに環境がクリーンな場合 (前述の 3 の場合) は、否定的な結果や予測できない結果にならず、Application Server のインストーラを使用して直接インストールできます。ここでは、最初の 2 つのケースについて、その関連を考察します。

Solaris バンドル版から Application Server が大域ゾーンにインストールされている場合

バンドル版の Application Server が大域ゾーンにインストールされているかどうかを判断するには、次の手順を実行する必要があります。

  1. システムで Application Server SVR4 パッケージを検索します。Solaris 10 の一部としてインストールされた Application Server パッケージの正式なリストは、オンラインの『Sun OS Package List』で確認できます。

    このリストから、Application Server パッケージの SUNWasacSUNWascmnSUNWasdbSUNWasdemSUNWasdemdbSUNWasjdocSUNWasmanSUNWasrSUNWasu、および SUNWasut を検索します。Solaris 10 Update 3 以上を使用している場合は、SUNWasjavadb パッケージ (Application Server のみで使用される非公開バージョンの Java DB) もインストールされます。

  2. バンドル版 Application Server のインストールディレクトリの内容を検証します。Solaris 10 バンドル版の Application Server は、常に /usr/appserver 以下にインストールされます。Application Server のバージョンを確認するには、コマンド /usr/appserver/bin/asadmin version -v を実行します。このコマンドの実行パスにより、Java ES ではなく、/usr/appserver 以下にインストールされた Application Server を確実に検索できます。バージョン番号を記録します。以降のインストールの実行方法を決定する際に役立ちます。

  3. Solaris バンドル版の Application Server から作成されたデフォルトドメインが存在するかどうか、および使用されているかどうかを確認します。そのドメインがアクティブであるか、また使用されている場所がわからない場合は、次の手順で Application Server の製品全体の設定ファイル asenv.conf を調査してドメインを探します。ファイルのパスを次の方法で探します。

    1. エディタでファイル /usr/appserver/bin/asadmin の内容を表示し、asenv.conf という文字列を検索します。asadmin ファイルのこの文字列を含む行に asenv.conf ファイルの絶対パスが示されます。

    2. asenv.conf ファイルの場所を確認したら、そのファイルを開き、インストールのデフォルトドメインの場所を確認します。AS_DEF_DOMAINS_PATH トークンは、デフォルトドメインと新しく作成されたドメインがある domains ルートディレクトリの値を含みます。このパスは、上書きオプションの --domaindir を使用して変更できます。

バンドル版の Application Server がシステムにインストールされていることを確認したら、以降のインストールおよびアップグレードに関して次の点を考慮する必要があります。

  • 使用しているシステムで、大域ゾーンにバンドル版の Application Server がインストールされている場合、大域ゾーンにインストールされている Application Server と Message Queue パッケージが、デフォルトでほかのゾーンに伝播されるように設定されていることを認識する必要があります。疎ゾーンを使用する場合は、おそらくそれぞれに個別の Application Server があるため、大域ゾーンの Application Server をアンインストールする必要があります。アンインストールするには、『Solaris 10 パッケージリスト』に示されている上述の SVR4 パッケージのすべてを削除する必要があります。

  • 疎ゾーンで個別の Application Server を使用しない場合は、SVR4 パッケージを削除する必要はありません。

大域ゾーンから Application Server を削除したら、新しいディレクトリかアップグレードした既存のインストールディレクトリのいずれかに Application Server をインストールでき、必要なファイルを上書きします。既存のディレクトリを使用して以前のバージョンを上書きする場合は、/usr をインストールディレクトリとして選択します。インストールパスには、appserver が自動的に付加されます。

注: バンドル版の Application Server を使用していて、アクティブなドメインがある場合は、/usr 以下にバイナリをインストールしないように注意してください。インストールによってデフォルトドメインのディレクトリが上書きされます。このような場合は、別のインストールディレクトリを指定します。インストール後に、Upgrade Tool (InstallDir/bin/asupgrade にある) を使用して、アプリケーションを以前のドメインから新しいインストールのドメインに移動します。このツールは、Application Server の一部としてインストールされます。詳細は、『Sun Java System Application Server 9.1 Upgrade and Migration Guide』を参照してください。

 

Application Server を /usr 以下の大域ゾーンにインストールすると、ほかの疎ゾーンからこのディレクトリを参照 (読み取り専用のエントリとしてマウント) できるため、Application Server のバイナリを使用して疎ゾーンにドメインを作成できるという利点があります。Application Server がファイル (ドメイン、データベースログ、プロパティーファイルなど) を書き込む場所は、書き込み可能なディレクトリに変更する必要があります。asadmin コマンドを実行するときに、ディレクトリを指定できます。たとえば、次のコマンドは、writable_dir/domains に管理ドメインを作成します。このディレクトリは、Application Server が書き込み権を持つディレクトリです。

asadmin create-domain --domaindir writable_dir/domains
 

同様に、次のコマンドは Java DB サーバーを起動し、writable_dirderby.log ファイルとその他のデータベースファイルを保存するディレクトリとして指定します。

asadmin start-database --dbhome writable_dir
 

asadmin ユーティリティーコマンドのヘルプを表示するには、asadmin を入力し、asadmin> プロンプトで help と入力します。利用可能な管理コマンドとそのオプションのリストについては、『Sun Java System Application Server 9.1 Administration Guide』を参照してください。

Java ES ソフトウェアのいずれかのバージョンがインストールされている場合

Sun Java System Application Server 9.1 と Java ES のインストール中に作成されたデフォルトドメインのディレクトリの場所は異なります。Java ES では、デフォルトの場所は /var/opt/SUNWappserver/domains です。Java ES インストーラと異なり、Application Server インストーラではドメインのルートディレクトリを選択できません。ドメインは常に、インストール時に選択したインストールディレクトリ以下に作成されます。したがって、Java ES のインストール中にドメインルートとインストールルートが明示的に同じディレクトリに設定されていないかぎり、domains ディレクトリを上書きする心配はありません。

Sun Java System Application Server 9.1 インストーラは、Java ES 5 Update 1 からのアップグレードのみをサポートします。それ以前のバージョンの Java ES を使用している場合は、最初に Java ES 5 Update 1 にアップグレードし、Sun Java System Application Server 9.1 インストーラを実行します。

Java ES 5 Update 1 には、Sun Java System Application Server 8.2 Update 1 Enterprise Edition が含まれ、これがインストールされます。このバージョンと Sun Java System Application Server 9.1 は、同じ SVR4 パッケージ名を維持しています。したがって、異なる 2 つのバージョンを同じマシンにインストールすることはできません。デフォルトドメインのディレクトリはインストーラごとに異なるため、アップグレードは次のように段階的に実行します。

  1. Java ES 5 Update 1 の一部としてインストールされた既存の Application Server パッケージを削除して、バイナリをアップグレードします。続いて、Sun Java System Application Server 9.1 パッケージを選択したディレクトリにインストールします。この処理は、Sun Java System Application Server 9.1 インストーラによって自動的に実行されます。

  2. バイナリがアップグレードされると、Sun Java System Application Server 9.1 の Upgrade Wizard が実行されます。このツールは、新しくインストールされた Application Server から bin/asupgrade コマンドを入力することによって起動できます。Upgrade Wizard で、Java ES 5 Update 1 ドメインディレクトリを「ソースドメインディレクトリ」として指定し、Sun Java System Application Server 9.1 ドメインディレクトリを「ターゲットドメインのルートディレクトリ」として指定します。

詳細は、『Sun Java System Application Server 9.1 Upgrade and Migration Guide』を参照してください。

ゾーンの観点では、Java ES 5 Update 1 によってインストールされたパッケージの伝播レベルが、Application Server を Sun Java System Application Server 9.1 にアップグレードするときに変更されないことが重要です。

疎ゾーンは、大域ゾーンの単一のインストールを組織のすべてのユーザーで共有する必要がある場合の配備で使用されます。疎ゾーンの作成に費用はかかりません。疎ゾーンを使用する利点の 1 つは、大域ゾーンからパッチを適用するときに、インストールをすべての疎ゾーンで参照できることです。

疎ゾーンへのインストールは、次のような条件により、大域ゾーンへのインストールよりも難しくなります。

Solaris バンドル版の Application Server が大域ゾーンにインストールされている場合

バンドル版の Application Server が大域ゾーンにインストールされているかどうかを判断するには、次の手順を実行します。

  1. システムで Application Server SVR4 パッケージを検索します。Solaris 10 の一部としてインストールされた Application Server パッケージの正式なリストは、オンラインの『Solaris 10 パッケージリスト』で確認できます。

    このリストから、Application Server パッケージの SUNWasacSUNWascmnSUNWasdbSUNWasdemSUNWasdemdbSUNWasjdocSUNWasmanSUNWasrSUNWasu、および SUNWasut を検索します。Solaris 10 Update 3 以上を使用している場合は、SUNWasjavadb パッケージ (Application Server のみで使用される非公開バージョンの Java DB) もインストールされます。

  2. バンドル版 Application Server のインストールディレクトリの内容を検証します。Solaris 10 バンドル版の Application Server は、常に /usr/appserver 以下にインストールされます。アプリケーションサーバーのバージョンを確認するには、/usr/appserver/bin/asadmin version -v コマンドを実行します。このコマンドの実行パスにより、Java ES バンドル版ではなく、/usr/appserver 以下にインストールされている Solaris バンドル版の Application Server のバージョンを確実に検索できます。

  3. Solaris バンドル版の Application Server から作成されたデフォルトドメインが存在するかどうか、および使用されているかどうかを確認します。そのドメインがアクティブであるか、また使用されている場所がわからない場合は、次の手順でドメインを探します。

    1. ファイル /usr/appserver/bin/asadmin の内容をエディタで表示します。

    2. asadmin ファイル内で、asenv.conf という文字列を検索します。この文字列を含む行は、asenv.conf ファイルの絶対パスを示しています。

    3. asenv.conf ファイルを開き、インストールのデフォルトドメインの場所を確認します。AS_DEF_DOMAINS_PATH トークンは、デフォルトドメインと新しく作成されたドメインがある domains ルートディレクトリの値を含みます。このパスは、上書きオプションの --domaindir を使用して変更できます。

バンドル版の Application Server が大域ゾーンに存在することを確認したら、手順 1 に示されているすべてのパッケージを削除して、Application Server をアンインストールします。続いて、pkgrm コマンドを使用して、大域ゾーンの /usr/appserver ディレクトリの内容を確認して削除します。

バンドル版の Application Server のパッケージは、デフォルトですべてのゾーンに伝播するように設定されているため、大域ゾーンからの Application Server の削除は、疎ゾーンに伝播されます。

Solaris バンドル版の Message Queue が大域ゾーンにインストールされている場合

Solaris バンドル版の Application Server と同様に、Message Queue パッケージも大域ゾーンの /usr ディレクトリ以下にインストールされます。したがって、疎ゾーンから上書きすることはできません。Message Queue パッケージは再配置可能でなく、常に /usr 以下にインストールされます。このディレクトリは、疎ゾーンの読み取り専用のマウントポイントです。

したがって、疎ゾーンに Application Server バイナリをインストールする前に、Application Server インストーラを使用して Message Queue を大域ゾーンにインストールします。

次のいずれかの方法で、大域ゾーンで Message Queue をインストールまたはアップグレードできます。どちらの方法でも、以前のバージョンのパッケージが見つかった場合はアップグレードされているか確認してください。

  1. Application Server のインストールでは、Message Queue のコンポーネントを明示的に選択することはできません。これらのコンポーネントは非表示で、ほかのコンポーネントをインストールするときに自動的に選択または選択解除されます。インストール可能な Application Server のコンポーネントを選択すると、Message Queue コンポーネントは常に選択されます。たとえば、Sun Java System Application Server 9.1 インストーラを実行して、「サンプルアプリケーション」 を選択すると、Message Queue 4.1 が Application Server インストールの一部としてインストールされます。

  2. あるいは、ブラウザを使用して Open Message Queue download pageにアクセスし、「Latest Open MQ 4.1 GUI Install Downloads」の下にある Solaris の該当するリンクをクリックして、Message Queue 4.1 SVR4 パッケージをインストールします。
Application Server が Java ES によって大域ゾーンにインストールされている場合

Application Server が Java ES インストールによって大域ゾーンにインストールされている場合は、大域ゾーンにインストールされた共用コンポーネントと Message Queue が疎ゾーンに伝播されます。ただし、Application Server は伝播されません。

Application Server を疎ゾーンにインストールするには、次の手順に従います。

  1. 疎ゾーンへのインストールの前に、次の準備作業を実行します。

    1. 大域ゾーンで Sun Java System Application Server 9.1 インストーラを実行します。

    2. インストーラで、「高可用性データベースサーバー」または「サンプルアプリケーション」を選択します。

    3. JDK をインストールするように選択し、すべてのコンポーネントをアップグレードします。

  2. Application Server を疎ゾーンにインストールします。
Application Server が Java ES によって疎ゾーンにインストールされている場合

Java ES によって疎ゾーンにインストールされた Application Server をアップグレードするには、次の手順に従います。

  1. 大域ゾーンで Sun Java System Application Server 9.1 インストーラを実行します。

    1. インストーラで、「高可用性データベースサーバー」または「サンプルアプリケーション」を選択します。

    2. JDK をインストールするように選択し、すべてのコンポーネントをアップグレードします。

  2. Sun Java System Application Server 9.1 インストーラを疎ゾーンで実行し、疎ゾーンの Java ES インストールをアップグレードします。

  3. バイナリがアップグレードされると、Sun Java System Application Server 9.1 の Upgrade Wizard が実行されます。このツールは、新しくインストールされた Application Server から bin/asupgrade コマンドを入力することによって起動できます。詳細は、『Sun Java System Application Server 9.1 Upgrade and Migration Guide』を参照してください。
Sun Java System Application Server 9.1 インストーラによって Application Server が大域ゾーンにインストールされている場合

Application Server インストーラによって Application Server が大域ゾーンにインストールされている場合は、Application Server パッケージは疎ゾーンに伝播されないため、別のバージョンの Application Server を疎ゾーンにインストールすることができます。

完全ルートゾーンでは、パッケージが大域ゾーンからコピーされます。これらのパッケージは伝播されます。完全ルートゾーンでは、パッケージが大域ゾーンからコピーされていてもローカルにパッチを適用することができるため、設定の柔軟さが向上します。

完全ルートゾーンでの Application Server のインストールは、ほかのゾーンでのインストールよりも簡単です。Application Server のすべてのコンポーネント (共用コンポーネント、Message Queue、HADB など) は、大域ゾーンと疎ゾーンを含むほかのゾーンのパッケージに関係なくインストールできます。

Solaris のゾーンは、さまざまな目的で効果的に利用できますが、Application Server のインストールが複雑になる原因にもなります。ゾーンに Sun Java System Application Server 9.1 または GlassFish Version 2 をインストールする場合は、大域ゾーンと非大域ゾーン間の伝播や優先順位に影響する多数の要因を考慮する必要があります。

BigAdmin
  
 
Solaris 10 System Administration Essentials