keepalived

一.keepalived在架构的作用--高可用集群、

调度器LVS(四层)+后端服务器(多)

LVS:优点是速度快,性能要求不高,但是没有对后端服务器的健康检测;

HAProxy:有后端健康检测,支持七层(支持对数据里的http的报文分析acl),稳定性不高;

高可用:A = MTBF 在线时间/ (MTBF+MTTR平均故障处理时间

1. 实现高可用
提升系统高用性的解决方案:降低MTTR- Mean Time To Repair( 平均故障时间)
解决方案:建立冗余机制
active/passive 主/备 
active/active 双主 (放置不同的业务,如果有一个故障,就会把故障的业务和数据迁移到另外一个,节省了服务器的数量)
active --> HEARTBEAT --> passivepassive (active,passive每隔一段时间都会发信息给组播地址,组播地址认为active存活,如果active没发消息启用passive)
active <--> HEARTBEAT <--> active (active,passive每隔一段时间都会发信息给组播地址,组播地址认为active存活,如果active没发消息启用passive)
通告:心跳 HEARTBEAT 使用VRRP协议
2..VRRPVirtual Router Redundancy Protocol协议
虚拟路由冗余协议 , 解决静态网关单点风险
物理层:路由器、三层交换机
软件层:keepalived
1.相关术语
虚拟路由器: Virtual Router
虚拟路由器标识: VRID(0-255) ,唯一标识虚拟路由器
VIP Virtual IP
VMAC Virutal MAC (00-00-5e-00-01-VRID)
物理路由器:
master :主设备
backup :备用设备
priority:优先级 VIP放置在哪取决于谁的优先级高

 2.VRRP相关技术

通告:心跳,优先级等;周期性
工作方式:抢占式,非抢占式
安全认证
无认证
简单字符认证:预共享密钥
MD5
工作模式
/ 备:单虚拟路由器
/ 主:主 / 备(虚拟路由器 1 ),备 / 主(虚拟路由器 2

.Keepalived 部署

1.实验环境准备

首先:环境要干净

各节点时间必须同步:ntp, chrony

关闭防火墙及SELinux
各节点之间可通过主机名互相通信:非必须
建议使用 /etc/hosts 文件实现:非必须
各节点之间的 root 用户可以基于密钥认证的 ssh 服务完成互相通信:非必须
2.路由配置

realserver1:172.25.254.110

realserver2:172.25.254.120

KA1:172.25.254.10

KA2:172.25.254.20

VIP:172.25.254.100(可设置虚拟环回lo)

查看防火墙是否关闭:

[root@nginx ~]# systemctl status firewalld.service

3.RS服务器设置

配置httpd服务

root@rs1 ~]# yum install httpd -y

[root@rs2 ~]# yum install httpd -y

[root@rs1 ~]# echo 172.25.254.110 > /var/www/html/index.html

[root@rs1 ~]# systemctl enable --now httpd.service

[root@rs2 ~]# echo 172.25.254.120 > /var/www/html/index.html

[root@rs2 ~]# systemctl enable --now httpd.service

三.Keepalived-虚拟路由的配置

配置文件组成部分

配置文件:/etc/keepalived/keepalived.conf

在ka1、ka2:

[root@ka1 ~]# yum install keepalived -y

[root@ka2 ~]# yum install keepalived.x86_64 -y

打开主配置文件

[root@ka1 ~]# vim /etc/keepalived/keepalived.conf

KA1全局配置:

global_defs {
   notification_email {
    3173026775@qq.com(发生故障时发送的邮箱,可以写好几个)

    }
   notification_email_from keepalived@hui.org(发邮件的地址)
   smtp_server 127.0.0.1			#邮件服务器地址
   smtp_connect_timeout 30			#邮件服务器连接超时时间30s
   router_id ka1.hui.org			#机唯一标识
   vrrp_skip_check_adv_addr			#对所有通告报文都检查,会比较消耗性能
     									(用此配置后,如果收到的通告报文和上一个报文是同一 										 
                                          个路由器,则跳过检查,默认值为全检查)
   vrrp_strict
   vrrp_garp_interval 0				#报文发送延迟,0表示不延迟
   vrrp_gna_interval 0
   vrrp_mcast_group4 224.0.0.18		#指定组播IP地址范围:
}   

设置虚拟路由:

vrrp_instance VI_1 {
    state MASTER		#主所属
    interface eth0		#网卡
    virtual_router_id 100 #每个虚拟路由器惟一标识,范围:0-255,每个虚拟路由器此值必须唯一
    priority 100		  #当前物理节点在此虚拟路由器的优先级,范围:1-254
    advert_int 1
    authentication {
        auth_type PASS	#AH为IPSEC认证(不推荐),PASS为简单密码(建议使用)
        auth_pass 1111	#预共享密钥,仅前8位有效
    }
    virtual_ipaddress {
        172.25.254.100/24 dev eth0 label eth0:1(VIP)
    }
}

启动服务:

[root@ka1 ~]# systemctl enable --now keepalived.service 

KA2全局配置:

global_defs {
   notification_email {
    3173026775@qq.com(发生故障时发送的邮箱,可以写好几个)

    }
   notification_email_from keepalived@hui.org(发邮件的地址)
   smtp_server 127.0.0.1			#邮件服务器地址
   smtp_connect_timeout 30			#邮件服务器连接超时时间30s
   router_id ka1.hui.org			#机唯一标识
   vrrp_skip_check_adv_addr			#对所有通告报文都检查,会比较消耗性能
     									(用此配置后,如果收到的通告报文和上一个报文是同一 										 
                                          个路由器,则跳过检查,默认值为全检查)
   vrrp_strict
   vrrp_garp_interval 0				#报文发送延迟,0表示不延迟
   vrrp_gna_interval 0
   vrrp_mcast_group4 224.0.0.18		#指定组播IP地址范围:
}   

设置虚拟路由: 

vrrp_instance VI_1 {
    state BACKUP (备用机)
    interface eth0
    virtual_router_id 100
    priority 80 (优先级低于主机)
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        172.25.254.100/24 dev eth0 label eth0:1
    }
}

启动服务:

[root@ka1 ~]# systemctl enable --now keepalived.service 

VIP在KA1上: 

KA2上没有:

当KA1的服务断掉后,VIP就转被KA2接管,继续运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值