名前
lk_chg_value.ksh --- ローカルにある LifeKeeper 構成データベースファイル内の指定された値を変更します。
構文
lk_chg_value.ksh {-o old_value -n new_value | -f filename} [-vFIMT]
説明
ローカルの LifeKeeper 構成データベースファイルに登録されている任意の値 (LifeKeeper のシステム名、コミュニケーションパスのアドレス、リソースタグ名など) を変更します。 lk_chg_value.ksh は、LifeKeeper が稼働していないクラスタノードに管理者権限でログインして実行します。また、LifeKeeper 付属のシェル (sh.exe) を使用し、前記の構文に従って、スクリプトを呼び出します。このコマンドは、システム名やネットワークインターフェースを変更しません。LifeKeeper のシステム名やコミュニケーションパスの IP アドレスを変更する場合は、システムユーティリティを使用して、システム名とネットワークインターフェースを変更してから、このコマンドを実行します。LifeKeeper を適切に更新するには、このコマンドをすべてのクラスタサーバに実行します。
値の変更は、 -o と -n オプションを指定してコマンドラインから実行することも、 -f オプションを指定してファイルを指定することもできます。ファイルを指定する場合は、置換する値を old_value=new_value 形式で 1 行づつ記述します。
lk_chg_value.ksh が変更する値を変更前に確認するには、 -M オプションを指定します。 Verbose モード(詳細表示モード)は、 -v オプションを指定します。タグ名を変更しない場合は、 -T オプションを指定します。リソース ID を変更しない場合は、 -I オプションを指定します。
リソース ID は構造化された情報を含むため、 lk_chg_value.ksh は ID フィールドの完全な置換を許可しません。この動作をオーバライドするには、 -F オプションを指定します。
例
システム A、B、C は、LifeKeeper クラスタを構成しています。システム A と B はデータベースリソースを管理し、システム A はシステム C とのコミュニケーションパスを管理しています。システム A のシステム名とコミュニケーションパスのアドレスを変更するには、次の手順に従います。
- 各システムに lkstop コマンドを実行して、LifeKeeper を停止します。ただし、管理対象のリソースが稼働している場合は、lkstop に -f オプションを指定します。
- システム A のシステム名を「X」、ネットワークアドレスを「new_address」にそれぞれ変更します。置換用のファイル (/tmp/lksubs) を作成し、置換前と置換後の文字列を次の形式で記述します。
A=X old_address=new_address
管理者でシステム A にログインし、次のコマンドを実行します。
set LKROOT=<LKROOT> (例: set LKROOT=C:\LK)
<LKROOT>\bin\sh.exe lk_chg_value.ksh -vf /tmp/lksubs
システム A にある LifeKeeper Core とリカバリキットに登録されている「A」と「old_address」すべてがシステム「X」と「new_address」に置換されます。
- 置換ファイルをシステム A からシステム B と C にコピーします。管理者でシステム B と C にログインし、次のコマンドを実行します。
set LKROOT=<LKROOT> (例: set LKROOT=C:\LK)
<LKROOT>\bin\sh.exe lk_chg_value.ksh -vf /tmp/lksubs
システム B と C の構成データベースに登録されている「A」と「old_address」が「X」と「new_address」にそれぞれ置換されます。
終了コード
0 処理に成功しました。
1 割り込みが発生しました。ファイルをリストアしています。
2 不正な引数が渡りました。
3 LifeKeeper プロセスは実行中です。
4 コマンドは管理者権限で実行してください。
5 ID フィールドの変更が要求されました。-I オプションを使用しないと、ID は変更できません。
6 LKROOT 環境変数が設定されていません。
7 一致するものが見つかりません。
注記
lk_chg_value.ksh ユーティリティは、 <LKROOT>\bin フォルダにあります。
lk_chg_value.ksh ユーティリティでは、大文字と小文字が区別されます。
前述したように、 lk_chg_value.ksh スクリプトを起動するには、LifeKeeper 付属のシェル (sh.exe) を使用します。
<LKROOT> は LifeKeeper のホームディレクトリです。デフォルトのホームディレクトリは C:\LK ですが、このディレクトリは、LifeKeeper をインストールするときに変更できます。
ファイル
<LKROOT>\bin\lk_chg_value.ksh
このトピックへフィードバック