1、#hostname node1.a.org
#vim /etc/sysconfig/network 修改HOSTNAME=node1.a.org
10.1.1.1 node1.a.org node1
10.1.1.2 node2.a.org node2
#ssh-keygen –t rsa 然後一路Enter下去就行了
#ssh-copy-id .ssh/id_rsa.pub [email protected] 然後輸入密碼就行了
#vim /etc/sysconfig/network-scripts/ifcfg-eth0
##vim /etc/sysconfig/network-scripts/ifcfg-eth1
IP就照圖上的配置進行,配置完成之後重新啓動網絡
#service network restart
5、安裝Heartbeat軟件包
[root@node1 heartbeat]# ls //列出所需的軟件包
heartbeat-2.1.4-9.el5.i386.rpm
heartbeat-devel-2.1.4-9.el5.i386.rpm
heartbeat-gui-2.1.4-9.el5.i386.rpm
heartbeat-pils-2.1.4-10.el5.i386.rpm
heartbeat-stonith-2.1.4-10.el5.i386.rpm
libnet-1.1.4-3.el5.i386.rpm
使用本地安裝,解除依賴關係
#yum localinstall * --nogpgcheck –y
#cd /usr/share/doc/heartbeat-2.1.4/
#cp ha.cf haresources authkeys /etc/ha.d/ //拷貝配置文件模版到/etc/ha.d下
#cd /etc/ha.d
#vim /etc/ha.d/ha.cf //編輯配置文件
修改如下內容
keepalive 2 //保持時間
deadtime 30 //死亡時間
warntime 10 //警告時間
initdead 120 //啓動時間
udpport 694 //使用udp的端口
bcast eth1 //心跳接口
logfile /var/log/ha-log //日誌文件
auto_failback on //失敗自動退回
node node1.a.org //節點對應的主機名,這裏面要寫所有的
node node2.a.org
bcast node1.a.org
#vim authkeys
auth 2
2 sha1 jlasdlfladddd //這個後面的密碼可以隨意寫,也可以使用自動生成隨機數(#dd if=/dev/urandom bs=512 count=1 |md5sum )的方式來生成,但是節點之間是一樣的
#chmod 400 authkeys //修改權限
#vim haresources
node1.a.org ipvsd //指定主節點和VIP和流動資源,這裏面定義的ipvsd是一個腳本,下面將介紹
#cd /usr/lib/heabeat
./ha_propagate //拷貝文件authkeys和ha.cf文件
#cd /etc/ha.d/
#scp haresources node2:/etc/ha.d/
#vim ipvsd
#!/bin/bash
#
# LVS script for VS/DR
#
. /etc/rc.d/init.d/functions
#
VIP=192.168.1.80 //定義一個全局的變量VIP
RIP1=192.168.1.172 //定義RealSever1的ip地址
RIP2=192.168.1.178 // 定義RealSever2的ip地址
PORT=80
case "$1" in
start)
/sbin/route add -host $VIP dev eth0:1
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -F
/sbin/iptables -Z
/sbin/ipvsadm -C
# In this recipe, we will use the round-robin scheduling method.
# In production, however, you should use a weighted, dynamic scheduling method.
/sbin/ipvsadm -A -t $VIP:80 -s wlc
# the real server IP (RIP) inside the cluster
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1 -g -w 1
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2 -g -w 2
;;
# Stop forwarding packets
echo 0 > /proc/sys/net/ipv4/ip_forward
/sbin/ipvsadm -C
/sbin/ifconfig eth0:1 down
/sbin/route del $VIP
/bin/rm -f /var/lock/subsys/ipvsadm
echo "ipvs is stopped..."
;;
if [ ! -e /var/lock/subsys/ipvsadm ]; then
echo "ipvsadm is stopped ..."
else
echo "ipvs is running ..."
ipvsadm -L -n
fi
;;
*)
echo "Usage: $0 {start|stop|status}"
;;
esac
這個腳本在寫完之後,要賦予執行的權限,並且把他放到/etc/ha.c/resource.d/下
#chmod +x ipvsd
#cp ipvsd /etc/ha.d/resource.d/
1、配置VIP&&RIP
#ifconfig eth0 192.168.1.172/24 //配置RIP
#ifconfig lo:0 192.168.1.80 broadcast 192.168.1.80 netmask 255.255.255.255 up
#route add –host 192.168.1.80 dev lo:0
2、定義內核參數,防止ARP解析的
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_igonre
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_igonre
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
3、安裝LAMP服務
#yum install mysql-server php httpd php-mysql php-mbstring
#echo “<h2>Real Server1</h2>” >/var/www/html/index.html
#service httpd start //啓動服務
1、配置VIP&&RIP
#ifconfig eth0 192.168.1.178/24 //配置RIP
#ifconfig lo:0 192.168.1.80 broadcast 192.168.1.80 netmask 255.255.255.255 up
#route add –host 192.168.1.80 dev lo:0
2、定義內核參數,防止ARP解析的
#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_igonre
#echo 1 > /proc/sys/net/ipv4/conf/all/arp_igonre
#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
3、安裝LAMP服務
#yum install mysql-server php httpd php-mysql php-mbstring
#echo “<h2>Real Server2</h2>” >/var/www/html/index.html
#service httpd start //啓動服務
當然這個過程也可以使用一個腳本實現。
#/etc/init.d/heartbeat start
#ssh node2 -- '/etc/init.d/heartbeat start'
我這裏都是在一個機器上啓動的,啓動完成之後,接下來就是驗證了
2011/09/11_21:11:46 Going standby [all].