Cur: 2009-08-19 (Wed) 00:54:45 maruo source
Line 1: Line 1:
 +[[Gentoo Linuxな生活/システム管理関連]]
 +*HeartBeatとDRBDの組み合わせ [#d2de42b4]
 +では、これでプラットフォームが出来上がりましたので、DRBDのプラットフォームに乗せてみましょう。おいちゃんが行うのはこれです。
 +MySQL,apache2,sambaでやってみようと思います。あとはいろいろと各自の応用でどうぞ。
 +
 +*計画 [#a194f29d]
 +Webのページデータと、MySQLのデータベースをDRBDに乗せて、2つのサーバで切り替えを達成しましょう。
 +
 +*実践 [#z1983eb2]
 +**サービスを止める [#i9c801ac]
 + # rc-update del mysql default
 + # rc-update del apache2 default
 + # rc-update del samba default
 +SRV1,SRV2双方で実施します。
 +
 +**データをコピーしておく [#sf3f5c82]
 +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
 +
 +**設定をあわせる [#jfa6f385]
 +apacheは、/etc/apache2/vhosts.d/00_default_vhost.confのDocumentRoot,Directoryディレクティブのパスを変更しておきましょう。
 +
 +**haresourcesを設定。 [#vf86298e]
 +こんな感じ。SRV1をマスタサーバにして、192.168.1.10を共有アドレスとした設定にしましょう。
 + SRV1 192.168.1.10/24 drbddisk::drbd0 \
 + apache2:: \
 + mysql:: \
 + samba:: \
 +**resource.dにシェルを設定する。 [#o5325f15]
 +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重化サーバになります。
 +*起動 [#ob01b4d1]
 + # /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も変わらずアクセスできますか?
 +
 +うまく行ったら完了です~
 +
 +*応用は? [#a1714e41]
 +完全な機能コピーだけではなく、補完サーバとするために、一部だけ起動するとか、切り替わったらクライアント機能を停止させるとか。うちだと、バックアップマシンのautofsを停止するとか設定を行ってます。いろいろ応用範囲はありますね~
  

  • Backup diff of Gentoo Linuxな生活/組み合わせる(No. All)
    • Cur: 2009-08-19 (Wed) 00:54:45 maruo

Front page   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: 3254, today: 1, yesterday: 3
ページ内検索

ログイン

ユーザー名:


パスワード:





パスワード紛失

メインメニュー

サブメニュー
自宅鯖計画

Gentoo Linuxな生活

玄箱HGにGentoo格闘記

航空ショーへ行こう

モータースポーツな世界

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

我思う ゆえに我あり



携帯用QRコード