kinos****@tdc*****
kinos****@tdc*****
2010年 4月 13日 (火) 12:47:35 JST
木下です。 検証してみました。 障害ノードとさせるdrbd2.localdomain内の/var/lib/heartbeat/hb_uuidをバック アップしておく。 そして、drbd2.localdomainをOSから再インストールして、drbd、postgresと セットアップして、heartbeatをインストールして、/etc/ha.d/配下も戻してから、 下記のように、バックアップしていたhb_uuidを/var/lib/heartbeat/へコピーして から、 heartbeatサービスをstartさせました。 [root @ drbd2 heartbeat]# cp -p hb_uuid /var/lib/heartbeat/ [root @ drbd2 heartbeat]# cd /var/lib/heartbeat/ [root @ drbd2 heartbeat]# ls -al 合計 28 drwxr-xr-x 5 root root 4096 4月 13日 12:13 . drwxr-xr-x 22 root root 4096 4月 13日 12:11 .. drwxr-xr-x 5 root root 4096 4月 13日 12:11 cores drwxr-x--- 2 hacluster haclient 4096 2月 6日 2008 crm -rw-r--r-- 1 root root 16 4月 12日 19:25 hb_uuid drwxr-x--- 2 hacluster haclient 4096 2月 6日 2008 pengine [root @ drbd2 heartbeat]# /etc/init.d/heartbeat start Starting High-Availability services: [ OK ] [root @ drbd2 heartbeat]# ls -al 合計 36 drwxr-xr-x 5 root root 4096 4月 13日 12:14 . drwxr-xr-x 22 root root 4096 4月 13日 12:14 .. drwxr-xr-x 5 root root 4096 4月 13日 12:11 cores drwxr-x--- 2 hacluster haclient 4096 2月 6日 2008 crm -rw-r--r-- 1 root root 0 4月 13日 12:14 delhostcache prw------- 1 root root 0 4月 13日 12:14 fifo -rw-r--r-- 1 root root 16 4月 13日 12:14 hb_generation -rw-r--r-- 1 root root 16 4月 12日 19:25 hb_uuid -rw-r--r-- 1 root root 120 4月 13日 12:14 hostcache drwxr-x--- 2 hacluster haclient 4096 2月 6日 2008 pengine [root @ drbd2 heartbeat]# 結果は、crm_monで見ていて、crm_uuid -wと同じように、新たに同一ホスト名での ノードが生成されずに、古いuuidでそのまま復帰いたしました。 crm_stanbyして、系切替も問題ありませんでした。 以上検証結果でした。 2010/04/13 9:30:08,linux****@lists***** wrote; >岩崎です > >hb_uuid ファイルをバックアップしてコピーするというのは試したことがありま >せんね。もしかしたらできるかもしれません。 >ちょっと私のほうで今検証する環境が無いもので、もし木下さんのほうで試して >いただけるようでしたら、結果を投稿していただけませんでしょうか。 > >たしかにそれができるとノードの復旧手順を簡略化できて良い気がします。 > > >## > >Pacemakerのドキュメントはホームページからだとどこにあるかわからないんで >すよね… :-( > > >-- >---------------------------------------------------------------------- >岩崎 登 (株)サードウェア > >Noboru Iwasaki 274-0815 千葉県船橋市西習志野3-39-8 >iwasa****@3ware***** URL: http://www.3ware.co.jp/ >Phone: 047-496-3341 Fax: 047-496-3370 > > > >kinos****@tdc***** さんは書きました: >> 木下です。 >> >> 岩崎@サードウェアさん、回答ありがとうございました。 >> >> 下記crm_uuidコマンドにて、古いuuidを書き込んでからheartbeatサービスを >> 起動したところ、新しくノードは作成されずに、古いuuidを引き継いで、 >> サービスが立ち上がりました。 >> >> ありがとうございました。 >> >> ところで、/var/lib/heartbeat/配下にあるhb_uuidファイルをバックアップして お >> き、 >> crm_uuidを使わずに、このファイルをコピーするだけでも可能なんですかね? >> >> Pacemakerのドキュメントはあまり目を通していませんでした。 >> これからは、参考にしようと思います。 >> >> >> 2010/04/12 18:02:32,linux****@lists***** wrote; >>> 岩崎@サードウェアです >>> >>>> 両系のheartbeatをstopさせて、DCの系のcib.xmlを修正して、DCではない系の >>>> cib.xmlを削除して起動すると、ダブリのnodeを削除できますが、出来れば >>>> コマンドで動的に削除出来ればと思っています。 >>> こちらのご質問の主旨とは異なるかもしれませんが、フェイルを起こして交換 し >>> たノードの復旧方法につきまして、復旧手順についてご確認いただいてはいか が >>> でしょうか。 >>> >>> Pacemakerでの復旧手順になってしまいますが、Pacemaker_Explainedのドキュ メ >>> ント(4.5.2)に以下のように記載されています。 >>> >>> ---- >>> 1.Make sure the old node is completely stopped >>> 2.Give the new machine the same hostname as the old one >>> 3.Go to an active cluster node and look up the UUID for the old node >>> in /var/lib/heartbeat/hostcache >>> 4.Install the cluster software >>> 5.Copy ha.cf and authkeys to the new node >>> 6.On the new node, populate it's UUID using crm_uuid -w and the UUID >>>from step 2 >>> 7.Start the new cluster node >>> ---- >>> >>> 交換したノードのUUIDについては、交換前のUUIDを crm_uuid -wで登録をしな お >>> してから復旧する手順となっています。Heartbeat2.1.3でも同じような形にな る >>> のではないかと思いましてご回答差し上げました。 >>> >>> 残念ながら動的に古いUUIDを削除する方法につきましては、わかりません が、ご >>> 参考になりますでしょうか。 >>> >>> 【参考資料】Pacemaker_Explained >>> >http://www.clusterlabs.org/doc/en-US/Pacemaker/1.1/html/Pacemaker_Explained/inde >> >>> x.html >>> >>> >>> -- >>> ---------------------------------------------------------------------- >>> 岩崎 登 (株)サードウェア >>> >>> Noboru Iwasaki 274-0815 千葉県船橋市西習志野3-39-8 >>> iwasa****@3ware***** URL: http://www.3ware.co.jp/ >>> Phone: 047-496-3341 Fax: 047-496-3370 >>> >>> >>> >>> kinos****@tdc***** さんは書きました: >>>> 木下です。 >>>> >>>> heartbeat+drbdで構築した環境で片系のサーバーが障害発生して、 >>>> OSからインストールし直さないといけない状態があったとします。 >>>> >>>> 死んだサーバーのstatusは、OFFLINEのままに、OSをインストールして >>>> heartbeatとdrbdを設定しました。 >>>> >>>> 死んだサーバーを再構築して、haertbeatをstartさせた時に、以下のように >>>> なります。 >>>> >>>> [root @ drbd1 ~]# crm_mon >>>> Defaulting to one-shot mode >>>> You need to have curses available at compile time to enable console mode >>>> >>>> >>>> ============ >>>> Last updated: Mon Apr 12 15:54:11 2010 >>>> Current DC: drbd1.localdomain (4cb1e44a-a722-4012-8a6a-ea2e727d9511) >>>> 3 Nodes configured. >>>> 1 Resources configured. >>>> ============ >>>> >>>> Node: drbd1.localdomain (4cb1e44a-a722-4012-8a6a-ea2e727d9511): online >>>> Node: drbd2.localdomain (282f35cb-5f46-4573-84de-8451d26c49f8): OFFLINE >>>> Node: drbd2.localdomain (611cf05e-eef9-4faa-8238-d288b15b1b72): online >>>> >>>> Resource Group: group_1 >>>> IPaddr_10_20_65_50 (heartbeat::ocf:IPaddr): Started >>>> drbd2.localdomain >>>> drbddisk_2 (heartbeat:drbddisk): Started drbd2.localdomain >>>> Filesystem_3 (heartbeat::ocf:Filesystem): Started >>>> drbd2.localdomain >>>> pgsql_4 (heartbeat::ocf:pgsql): Started drbd2.localdomain >>>> [root @ drbd1 ~]# >>>> >>>> >>>> drbd2.localdomain(611cf05e-eef9-4faa-8238-d288b15b1b72)が新たにnodeと し >> て >>>> 追加されたのですが、OFFLINEのnodeの >>>> drbd2.localdomain(282f35cb-5f46-4573-84de-8451d26c49f8)を削除したいの で >> す >>>> が、 >>>> heartbeatのサービスを停止せずに削除が出来るのでしょうか? >>>> >>>> 今のところ、何種類かコマンドを実施しましたが、うまくいってません。 >>>> >>>> # crm_attribute -D -U drbd2.localdomain -u >>>> 282f35cb-5f46-4573-84de-8451d26c49f8 >>>> # crm_master -D -i 282f35cb-5f46-4573-84de-8451d26c49f8 >>>> # crm_master -D -U drbd2.localdomain -i >>>> 282f35cb-5f46-4573-84de-8451d26c49f8 >>>> >>>> >>>> 両系のheartbeatをstopさせて、DCの系のcib.xmlを修正して、DCではない系の >>>> cib.xmlを削除して起動すると、ダブリのnodeを削除できますが、出来れば >>>> コマンドで動的に削除出来ればと思っています。 >>>> >>>> ご存知の方、いらっしゃったら教えてください。 >>>> >>>> 環境は、以下になります。 >>>> >>>> CentOS4.8 2.6.9-89.ELsmp >>>> heartbeat 2.1.3-3(v2モードで利用) >>>> drbd 8.3.2-6 >>>> postgresql 8.4.1 >>>> >>>> eth0がサービスポート >>>> eth1が同期ポート >>>> ttyS0がシリアルの同期ポート >>>> >>>> _______________________________________________ >>>> Linux-ha-japan mailing list >>>> Linux****@lists***** >>>> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan >>> _______________________________________________ >>> Linux-ha-japan mailing list >>> Linux****@lists***** >>> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan >> >> _______________________________________________ >> Linux-ha-japan mailing list >> Linux****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan > >_______________________________________________ >Linux-ha-japan mailing list >Linux****@lists***** >http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan