高可用架构Keepalived双主热备

一、原理 

在搭建好Keepalived主备高可用架构之后,就能满足24小时不间断的服务,在生产环境上,只要主节点不出故障,那么备用节点就永远不会参与工作,这样就会造成资源的浪费,每台服务器的价格都很昂贵,主节点服务器出问题的时间又很少,这样会造成备用节点的资源浪费,双主热备可以解决这种资源浪费的情况。

 在两台Nginx服务器上,服务器1和服务器2,建立一个虚拟IP,就可以将两台服务器构造成主备高可用架构,服务器1为主机,服务器2为备用机,在此基础上再创建一个虚拟IP,在新的虚拟IP之下,服务器2为主机,服务器1为备用机,这样就可以使两台服务器互为主备的关系,其中一台服务器宕机之后,另一台服务器就会绑定两个虚拟IP。

 DNS负载均衡:一个域名可以同时绑定多个IP,用户请求经过DNS解析的时候,DNS服务器会按照多个IP的权重比例分配用户请求到对应的IP上。

二、双主热备实现

服务器1配置:

! Configuration File for keepalived

global_defs {
   # 路由id,当前节点主机的标识符,保证全局唯一
   router_id keep_20
}

vrrp_instance VI_1 {
    # 标识状态:MASTER表示主节点,BACKUP表示备用节点
    state MASTER
    # 该实例绑定的网卡,centos7一般是ens33
    interface ens33
    # 虚拟路由ID,主备节点须保持一致
    virtual_router_id 51
    # 权重:master权重一般高于backup,如果有多个备用节点,在master节点挂掉以后,backup权重值最大的,就是新的master
    priority 100
    # 主备之间同步检查时间间隔,单位为妙
    advert_int 3
    # 认证权限密码,防止非法节点进入
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    virtual_ipaddress {
        192.168.40.161
    }
}



vrrp_instance VI_2 {
    # 标识状态:MASTER表示主节点,BACKUP表示备用节点
    state BACKUP
    # 该实例绑定的网卡,centos7一般是ens33
    interface ens33
    # 虚拟路由ID,主备节点须保持一致
    virtual_router_id 52
    # 权重:master权重一般高于backup,如果有多个备用节点,在master节点挂掉以后,backup权重值最大的,就是新的master
    priority 80
    # 主备之间同步检查时间间隔,单位为妙
    advert_int 3
    # 认证权限密码,防止非法节点进入
    authentication {
        auth_type PASS
        auth_pass 1111
    }

    virtual_ipaddress {
        192.168.40.162
    }
}

服务器2配置:


! Configuration File for keepalived

global_defs {
   # 路由id,当前节点主机的标识符,保证全局唯一
   router_id keep_21
}

vrrp_instance VI_1 {
    # 标识状态:MASTER表示主节点,BACKUP表示备用节点
    state BACKUP
    # 该实例绑定的网卡,centos7一般是ens33
    interface ens33
    # 虚拟路由ID,主备节点须保持一致
    virtual_router_id 51
    # 权重:master权重一般高于backup,如果有多个备用节点,在master节点挂掉以后,backup权重值最大的,就是新的master
    priority 80
    # 主备之间同步检查时间间隔,单位为妙
    advert_int 3
    # 认证权限密码,防止非法节点进入
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.40.161
    }
}


vrrp_instance VI_2 {
    # 标识状态:MASTER表示主节点,BACKUP表示备用节点
    state MASTER
    # 该实例绑定的网卡,centos7一般是ens33
    interface ens33
    # 虚拟路由ID,主备节点须保持一致
    virtual_router_id 52
    # 权重:master权重一般高于backup,如果有多个备用节点,在master节点挂掉以后,backup权重值最大的,就是新的master
    priority 100
    # 主备之间同步检查时间间隔,单位为妙
    advert_int 3
    # 认证权限密码,防止非法节点进入
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.40.162
    }
}

 注: virtual_router_id只能是主备节点相同(类似于集群的名称),因此上面实例中两个VI_1的virtual_router_id是一样的,两个VI_2的virtual_router_id是一样的,但是VI_1和VI_2的virtual_router_id不能一样。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值