keepalived

centos7

安装环境

yum install -y openssl-devel popt-devel  curl gcc  libnl3-devel net-snmp-devel  libnfnetlink-devel

安装

yum install keepalived

 

主机配置

vi /etc/keepalived/keepalived.conf

global_defs {
    notification_email {                  #故障发生时给谁发邮件通知。
        root@localhost
        root@192.168.9.141
    }
    notification_email_from keepalived@localhost      #通知邮件的发出地址。
    smtp_server 127.0.0.1         #发现Email的smtp地址
    smtp_connect_timeout 30       #超时时间
    router_id node1               #运行keepalived的机器标识号,主从机必须不同
}

vrrp_instance VI_1 {
    state MASTER               #可以是 MASTER 或 BACKUP,不过当其他节点 keepalived 启动时
                               #会将 Priority(优先级)比较大的节点选举为 MASTER,因此该项其实没有实质用途。
    interface enp5s0             #本机物理网卡,节点固有 IP(非 VIP)的网卡,用来发 VRRP 包。
    lvs_sync_daemon_inteface enp5s0    #绑定 lvs syncd 的网卡。
    virtual_router_id 151            #虚拟路由,主从机必需一致。设置 VRID,取值在 0-255 之间,用来区分多个 instance 的 VRRP 组播
                                     #(同一网段中 virtual_router_id 的值不能重复,否则会出错)。
                                     #将决定多播的 MAC 地址
    priority 100          #用来选举 master,要成为 master,这个选项的值最好高于其他机器 50 个点,
                          #该项取值范围是 1-255(在此范围之外会被识别成默认值 100)。
    advert_int 5          #发 VRRP 包的时间间隔,即多久进行一次 master 选举(可以认为是健康查检时间间隔,默认为 1 秒)。
    authentication {       #认证区域,保持master和backup一致
        auth_type PASS
        auth_pass 123456
    }
    virtual_ipaddress {          #VIP(虚拟 IP 地址),随着 state 的变化而增加删除,
                                 #当 state 为 master 的时候就添加,当 state 为 backup 的时候删除,
                                 #主要由优先级来决定的,和 state 设置的值没有多大关系,可以设置多个 IP 地址。
        192.168.9.100 dev enp5s0 
    }
}

virtual_server 192.168.9.100 3306 {           #LVS配置,VIP
    delay_loop 6                                #服务轮询的时间间隔
    lb_algo wrr                                 #LVS 调度算法
    lb_kind DR                     #LVS 集群算法
    persistence_timeout 60                       #同一IP的链接50秒内被分配到同一台realserver
    protocol TCP                                 #用TCP协议检查realserver状态
    real_server 192.168.9.141 3306 {        #实际服务器的IP和端口
        weight 100
        notify_down /data/sh/mysql.sh
        TCP_CHECK {
        connect_timeout 10
        nb_get_retry 3
        delay_before_retry 3
        connect_port 3306
        }
    }

}

启动

service keepalived start
ps -ef | grep keep 


查看  
ip addr

 

修改成单播通信
服务器网络环境中,路由交换层禁用了ARP的广播限制,造成了keepalived主备协议无法通过广播的方式进行通信,
造成主备两台服务器都强制占用HAVIP地址,出现同时两台服务器都有VIP地址的情况出现。必须通过配置来指定IP的两台服务器间进行通

需要修改配置文件

 priority 100
    unicast_src_ip  192.168.9.161    #本机实际IP
    unicast_peer {
             192.168.9.213         #对端实际IP
    }

从机配置


global_defs {
    notification_email {
        root@localhost
        root@192.168.9.213
    }
    notification_email_from keepalived@localhost
    smtp_server 127.0.0.1
    smtp_connect_timeout 30
    router_id node2
}

vrrp_instance VI_1 {
    state BACKUP
    interface enp3s0
    lvs_sync_daemon_inteface enp3s0
    virtual_router_id 151
    priority 90
    advert_int 5
    authentication {
        auth_type PASS
        auth_pass 123456
    }
    virtual_ipaddress {
        192.168.9.100 dev enp3s0
    }
}

virtual_server 192.168.9.100 3306 {
    delay_loop 6
    lb_algo wrr
    lb_kind DR
    persistence_timeout 60
    protocol TCP
    real_server 192.168.9.161 3306 {
        weight 100
        notify_down /data/sh/mysql.sh
        TCP_CHECK {
        connect_timeout 10
        nb_get_retry 3
        delay_before_retry 3
        connect_port 3306
        }
    }

}



配置systemctl
1;systemctl daemon-reload  重新加载

2:systemctl enable keepalived.service  设置开机自动启动

3:systemctl disable keepalived.service 取消开机自动启动

4:systemctl start keepalived.service 启动

5:systemctl stop keepalived.service停止

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值