Oracle Solaris Cluster リファレンスマニュアル

印刷ビューの終了

更新: 2015 年 9 月
 
 

ccradm (1M)

名前

ccradm - CCR テーブルファイル管理コマンド

形式

/usr/cluster/lib/sc/ccradm subcommand [-?]
/usr/cluster/lib/sc/ccradm addkey [-Z zoneclustername] -v value -k key ccrtablefile
/usr/cluster/lib/sc/ccradm addtab [-Z zoneclustername] ccrtablefile
/usr/cluster/lib/sc/ccradm changekey [-Z zoneclustername] -v value -k key ccrtablefile
/usr/cluster/lib/sc/ccradm delkey [-Z zoneclustername] -k key ccrtablefile
/usr/cluster/lib/sc/ccradm recover [-Z zoneclustername] -f -o ccrtablefile
/usr/cluster/lib/sc/ccradm remtab [-Z zoneclustername] ccrtablefile
/usr/cluster/lib/sc/ccradm replace [-Z zoneclustername] -i newdatafile ccrtablefile
/usr/cluster/lib/sc/ccradm showkey [-Z zoneclustername] -k key ccrtablefile

説明

ccradm コマンドは、クラスタ構成リポジトリ (CCR) 情報をサポートします。

CCR 情報は、/etc/cluster/ccr ディレクトリに存在します。グローバルクラスタに関する CCR 情報は、/etc/cluster/ccr/global ディレクトリに存在します。ゾーンクラスタ zoneclustername に関する CCR 情報は、/etc/cluster/ccr/zoneclustername ディレクトリに存在します。CCR 情報は、サポートされているプログラミングインタフェースからのみアクセスできるようにしてください。ファイルのアクセス権は、CCR 情報に直接アクセスできないように意図的に設定されています。

CCR 情報は、テーブルの形式で格納され、1 つのテーブルがその専用のファイルに格納されます。CCR テーブルファイルの各行は、キーと値の 2 つの ASCII 文字列で構成されます。各 CCR ファイルは、世代番号 (ccr_gennum) およびチェックサム (ccr_checksum) で始まります。

ccr_gennum は、CCR テーブルファイルの現在の世代番号を示します。システムは ccr_gennum を管理します。もっとも大きい番号がファイルの最新バージョンです。

ccr_checksum は、CCR テーブルコンテンツのチェックサムを示し、テーブルのデータの整合性検査を提供します。システムは、無効なチェックサムでは CCR テーブルファイルを使用しません。

ccrtablefile ファイルは、ローカルノード上の CCR テーブルを表すファイルの名前です。–Z オプションが指定されている場合、ccrtablefile は指定されたゾーンクラスタに属します。–Z オプションを指定しないと、ccrtablefile はグローバルクラスタに属します。グローバルクラスタおよびゾーンクラスタは、それぞれ同じ名前の ccrtablefileを持つことができますが、含まれる情報は異なります。

このコマンドは、大域ゾーンだけで使用できます。

サブコマンド

このコマンドには、次のサブコマンドがあります:

addkey

指定したクラスタの CCR テーブルファイルにキーと値のペアを追加します。–s オプションとともに使用すると、データは文字列値になります。–f オプションとともに使用すると、値はファイルの最初の文字列になり、ファイルに 1 つの文字列のみが含まれます。ファイルがこの形式でない場合、コマンドによってエラーが返されます。

このサブコマンドはクラスタモードでのみ使用できます。

addtab

指定したクラスタの CCR にテーブルを作成します。このテーブルには、最初 ccr_gennumccr_checksum のみが含まれます。

このサブコマンドはクラスタモードでのみ使用できます。

changekey

指定したキーと新しい値に基づいて、CCR テーブルファイルのキーの値を変更します。キーが CCR テーブルファイルに見つからない場合、コマンドは ESPIPE を返します。–s オプションとともに使用すると、データは文字列値になります。f オプションとともに使用すると、値はファイルの最初の文字列になり、ファイルに 1 つの文字列のみが含まれます。ファイルがこの形式でない場合、コマンドによってエラーが返されます。

このサブコマンドはクラスタモードでのみ使用できます。

delkey

指定したキーに基づいて、キーと値のペアを CCR テーブルファイルから削除します。キーが CCR テーブルファイルに見つからない場合、コマンドは ESPIPE を返します。

このサブコマンドはクラスタモードでのみ使用できます。

recover

Caution

注意  -  このサブコマンドは、CCR の内部処理に精通しているエンジニアのみが使用するようにしてください。このサブコマンドは手動による復旧操作をサポートしています。一般のユーザーはこのサブコマンドを使用しないようにしてください。


recover サブコマンドは、常に ccr_gennum の値を設定し、チェックサムを再計算して、CCR テーブルファイルの ccr_checksum の値を設定します。

–o オプションを指定せずに recover サブコマンドを使用すると、recover サブコマンドは世代番号を INIT_VERSION (-1) に設定します。INIT_VERSION の世代番号は、ローカルノードがクラスタを再結合するまでの間のみ CCR テーブルファイルが有効であることを意味し、再結合時点で、クラスタは CCR テーブルファイルの内容を、クラスタ内の別のノードの CCR テーブルファイルの内容で置き換えます。前提条件は、クラスタ内のその他のノードのいずれかで、CCR テーブルファイルにオーバーライドバージョンを設定するか、その他のノードの少なくとも 1 つに、CCR テーブルファイルの有効なコピーがある必要があるということです。CCR テーブルファイルが有効になるのは、有効なチェックサムを持ち、その世代番号が 0 以上の場合です。

すべてのノード上で CCR テーブルファイルの世代番号が INIT_VERSION である場合は、復旧が完了したあとも CCR テーブルは無効のままになります。そのため、クラスタ内の少なくとも 1 つのノードの CCR テーブルファイルでは recover サブコマンドとともに –o オプションを使用する必要があります。

–o オプションとともに recover サブコマンドを使用すると、recover サブコマンドは世代番号を OVRD_VERSION (-2) に設定します。OVRD_VERSION の世代番号は、システムがローカルノードの CCR テーブルファイルの内容をほかのすべてのクラスタノードに伝えることを意味します。内容をほかのノードに伝えると、システムは世代番号を 0 に変更します。OVRD_VERSION の値を持つ CCR テーブルファイルは 1 つのノードのみに含めるようにしてください。OVRD_VERSION が複数のノードで同じ CCR テーブルファイルに設定されている場合、システムは任意に 1 つの CCR テーブルファイルの内容を使用します。

このサブコマンドは、非クラスタモードでのみ使用できます。

remtab

CCR からテーブルを削除します。

このサブコマンドはクラスタモードでのみ使用できます。

replace

Caution

注意  -  このサブコマンドは、CCR の内部処理に精通しているエンジニアのみが使用するようにしてください。このサブコマンドは手動による復旧操作をサポートしています。一般のユーザーはこのサブコマンドを使用しないようにしてください。


ccrdatafile の内容を newdatafile の内容で置き換えます。チェックサムが再計算され、世代番号は 0 にリセットされます。

このサブコマンドはクラスタモードでのみ使用できます。

showkey

CCR テーブルファイルの指定されたキーの値を表示します。キーが CCR テーブルファイルに見つからない場合、コマンドは ESPIPE を返します。showkey コマンドは、指定したキーの値文字列のみ (そのあとに行末が続く) を標準出力に書き込みます。エラーが発生した場合、コマンドは何も書き込みません。

このサブコマンドはクラスタモードでのみ使用できます。

オプション

このコマンドには、次のオプションがあります:

–?
–-help

ヘルプ情報を表示します。

このオプションはサブコマンド付きでもサブコマンドなしでも指定できます。

サブコマンドを指定しない場合、使用可能なすべてのサブコマンドのリストが表示されます。

サブコマンドを指定した場合、そのサブコマンドの使用法が表示されます。

このオプションとその他のオプションを指定すると、その他のオプションは無視されます。

–f
–-force

ノードがクラスタメンバーとしてブートされる場合は recover サブコマンドを強制することを指定します。

–i newdatafile
–-input=newdatafile
–-input newdatafile

復旧操作に使用する CCR テーブルファイルを指定します。

–k
–-key

追加、削除、または変更するキーの名前を指定します。

–o
–-override

オーバーライドオプションは recover サブコマンドとともに使用します。世代番号を OVRD_VERSION に設定します。

このオプションは、1 つの CCR テーブルファイルをマスターコピーにするよう指定するために使用します。このマスターバージョンの CCR テーブルファイルは、復旧時に残りのノード上のほかのバージョンのファイルをオーバーライドします。複数のノードで CCR テーブルファイルの世代番号が OVRD_VERSION である場合は、1 つのファイルのみが選択され、警告メッセージが 1 つのノードのコンソールに出力されます。復旧後、テーブルの世代番号は 0 にリセットされます。

このオプションは、非クラスタモードモードでのみ使用できます。

–v value
–-value=value
–-value value

CCR テーブルのキーの値を指定します。値文字列に空白文字は使用できません。つまり、スペース、タブ、キャリッジリターン、または改行は使用できません。

–Z {zoneclustername | global}
–-zonecluster= {zoneclustername | global}
–-zonecluster {zoneclustername | global}

CCR トランザクションが実行されるクラスタを指定します。このオプションは、すべてのサブコマンドでサポートされています。このオプションを指定する場合は、次のいずれかの引数も指定する必要があります。

zoneclustername

このオプションを使用するコマンドが、zoneclustername という名前のゾーンクラスタでのみ指定されたすべてのリソースグループで作動するように指定します。

global

このオプションを使用するコマンドが、広域クラスタでのみ指定されたすべてのリソースグループで作動するように指定します。

–Z オプションは、クラスタモードでのみ使用できます。

オペランド

次のオペランドだけがサポートされています。

ccrtablefile

管理対象となる CCR テーブルファイルを指定します。指定できるのは 1 つの ccrtablefile のみです。

使用法

ccradm コマンドは、CCR テーブルファイルの管理アクションに使用できます。

使用例 1 破損した CCR テーブルの修復および checksum の再計算

破損した CCR テーブルを修復するためのこれらの手順は、緊急の修復手順の一部として、承認された Oracle 担当者によって指示された場合にのみ実行してください。

次の例では、CCR テーブル ccr-file を修復します。

  1. すべてのノードを非クラスタモードでリブートします。

  2. すべてのノードのファイルを編集し、正しいデータが含まれるようにします。ファイルはすべてのノードで同じである必要があります。ファイルはすべてのノード同じであるため、すべてのノードでオーバーライドバージョンとして指定することもできます。

  3. チェックサムを再計算し、すべてのノードで次のコマンドを実行して、この CCR テーブルファイルをオーバーライドバージョンに指定します (ccr-file は CCR テーブルの名前です)。

    # ccradm recover -o ccr-file
  4. すべてのノードをクラスタモードでリブートします。

使用例 2 バックアップバージョンからの破損した CCR テーブルの復元

次の例では、CCR テーブル yyy をバックアップバージョン (yyy.bak ファイル) の内容で置き換えます。コマンドは、クラスタモードの 1 つのノードから実行します。

# ccradm replace -Z global -i /etc/cluster/ccr/global/yyy.bak /etc/cluster/ccr/global/yyy
使用例 3 CCR テーブルの作成

次の例では、一時 CCR テーブル foo をゾーンクラスタ zc1 に作成します。コマンドは、クラスタモードの 1 つのノードから実行します。

# ccradm addtab -Z zc1 foo
使用例 4 CCR テーブルの削除

次の例は、グローバルクラスタからの CCR テーブル foo の削除を示しています。コマンドは、クラスタモードの 1 つのノードから実行します。

# ccradm remtab foo
使用例 5 CCR テーブルの変更

次の例では、グローバルクラスタ CCR テーブル rgm_rg_nfs-rgPingpong_interval プロパティーの値を 5400 に変更します。コマンドは、クラスタモードの 1 つのノードから実行します。

# ccradm changekey -s 5400 -k Pingpong_interval rgm_rg_nfs-rg
使用例 6 CCR テーブルのキー値の表示

次の例では、CCR テーブル rgm_rg_nfs-rgPingpong_interval プロパティーの値を表示します。

# ccradm showkey -k Pingpong_interval rgm_rg_nfs-rg
5400

終了ステータス

次の終了値が返されます。

0

エラーは発生していません。

>0

エラーが発生しました。

属性

次の属性の詳細は、attributes(5) を参照してください。

属性タイプ
属性値
使用条件
ha-cluster/system/core
インタフェースの安定性
発展中