WebOTX Manual V10.2 (第4版) 目次を表示 |
WebOTXで提供している運用管理コマンドの使用例を示します。
なお運用管理コマンドが提供する各コマンドの詳細については「運用管理コマンド (otxadmin) リファレンス」を、管理対象オブジェクト(Managed
Object:MO)については、「MBean定義」参照してください。
以下では、例としてJDBCデータソースのログレベルを参照・設定する場合の具体的操作の説明をします。
一般に、運用管理コマンドにより属性の参照・設定を行う場合は、その設定項目を管理対象オブジェクト(Managed
Object:MO)のDottedname および属性名により指定します。
JDBCデータソースのログレベルの場合、MOのDottedNameおよび属性名は以下のようになります。
この2つを’.’でつないだ名前
を指定することになります。
以上が、運用管理コマンドを用いた運用設定変更の流れです。
必要に応じ属性名の指定等を変更してください。操作対象となるMOの詳細は「MBean定義」を参照してください。
また、運用管理コマンドの詳細な説明は「運用管理コマンド」の本編を参照してください。
以下で、helpコマンドの使用法と運用上よく用いられるget,listコマンドのワイルドカードを用いた便利な使い方を示します。
運用管理コマンドで提供されているコマンドの詳細を調べるにはhelpコマンドを用います。helpコマンドの構文は以下のようになります。
例えば、getコマンドについて調べたい場合は以下のようにします。
helpコマンドの詳細については「ヘルプ」を参照してください。
項目を参照するには、get コマンドを使用してください。
getコマンドでは*をワイルドカードとして利用することが可能です。
以下に*を利用したgetコマンドの使用例を示します。
※シングルモードで実行する場合は、* を "*" のように二重引用符で囲んでください。
WebOTX Application Serverで管理されているMOを調べるにはlistコマンドを用います。
なお、listコマンドも*をワイルドカードとして利用することができます。
※シングルモードで実行する場合は、* を "*" のように二重引用符で囲んでください。
setコマンドでは*をワイルドカードとして利用することが可能です。
setコマンドで*を用いる場合は、操作ミスにより重要な属性を変更してしまうことを防ぐために、設定ファイルcli_restrictionに許可パターン文字列を定義する必要があります。
また、*はDottednameには使用可能ですが、属性名に使用することはできません。
以下に設定ファイルの定義方法について記します。
設定ファイル内には実際に運用管理コマンド上で実行したいコマンドのオペランド文字列を定義します。
たとえば、以下のようなコマンドを実行する場合、
設定ファイルには以下の定義行を追記します。
行の先頭にTABまたは空白文字が入らないように気をつけてください。
また複数行定義する場合は1行につき1つの定義を追記してください。
設定ファイルは各ドメインの${INSTANCE_ROOT}/config配下にあり、設定の変更にはドメインの再起動が必要となります。
また、設定ファイルによる制限の解除は設定ファイルを${INSTANCE_ROOT}/config配下から削除することで可能となります。
ただし、その際にはsetコマンドに対する全ての制限が解除されますので、運用操作には十分な注意が必要です。
コマンドとは、実行される操作またはタスクのことです。コマンドには、大文字と小文字の区別があります。
オプションによって、ユーティリティによるコマンドの実行方法を変更できます。アルファベットの大文字と小文字は区別されます。短形式のオプションの前にはダッシュを
1 つ付けます (-)。長形式のオプションの前にはダッシュを 2 つ付けます
(--)。多くのオプションは、短形式でも長形式でも使用できます。たとえば、--user と -u
のどちらを使用してもかまいません。オプションには、必須オプションと省略できるオプションがあります。コマンド構文では、省略できるオプションをかっこで囲んで表しています。コマンドの実行時にはすべての必須オプションを指定する必要があります。指定しないと、エラーメッセージが返され、コマンドは実行されません。
使用可能な長形式および短形式のオプション名については、「運用管理コマンドリファレンス」を参照してください。
ほとんどのオプションには引数が必要です。たとえば --port には引数 port_number
を指定します。ただし、ブール型のオプションは、機能のオンまたはオフを切り替えるために使用されるため、引数を必要としません。
オプションを環境変数に保存することもできます。詳細については、「環境コマンド」を参照してください。
ブール型のオプションでは、オンまたはオフを切り替えます。たとえば、
--interactive を指定すると対話モードに切り替わります。--no-interactive
を指定すると対話モードがオフになります。対話モードでは、オプションに関してプロンプトが表示されます。長形式のオプションの前に
--no-
を指定すると、そのオプションがオフになります。短形式のオプション名を指定すると、常にデフォルト値の逆の設定になります。
短形式のブール型オプションはまとめて指定できます。たとえば、対話モード (短形式のオプション名 -I) とエコー
(短形式のオプション名 -e) を指定したい場合、-Ie と指定することができます。
オペランドは、空白文字またはタブで区切って指定します。コマンド構文内にどの順番で指定してもかまいません。オペランドの前に --
を記述すると、オプションとオペランドを区別できます。その後に続く引数は、ダッシュ (-)
で始まるものも含め、すべてオペランドとして扱われます。例を示します。
otxadmin > create-jvm-options -- -Xss1024k
-Xss1024k はダッシュで始まっていますが、オペランドとして扱われます。
すべてのコマンドは以下の共通オプションを指定できます。コマンドヘルプ上では [otxadmin-utility-options] で表されます。
コマンドヘルプの詳細については「ヘルプ」を参照してください。
オプション名 | 用途 |
---|---|
-u / --user | ドメインの運用管理エージェントの管理ユーザ名。 既にotxadmin loginコマンドでログインしている場合は、 --userオプションの指定は不要です。 |
-w / --password | ドメインの運用管理エージェントの管理ユーザのパスワード。 |
-H / --host | ドメインの運用管理エージェントが起動しているマシン名。 |
-p / --port | ドメインの運用管理エージェントのポート番号。既定値は 6212 です。 |
--protocol | ドメインの運用管理エージェントとの接続プロトコルを選択します。 指定できるプロトコルは、rmi、jmxmpです。 既定値はrmiです。 |
-W /--passwordfile | ドメインの運用管理エージェントのパスワードを含むファイル。 |
--encrypted | ドメインの運用管理エージェントのパスワードに 暗号化されたパスワードを利用する場合に指定します。 既定値はfalseです。暗号化されたパスワードの生成には encryptコマンドを使用してください。 このオプションはpasswordfileオプションが指定されている場合のみ有効です。 |
-t / --terse | trueを指定すると、出力データがスクリプトによる処理のための 簡潔なデータとなります。 既定値はfalseです。 |
-e / --echo | trueを指定すると、標準出力でコマンドライン文が表示されます。 既定値はfalseです。 |
-I / --interactive | true(既定値)を指定すると、パスワードオプション入力用の プロンプトを表示します。 |
-s / --secure | trueを指定すると、ドメインの運用管理エージェントとの通信に SSL/TLSを利用します。既定値はfalseです。 |
create-file-user --user admin_user
[--password admin_password] [-H host_name]
[--port port_number] [--passwordfile file_name]
[--terse=true|false] [--echo=true|false]
[--interactive=true|false] [--userpassword user_password] [--groups
user_groups[:user_groups]*]
[--authrealmname authrealm_name] username
この構文例では、-H はホスト名の短形式のオプション、--user は admin_user
を引数とする長形式のオプション、username はオペランドです。省略できるオプションは、かっこで囲まれています。
次に、構文に実際の値を指定した例を示します。この例では、省略できるオプションの一部が指定されていません。
otxadmin create-file-user -H hostname --port 6212
--userpassword userpassword sampleuser
otxadmin
は、シングルモードまたはマルチモードで実行できます。シングルモードでは、コマンドプロンプトからコマンドを 1
つずつ実行します。マルチモードでは、環境レベルの情報を繰り返し入力することなく、複数のコマンドを実行できます。
シングルモードでファイルからの入力を使用している場合、コマンドの実行に失敗するとプログラムは終了します。マルチモードでコマンドの実行に失敗すると、otxadmin
のプロンプトが再度表示されます。
シングルモードでは、コマンド行インタフェースを使ってコマンドプロンプトから単一のコマンドを呼び出します。コマンド行インタフェースによってコマンドが実行され、再びコマンドプロンプトが表示されます。コマンドプロンプトからコマンド行インタフェースを実行するには、${AS_INSTALL}/bin
ディレクトリに移動し、次のようにコマンドを入力します。
> otxadmin
command options arguments
次に例を示します。
> otxadmin
create-file-user --user admin --password
adminapassword --host host1 --port 6212 --userpassword
samplepassword --groups otxadmin sampleuser
マルチモードでは、最初に環境設定を行うことにより、サーバ名、ポート、パスワードなどの環境レベルの情報を再入力することなく、複数のコマンドを実行できます。マルチモードを使用する利点は、otxadmin
がメモリにとどまるため、コマンドの入力と実行が非常に速くなる点です。環境変数がオペレーティングシステムのレベルで設定されている場合、マルチモードではそれらの設定が取り込まれます。それらの設定は、変更されないかぎり
otxadmin ユーティリティによって引き続き使用されます。
Windows では、otxadmin.bat ファイルを実行すると、自動的にマルチモードになります。UNIX では、otxadmin ユーティリティを実行すると、自動的にマルチモードになります。
これは、次のコマンドを入力するのと同じです。
> otxadmin multimode
マルチモードの場合は、コマンドプロンプトが otxadmin に変わります。次に、otxadmin プロンプトにコマンドを入力します。ユーティリティ名を入力する必要はありません。次に例を示します。
otxadmin > create-file-user -H host1 --port 6212
--userpassword samplepassword sampleuser
exit または quit と入力すると、マルチモードが終了します。コマンドプロンプトに戻ります。
マルチモードセッション内で次のコマンドを入力すると、さらにマルチモードを呼び出すこともできます。
otxadmin > multimode
2 番目のマルチモード環境を終了すると、最初のマルチモード環境に戻ります。たとえば、server1をマルチモードで管理しているとき、server2 を使って両者を比較したい場合は、server1 のマルチモードで server2のマルチモードを呼び出します。現在のマルチモードセッションを終了する必要がないので、環境設定をそのまま保持できます。server2のマルチモードセッションを終了すると、server1 のマルチモード環境に戻ります。
コマンド行インタフェースは、対話型モードまたは非対話型モードで使用できます。対話型モードでは、パスワードが指定されていない場合、パスワードの入力を求めるメッセージが表示されます。対話型モードはデフォルトで有効になっています。
exportコマンドを使って対話型環境変数を設定することにより、対話型モードを有効および無効に切り替えることができます。
どのような場合でも、シングルモードで対話型オプションを使用できます。マルチモードで対話型オプションを使用できるのは、コマンドプロンプトからコマンドを1つずつ実行する場合と、ファイルからマルチモードで実行する場合です。ただし、マルチモードでは、入力ストリームからパイプされたコマンドや、別のプログラムから呼び出されたコマンドを対話型モードで実行できません。
otxadmin ユーティリティには、環境コマンドを使用して設定できる一連の環境変数が含まれます。マルチモードでは、これらの変数を設定したあと、マルチモードを終了するまで環境を設定し直す必要はありません。環境変数をオペレーティングシステムのレベルで設定することもできます。その場合、マルチモードに入ると、それらの環境変数は自動的に読み込まれ、マルチモードを終了するまで保持されます。
環境変数は名前と値の組み合わせであり、いつでも値を割り当てて設定できます。環境変数には、OTX_ADMIN_ というプレフィックスが付けられて、大文字を使用したオプション名となります。たとえば、運用管理エージェントのユーザを設定する場合は、次のように入力します。
export OTX_ADMIN_USER=administrator
administrator は管理者のユーザ名です。
これによって、次のように OTX_ADMIN_USER の値を otxadmin コマンドにも使用できます。
otxadmin multimode
otxadmin > export OTX_ADMIN_HOST=host1
運用管理エージェントのホスト名は、新たに割り当てないかぎり、マルチモードセッションを終了するまで host1 になります。
次の例のように、複数の環境変数をまとめて設定し、エクスポートすることもできます。
otxadmin > export OTX_ADMIN_PORT=6212 OTX_ADMIN_USER=admin
現在の環境変数の設定を確認するには、引数を指定しないで export コマンドを実行します。
otxadmin > export
OTX_ADMIN_HOST=host1
OTX_ADMIN_PORT=6212
OTX_ADMIN_USER=admin
変数とその値を環境から削除するには、unset コマンドを使用します。次に例を示します。
otxadmin > unset OTX_ADMIN_HOST
環境変数の値は、変数を設定し直すか、otxadmin コマンドの一部として別の値を設定することにより、オーバーライドできます。次に例を示します。
otxadmin > export OTX_ADMIN_HOST=host2
otxadmin > list-file-users --host host1
この例では、運用管理エージェントのホスト host1のユーザのリストが示されます。この値によって、以前のホストの値host2がオーバーライドされているためです。
エクスポートされた変数を使用しない場合は、ほとんどのコマンドで、次に示すオプションを指定するか、デフォルト値を使用する必要があります。
次の表「exportコマンドに指定する環境変数」では、export コマンドに指定できる環境変数について説明します。これらの変数は、環境設定用としてもっとも一般的に使用される変数です。第1列は環境変数名を、第2列は用途と、値が設定されていない場合のデフォルト値を示します。
環境変数 | 用途 |
---|---|
OTX_ADMIN_HOST | 運用管理エージェントのホスト名。値を指定しない場合は、localhostが使用されます。 |
OTX_ADMIN_PORT | 運用管理エージェントのポート番号。値を指定しない場合は、6212 が使用されます |
OTX_ADMIN_USER | コマンドを実行するユーザの名前 |
OTX_ADMIN_PASSWORD | コマンドを実行するユーザのパスワード。ユーザ名とパスワードは、ユーザを認証するため、つまりユーザに運用管理エージェントの管理が許可されているかどうかを確認するために使用されます。これは、管理インタフェースから運用管理エージェントにアクセスするときに行われる認証と同じです |
OTX_ADMIN_LEGACY |
コマンドの実行先のサーバがV8か、V9か確認するかを判断するために使用されます。値を指定しない場合は、false が使用されます。
|
OTX_ADMIN_DEBUG | デバッグ用メッセージの出力。値を指定しない場合は、false が使用されます。 |
コマンド行でパスワードを入力したくない場合やパスワードの環境変数を設定したくない場合は、パスワードファイルを作成しておき、そのファイルをコマンド行のオプションとして使用できます。
password オプションを指定できるコマンドには、passwordfile
オプションを代わりに指定できます。パスワードファイルには、次の行を含めます。
OTX_ADMIN_PASSWORD=value
OTX_ADMIN_USERPASSWORD=value
passwordfile オプションを使用すると、ファイル内に記述したパスワードはマルチモード環境にエクスポー トされるため、後続の password オプションを指定していないコマンドでも、これらの値が使用されます。 コマンド行に password オプションと passwordfile オプションを同時に指定した場合は、パスワードファ イルに記述された値がマルチモード環境にエクスポートされますが、そのコマンドでは password オプシ ョンに指定されているパスワードが使用されます。password オプションが passwordfile オプションよりも 優先されるためです。
マルチモードで実行する場合、最初にログインを行えば以降のコマンドについてはログインしたユーザで指定したドメイン(ホスト、ポートで指定)に対してコマンドを実行できるようになります。
ログインコマンドは指定されたドメインに対してユーザ、パスワードのチェックを行い、問題なければその環境のexport
を行います。
otxadmin > login --user username --password password
--host hostname --port port
と実行すると以下の環境をexport します。
export OTX_ADMIN_USER=username
export OTX_ADMIN_PASSWORD=password
export OTX_ADMIN_HOST=hostname
export OTX_ADMIN_PORT=port
otxadmin
コマンドを実行するユーザのプロファイルにあらかじめユーザやパスワードを記述しておくと、コマンド実行時オプション指定が不要になります。パスワードを記述した場合は--passwordfile
の指定も必要ありません。
Windows :
%USERPROFILE%\.otxadminprefs
UNIX、Linux: ~/.otxadminprefs
OTX_ADMIN_USER=username
OTX_ADMIN_PASSWORD=password
Windows の場合、エクスプローラからドットで始まるファイルを新規作成できないときは、新規でnotepadを開いて名前をつけて保存する、別名ファイルで作ってリネームするなどの方法で作成してください。
otxadmin コマンドは、
運用管理エージェントを使用せず、ローカル環境にて実行するローカルコマンドと、
運用管理エージェントを介してコマンドを受け渡すリモートコマンドの二種類に分類されます。
リモートコマンドが動作するには、運用管理エージェントが実行中であることが必要です。
次のコマンドは、ローカルで実行されます。
次のコマンドは管理ドメインが起動しているときのみ、リモートモードで実行することができます。 リモートモードで実行するには、オプションを用いて管理ドメインに接続することが必要です。
もっとも単純なコマンドの使用方法は、コマンド行から 1
つずつ実行する方法です。ユーティリティ名に続けて、コマンドとそのオプションおよび引数を指定します。マルチモードでは、ユーティリティ名と環境オプションを繰り返し入力することなく、複数のコマンドを実行できます
(環境変数を設定済みの場合)。シングルモードのコマンドもマルチモードのコマンドも、対話型形式
(パスワードなどの追加入力を求めるプロンプトを表示する)
または非対話型形式で実行できます。シングルモードとマルチモードの詳細については、「シングルモードとマルチモード」を参照してください。
コマンドを対話型形式で使用する方法については、「対話型オプションと非対話型オプション」を参照してください。
> otxadmin create-file-user -H host1 --port 6212 --userpassword samplepassword sampleuser
コマンドの実行が完了すると、オペレーティングシステムのプロンプトに戻ります。
ファイルからの入力 (スクリプト) での otxadmin の使用
複数の otxadmin コマンドを含むスクリプトを作成できます。スクリプトを使うと、バッチモードでのコマン
ド処理、ジョブの実行回数の設定、管理タスクの単純化および自動化を行うことができます。
ファイル内のスクリプトを呼び出すには、次の構文を使用します。
> otxadmin multimode --file filename
次に、この方法で呼び出せる、ファイル内の単純なスクリプトの例を示します。
このスクリプトは、環境設定を行い、sampleuser というユーザを作成し、そのマシンのユーザ一覧を表示します。ハッシュ記号 (#) で始まる行はコメントと見なされ、無視されます。
エスケープ文字で区切らずにコロン (:)、アスタリスク (*)、イコール (=)、およびバックスラッシュ (\) などの文字をコマンド構文で使用すると、エラーが発生します。エスケープ文字が必要となる場面は、プラットフォームやシングルモードとマルチモードの違いによって変わります。 両者のモードの詳細は、「シングルモードとマルチモード」を参照してください。
どのプラットフォームでも、シングルモードで行う場合は、バックスラッシュを文字の前に使い、その文字を含む値を二重引用符で囲むことによって、エスケープできます。たとえば、値にコロンを含むオプションを指定して JDBC データソースを作成するときに、次のようにエスケープ文字を使用できます (一部のプロパティに関して環境変数が設定されていることが必要です)。
otxadmin create-jdbc-datasource --dataSourceType JDBCEX_Oracle --jdbcMajorVersion 3 --minPoolSize 16 --maxPoolSize 32 --useJTA --property userName=scott:password=tiger:dataSourceName="jdbc\:oracle\:thin\:@host1\:1521\:ORCL" jdbc/Oracle
また、プラットフォームにより、上記とは異なる方法でバックスラッシュや二重引用符を使用することでもエスケープできます。値の内容によっては、これらの方法によりエスケープ作業を簡素化できます。
UNIX 環境でのエスケープ文字
UNIX では、二重のバックスラッシュ (\\) または二重引用符 (" ") を使用して、予約されている文字をエスケープします。(二重のバックスラッシュ (\\)を使うことによって、バックスラッシュをエスケープします。)
二重のバックスラッシュ(\\) によるエスケープ
たとえば、値にコロンを含むオプションを指定して JDBC データソースを作成するときに、二重のバックスラッシュを使用できます (一部のプロパティに関して環境変数が設定されていることが必要です)。
otxadmin create-jdbc-datasource --dataSourceType JDBCEX_Oracle --jdbcMajorVersion 3 --minPoolSize 16 --maxPoolSize 32 --useJTA --property userName=scott:password=tiger:dataSourceName=jdbc\\:oracle\\:thin\\:@host1\\:1521\\:ORCL jdbc/Oracle
二重引用符(")によるエスケープ
上記の例と同じ内容に対して二重引用符を使用するには、値を二重引用符 で囲み、さらにこれらの二重引用符をバックスラッシュでエスケープします。
otxadmin create-jdbc-datasource --dataSourceType JDBCEX_Oracle --jdbcMajorVersion 3 --minPoolSize 16 --maxPoolSize 32 --useJTA --property userName=scott:password=tiger:dataSourceName=\"jdbc:oracle:thin:@host1:1521:ORCL\" jdbc/Oracle
注意:get コマンドとset コマンドでは、コロンに対してエスケープ文字を使用する必要はありません。
Windows 環境でのエスケープ文字
Windows では、バックスラッシュを使ってエスケープできます。たとえば、値にコロンを含むオプションを指定して JDBC データソースを作成するときに、バックスラッシュを使用できます (一部のプロパティに関して環境変数が設定されていることが必要です)。
otxadmin create-jdbc-datasource --dataSourceType JDBCEX_Oracle --jdbcMajorVersion 3 --minPoolSize 16 --maxPoolSize 32 --useJTA --property userName=scott:password=tiger:dataSourceName=jdbc\:oracle\:thin\:@host1\:1521\:ORCL jdbc/Oracle
JVM オプションの空白文字
空白を含むJVMオプションを設定するときには、JVM オプションの値を二重引用符 (")で囲むことによって設定することができます。
otxadmin create-jvm-options -Dwo.home="D\:\\wo jvm\\jvm value"
どのプラットフォームでも、マルチモードで行う場合は、バックスラッシュを文字の前に使い、その文字を含む値を二重引用符で囲むことによって、エスケープできます。たとえば、値にコロンを含むオプションを指定して JDBC データソースを作成するときに、次のようにエスケープ文字を使用できます (一部のプロパティに関して環境変数が設定されていることが必要です)。
otxadmin >
create-jdbc-datasource --dataSourceType
JDBCEX_Oracle --jdbcMajorVersion 3
--minPoolSize 16 --maxPoolSize 32 --useJTA --property
userName=scott:password=tiger:dataSourceName="jdbc\:oracle\:thin\:@host1\:1521\:ORCL"
jdbc/Oracle
※マルチモードで実行している以外は、「シングルモード」での記述と、コマンドライン(otxadmin
の記述を除く以外)は同じです。
また、二重引用符を使わずにエスケープする場合は二重のバックスラッシュが必要になります。
otxadmin >
create-jdbc-datasource --dataSourceType
JDBCEX_Oracle --jdbcMajorVersion 3
--minPoolSize 16 --maxPoolSize 32 --useJTA --property
userName=scott:password=tiger:dataSourceName=jdbc\\:oracle\\:thin\\:@host1\\:1521\\:ORCL
jdbc/Oracle
※マルチモードで実行している以外は、「シングルモード」での「二重のバックスラッシュ(\\) によるエスケープ」と、コマンドライン(otxadmin
の記述を除く以外)は同じです。
上記の例と同じ内容に対して二重引用符を使用するには、値を二重引用符 (")
で囲み、さらにこれらの二重引用符をバックスラッシュでエスケープします。
otxadmin > create-jdbc-datasource --dataSourceType JDBCEX_Oracle --jdbcMajorVersion 3 --minPoolSize 16 --maxPoolSize 32 --useJTA --property userName=scott:password=tiger:dataSourceName=\"jdbc:oracle:thin:@host1:1521:ORCL\" jdbc/Oracle
※マルチモードで実行している以外は、「シングルモード」での「二重引用符(")によるエスケープ」と、コマンドライン(otxadminの記述を除く以外)は同じです。
get コマンドと set コマンドを使うと、 運用管理エージェントの設定情報にアクセスおよび変更できます。ほとんど の場合、otxadmin コマンドは必須プロパティだけを設定します。オプションのプロパティの値を変更する には、set コマンドを使用します。
コマンド | 引数 | 用途 |
---|---|---|
get | (scope) scopeは属性を表す有効な名前 | 属性の値を取得する |
set | (scope=value) scopeは属性を表す有効な名前。valueはその属性に設定する値 | 属性の値を設定する |
1 つのコマンドで、属性と属性の間に空白文字を使うことにより、複数の属性値を取得または設定できます。次に例を示します。
set
server.resources.jdbc-datasource.jdbc/Oracle.maxPoolSize=32
server.resources.jdbc-datasource.jdbc/Oracle.minPoolSize=16
get コマンドと set コマンドは区切り文字としてピリオドを必要とするため、アイテム名にピリオドが含まれる場合は、含まれるピリオドの前にエスケープ文字のバックスラッシュ (\) を記述する必要があります。サーバインスタンス名 server.nec.com のピリオドの前にバックスラッシュを記述した例を、次に示します。
get server\.nec\.com.*
バックスラッシュを挿入しないと、エラーメッセージが表示されます。
次に、get コマンドを使って属性値を取得する例と、set コマンドを使って値を設定する例を示します。なおgetおよびsetコマンドで利用可能な属性名(dottedname)については [ 運用管理エージェント > 運用管理エージェント設定項目一覧 ] を参照してください。
server インスタンス名が server の場合、環境を設定し、次のコマンドをマルチモードで実行することにより、すべての mdb-container属性の値を取得できます。
otxadmin > get server.mdb-container.*
次に、このコマンドの出力例を示します。出力には現在の属性値が示されます。
server.mdb-container.idle-timeout-in-seconds = 600
server.mdb-container.max-pool-size = 32
server.mdb-container.pool-resize-quantity = 8
server.mdb-container.steady-pool-size = 0
MDB コンテナ属性の max-pool-size の値だけを取得するには、次のコマンドを使用します。
otxadmin > get server.mdb-container.max-pool-size
max-pool-size 属性の値を 16 に設定するには、次のコマンドを使用します。
otxadmin > set
server.mdb-container.max-pool-size=16
リソースを設定するには、次のように属性を指定します。
instancename.resource.primary_key_value.attribute_name
次に例を示します。
otxadmin > get server.resources.jms-resource.jms-logical-destination.myjms.*
これにより、JMS 送信先リソース myjms のすべての属性を取得できます。次に例を示します。
server.resources.jms-resource.jms-logical-destination.myjms.description
= <null>
server.resources.jms-resource.jms-logical-destination.myjms.jndi-name
= myjms
server.resources.jms-resource.jms-logical-destination.myjms.res-type
= javax.jms.Queue
server.resources.jms-resource.jms-logical-destination.myjms.wojmsDestinationDescription
= <null>
server.resources.jms-resource.jms-logical-destination.myjms.wojmsDestinationName
= myjms
res-type など、単一の属性の値を取得するには、次のように入力します。
otxadmin > get server.resources.jms-resource.jms-logical-destination.myjms.res-type
description 属性を設定するには、次のように入力します。
otxadmin > set server.resources.jms-resource.jms-logical-destination.myjms.description=mydescription
この例では、説明にmydescription が設定されます。
1 つのコマンドで複数の値を取得および設定することができます。同時に 2つの属性を設定するには、属性の間を空白文字で区切ります。次に例を示します。
set server.appReloadPollInterval=20 server.mime.mime1.file=mime.types
取得した属性が配列形式の場合、配列の各要素がカンマ (,) で区切られて表示されます。次に例を示します。
server.java-config.jvm-options = -server,-Xms64m,-Xmx512m,-XX:NewRatio=2, ...
配列形式の属性を設定するには、一次元配列の場合、取得時のようにカンマ (,) で配列の各要素を区切って指定します。
otxadmin > set server.sample.options=element1,element2,element3
但し、多次元配列の場合は、{{要素1-1,要素1-2},{要素2-1,要素2-2},...}といったように、次元ごとに中カッコ({}) で囲んで指定します。
otxadmin > set server.sample.propertyList={{key1,value1},{key2,value2},{key3,value3}}
get コマンドおよび set コマンドを使って、実行中のサーバを監視することもできます。list コマンドで、監視することもできます。monitor オプションを true または false に設定します。true に設定した場合は、指定された属性を監視できます。
個々のotxadmin コマンドのヘルプを表示するには、コマンドプロンプトで -h または --help と入力します。たとえば、otxadminのヘルプを表示するには、次のコマンドを入力します。
otxadmin --help
すべての otxadmin コマンドが一覧表示されます。
特定の otxadmin コマンドのヘルプを表示するには、次のように入力します。
otxadmin command -h
または
otxadmin command --help
ヘルプには、構文、コマンドの説明、構文の説明、使用例、および関連コマンドが表示されます。コマンド内の任意の位置に -h または --help を指定すると、そのコマンドのヘルプが表示されます。コマンドは実行されません。
コマンドが正常に実行されると、実行内容を知らせるメッセージが表示されます。コマンドの実行に失敗すると、エラーメッセージが表示されます。
エラーメッセージに加えて、otxadmin コマンドの終了時には、常に終了状態が返されます。終了状態は、コマンドの実行が成功した場合は 0、失敗した場合は 1 になります。
コマンドプロンプトで echo $? と入力することにより、終了状態をチェックできます。スクリプトでも終了コードを使用できます。たとえば、次の Kornシェルスクリプトは、終了状態を使用して list-domains コマンドが成功であるか失敗であるかを示します。
#!/bin/ksh otxadmin list-domains if [[ $? = 0 ]] then echo "success" else echo "error" fi
Windows では、独自の .bat スクリプトを使って終了状態をチェックできます。成功するスクリプトとその出力、および失敗するスクリプトとその出力を、次に示します。
成功するスクリプト
myscript.bat
@echo off echo Processing Command call otxadmin.bat list-components --user admin --password password if not %errorlevel% EQU 0 goto end echo Command ‘Successful goto program-end :end echo Command Failed :program-end
出力
失敗するスクリプト (modulename 指定なし)
myscript.bat
@echo off echo Processing Command call otxadmin.bat list-sub-components --user admin --password password if not %errorlevel% EQU 0 goto end echo Command ‘Successful goto program-end :end echo Command Failed :program-end
出力
引数を指定せずにコマンドを実行すると、コマンドの構文を示すエラーメッセージが表示されます。次に例を示します。
otxadmin > list-components
Usage: list-components --user admin_user [--password
admin_password] [--host host_name] [--port
port_number] [--passwordfile file_name] [--terse=true|false]
[--echo=true|false]
[--interactive=true|false] [--type
application|ejb|web|connector]
CLI152 user is a required option.
コマンド行からコマンド行インタフェースを実行する場合は、コマンドにパスワードが必要になります。
マルチモードで実行する場合は、最初にloginコマンドを実行することでユーザ名、パスワードが設定されます。
マルチモードをいったん終了して、もう一度開始するときは、再びloginコマンドを実行します。
コマンド行でパスワードを入力しないために、パスワードファイルを設定しておくこともできます。有効なユーザ名およびパスワードの認証情報がなければ、コマンドは実行されません。
JMX Remote インタフェースは、主に運用管理コマンドなどの各ツールとサーバ間の通信に利用されます。JMX Remote では、サーバログイン後に通信相手の状態チェックのため、独自のアライブチェック機能が動作します。例えば、通信相手のサーバマシンの電源が落ちて、コネクションの切断処理が行われないままとなった場合、この機能によりJMX Remote コネクションの切断が自動的に行われます。
サーバ側のタイムアウト時間をミリ秒単位で指定します。既定値は120000 ミリ秒です。なお、0を指定した場合、既定値が設定されます。この時間内にクライアント側からデータを受信しなかった場合、サーバ側のコネクションを終了します。
サーバ側のJVM
オプション設定に次のプロパティ設定を行います。
-Djmx.remote.x.server.connection.timeout=120000
※上記設定では、タイムアウト時間として120 秒を設定しています。
例えば、統合運用管理ツールを使用して設定変更を行う場合、
[domain]-[アプリケーションサーバ]-[JVM 構成]-[システム JVM オプション](または[JVM
オプション])に上記プロパティ情報を設定してください。
クライアント側のアライブチェック時間をミリ秒単位で指定します。クライアントは、この設定値に従ってサーバ側に対して定期的に通信を行います。サーバからの応答がない場合、クライアントはコネクションを終了させます。既定値は60000 ミリ秒です。なお、0 を指定した場合、既定値が設定されます。通常、サーバ側のタイムアウト時間よりも小さい値を設定します。なお、この設定値はアライブチェック用データの送信間隔時間であり、MO の実データを自動的にサーバ側から取得する時間ではありません。
クライアント側のJVM オプション設定に次のプロパティ設定を追加します。クライアント側のJVM オプションの設定方法については、各クライアントのヘルプ/マニュアルを参照してください。
-Djmx.remote.x.client.connection.check.period=60000
※上記設定では、アライブチェックを60 秒に1 回行う設定となります。
例えば、運用管理コマンドのアライブチェック設定を変更する場合には、
${INSTALL_ROOT}\bin\otxadmin.bat (Windows) または
${INSTALL_ROOT}/bin/otxadmin.sh (UNIX)に上記プロパティ情報を追記してください。
コマンドでのドメインの運用操作に対するタイムアウト時間を設定することができます。
※これは、コマンドを実行してその応答が返るまでの時間に対する設定であり、タイムアウトが発生しても、ドメイン側では要求されたコマンドに対する処理が継続されます。
タイムアウト設定項目は以下の3つのプロパティがあります。
sun.rmi.transport.tcp.responseTimeout
JRMP 接続の確立時にソケットの読み取りタイムアウトとして使用する時間 (ミリ秒単位)
を表します。そのため、このプロパティーを使用して、リモート呼び出しの結果を待機するときのタイムアウトを設定することができます。
com.nec.webotx.rmi.transport.connectTimeout
このプロパティーの値は、接続の試み (createSocket
) が完了するまで、サーバーへの接続を試みる前の、Java
RMI ランタイムの待機時間の最大値をミリ秒で表します。
com.nec.webotx.rmi.transport.tcp.readTimeout
このプロパティーの値は、Java RMI ランタイムが使用する、着信 TCP 接続のアイドルタイムアウト時間をミリ秒で表します。値は、java.net.Socket.setSoTimeout
に渡されます。
以下の手順でタイムアウト時間の設定を行ってください。
以下の手順でタイムアウト時間の設定を行ってください。
なお、JMXMPプロトコルを利用した接続を行う手順は「接続プロトコルの変更 > JMXMPを利用する手順」を参照してください。
ドメインの管理ユーザのパスワードを暗号化したい場合、あらかじめ暗号化したパスワードをパスワードファイルに記載し、読み込ませる必要があります。
encryptコマンドを使用し、暗号化したパスワードを生成します。
otxadmin> encrypt CLI261 暗号化する文字を入力してください: CLI262 もう一度入力してください: <暗号化されたパスワード>
任意の名前で作成したパスワードファイルに、以下のように暗号化したパスワードを記載します
OTX_ADMIN_PASSWORD=<暗号化されたパスワード>
コマンド実行時にpasswordfileオプション、およびencryptedオプションを指定することで、暗号化されたパスワードを読み込みコマンドを実行します。
以下は、getコマンドで、パスワードファイル( /home/user/passwordfile )を使用する例です。パスワードファイル内には暗号化されたパスワードが記載されています。
otxadmin> get --user <ユーザ名> --encrypted=true --passwordfile "/home/user/passwordfile" domain.name
コマンド実行時に共通オプション --legacy=trueを指定した場合、コマンドの接続先のサーバがV8か、V9か確認します。確認後V8であれば旧互換動作を行い、V9であればV9の動作を行います。--legacyオプションを指定しない場合は--legacy=false を指定した場合と同様に、コマンドの接続先のサーバを確認せずにV9の動作を行います。
また、--legacy=trueを設定した場合、コマンド実行時に接続先サーバのバージョン名が表示されます。
otxadmin> get --user <ユーザ名> --password <パスワード> --host <ホスト名> --legacy=true domain.name Connecting WebOTX 8.41.00.00 domain.name = domain1
otxadmin> get --user <ユーザ名> --password <パスワード> --host <ホスト名> --legacy=true domain.name Connecting WebOTX 9.20.00.00 domain.name = domain1
なお、マルチモードにおいてloginコマンドに対して--legacy=trueを設定し、その時の接続先サーバがV8であった場合、その後のコマンドには--legacy=trueを設定しなくても接続先サーバのバージョン確認が行われます。
また、V8のサーバに対して--legacy=trueを指定せずに接続を試みた場合、以下のようなエラーが表示されます。
otxadmin> get --user <ユーザ名> --password <パスワード> --host <ホスト名> domain.name javax.management.InstanceNotFoundException: MBean instance not found: :type=WebOTXCommandAdapter