###一、前言
1.软件版本
- keepalived-1.3.7.tar.gz
###二、安装keepalived
下载的安装包放在/app/Package/目录下
解压
#tar -zxvf keepalived-1.3.7.tar.gz
#cd keepalived-1.3.7
#mkdir /app/keepalived-1.3.7
#./configure --prefix=/app/keepalived-1.3.7
如果遇到以下错误
gcc
#yum install gcc
openssl-devel
#yum install openssl-devel
libnl
#yum install libnl libnl-devel
libnfnetlink
rpm -ivh libnfnetlink-devel-1.0.0-1.el6.x86_64.rpm
如果有以下的错误
升级glib*
yum update glib*
或者降低keepalived的版本
http://blog.51cto.com/nydia/1556781
#!/bin/sh
#
# Startup script for the Keepalived daemon
#
# processname: keepalived
# pidfile: /var/run/keepalived.pid
# config: /etc/keepalived/keepalived.conf
# chkconfig: - 21 79
# description: Start and stop Keepalived
# Source function library
. /etc/rc.d/init.d/functions
# Source configuration file (we set KEEPALIVED_OPTIONS there)
. /etc/sysconfig/keepalived
RETVAL=0
prog="keepalived"
start() {
echo -n $"Starting $prog: "
daemon keepalived ${KEEPALIVED_OPTIONS}
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
}
stop() {
echo -n $"Stopping $prog: "
killproc keepalived
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
}
reload() {
echo -n $"Reloading $prog: "
killproc keepalived -1
RETVAL=$?
echo
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
start
;;
condrestart)
if [ -f /var/lock/subsys/$prog ]; then
stop
start
fi
;;
status)
status keepalived
RETVAL=$?
;;
*)
echo "Usage: $0 {start|stop|reload|restart|condrestart|status}"
RETVAL=1
esac
exit $RETVAL
#! /bin/bash
RETVAL=0
killall -0 nginx
RETVAL=$?
if [ $RETVAL -ne 0 ]
then
echo "nginx server is died"
killall keepalived
fi
修改配置文件
将配置文件拷贝到系统对应的目录下:
#mkdir /etc/keepalived
#cp /app/keepalived/etc/keepalived.conf /etc/keepalived/keepalived.conf
#cp /app/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/keepalived
#cp /app/keepalived/etc/sysconfig/keepalived /etc/sysconfig/keepalived
#vim /etc/keepalived.conf
! Configuration File for keepalived
global_defs {
router_id GPMTSTPX04
}
vrrp_script chk_nginx {
script "/etc/keepalived/chk_nginx.sh" #监控nginx进程的脚本
interval 2
weight -10
fall 2
rise 2
}
vrrp_instance VI_1 {
state MASTER
interface eth2
virtual_router_id 214
priority 98
advert_int 1
authentication {
auth_type PASS
auth_pass tqmstst1
}
virtual_ipaddress {
10.252.95.214 #虚拟IP
}
track_script {
chk_nginx
}
}
版权声明:本文为Peibaoxi原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。