我是条汉子 发表于 2018-12-30 12:24:41

keepalived 高可用配置实例

      keepalived 高可用配置单/双 主模型

           安装环境准备2台主机网络模式 :nat
         AU   192.168.16.8 (master)
       AU1192.168.16.11(backup)

  (1)yum install keepalived -y
   service keepalived start
      ps -ef
( 2 )   cd /etc/keepalived
      cp keepalived.conf keepalived.conf.back
      vi keepalived.conf 主节au1 192.168.16.8(内容如下)
       ! Configuration File for keepalived
       global_defs {
    notification_email {
   acassen@firewall.loc定义报警故障的Email 地址
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 127.0.0.1发送邮件的服务器
   smtp_connect_timeout 30 连接SMTP超时时长
   router_id au1 路由id名 唯一
}
vrrp_instance VI_1 {   实例名字VI_1
    state MASTER   状态 主
    interface eth0   通讯接口 为 eth0
    virtual_router_id 55实例id 55 默认为51 ,主备节点相同
    priority 150   主节点优先级 ,备节点要低于主节点
    advert_int 1   通信检查间隔时间 1 秒
    authentication {
      auth_type PASS   密码认证类型
      auth_pass 1111   密码 1111
    }
    virtual_ipaddress {
      192.168.16.50/24 dev eth0 label eth0:1 设定虚拟主机ip/24 指明绑定的网络接         eth0 ,别名eth0:1,可以设定多个IP
    }
}

(3)   vi keepalived.conf (备用节点au2 192.168.16.11)

       ! Configuration File for keepalived

global_defs {
   notification_email {
   acassen@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id au2
}

vrrp_instance VI_1 {
    state BACKUP
    interface eth0
    virtual_router_id 55
    priority 100
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      192.168.16.50/24 dev eth0 label eth0:1
    }
}
注:主备配置修改的不同点:
      router_idau1/au2路由ID,唯一标示
      stateMASTER/BACKUP 节点状态 主从
      priprity150/100 竞选优先级 主节点优先级要高于备节
      其他主备节点要相同配置
      
配置完了 service keepalived restart 重启服务

检查iptables -Fselinux setenforce 0关闭

查看配置结果: ip addr | grep 192.168.16.50

MASTER 显示 inet 192.168.16.50/24 .....配置成功

BACKUPP 正常情况不显示 ....配置成功

测试: MASTER 服务停掉 stop 后BACKUP 显示 inet 192.168.16.50/24.....

      MASTER 主服务器遇故障down机后 备服务器节点马上接上同步数据

   当主服务器修整好了之后从新上线 ,又重新接管了虚拟ip ,如此反复切换

   这种叫做单IP自动漂移

       keepalived 双实例双主模式的ip配置如下:
   
       au1 192.168.16.8 (master)

       vi keepalived.conf 增加一个vrrp_instance VI_2实例

( 一)   vrrp_instance VI_2 {
         state BACKUP
         interface eth0
         virtual_router_id 56
         priority 100
         advert_int 1
         authentication {
      auth_type PASS
      auth_pass 1111
         }
      virtual_ipaddress {
      192.168.16.60/24 dev eth0 label eth0:2
          }
      }

   (二)   au2 192.168.16.11 (backup)

       vi keepalived.conf 增加一个vrrp_instance VI_2 实例

      vrrp_instance VI_2 {
    state MASTER
    interface eth0
    virtual_router_id 56
    priority 150
    advert_int 1
    authentication {
      auth_type PASS
      auth_pass 1111
    }
    virtual_ipaddress {
      192.168.16.60/24 dev eth0 label eth0:2
      }
   }
      
   配置完成后 service keepalived restart

查看状态 ip add|egrep "192.168.16.50|192.168.16.60"(注意:两个管道符之间没有空格,否则语法错误无法显示)
   
   au1 显示 inet 192.168.16.50/24 ......
   au2 显示 inet 192.168.16.60/24 ......

测试 在au1 (192.168.16.8) 停止服务stop ,在本机测试不显示,
   
      而在au2 (192.168.16.11) 主机测试 ip add|egrep "192.168.16.50|192.168.16.60"
      
      会同时显示inet 192.168.16.50/24 ......

                         inet 192.168.16.60/24 ......


同理测试au2 (192.168.16.11) 停止服务stop ,在本机测试不显示,

而在au1 (192.168.16.8) 主机测试 ip add|egrep "192.168.16.50|192.168.16.60"
      
      会同时显示inet 192.168.16.50/24 ......

                           inet 192.168.16.60/24 ......

    由此可见,我们发现au1,au2主备节点已经实现了初始配置的vip服务状态

    当任意一端Duang机。vip可以实现互相切换接管漂移,能保证数据的同步

    VRRP是一个“选举”协议,它能够动态地将一个虚拟路由器的责任指定至同

    一个VRRP组中的其它路由器上,从而消除了静态路由配置的单点故障。   






页: [1]
查看完整版本: keepalived 高可用配置实例