566 yum -y install kernel-devel
567 vi /etc/sysctl.conf
568 uname -a
569 ln -s /usr/src/kernels/2.6.18-308.13.1.el5-x86_64/ /usr/src/linux
570 wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
571 ls
572 mv ipvsadm-1.24.tar.gz /home/cloud/
573 cd /home/cloud/
574 ls
575 mkdir software
576 mv ipvsadm-1.24.tar.gz software/
577 cd software/
578 ls
579 tar zxvf ipvsadm-1.24.tar.gz
580 cd ipvsadm-1.24
581 ls
582 make
583 make install
584 cd ..
585 ls
586 wget http://www.keepalived.org/software/keepalived-1.2.7.tar.gz
587 tar zxvf keepalived-1.2.7.tar.gz
588 cd keepalived-1.2.7
589 ./configure --prefix=/ --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.18-308.13.1.el5-x86_64/
590 make
591 make install
592 cd ..
593 history
594 ifconfig
595 vi /etc/keepalived/keepalived.conf
vrrp_script chk_http_port {
script "/opt/tools/bin/check_ng.sh"
interval 2
weight 2
}
global_defs {
notification_email {
}
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 161
mcast_src_ip 58.68.228.131
priority 100
advert_int 1
smtp_alert
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port
}
virtual_ipaddress {
58.68.228.177/25 dev eth0
}
}
[root@sritzenk software]# cat /opt/tools/bin/check_ng.sh
#!/bin/bash
N=`ps -C nginx --no-header |wc -l`
if [ $N -eq 0 ];then
/usr/local/webserver/nginx/sbin/nginx
sleep 3
if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
killall keepalived
fi
fi