代码改变世界

Keepalived源码安装

2017-11-28 14:36  abce  阅读(1121)  评论(0编辑  收藏  举报

1.编译、安装

# tar -xvf keepalived-1.3.9.tar.gz 
# cd keepalived-1.3.9/
# ./configure -prefix=/usr/local/keepalived-1.3.9
# make 
# make install

2.配置成服务

cp /usr/local/keepalived-1.3.9/etc/sysconfig/keepalived /etc/sysconfig/

3.拷贝配置文件

# mkdir /etc/keepalived
# cp /usr/local/keepalived-1.3.9/etc/keepalived/keepalived.conf /etc/keepalived/

4.使用软连接或者直接拷贝执行文件

# ln -s /usr/local/keepalived-1.3.9/sbin/keepalived /usr/sbin/
或者
# cp /usr/local/keepalived-1.3.9/sbin/keepalived /usr/sbin

5.加入开机启动项

# vi /etc/init.d/keepalived

  脚本内容如下:

#!/bin/sh  
#  
# keepalived   High Availability monitor built upon LVS and VRRP  
#  
# chkconfig:   - 86 14  
# description: Robust keepalive facility to the Linux Virtual Server project \  
#              with multilayer TCP/IP stack checks.  
  
### BEGIN INIT INFO  
# Provides: keepalived  
# Required-Start: $local_fs $network $named $syslog  
# Required-Stop: $local_fs $network $named $syslog  
# Should-Start: smtpdaemon httpd  
# Should-Stop: smtpdaemon httpd  
# Default-Start:   
# Default-Stop: 0 1 2 3 4 5 6  
# Short-Description: High Availability monitor built upon LVS and VRRP  
# Description:       Robust keepalive facility to the Linux Virtual Server  
#                    project with multilayer TCP/IP stack checks.  
### END INIT INFO  
  
# Source function library.  
. /etc/rc.d/init.d/functions  
  
exec="/usr/sbin/keepalived"  
prog="keepalived"  
config="/etc/keepalived/keepalived.conf"  
  
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog  
  
lockfile=/var/lock/subsys/keepalived  
  
start() {  
    [ -x $exec ] || exit 5  
    [ -e $config ] || exit 6  
    echo -n $"Starting $prog: "  
    daemon $exec $KEEPALIVED_OPTIONS  
    retval=$?  
    echo  
    [ $retval -eq 0 ] && touch $lockfile  
    return $retval  
}  
  
stop() {  
    echo -n $"Stopping $prog: "  
    killproc $prog  
    retval=$?  
    echo  
    [ $retval -eq 0 ] && rm -f $lockfile  
    return $retval  
}  
  
restart() {  
    stop  
    start  
}  
  
reload() {  
    echo -n $"Reloading $prog: "  
    killproc $prog -1  
    retval=$?  
    echo  
    return $retval  
}  
  
force_reload() {  
    restart  
}  
  
rh_status() {  
    status $prog  
}  
  
rh_status_q() {  
    rh_status &>/dev/null  
}  
  
  
case "$1" in  
    start)  
        rh_status_q && exit 0  
        $1  
        ;;  
    stop)  
        rh_status_q || exit 0  
        $1  
        ;;  
    restart)  
        $1  
        ;;  
    reload)  
        rh_status_q || exit 7  
        $1  
        ;;  
    force-reload)  
        force_reload  
        ;;  
    status)  
        rh_status  
        ;;  
    condrestart|try-restart)  
        rh_status_q || exit 0  
        restart  
        ;;  
    *)  
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"  
        exit 2  
esac  
exit $? 
# chmod a+x /etc/init.d/keepalived