openWRT实现keepalived双击热备功能案例

root@OpenWrt:~# keepalived -v
Keepalived v1.2.16 (11/02,2017)

//主机修改IP 192.168.1.1为192.168.1.91

root@OpenWrt:/# vim /etc/config/network 
config interface 'lan' 
option ifname 'eth0.1' 
option force_link '1' 
option macaddr '0c:ef:af:c3:22:e6'
option type 'bridge' 
option proto 'static' 
option ipaddr '192.168.1.91' // 
option netmask '255.255.255.0' 
option ip6assign '60' 

reboot:
//备机修改IP 192.168.1.1为192.168.1.92

root@OpenWrt:/# vim /etc/config/network
config interface 'lan'
option ifname 'eth0.1'
option force_link '1'
option macaddr '0c:ef:af:c3:22:e5'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.92' //
option netmask '255.255.255.0'
option ip6assign '60'

reboot:
//主机配置

root@OpenWrt:/# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived

global_defs {
    router_id LVS_DEVEL
}

vrrp_instance VI_1 {
    state MASTER
    interface br-lan
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
virtual_ipaddress {
    192.168.1.98/24 dev br-lan
    }
}                

//备机配置
root@OpenWrt:/# vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {
    router_id LVS_DEVEL
}

vrrp_instance VI_1 {
    state BACKUP
    interface br-lan
    virtual_router_id 51
    priority 50
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
}
virtual_ipaddress {
        192.168.1.98/24 dev br-lan
    }
}

  

root@OpenWrt:/# ip a //主机
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e6/64 scope link
valid_lft forever preferred_lft forever
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.91/24 brd 192.168.1.255 scope global br-lan
valid_lft forever preferred_lft forever
inet 192.168.1.98/24 scope global secondary br-lan
valid_lft forever preferred_lft forever
inet6 fdd4:ad46:5e::1/60 scope global noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::eef:afff:fec3:22e6/64 scope link
valid_lft forever preferred_lft forever
4: eth0.1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP group default
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
5: eth0.2@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e7 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e7/64 scope link
valid_lft forever preferred_lft forever

root@OpenWrt:/# ip a //备机
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
link/ether 0c:ef:af:c3:22:e5 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e5/64 scope link
valid_lft forever preferred_lft forever
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e5 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.92/24 brd 192.168.1.255 scope global br-lan
valid_lft forever preferred_lft forever
inet6 fd56:3289:cf5a::1/60 scope global noprefixroute
valid_lft forever preferred_lft forever
inet6 fe80::eef:afff:fec3:22e5/64 scope link
valid_lft forever preferred_lft forever
4: eth0.1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP group default
link/ether 0c:ef:af:c3:22:e5 brd ff:ff:ff:ff:ff:ff
5: eth0.2@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 0c:ef:af:c3:22:e6 brd ff:ff:ff:ff:ff:ff
inet6 fe80::eef:afff:fec3:22e6/64 scope link
valid_lft forever preferred_lft forever

root@OpenWrt:/# /etc/init.d/keepalived stop //主机关闭该服务后IP只有192.168.1.91/24,虚拟IP丢失。
root@OpenWrt:/# ip a|grep br-lan //查看备机加载了虚拟IP:192.168.1.98/24。
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
inet 192.168.1.92/24 brd 192.168.1.255 scope global br-lan
inet 192.168.1.98/24 scope global secondary br-lan

root@OpenWrt:/# /etc/init.d/keepalived restart //主机重启该服务后虚拟IP重新加载。
root@OpenWrt:/# ip a|grep br-lan //备机同时则虚拟IP丢失。
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
inet 192.168.1.92/24 brd 192.168.1.255 scope global br-lan

//说明:
直接方法就是断开任意一个路由(192.168.1.91/24或者192.168.1.92/24),看虚拟路由VIP:192.168.1.98/24是否ping通!

  

 

  

posted @ 2017-11-23 17:45  bkycrmn  阅读(3781)  评论(0)    收藏  举报