cibadmin - クラスタの環境設定に直接アクセスできるようにします
環境設定、またはその一部のクエリ、変更、置換、削除を行えるようにします。
cibadmin (--query|-Q) -[Vrwlsmfbp] [-i xml-object-id|-o
xml-object-type] [-t t-flag-whatever] [-h hostname]
cibadmin (--create|-C) -[Vrwlsmfbp] [-X xml-string]
[-x xml- filename] [-t t-flag-whatever] [-h hostname]
cibadmin (--replace-R) -[Vrwlsmfbp] [-i xml-object-id|
-o xml-object-type] [-X xml-string] [-x xml-filename] [-t
t-flag- whatever] [-h hostname]
cibadmin (--update|-U) -[Vrwlsmfbp] [-i xml-object-id|
-o xml-object-type] [-X xml-string] [-x xml-filename] [-t
t-flag- whatever] [-h hostname]
cibadmin (--modify|-M) -[Vrwlsmfbp] [-i xml-object-id|
-o xml-object-type] [-X xml-string] [-x xml-filename] [-t
t-flag- whatever] [-h hostname]
cibadmin (--delete|-D) -[Vrwlsmfbp] [-i xml-object-id|
-o xml-object-type] [-t t-flag-whatever] [-h hostname]
cibadmin (--delete_alt|-d) -[Vrwlsmfbp] -o
xml-object-type [-X xml-string|-x xml-filename]
[-t t-flag-whatever] [-h hostname]
cibadmin --erase (-E)
cibadmin --bump (-B)
cibadmin --ismaster (-m)
cibadmin --master (-w)
cibadmin --slave (-r)
cibadmin --sync (-S)
cibadmin --help (-?)
cibadminコマンドは、Heartbeat CIBを操作するための低レベル管理コマンドです。CIBのすべて、または一部のダンプ、更新、変更、CIB全体の削除、その他各種のCIB管理操作を実行するために使用します。
cibadminはCIBのXMLツリーに対して機能します。ほとんどの場合、実行する更新やクエリの意味は把握していません。つまり、XMLツリー要素の意味を理解している人には自然に思えるショートカットも、cibadminでは利用できません。これにはあいまいな点がまったくない状態でなければなりません。そのため、入出力の両方で有効なXMLサブツリー(タグおよび要素)のみ扱うことができます。
NOTE: cibadminは、手動によるcib.xmlファイルの編集に常に優先して使用する必要があります。特にクラスタがアクティブな場合はその必要があります。クラスタは手動編集の検出とその回避にあらゆる手段を駆使してユーザのデータを紛失、または破壊しないようにしています。
操作実行対象のオブジェクトタイプを指定します。有効な値はnodes、resources、constraints、crm_status、およびstatusです。
デバッグモードを有効にします。-Vオプションを追加すると、詳細な出力が得られます。
cibadminからヘルプメッセージを入手します。
obj_typeの代わりに使用する有効なXPathを提供します。
CIBのepochバージョンカウンタを増やします。通常この値は、新しいリーダーを選出するとクラスタが自動的に増分します。古い環境設定(使用していないクラスタノードのものなど)を廃止する場合には、手動で増やす方法は便利です。
引数のXMLコンテンツから新しいCIBを作成します。
たとえば<op id="rsc1_op1" name="monitor"/>のように、指定した基準と一致する最初のオブジェクトを削除します。要素を削除するには、タグ名とすべての属性が一致しなければなりません。
CIB全体のコンテンツを削除します。
CIBソフトウェアのローカルインスタンスがマスタインスタンスかどうかを示すメッセージを印刷します。マスタインスタンスであればリターンコード0を、それ以外の場合は35を返して終了します。
CIBのXMLツリーでオブジェクトを検索して更新します。
CIBの一部をクエリします。
CIB内のXMLオブジェクトを反復置換します。
特定ホスト(-h使用時)、またはDC(-h未使用時)で、CIBのすべてのノードの再同期化を強制的に実行します。
crmadminを実行するXMLタグまたはXML断片を指定します。完全なタグまたはXML断片でなければなりません。
cibadminを実行するファイルからXMLを指定します。完全なタグまたはXML断片でなければなりません。
cibadminを実行するXMLを、標準入力からのものとして指定します。完全なタグまたはXML断片でなければなりません。
指定されたホストにコマンドを送信します。queryおよびsyncコマンドにのみ適用されます。
コマンドをローカルに適用します(ほとんど使用されない高度なオプション)。
CIBを変更した場合でも、コマンドはブロードキャストされません。
IMPORTANT: 別なクラスタを発生しないように、このオプションは注意して使用してください。
呼び出しが完了するまで待って復帰します。
stdoutに配信されたアクティブなCIB(ステータスセクションなどを含む)全体のコピーを入手するには、このコマンドを実行します。
cibadmin -Q
IPaddr2リソースをresourcesセクションに追加するには、最初に、次のコンテンツを含んだfooファイルを作成します。
<primitive id="R_10.10.10.101" class="ocf" type="IPaddr2" provider="heartbeat"> <instance_attributes id="RA_R_10.10.10.101"> <attributes> <nvpair id="R_ip_P_ip" name="ip" value="10.10.10.101"/> <nvpair id="R_ip_P_nic" name="nic" value="eth0"/> </attributes> </instance_attributes> </primitive>
そして次のコマンドを実行します。
cibadmin --obj_type resources -U -x foo
すでに追加されているIPaddr2リソースのIPアドレスを変更するには、次のコマンドラインを実行します。
cibadmin -M -X '<nvpair id="R_ip_P_ip" name="ip" value="10.10.10.102"/>'
NOTE: これは、リソース名を新しいIPアドレスに変更するものではありません。追加するには、一旦削除して、新しいIDタグで再度リソースを追加してください。
過去に追加されたIPアドレスリソースを削除せずに停止(無効に)するには、次のコンテンツを含むbarと呼ばれるファイルを作成します。
<primitive id="R_10.10.10.101"> <instance_attributes id="RA_R_10.10.10.101"> <attributes> <nvpair id="stop_R_10.10.10.101" name="target-role" value="Stopped"/> </attributes> </instance_attributes> </primitive>
そして次のコマンドを実行します。
cibadmin --obj_type resources -U -x bar
前の手順で停止したIPアドレスリソースを再開するには、次のコマンドを実行します。
cibadmin -D -X '<nvpair id="stop_R_10.10.10.101">'
CIBからIPアドレスリソースを完全に削除するには、次のコマンドを実行します。
cibadmin -D -X '<primitive id="R_10.10.10.101"/>'
CIBを手動で編集した新しいCIBに入れ替えるには、次のコマンドを実行します。
cibadmin -R -x $HOME/cib.xml
/var/lib/heartbeat/crm/cib.xml—ディスク上のCIB(ステータスセクションを除く)。
crm_resource (8)、crmadmin (8)、lrmadmin(8)、heartbeat(8)
cibadminはAndrew Beekhofが作成しました。
このマニュアルページは本来Alan Robertsonが作成したものです。
ローカルディスク上に自動保存されているCIBのコピーを使って操作することは避けてください。クラスタに変更があるたびにCIBが更新されます。したがってCIBの古いバックアップコピーを使用して設定変更を伝播すると、クラスタの整合性が失われることがあります。