keepalived实现高可用

1. 高可用需求

110.110.110.77上有某个服务,端口是3333。
在110.110.110.78机器上也安装这个服务,端口也是3333
当110.110.110.77或78停机后,客户端可以访问另一台上的服务。

解决方案:使用keepalived,
需要另一个ip: 110.110.110.76,这个ip要和77,78在同一网络。
在这里插入图片描述

这样客户端只要访问110.110.110.76:3333就行了,keepalived会自动把110.110.110.76这个ip和77或78绑定在一起,同一时刻76只能绑定在77或78其中一台,比如此时帮定在77上,访问76就相当于访问77,当77停机时,keepalived会自动把76绑定到78上。

2. 安装

两台机器ip分另为:110.110.110.77 , 110.110.110.78。
另需要一个ip作为虚拟ip: 110.110.110.76,注意要和这两台机器在同一网络。

两台机器上安装:yum install -y keepalived

3. 配置

110.110.110.77这台机器上配置,安装好后就有这个配置文件。
vi /etc/keepalived/keepalived.conf
直接修改这个文件即可,参数的意思自行网上查询。
virtual_server这个参数没有用到,直接删除这个参数的所有配置即可

[root@xxx home]# cat /etc/keepalived/keepalived.conf
! Configuration File for keepalived

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
#router_id每台机器都要不一样,作为唯一标识
   router_id LVS01                     
   vrrp_skip_check_adv_addr
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
#state属于同一个keepalived的只有一个MASTER和多个BACKUP
state MASTER
#ip所在的网卡,我的机器110.110.110.77在eth0上
interface eth0
#virtual_router每台机器要一样,应该是属于同一个keepalived的机器要一样  
virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
}
#virtual_ipaddre要和机器ip属于同一网络,注意子网掩码要一样,这里是24
    virtual_ipaddress {
        110.110.110.76/24
    }
}

110.110.110.78这台机器上配置
vi /etc/keepalived/keepalived.conf

[root@xxx conf]# cat /etc/keepalived/keepalived.conf
! Configuration File for keepalived

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   router_id LVS02
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        110.110.110.76/24
    }
}

启动/etc/init.d/keepalived start

在110.110.110.77上 ip addr 可以看到eth0上多了110.110.110.76/24

此时客户端访问 110.110.110.77:3333可改为访问110.110.110.76:3333

在110.110.110.78上用ip addr是看不到110.110.110.76的,如果把77上的keepalived停掉,在78上就能看到110.110.110.76了。
也就是说110.110.110.76会绑定在77或78机器其中一台。当一台机器停机,76会绑定到另一台上。
这样客户端一直访问110.110.110.76:3333就行了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值