ここでは、Solaris でドメインを自動的に再起動するようにシステムを設定する方法について説明します。
ここでは、以下のトピックに関して説明します。
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。通常、スーパーユーザーはこれらの権限をどちらも持っています。また、svccfg、svcs、auths などの Solaris 10 管理コマンドが PATH で使用できなければなりません。
特定の Enterprise Server ドメインにデフォルトのユーザー特権を与えないようにする場合は、サービスのマニフェストを変更し、サービスを再インポートします。
create-service(1) サブコマンドを使用して、サービスを作成します。
このサブコマンドのプロパティーについては、このマニュアルページに記載されています。
サービスが作成されたら、svacdm enable コマンドを使用してサービスを有効にします。
次に例を示します。
svacdm enable /appserver/domains/domain1 |
この例では、サービスを作成します。
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 コマンドが役に立ちます。 auths、smf_security、svcadm、 svccfg、rbac、useradd、および usermod。
Linux 上で再起動を設定するには、/etc/inittab を編集します。/etc/rc.local またはこれに相当するファイルを使用している場合は、/etc/rc.local に必要な asadmin サブコマンドを呼び出す行を追加します。
/etc/inittab ファイルにテキストを 1 行追加します。
次に例を示します。
das:3:respawn:/opt/SUNWappserver/bin/asadmin start-domain --user admin --passwordfile /opt/SUNWappserver/password.txt domain1 |
このテキストは 1 行で記述してください。先頭の 3 文字はこのプロセスに対する一意の指示子ですが、これは変更可能です。
デフォルトでは、Java Virtual Machine (JVM) は、Windows のシャットダウンまたはユーザーの Windows ログアウトが行われることを示すシグナルを Windows からキャッチし、Java VM 自身を完全にシャットダウンします。この動作により、Enterprise Server サービスがシャットダウンされます。ユーザーがログアウトするときにサービスがシャットダウンしないようにするには、-Xrs Java VM オプション を設定します。