• Keepalived源码安装


    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 
    

      

  • 相关阅读:
    日报 18/05/29
    jsvascript === 和==的区别
    分享个数组
    ROC曲线绘制
    DLL中传递STL参数(如Vector或者list等)会遇到的问题[转载]
    利用JAX-WS 开发web服务
    菜鸟的成长之路——在清华特奖经验分享交流会上的演讲
    一段小代码的思考
    关于Vector中的元素中含有指针成员的情况
    关于职业规划——好帖【转载】
  • 原文地址:https://www.cnblogs.com/abclife/p/7909818.html
Copyright © 2020-2023  润新知