linux下keepalived的安装和配置【二】

接上篇文章。

VIP简单介绍完了,下面讲解如何配置keepalived的,从而实现高可用。

这里我用一句话来概括keepalived实现高可用的原理:两台机器之间(也可以多台)之间轮流提供VIP,从而让web服务不间断。

当一台服务器挂掉之后,VIP进行漂移,而这个过程是自动由keepalived帮我们完成的,我们要做的就是维护出问题的web服务器。

 

这里假设有两台机器AB,他们的ip地址分别为192.168.1.8192.168.1.9,而VIP我们设定为192.168.1.10

先来配置机器A,我的目的是尽可能直白简单的介绍配置,从而让大家更容易理解。。。。

vi   /etc/keepalived/keepalived.conf这个文件

 

! Configuration File for keepalived

global_defs {

   router_id LVS_DEVEL

}

vrrp_instance VI_1 { #一个keepalived实例

    state MASTER #表明这是主机

    interface eth0  #绑定的网卡

    virtual_router_id 51   #两台机器要一致,表明他们是同一组

    mcast_src_ip 192.168.1.8  #发送多播包的地址,就是本机的ip地址(如果本机有多个ip地址的话,这个很有用)

    priority 200   #本机的竞争优先级,一般主的比从的高

    advert_int 1

    authentication {

        auth_type PASS   #认证类型

        auth_pass 1111   #认证密码

    }

    virtual_ipaddress {

        192.168.1.10   #提供的虚拟ip地址

    }

 

notify_master "/1.sh" #keepalived切换到本机时会执行此脚本

notify_backup "/2.sh" #keepalived从本机切换走时会执行此脚本

notify_fault "/2.sh"   #keepalived停止时会执行此脚本

           #注意下notify_backup和notify_fault的区别,比如从机,当VIP从从机切换到主机时,从机上的notify_backup脚本会执行;当从机的keepalived服务停止时(不仅仅是VIP漂移走了,而是keepalived的进程停止了),notify_fault的脚本会执行。

 

}

 

机器B

! Configuration File for keepalived

global_defs {

   router_id LVS_DEVEL

}

vrrp_instance VI_1 {

    state BACKUP   #表明是从机

    interface eth0

    virtual_router_id 51

    mcast_src_ip 192.168.1.9

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

         192.168.1.10 

    }

}

 

ok,配置完成。在两台机器的root用户下分别执行:

service  keepalived   start

 

然后ping一下VIP

ping 192.168.1.10

发现有返回。

然后我们关掉A机器或者停止A机器的keepalivedservice  keepalived  stop),然后ping一下VIP,发现有返回,这是VIP已经票已到B机器了。

 

最后我们恢复A机器上的keepalived服务,然后ping一下VIP,也有返回,其实这时VIP已经漂移到机器A了。

 

大家可以在两台机器上安装一个web服务器或者直接使用linuxapache服务器,然后在浏览器里测试一下。

至于两个启动/停止脚本,大家有兴趣的可以自己测试下。

你可能感兴趣的:(linux)