Gentoo Linuxな生活​/システム管理関連

HeartBeatとDRBDの組み合わせ anchor.png

では、これでプラットフォームが出来上がりましたので、DRBDのプラットフォームに乗せてみましょう。おいちゃんが行うのはこれです。 MySQL,apache2,sambaでやってみようと思います。あとはいろいろと各自の応用でどうぞ。

Page Top

計画 anchor.png

Webのページデータと、MySQLのデータベースをDRBDに乗せて、2つのサーバで切り替えを達成しましょう。

Page Top

実践 anchor.png

Page Top

サービスを止める anchor.png

# rc-update del mysql default
# rc-update del apache2 default
# rc-update del samba default

SRV1,SRV2双方で実施します。

Page Top

データをコピーしておく anchor.png

DRBDをSRV1でprimaryにしましょう。んで、/mnt/drbdにマウントします

# drbdadm primary drbd0
# mount /dev/drbd0 /mnt/drbd

デフォルトだと、MySQLデータベースは/var/lib/mysqlにあります。これを/mnt/drbdにコピー。/var/lib/mysqlをこのコピーした先のディレクトリにしてみます。

# rsync -a /var/lib/mysql /mnt/drbd
# ln -s /mnt/drbd/mysql /var/lib/mysql

apacheのコンテンツも、デフォルトは/var/www/localhost/htdocsなので、これまたコピーしてやります。

# rsync -a /var/www/localhost /mnt/drbd
Page Top

設定をあわせる anchor.png

apacheは、/etc/apache2/vhosts.d/00_default_vhost.confのDocumentRoot,Directoryディレクティブのパスを変更しておきましょう。

Page Top

haresourcesを設定。 anchor.png

こんな感じ。SRV1をマスタサーバにして、192.168.1.10を共有アドレスとした設定にしましょう。

SRV1 192.168.1.10/24 drbddisk::drbd0 \
apache2:: \
mysql:: \
samba:: \
Page Top

resource.dにシェルを設定する。 anchor.png

apache2,mysql,sambaは、/etc/init.dの下にある奴で、リンクを張っておいてやりましょうか。

# ln -s /etc/init.d/apache2
# ln -s /etc/init.d/mysql
# ln -s /etc/init.d/samba

DRBDのおまけでついてきたresource.dの下にあるdrbddiskというシェル。DRBDをプライマリ、セカンダリに変更するだけなので、ちょこっと小細工します。

   start)
       # try several times, in case heartbeat deadtime
       # was smaller than drbd ping time
       try=6
       while true; do
               $DRBDADM primary $RES && break
               let "--try" || exit 20
               sleep 1
       done
       mount /dev/$RES       ←追加してやるっす
       ;;
   stop)
       # exec, so the exit code of drbdadm propagates
       umount /dev/$RES   ←追加してやるっす
       exec $DRBDADM secondary $RES
       ;;

さらに、mount,umountのとき、デバイス指定でマウントが出来るようにfstabに書いておきます。

/dev/drbd0              /mnt/drbd       reiserfs        noauto,noatime,notail   0 0

完全に機能のコピーのため、SRV1,SRV2とも同じ設定をしておきます。するてーと、SRV1,SRV2が完全な機能コピーの2重化サーバになります。

Page Top

起動 anchor.png

# /etc/init.d/heartbeat start

をSRV1,SRV2で起動します。起動したあと、SRV1にアドレス192.168.1.10がつき、apache,samba,mysqlの起動が確認できましたか?SRV2では起動しないことが確認できましたか??Webアクセスは出来ますか?sambaアクセスできますか?

SRV1のheartbeatを落としてみましょう。SRV2にドレス192.168.1.10がつき、apache,samba,mysqlの起動が確認できましたか?Webアクセスは変わらずできますか?sambaも変わらずアクセスできますか?

うまく行ったら完了です~

Page Top

応用は? anchor.png

完全な機能コピーだけではなく、補完サーバとするために、一部だけ起動するとか、切り替わったらクライアント機能を停止させるとか。うちだと、バックアップマシンのautofsを停止するとか設定を行ってます。いろいろ応用範囲はありますね~


Front page   Freeze Diff Backup Copy Rename ReloadPrint View   New Page Page list Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom) Powered by xpWiki
Counter: 3239, today: 1, yesterday: 1
Princeps date: 2009-08-19 (Wed) 00:54:45
Last-modified: 2009-08-19 (Wed) 00:54:45 (JST) (4087d) by maruo
ページ内検索

ログイン

ユーザー名:


パスワード:





パスワード紛失

メインメニュー

サブメニュー
自宅鯖計画

Gentoo Linuxな生活

玄箱HGにGentoo格闘記

航空ショーへ行こう

モータースポーツな世界

奥深き写真の世界への誘い

我思う ゆえに我あり



携帯用QRコード