Sun GlassFish Enterprise Server v3 管理ガイド

ドメインの自動再起動

ここでは、Solaris でドメインを自動的に再起動するようにシステムを設定する方法について説明します。

ここでは、以下のトピックに関して説明します。

ProcedureSolaris 10 でのドメイン自動的再起動

create-service サブコマンドは、Solaris と Windows プラットフォームの両方でサポートされていますが、ここでは Solaris の手順のみ説明します。

Solaris 10 では、asadmin create-service サブコマンドを使用して、ドメイン管理サーバー (DAS) を再起動する Solaris Service Management Facility (SMF) サービスを作成できます。サービスはプロセスに、そのプロセスを実行するユーザーの特権を付与します。SMF サービスを作成する場合、デ フォルトのユーザーはスーパーユーザーです。別のユーザーがプロセスを実行する 必要がある場合は、method_credential にそのユーザーを指定します。

プロセスを Solaris 10 の特権ポートにバインドする場合、そのプロセスには net_privaddr 特権が必要です。Solaris オペレーティングシステム の特権ポートは、1024 より小さいポート番号です。

ユーザーが net_privaddr 特権を持っているかどうかを確認するには、そのユーザーとしてログインし、ppriv -l | grep net_privaddr コマンドを入力します。

SMF サービスを作成して有効にしたあと、ドメインが停止した場合は、SMF によって再起動されます。

始める前に

asadmin create-service コマンドを実行するには、solaris.smf.* 認証が必要です。この認証の設定方法については、useradd および usermod のマニュアルページを参照してください。さらに次のディレクトリツリーでの書き込み権も必要です。 /var/svc/manifest/application/SUNWappserver。通常、スーパーユーザーはこれらの権限をどちらも持っています。また、svccfgsvcsauths などの Solaris 10 管理コマンドが PATH で使用できなければなりません。

特定の Enterprise Server ドメインにデフォルトのユーザー特権を与えないようにする場合は、サービスのマニフェストを変更し、サービスを再インポートします。

  1. create-service(1) サブコマンドを使用して、サービスを作成します。

    このサブコマンドのプロパティーについては、このマニュアルページに記載されています。

  2. サービスが作成されたら、svacdm enable コマンドを使用してサービスを有効にします。

    次に例を示します。


    svacdm enable /appserver/domains/domain1
    

例 3–10 Solaris 10 でドメインを自動再起動するためにサービスを作成する

この例では、サービスを作成します。


asadmin> create-service
The Service was created successfully. Here are the details:
Name of the service:application/GlassFish/domain1
Type of the service:Domain
Configuration location of the service:/home/gfuser/glassfish-installations
/glassfishv3/glassfish/domains
Manifest file location on the system:/var/svc/manifest/application
/GlassFish/domain1_home_gfuser_glassfish-installations_glassfishv3
_glassfish_domains/Domain-service-smf.xml.
You have created the service but you need to start it yourself.
Here are the most typical Solaris commands of interest:
* /usr/bin/svcs -a | grep domain1 // status
* /usr/sbin/svcadm enable domain1 // start
* /usr/sbin/svcadm disable domain1 // stop
* /usr/sbin/svccfg delete domain1 // uninstall
Command create-service executed successfully

参照

サービスを管理するときに、次の Solaris コマンドが役に立ちます。 authssmf_securitysvcadm svccfgrbacuseradd、および usermod

ProcedureLinux 上での自動再起動

Linux 上で再起動を設定するには、/etc/inittab を編集します。/etc/rc.local またはこれに相当するファイルを使用している場合は、/etc/rc.local に必要な asadmin サブコマンドを呼び出す行を追加します。

  1. /etc/inittab ファイルにテキストを 1 行追加します。

    次に例を示します。


    das:3:respawn:/opt/SUNWappserver/bin/asadmin start-domain --user admin 
    --passwordfile /opt/SUNWappserver/password.txt domain1

    このテキストは 1 行で記述してください。先頭の 3 文字はこのプロセスに対する一意の指示子ですが、これは変更可能です。

Procedureユーザーの Windows ログアウト時にサービスがシャットダウンされないようにする

デフォルトでは、Java Virtual Machine (JVM) は、Windows のシャットダウンまたはユーザーの Windows ログアウトが行われることを示すシグナルを Windows からキャッチし、Java VM 自身を完全にシャットダウンします。この動作により、Enterprise Server サービスがシャットダウンされます。ユーザーがログアウトするときにサービスがシャットダウンしないようにするには、-Xrs Java VM オプション を設定します。

  1. as-install\domains\ domain-name\config\domain.xml ファイル内の、Java VM オプションを定義するセクションに次の行を追加します。

    <jvm-options>-Xrs</jvm-options>
  2. Enterprise Server サービスが稼働している場合、変更を有効にするには、そのサービスを再起動します。