keepalive

目录一、keepalive基础1.vrrp技术VRRP相关术语2.VRRP相关技术(1)通告(2)工作方式(3)安全认证:(4)工作模式:二、keepalived1.keepalived介绍功能2.Keepalived 架构(1)用户空间核心组件:(2)WatchDog:监控进程(整个架构是否有问题)3.Keepalived 相关文件(1)配置组成(2)全局配置(3)配置虚拟路由器三、实际操作1.LVS + Keepaliv..
摘要由CSDN通过智能技术生成

目录

一、keepalive基础

1.vrrp技术

VRRP相关术语

 2.VRRP相关技术

(1)通告

(2)工作方式

(3)安全认证:

(4)工作模式:

二、keepalived

1.keepalived介绍

功能

2.Keepalived 架构

(1)用户空间核心组件:

(2)WatchDog:监控进程(整个架构是否有问题)

3.Keepalived 相关文件

(1)配置组成

(2)全局配置

(3)配置虚拟路由器

三、实际操作

 1.LVS + Keepalived 高可用群集

  LVS + Keepalived 高可用群集

环境

主keepalived

(1)关闭防火墙,selinux

(2)安装ipvsadm,并加载内核模块(先挂载,再安装)   

(3)复制文件 

(4)修改配置文件

 (5)将配置文件拷入备份

 (6)开启服务

(7)保存设置

备keepalived 

(1)关闭防火墙,selinux

(2)安装ipvsadm,并加载内核模块(先挂载,再安装)   

(3)复制文件 

(4)修改配置文件

(6)开启服务

 (7)保存设置

节点模式(两台相同配置)

 (1)关闭防火墙,selinux

(2)安装httpd服务,并开启服务

(3)创建简单的网页

(4)修改回环网卡名,IP地址,子网掩码 

(5)重启服务

(6)设置路由

(7)调整proce响应参数

测试 

(1)先ping看各节点是否可以ping通

(2)进入网页


一、keepalive基础

1.vrrp技术

VRRP相关术语

  • 虚拟路由器:Virtual Router

  • 虚拟路由器标识:VRID(0-255),唯一标识虚拟路由器

  • VIP:Virtual IP

  • VMAC:Virutal MAC (00-00-5e-00-01-VRID)

  • 物理路由器:

  • master:主设备

  • backup:备用设备

  • priority:优先级

虚拟路由器的主备 是由priority:优先级决定的

 2.VRRP相关技术

(1)通告

  • 心跳
  • 优先级等
  • 周期性

(2)工作方式

  • 抢占式
  • 非抢占式(生产环境中常用)
  • 延迟抢占模式

(3)安全认证:

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

(4)工作模式:

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

1.名词解释

通告:
是宣告自己的主权,不要妄想抢班夺权,不停的向外

抢占式:
主服务器宕机,过了一段时间修好了,再把主权抢过来

非抢占式:
主服务器宕机,过了一段时间修好了,原来的主就作为备了

安全认证:
如没有安全认证,不在集群中的keeplive服务器设置超高的优先级,会造成事故

主/主:主/备(虚拟路由器1),备/主(虚拟路由器2)见下图:

2.优点和缺点

环境:

有两台服务器
虚拟出两台虚拟路由器
第一台虚拟路由器中服务器1为主,服务器2为备,那么虚拟IP1就飘在服务器1上,真正工作的只有服务器1
第二台虚拟路由器中服务器2为主,服务器1为备,那么虚拟IP2就飘在服务器2上,真正工作的只有服务器2

优点:
1.提高了资源利用率:
这样主,备服务器同时干活,可以同时运行两个项目
2.同样有备份功能:
如果服务器1坏了,服务器2 将同时拥有虚拟IP1和虚拟IP2

缺点:
虽然有备份冗余功能但是对机器的性能要求非常高,当其中一台出现故障,本来一台运行一个任务,现在所有的业务全部压在了一台上,有十分大的风险

二、keepalived

1.keepalived介绍

 官网:http://keepalived.org/

功能

基于vrrp协议完成地址流动

为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)

为ipvs集群的各RS做健康状态检测

基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务2. 

2.Keepalived 架构

(1)用户空间核心组件:

  • vrrp stack:VIP消息通告

  • checkers:监测real server(简单来说 就是监控后端真实服务器的服务)

  • system call:实现 vrrp 协议状态转换时调用脚本的功能

  • SMTP:邮件组件(报警邮件)

  • IPVS wrapper:生成IPVS规则(直接生成ipvsadm)

  • Netlink Reflector:网络接口(将虚拟地址ip(vip)地址飘动)

(2)WatchDog:监控进程(整个架构是否有问题)

  • 控制组件:提供keepalived.conf 的解析器,完成Keepalived配置

  • IO复用器:针对网络目的而优化的自己的线程抽象

  • 内存管理组件:为某些通用的内存管理功能(例如分配,重新分配,发布等)提供访问权限

keeplive可以配合ngnix等软件,反向代理

3.Keepalived 相关文件

  • 软件包名:keepalived
  • 主程序文件:/usr/sbin/keepalived
  • 主配置文件:/etc/keepalived/keepalived.conf
  • 配置文件示例:/usr/share/doc/keepalived/
  • Unit File:/lib/systemd/system/keepalived.service
  • Unit File的环境配置文件:
  • /etc/sysconfig/keepalived CentOS

(1)配置组成

/etc/keepalived/keepalived.conf 配置组成

  • GLOBAL CONFIGURATION

Global definitions(全局配置):定义邮件配置,route_id,vrrp配置,多播地址等

  • VRRP CONFIGURATION

VRRP instance(s):定义vrrp协议中的每个vrrp虚拟路由器的规则,基本信息

  • LVS CONFIGURATION(lvs调度服务器的规则设置)

Virtual server group(s)

Virtual server(s):LVS集群的VS和RS

(2)全局配置

  • /etc/keepalived/keepalived.conf 

global_defs {
 notification_email {
 root@localhost

  •  keepalived 发生故障切换时邮件发送的目标邮箱,可以按行区分写多个

 root@localhost
  360601212@qq.com 
 }
 notification_email_from keepalived@localhost  

  • 发邮件的地址

 smtp_server 127.0.0.1     

  • 邮件服务器地址 

smtp_connect_timeout 30    

  • 邮件服务器连接timeout

router_id R1

  • 每个keepalived主机唯一标识,建议使用当前主机名,但多节点重名不影响

vrrp_skip_check_adv_addr  

  • 对所有通告报文都检查,会比较消耗性能,启用此配置后,如果收到的通告报文和上一个报文是同一个路由器,则跳过检查,默认值为全检查

vrrp_strict 

严格遵守VRRP协议,启用此项后以下状况将无法启动服务:1.无VIP地址 2.配置了单播邻居 3.在VRRP版本2中有IPv6地址,开启动此项并且没有配置vrrp_iptables时会自动开启iptables防火墙规则,默认导致VIP无法访问,建议不加此项配置

  • gratuitous ARP messages 报文发送延迟,0表示不延迟

vrrp_garp_interval 0  

  • unsolicited NA messages (不请自来)消息发送延迟<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值