以下為腳本:
1.主機(jī)腳本(192.168.29.3)
1 vi /etc/rc.conf
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 4"
mountd_flags="-r"
2 vi /etc.exports
/quark/ /quark/somains /quark/ldbm /quark/mysql/var -mapall=root -network 192.168.29.0 -mask 255.255.255.0
3 vi /tools/monitor.sh
#!/bin/sh
/quark/bin/monitor --host 192.168.29.3 25 10 5 /tools/failover.sh &
4 vi /tools/failover.sh
#!/bin/sh
/quark/bin/quark stop
/quark/bin/sql-server.sh stop
/quark/bin/openldap.sh stop
/quark/bin/web-server.sh stop
/quark/bin/web-admin.sh stop
ifconfig fxp0 down
5 vi /tools/takeover.sh
#!/bin/sh
ifconfig fxp0 192.168.29.3 netmask 255.255.255.0 up
route add default 192.168.29.20
/quark/bin/quark start
/quark/bin/sql-server.sh start
/quark/bin/openldap.sh start
/quark/bin/web-server.sh start
/quark/bin/web-admin.sh start
備機(jī)腳本;(192.168.29.4)
1vi/etc/rc.conf
nfs_client_enable="YES"
nfs_client_flags="-n 4"
2.vi/tools/monitor.sh
#!/bin/sh
/quark/bin/monitor --host 192.168.29.3 25 10 6 /tools/failover.sh &
3 vi /tools/failover.sh
#!/bin/sh
ifconfig fxp0 down
ifconfig fxp0 192.168.29.3 netmask 255.255.255.0 up
route add default 192.168.29.20
/quark/bin/quark start
/quark/bin/sql-server.sh start
/quark/bin/openldap.sh start
/quark/bin/web-server.sh start
/quark/bin/web-admin.sh start
4vi /tools/takeover.sh
#!/bin/sh
/quark/bin/quark stop
/quark/bin/sql-server.sh stop
/quark/bin/openldap.sh stop
/quark/bin/web-server.sh stop
/quark/bin/web-admin.sh stop
ifconfig fxp0 192.168.29.4 netmask 255.255.255.0 up
route add default 192.168.29.20
5vi /tools/mount.sh
#!/bin/sh
mount -t nfs 192.168.29.3:/quark/domains /data/domains
mount -t nfs 192.168.29.3:/quark/ldbm /data/ldbm
mount -t nfs 192.168.29.3:/quark/mysql/var /data/var
6 vi /tools/mirror.sh
#1/bin/sh
/quark/bin/cpbk -rn /data/domains /quark/domains
/quark/bin/cpbk -rn /data/ldbm /quark/ldbm
/quark/bin/cpbk -rn /data/var /quark/mysql/var
--------------------------------------------------------------
LINUX雙機(jī)熱備
LINUX 系統(tǒng)下雙機(jī)熱備
主服務(wù)器;MAIL1 10.154.4.42
備服務(wù)器:MAIL2 10.154.4.43
配置主服務(wù)器:MAIL1
1. 修改/etc/rc.conf
vi /etc/rc.conf
nfs_server_enable=”YES”
nfs_server_flags=“-u –t –n 4”
mountd_flags=”-r”
2. 修改/etc/exports
vi /etc/exports
/quark/domains *(rw,all_squash,anonuid=8888,anongid=8888)
/quark/ldbm *(rw,no_root_squash)
/quark/mysql/var *(rw,all_sqush,anonuid=8889,anongid=8889)
配置備服務(wù)器:MAIL2
1 .修改/etc/rc.conf
vi /etc/rc.conf
nfs_client_enable=”YES”
nfs_client_flags=”-n 4”
2)vi mount.sh(啟動(dòng)掛載腳本)
#!/bin/sh
mount –t nfs 10.154.4.42:/quark/domains /data/domains
mount –t nfs 10.154.4.42:/quark/ldbm /data/ldbm
mount –t nfs 10.154.4.42:/quark/mysql/var /data/var
注:系統(tǒng)要時(shí)刻運(yùn)行/quark/tools/mount.sh腳本。使得從機(jī)時(shí)刻掛載著主機(jī)開放出來(lái)的分區(qū)。
5)vi mirror.sh(啟動(dòng)同步數(shù)據(jù)的腳本)
#!/bin/sh
/quark/bin/cpbk –rn /data/domains /quark/domains
/quark/bin/cpbk –rn /data/ldbm /quark/ldbm
/quark/bin/cpbk –rn /data/var /quark/mysql/var
6)crontab –e –uroot
59 3,5,7,9,11,13,15,17,19,21,23 * * * /quark/tools/ bakup.sh &
注:
1. 所用到的腳本程序
monitor.sh ---à 監(jiān)聽程序
failover.sh ---à 監(jiān)聽失敗處理
takeover.sh ----à 恢復(fù)腳本
mount.sh -----à 掛載腳本
mirror.sh -----à 同步數(shù)據(jù)的腳本
2 . 配置好主服務(wù)器和備服務(wù)器所要用到的腳本后,要修改這些腳本的權(quán)限
如:chmod 755 monitor.sh
chmod 755 failover.sh
chmod 755 takeover.sh
chmod 755 mount.sh
chmod 755 mirror.sh
3. 主服務(wù)器上monitor.sh腳本要在系統(tǒng)啟動(dòng)時(shí)就執(zhí)行,把此腳本的路徑加入到系統(tǒng)的啟動(dòng)腳本中。如下:
cd /etc/rc.d
vi rc.local
/quark/tools/monitor.sh
5. 備服務(wù)器上monitor.sh, mount.sh兩個(gè)腳本要在系統(tǒng)啟動(dòng)時(shí)就執(zhí)行,把這兩個(gè)腳本的路徑加入到系統(tǒng)的啟動(dòng)腳本中。如下:
cd /etc/rc.d
vi rc.local
/quark/tools/monitor.sh
/quark/tools/mount.sh
4. 當(dāng)主服務(wù)器恢復(fù)故障后,要在備服務(wù)器上手動(dòng)執(zhí)行takeover.sh這個(gè)腳本。如下;
cd /quark/tools
./takeover.sh