keepalived

一、高可用集群

1.1 集群类型

  • LB:Load Balance 负载均衡
  • LVS/HAProxy/nginx(http/upstream, stream/upstream)
  • HA:High Availability 高可用集群
  • 数据库、Redis
  • SPoF: Single Point of Failure,解决单点故障
  • HPC:High Performance Computing 高性能集群

1.2 系统可用性

        SLA:Service-Level Agreement 服务等级协议(提供服务的企业与客户之间就服务的品质、水准、性能 等方面所达成的双方共同认可的协议或契约)

A = MTBF / (MTBF+MTTR)

99.95%:(60*24*30)*(1-0.9995)=21.6分钟 #一般按一个月停机时间统计
#一个月的没延迟时间x一个月的延迟时间

1.3 系统故障

  • 硬件故障:设计缺陷、wear out(损耗)、非人为不可抗拒因素
  • 软件故障:设计缺陷 bug

1.4 实现高可用

提升系统高用性的解决方案:降低MTTR- Mean Time To Repair(平均故障时间)

解决方案:建立冗余机制

  • active/passive 主/备
  • active/active 双主
  • active --> HEARTBEAT --> passive
  • active HEARTBEAT active

1.5.VRRP(Virtual Router Redundancy Protocol)

虚拟路由冗余协议,解决静态网关单点风险

  • 物理层:路由器、三层交换机
  • 软件层:keepalived

1.5.1 VRRP 相关术语

  • 虚拟路由器:Virtual Router
  • 虚拟路由器标识:VRID(0-255),唯一标识虚拟路由器
  • VIP:Virtual IP
  • VMAC:Virutal MAC (00-00-5e-00-01-VRID)
  • 物理路由器:
    • master:主设备
    • backup:备用设备
    • priority:优先级

1.5.2 VRRP 相关技术

通告:心跳,优先级等;周期性


工作方式:抢占式,非抢占式


安全认证:

  • 无认证
  • 简单字符认证:预共享密钥
  • MD5

工作模式:

  • 主/备:单虚拟路由器
  • 主/主:主/备(虚拟路由器1),备/主(虚拟路由器2)

二、keepalived

2.1简介

vrrp 协议的软件实现,原生设计目的为了高可用 ipvs服务


功能:

  • 基于vrrp协议完成地址流动
  • 为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)
  • 为ipvs集群的各RS做健康状态检测
  • 基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务

2.2环境

  • 各节点时间必须同步:ntp, chrony
  • 关闭防火墙及SELinux

2.3配置说明

2.3.1安装及相关文件

安装后启动

yum install keepalived -y
systemctl start keepalived

配置文件

/etc/keepalived/keepalived.conf

全局配置

! Configuration File for keepalived

global_defs {
    notification_email {
        594233887@qq.com     #keepalived 发生故障切换时邮件发送的目标邮箱,可以按行区分写多个
        timiniglee-zln@163.com
    }
    notification_email_from keepalived@KA1.timinglee.org         #发邮件的地址
    smtp_server 127.0.0.1                                        #邮件服务器地址
    smtp_connect_timeout 30                                      #邮件服务器连接timeout
    router_id KA1.timinglee.org                                  #每个keepalived主机唯一标识
                                                                 #建议使用当前主机名,但多节点                重名不影响
    vrrp_skip_check_adv_addr                                     #对所有通告报文都检查,会比较消耗性能
                                                                 #启用此配置后,如果收到的通告报文和上一个报文是同一 #个路由器,则跳过检查,默认值为全检查
    vrrp_strict #严格遵循vrrp协议
                                                                 #启用此项后以下状况将无法启动服务:
                                                                 #1.无VIP地址
                                                                 #2.配置了单播邻居
                                                                 #3.在VRRP版本2中有IPv6地址
                                                                 #建议不加此项配置
    vrrp_garp_interval 0                                         #报文发送延迟,0表示不延迟
    vrrp_gna_interval 0                 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值