OSごとコピーしてLinux-HA環境作りTai!

ネタが古くてすみません橘べるちぇです。

今回は、各所でちらほら出ているもので、仮想環境なんかでLinux-HAを組むときに、稼働系1ノードをとりあえずインストールして、それをコピーして待機系にしたいなんて話をしてみようと思います。

目的

仮想環境で1ノード作ってそのディスクイメージをコピーしてHA化したい!
がんがん金太郎飴方式にノードを増やせるようにしたい!
OSのインストールは最近すぐ終わるようになったけどやっぱりめんどい!
UUID重複して怒られちゃったのどうやって対処したらいいの!?対象方法知りたい!
黒髪ロングストレート最高!

以上のことを実現する方法をちょっと試してみたので今回ここでご紹介します。

動作環境

OS : CentOS5.5
Heartbeat3.0.4+Pacemaker1.0.10 (Linux-HA Japanのリポジトリ使って☆)
仮想環境(VMWare または VirtualBox 等)
NIC: eth0をサービス系、eth1を監視用として使う

今回はOSごとコピーするので、ディスクイメージを簡単にコピーできる仮想環境でやります。今回私はVirtualBoxの仮想アプライアンスのエクスポート・インポート機能を使ってみたかったのでそれでやりました。

稼働系のインストール

説明することはございませんw Linux-HA Japanで公開されているリポジトリで簡単にインストールしちゃってください。

新谷良子ちゃんの声をききながらDRBD-MCでインストールしてもOKです。オススメです。

待機系の準備

VMWareだと.vmdkファイルをコピー、VirtualBoxだと仮想アプライアンスとしてエクスポートしてインポートしたりして稼働系と同じものを作ります。

同じ環境が起動したら、ホスト名とIPアドレスだけ変更します。

▼変更するファイル

/etc/sysconfig/network
/etc/sysconfig/network-script/ifcfg-eth1

networkはホスト名のところと、ifcfg-eth1はIPアドレスのところを変えてください。

変更ができたら再起動して先ほどの稼働系のOSも一緒に起動しちゃいます。起動できたらPINGなりでネットワークが疎通しているかどうかの確認をしてください。オチとしては仮想環境の設定ミスっててPINGが通らなくておかしくなっていることが多いです。

ぶつけてみる

はい。じゃここまでできたら、Heartbeatを両ノードで起動してぶつけてみましょう(笑)

事象を確認することって重要ですよね。ぶつかるとどういう症状になって、どういうログが出るかを確認しておくと今後の役に立つと思います。すんごい沢山ログが吐かれるので覚悟してください。

……

はい。ぶつかって後から起動したほうまたは両ノードが再起動されちゃいましたね。

これはこのクラスター環境が保有しているUUIDが同一だからです。ホスト名は違う、でもUUIDは一緒…。Heartbeatは下のような会話をします。

HA1のHeartbeat:「おーおー、HA2やんけ。これからなかよくしてなー。携帯電話の番号(UUID)交換しようや」

HA2のHeartbeat:「いやーHA2さんどうもです。こちらこそよろしくなのですよ。あ、これボクの携帯(UUID)」

HA1のHeartbeat:「あ?おまえこれうちの携帯番号やん。」

HA2のHeartbeat:「え?マジこれボクの携帯番号じゃん」

HA1のHeartbeat:「じゃんって言うなや。」(ログの出力)

HA2のHeartbeat:「いや関西弁とか無理なんですけど」(ログの出力)

HA1のHeartbeat:「わしが先輩や、その番号はわしのだー。氏ねやボケが」(再起動命令)

HA2のHeartbeat:「そ、そんな…」(再起動)

簡単に言うとこんな感じです。

じゃ、HA2のHeartbeat君の電話番号(UUID)を変えればいいということになりますね。

UUIDの生成

これ結構聞かれていたので、橘べるちぇ的やりかたでご紹介します。Heartbeatのソースを眺めていたら普通にUUID作ってるだけっぽいので、uuidgen使いますw

[root@ha2 . . . → Read More: OSごとコピーしてLinux-HA環境作りTai!