一、keepalived工作原理及作用:

keepalived最初是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障切换和健康检

查功能——判断LVS负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器,当故

障主机回复后将其重新加入群集。单独部署LVS环境的话,调度器发生宕机的话,整个群集就

失效了,某一个web节点宕机后,客户端在访问时,总会碰上访问不到网页的情况,所以,将

keepalived和LVS结合起来,才可形成一个真正的高可用群集,当然,后端的共享存储也必须

搭建一个高可用的存储服务器,三者其中有一个满足不了,都不能称之为一个高可用的群集环

境。

keepalived官方网站: keepalived官网,在非LVS环境中,keepalived也可以作为热备软件

使用。

keepalived采用VRRP(虚拟路由冗余协议)热备份协议,以软件的方式实现Linux服务器的

多机热备。VRRP是针对路由器的一种备份解决方案——由多台路由器组成一个热备组,通

过共用的虚拟IP(VIP)地址对外提供服务;每个热备份组内同一时刻只有一台主路由器提

供服务,其他路由器处于冗余状态,若当前在线的路由器失效,则其他路由器会自动接替

(优先级决定接替顺序)虚拟IP地址,以继续提供服务。

热备组内的每台路由器都可能成为主路由器,虚拟路由器的IP地址(VIP)可以在热备组内

路由器进行转移,所以也称为漂移IP地址。使用keepalived时,漂移地址的实现不需要手动

建立虚接口配置文件(如ens33:0),而是由keepalived根据配置文件自动管理。

基于VRRP的热备方式,keepalived可以用作服务器的故障切换,每个热备组可以有多台服

务器——最常用的是多机热备了。在这种多机热备方案中,故障切换主要针对虚拟IP地址的

漂移来实现。因此能适用于各种应用服务器(不管是Web、FTP、Mail、还是SSH、DNS....)。

二、keepalived双机热备配置详解:

通过下面简易的环境图,可以去全面的了解双机热备的配置及功能:

1、配置主服务器:

[root@lVS1 ~]# systemctl stop firewalld #关闭防火墙

[root@lVS1 ~]# yum -y install keepalived ipvsadm 安装所需工具

[root@lVS1 ~]# systemctl enable keepalived #设置开机自启动

[root@lVS1 ~]# cd /etc/keepalived/

[root@lVS1 keepalived]# cp keepalived.conf keepalived.conf.bak #备份配置文件

[root@lVS1 keepalived]# vim keepalived.conf #编辑配置文件

global_defs {

notification_email {

acassen@firewall.loc #启用邮件通知功能,这里设置收件人地址,可以配置多个

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc #发件人姓名、地址

smtp_server 192.168.200.1

smtp_connect_timeout 30

router_id LVS_DEVEL1 #本服务器的名称(在群集中必须唯一)。

.............. #省略部分内容

}

vrrp_instance VI_1 { #定义VRRP热备实例

state MASTER #热备状态,MASTER表示主服务器(注意大小写)

interface ens33 #承载VIP地址的物理接口

virtual_router_id 51 #虚拟路由器的ID号,每个热备组保持一致。

priority 100 #优先级0-100,数值越大越优先。

advert_int 1 #通告间隔秒数(心跳频率)。

authentication { #认证信息,每个热备组保持一致

auth_type PASS #认证类型

auth_pass 1111 #密码字串

}

virtual_ipaddress { #指定漂移地址,可以有多个

192.168.1.100

}

}

......................... #省略部分内容

确认上面配置无误后,然后启动keepalived服务,实际状态为MASTER的主服务器将为ens33接口自动添加VIP地址,通过ip命令可以查看(注意:ifconfig命令看不到)。

[root@lVS1 keepalived]# systemctl start keepalived #启动该服务

[root@lVS1 keepalived]# ip a show dev ens33 #查看ens33接口

2: ens33:

link/ether 00:0c:29:77:2c:03 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.1/24 brd 192.168.1.255 scope global noprefixroute ens33

valid_lft forever preferred_lft forever

inet 192.168.1.100/32 scope global ens33 #可以看到VIP已经配置在ens33上。

valid_lft forever preferred_lft forever

inet6 fe80::95f8:eeb7:2ed2:d13c/64 scope link noprefixroute

valid_lft forever preferred_lft forever

2、配置备份服务器(LVS2):

在同一keepalived热备组内,所有服务器的keepalived配置文件基本相同,某些配置项也必

须相同,包括虚拟路由器的ID号、认证信息、漂移地址、心跳频率等,不同之处主要在于路

由器名称、热备状态、优先级。具体配置时需要注意以下几点:

服务器名称(route_id):建议为每个参与热备的服务器指定不同的名称。

热备状态(state):至少应有一台主服务器,将状态设置为MASTER;可以有多台备用的服务器,将状态设置为BACKUP。

优先级(priority):数值越大则取得VIP控制权的优先级就越高,因此主服务的优先级应设置为最高;其他备用服务器可依次递减,但不能相同,以免在争夺VIP控制权时发生冲突。

配置备用服务器时(可以有多台),可以直接将主服务器的keepa.conf文件复制过来,修改服务器名称、热备状态、优先级,这三项就可以了,哪怕是其中包含了一些web节点的配置,也不用修改,也不能修改。

[root@LVS2 ~]# systemctl stop firewalld #关闭防火墙

[root@LVS2 ~]# yum -y install keepalived ipvsadm #安装相关工具

[root@LVS2 ~]# scp root@192.168.1.1:/etc/keepalived/keepalived.conf /etc/keepalived/

#使用主服务器root用户将主服务器的keepalived配置文件复制过来。

root@192.168.1.1 s password: #输入主服务器root用户的密码

keepalived.conf 100% 3549 3.5MB/s 00:00

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

global_defs {

...............

router_id LVS_DEVEL2 #修改这里的服务器名称

.....................

}

..............

vrrp_instance VI_1 {

state BACKUP #修改这里的状态,改为BACKUP

interface ens33 #若该服务器承载VIP的物理接口有变,则这里也要修改

virtual_router_id 51

priority 90 #修改优先级,要比主服务器低。

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.100

}

}

.................

#改动上述几行后,保存退出即可。

[root@LVS2 ~]# systemctl start keepalived #启动服务

[root@LVS2 ~]# systemctl enable keepalived #设置开机自启动

此时主服务器仍然在线,VIP地址实际上仍然由主服务器控制,其他服务器处于备份状态,因此在备用服务器中将不会为ens33接口添加VIP地址:

[root@LVS2 ~]# ip a show dev ens33 #查看ens33接口,不会看到VIP

2: ens33:

link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.2/24 brd 192.168.1.255 scope global noprefixroute ens33

valid_lft forever preferred_lft forever

inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute

valid_lft forever preferred_lft forever

3、测试双机热备功能:

将主服务器关机,或停止keepalived服务,等待约15秒后,查看备份服务器的ens33网卡,会发现漂移地址已经转移过来了,说明双机热备功能生效。待主服务器开机后,漂移地址会自动转移回到主服务器上。

[root@localhost ~]# ip a show dev ens33 #主服务器关机后查看备份服务器的网卡信息

2: ens33:

link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.2/24 brd 192.168.1.255 scope global noprefixroute ens33

valid_lft forever preferred_lft forever

inet 192.168.1.100/32 scope global ens33 #漂移地址已经转移过来了

valid_lft forever preferred_lft forever

inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute

valid_lft forever preferred_lft forever

再将主服务器开机,会发现VIP已经转移回了主服务器,而备份服务器又查不到了VIP:

[root@LVS1 ~]# ip a show dev ens33 #在主服务器上进行查看

2: ens33:

link/ether 00:0c:29:77:2c:03 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.1/24 brd 192.168.1.255 scope global noprefixroute ens33

valid_lft forever preferred_lft forever

inet 192.168.1.100/32 scope global ens33 #VIP地址在这里了

valid_lft forever preferred_lft forever

inet6 fe80::95f8:eeb7:2ed2:d13c/64 scope link noprefixroute

valid_lft forever preferred_lft forever

[root@LVS2 ~]# ip a show dev ens33 #在备份服务器上进行查看

2: ens33:

link/ether 00:0c:29:9a:09:98 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.2/24 brd 192.168.1.255 scope goute ens33

valid_lft forever preferred_lft forever

inet6 fe80::3050:1a9b:5956:5297/64 scope link noprefixroute

valid_lft forever preferred_lft forever

centos7双机搭建_centos 7之keepalived双机热备理论+配置文件详解相关推荐

  1. 双机热备_什么是高可用双机热备?双机热备概念原理详解

    双机热备是什么意思?为什么要用双机热备?双机热备有哪些种类?包含了哪些双机热备软件?下面就来简单地说说. 什么是双机热备? 从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务. ...

  2. centos7双机搭建_CentOS 7 配置 Keepalived 实现双机热备

    前言 Keepalived 是集群管理中保证集群高可用的一个服务软件,其功能类似于 heartbeat,用来防止单点故障. 本例演示 CentOS 7 下安装和配置 Keepalived 的基本步骤. ...

  3. keepalived配置文件详解   ​

    keepalived配置文件详解 keepalived配置文件分为三个部分:全局配置(Globals configurations).vrrp配置(VRRP configuration). LVS配置 ...

  4. Keepalived配置文件详解

    keepalived keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障. keepalived工作原理 keepalived是以VRRP( ...

  5. keepalived安装及配置文件详解

    一.安装Keepalived服务 两种安装方式: (1)yum方式安装 yum -y install keepalived# 查看安装路径 rpm -ql keepalived (2)源码安装 1)安 ...

  6. nps内网穿透服务器搭建教程(ip显示阿里云的ip)-小宇特详解

    nps内网穿透服务器搭建教程(ip显示阿里云的ip)-小宇特详解 一共有两部分,一部分是windows安装,一部分是linux系统(使得ip显示自己的阿里云). 前期准备 1.一台云服务器 2.配置安 ...

  7. 5双机配置_CentOS 7 高可用双机热备实现

    一.服务器准备 两个linux版本为 CentOS7 x64, mysql 版本为 5.5.31 , 详细安装步骤参考: CentOS7 环境 编译安装mysql源码 二. Mysql 建立主-从服务 ...

  8. 防火墙——双机热备理论讲解

    目录 双机热备基本概念 双机热备部署方案 心跳线 VGMP 基本概念 工作原理 VGMP报文 HRP 基本概念 HRP报文 双机热备基本概念 防火墙(FW)部署在网络出口位置时,如果发生故障会影响到整 ...

  9. keepalived介绍、安装及配置详解

    文章目录 keepalived简介 keeplived和LVS关系 VRRP工作原理 keepalived体系结构及工作原理 keepalived安装 keepalived配置详解 keepalive ...

  10. 虚拟机2012搭建DNS服务器,Windows Server2012 安装配置DNS服务器方法详解

    Windows Server2012 安装配置DNS服务器方法详解 在云服务器 Windows Server2012 上安装配置DNS服务器方法,安装与配置非常简单,在这里写个完整教程方便大家查询 一 ...

最新文章

  1. json web token 实践登录以及校验码验证
  2. Dubbo架构的特点
  3. Nuxt.js asyncData 多请求
  4. shell脚本中的坑
  5. 高手问答精选:Go 语言 —— 云计算时代的 C 语言
  6. 如何编译 dotnet/aspnetcore 源代码
  7. OpenID Connect:OAuth 2.0协议之上的简单身份层
  8. html5boder属性,你未必知道的CSS小知识:border属性比你想象的要复杂
  9. 新的特洛伊木马程序SectopRAT用以控制浏览器会话
  10. m3u8文件下载及合并
  11. 众为兴SCARA四轴机械臂编程(一)——基于ModbusTCP协议
  12. 判断质数的所有方法详解(C语言)
  13. 深度学习----HOI人物交互算法:ICAN
  14. git 创建邮箱 用户名_初次安装git配置用户名和邮箱及密钥
  15. 大数据的python基础_大数据量化之路之python基础
  16. 软件开发与软件研发的区别
  17. 淘宝天猫API_获取商品详情原数据
  18. Banner小组年会总结
  19. Python:orator/backpack内置数据操作类Collection
  20. Flash鼠标拖尾效果

热门文章

  1. Dota Allstars 6.67/6.67b/6.67c bug小鸡臂章
  2. VMware vRealize Operations 8.4 发布 - 自动驾驶式 IT 运维管理
  3. 我国爬虫法即将出台!
  4. 基于VS code 搭建g++和gbd 编译调试环境
  5. 【语音识别】基于MPCC+IPL特征结合SVM实现中英语种识别含Matlab源码
  6. WEB攻防-文件上传存储安全OSS对象分站解析安全解码还原目录执行
  7. ssm社区团购平台cu9o99
  8. 使用POI导入Excel时日期格式转换成数值的问题
  9. 设计模式——JDK中的观察者模式
  10. dijkstra之细节处理 ——PAT (Advanced Level) 1072 Gas Station (30 分)