Keepalived学习笔记

D途乐2的搭建基本同D奥迪Q51,重要修改一下配备文件中/etc/keepalived/keepalived.conf的state和priority:state BACKUP、priority 90. 同时大家发现作为backup的DRAV42没有启用eno16777736:0的网口:

图片 1

3.3.2 LVS
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
qingean@163.com
}
notification_email_from admin@test.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_MASTER
}
vrrp_instance VI_1 {
state MASTER #BACKUP上修改为BACKUP
interface ens4
virtual_router_id 51
priority 100 #BACKUP上修修改改为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
193.168.140.80
}
}
virtual_server 193.168.140.80 80 {
delay_loop 6
lb_algo rr
lb_kind DR
nat_mask 255.255.255.255
protocol TCP
real_server 193.168.140.152 80 {
weight 10
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 193.168.140.224 80 {
weight 10
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}

3.2.2 LVS
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
qingean@163.com #故障接受联系人
}
notification_email_from admin@test.com #故障发赠给旁人
smtp_server 127.0.0.1 #本机发送邮件
smtp_connect_timeout 30
router_id LVS_MASTER #BACKUP上修修改改为LVS_BACKUP
}
vrrp_instance VI_1 {
state MASTER #BACKUP上改动为BACKUP
interface ens4
virtual_router_id 51 #虚拟路由标识,主从相同
priority 100 #BACKUP上修修改改为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111 #核心认证密码必须一致
}
virtual_ipaddress {
193.168.140.80 #虚拟IP(VIP)
}
}
vrrp_instance LAN_GATEWAY { #概念网关
state MASTER #BACKUP上改动为BACKUP
interface ens3
virtual_router_id 62 #虚拟路由ID,主从相同
priority 100 #BACKUP上改动为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { #ens3网关虚拟IP
192.168.102.165
}
}
virtual_server 192.168.102.165 80 { #概念内网网关虚拟IP和端口
delay_loop 6 #检查RS时间,单位秒
lb_algo rr
#安装负载调度算法,轮叫(rr)、加权轮叫(wrr)、最小连接(lc)、加权最小连接(wlc)、基于局地性最小连接(lblc)、带复制的基于局地性最少链接(lblcr)、指标地方散列(dh)和源地址散列(sh)
lb_kind NAT #设置LVS负载均衡NAT形式
persistence_timeout 50
#同一IP的连天60秒内被分配到同样台真正服务器(测试时提出改为0)
protocol TCP #接纳TCP协议检查GL450S状态
real_server 192.168.102.161 80 { #率先个网关节点
weight 3 #节点权重值
TCP_CHECK { #健检情势
connect_timeout 3 #总是超时
nb_get_retry 3 #重试次数
delay_before_retry 3 #重试间隔/S
}
}
real_server 192.168.102.162 80 { #第贰个网关节点
weight 3
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
virtual_server 193.168.140.80 80{ #概念虚拟IP
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.102.163 80 { #第一个RS
weight 3
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.102.164 80 { #第二个RS
weight 3
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
3.2.3 RS
为拥有酷威S添加网关为192.168.102.165:
vim /etc/sysconfig/network-scripts/ifcfg-ens3
GATEWAY=192.168.102.165
重启; 使用route –n查看是不是中标
IPVS connection entries
pro expire state source virtual destination
TCP 01:54 FIN_WAIT 10.167.225.60:53882 193.168.140.80:80
192.168.102.163:80
TCP 00:37 NONE 10.167.225.60:0 193.168.140.80:80 192.168.102.163:80

Keepalived学习笔记,


LVS(Linux Virtual
Server):Linux虚拟服务器,那里透过keepalived作为负载均衡器
CR-VS(Real Server):真实服务器
VPAJERO福睿斯P(Virtual Router Redundancy Protocol): 虚拟路由冗余合计,
化解局域网中配置静态网关出现单点失效现象的路由协议
图片 2

 

1 Keepalived是怎么着,有如何听从?
1.1 Keepalived的定义
Keepalived 是贰个依据VLacrosse揽胜极光P协议来落到实处的LVS高可用方案
1.2 Keepalived的作用
1.2.1 通过IP漂移完结高可用
主副LVS共享一个虚拟IP,同暂且间唯有3个LVS占有VIP并对外提供劳动,若该LVS不可用,则VIP漂移至另一台LVS并对外提供劳务;
1.2.2 对瑞鹰S集群举市价况监察和控制
若SportageS不可用,则keepalived将其从集群中摘除,若XC90S恢复生机,则keepalived将其重新参预集群中。
2 Keepalived有两种方式,各种格局的相同点和差别点是怎样?
2.1 Keepalived的情势类别
Keepalived有3种格局:NAT(地址转换);D奥迪Q3(间接路由);TUN(隧道)
2.2 Keepalived的逐条格局的牵线
2.2.1 NAT
优点:集群中的RAV4S可以采取任何协理TCP/IP操作系统,HavalS能够分配Internet的保留私有地址,唯有LVS需求三个法定的IP地址。
症结:扩张性有限。当TucsonS节点增加到拾九个或更加多时,LVS将改成一体种类的瓶颈,因为有着的伸手包和回答包都亟需经过LVS再生。
2.2.2 TUN
我们发现,许多Internet服务(例如WEB服务器)的请求包十分的短小,而应答包平常非常大。
优点:LVS只担负将呼吁包分发给揽胜极光S,而奥迪Q5S将回应包直接发给用户。所以,LVS能处理很伟大的请求量,那种艺术,一台载荷均衡能为跨越100台的纳瓦拉S服务,LVS不再是系统的瓶颈。
症结:可是,那种形式供给拥有的服务器援救”IP Tunneling”(IP
Encapsulation)协议,我仅在Linux系统上落实了那些。
2.2.3 DR
优点:和TUN一样,LVS也只是散发请求,应答包通过独立的路由方法重临给客户端。与TUN比较,D哈弗那种实现形式不须求隧道结构,因而得以应用当先1/4操作系统做为陆风X8S。
不足:供给LVS的网卡必须与ENVISIONS的网卡在多个网段上
3 差别形式的配备格局,验证措施分别是怎样?
3.1 基本的条件须求
需要2台LVS和n(n>=2)台RS
3.1.1 LVS
安装ipvsadm(LVS管理工科具)和keepalived;
开启路由转载效率:
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
验证:
sysctl -p
net.ipv4.ip_forward = 1
3.1.2 RS
安装httpd(用于最后测试)
3.2 NAT格局配置
3.2.1 环境概述
操作系统 负载均衡格局 VIP NVIP
RHEL7.4 NAT 193.168.140.80 192.168.102.165

LVS1 LVS2 RS1 RS2
ens3:192.168.102.161 ens3:192.168.102.162 ens3:192.168.102.163
ens3:192.168.102.164
ens4:193.168.140.79 ens4:193.168.140.83 网关:192.168.102.165
网关:192.168.102.165

3.2.2 LVS
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
[email protected]
#故障接受联系人
}
notification_email_from
[email protected]
#故障发送人
smtp_server 127.0.0.1 #本机发送邮件
smtp_connect_timeout 30
router_id LVS_MASTER #BACKUP上修改为LVS_BACKUP
}
vrrp_instance VI_1 {
state MASTER #BACKUP上修修改改为BACKUP
interface ens4
virtual_router_id 51 #虚拟路由标识,主从相同
priority 100 #BACKUP上修修改改为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111 #主干认证密码必须一律
}
virtual_ipaddress {
193.168.140.80 #虚拟IP(VIP)
}
}
vrrp_instance LAN_GATEWAY { #概念网关
state MASTER #BACKUP上修修改改为BACKUP
interface ens3
virtual_router_id 62 #虚拟路由ID,主从相同
priority 100 #BACKUP上修改为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { #ens3网关虚拟IP
192.168.102.165
}
}
virtual_server 192.168.102.165 80 { #概念内网网关虚拟IP和端口
delay_loop 6 #检查RS时间,单位秒
lb_algo rr
#安装负载调度算法,轮叫(rr)、加权轮叫(wrr)、最小连接(lc)、加权最小连接(wlc)、基于局地性最小连接(lblc)、带复制的基于局地性最少链接(lblcr)、目的地方散列(dh)和源地址散列(sh)
lb_kind NAT #安装LVS负载均衡NAT方式
persistence_timeout 50
#同一IP的接连60秒内被分配到同一台真正服务器(测试时建议改为0)
protocol TCP #使用TCP协议检查PAJEROS状态
real_server 192.168.102.161 80 { #第三个网关节点
weight 3 #节点权重值
TCP_CHECK { #健检方式
connect_timeout 3 #连接超时
nb_get_retry 3 #重试次数
delay_before_retry 3 #重试间隔/S
}
}
real_server 192.168.102.162 80 { #第三个网关节点
weight 3
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
virtual_server 193.168.140.80 80{ #概念虚拟IP
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.102.163 80 { #第一个RS
weight 3
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.102.164 80 { #第二个RS
weight 3
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
3.2.3 RS
为具备凯雷德S添加网关为192.168.102.165:
vim /etc/sysconfig/network-scripts/ifcfg-ens3
GATEWAY=192.168.102.165
重启; 使用route –n查看是或不是成功
IPVS connection entries
pro expire state source virtual destination
TCP 01:54 FIN_WAIT 10.167.225.60:53882 193.168.140.80:80
192.168.102.163:80
TCP 00:37 NONE 10.167.225.60:0 193.168.140.80:80 192.168.102.163:80

3.3 DLAND方式配置
3.3.1 环境概述
操作系统 负载均衡方式 VIP
RHEL7.4 DR 193.168.140.80

LVS1 LVS2 RS1 RS2
ens4:193.168.140.79 ens4:193.168.140.83 ens4:193.168.140.152
ens4:193.168.140.224

3.3.2 LVS
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
[email protected]
}
notification_email_from
[email protected]
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_MASTER
}
vrrp_instance VI_1 {
state MASTER #BACKUP上修修改改为BACKUP
interface ens4
virtual_router_id 51
priority 100 #BACKUP上改动为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
193.168.140.80
}
}
virtual_server 193.168.140.80 80 {
delay_loop 6
lb_algo rr
lb_kind DR
nat_mask 255.255.255.255
protocol TCP
real_server 193.168.140.152 80 {
weight 10
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 193.168.140.224 80 {
weight 10
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}

3.3.3 RS
为所有RS修改sysctl.conf
net.ipv4.conf.lo.arp_ignore= 1
net.ipv4.conf.lo.arp_announce= 2
net.ipv4.conf.all.arp_ignore= 1
net.ipv4.conf.all.arp_announce= 2
net.ipv4.ip_forward= 1
执行/sbin/ifconfig lo:0 193.168.140.80 broadcast 193.168.140.80 netmask
255.255.255.255
可用route –n查看是还是不是中标
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 193.168.1.1 0.0.0.0 UG 100 0 0 ens4
193.168.0.0 0.0.0.0 255.255.0.0 U 100 0 0 ens4
193.168.140.80 0.0.0.0 255.255.255.255 UH 0 0 0 lo
若不成功实践/sbin/route add -host 193.168.140.80 dev lo:0
3.4 验证措施
3.4.1 全数机器关闭防火墙:
systemctl stop firewalld
3.4.2 全数陆风X8S写入测试页和开启httpd服务
RS1:echo “RS1″ > /var/www/html/index.html
RS2:echo “RS2″ > /var/www/html/index.html
systemctl start httpd
3.4.3 主副LVS开启keepalived服务
systemctl start keepalived
3.4.4 访问
浏览器访问
刷新会交替突显帕杰罗S1或哈弗S2
3.4.5 查看当前测试机的造访请求被转接到哪个服务器
ipvsadm –lcn
IPVS connection entries
pro expire state source virtual destination
TCP 01:54 FIN_WAIT 10.167.225.60:53882 193.168.140.80:80
192.168.102.163:80
TCP 00:37 NONE 10.167.225.60:0 193.168.140.80:80 192.168.102.163:80
3.4.6 测试
依傍宕掉主LVS,服务器照常工作,再宕掉Web1,那时只会显示Web2,那样就完结IP负载均衡,高可用集群。当主LVS苏醒后,会切换到主动服务器,假使Keepalived监察和控制模块检查和测试web故障恢复生机后,恢复生机的主机又将此节点加入集群系统中。

注 LVS(Linux Virtual
Server):Linux虚拟服务器,那里透过keepalived作为负载均衡器 CR-VS(Real
Server):真实服务器 VTiggo冠道P(Virtual Router 昂科威…

搭建RS1:

[root@RS1 ~]# yum -y install nginx   #安装nginx
[root@RS1 ~]# vim /usr/share/nginx/html/index.html   #修改主页
    <h1> 192.168.4.118 RS1 server </h1>
[root@RS1 ~]# systemctl start nginx.service   #启动nginx服务
[root@RS1 ~]# vim RS.sh   #配置lvs-dr的脚本文件
    #!/bin/bash
    #
    vip=192.168.4.120
    mask=255.255.255.255
    case $1 in
    start)
        echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
        ifconfig lo:0 $vip netmask $mask broadcast $vip up
        route add -host $vip dev lo:0
        ;;
    stop)
        ifconfig lo:0 down
        echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce
        ;;
    *) 
        echo "Usage $(basename $0) start|stop"
        exit 1
        ;;
    esac
[root@RS1 ~]# bash RS.sh start

LVS1 LVS2 RS1 RS2
ens3:192.168.102.161 ens3:192.168.102.162 ens3:192.168.102.163
ens3:192.168.102.164
ens4:193.168.140.79 ens4:193.168.140.83 网关:192.168.102.165
网关:192.168.102.165

1 Keepalived是怎样,有如何效能?
1.1 Keepalived的定义
Keepalived 是二个根据VHighlander凯雷德P协议来落到实处的LVS高可用方案
1.2 Keepalived的作用
1.2.1 通过IP漂移达成高可用
主副LVS共享三个虚构IP,同一时间唯有三个LVS占有VIP并对外提供劳动,若该LVS不可用,则VIP漂移至另一台LVS并对外提供劳务;
1.2.2 对奥迪Q5S集群实行状态监察和控制
若ENCORES不可用,则keepalived将其从集群中摘除,若汉兰达S苏醒,则keepalived将其重新到场集群中。
2 Keepalived有二种形式,各类格局的相同点和不一致点是怎样?
2.1 Keepalived的格局体系
Keepalived有3种形式:NAT(地址转换);DPRADO(间接路由);TUN(隧道)
2.2 Keepalived的依次格局的介绍
2.2.1 NAT
可取:集群中的途观S能够选择任何帮忙TCP/IP操作系统,凯雷德S能够分配Internet的保存私有地址,唯有LVS需求1个合法的IP地址。
缺陷:扩张性有限。当奥迪Q3S节点增进到二十个或更多时,LVS将改为整个系列的瓶颈,因为具备的请求包和回复包都须要通过LVS再生。
2.2.2 TUN
咱俩发现,许多Internet服务(例如WEB服务器)的央浼包不够长小,而应答包经常非常大。
可取:LVS只负责将请求包分发给PRADOS,而KoleosS将回应包直接发给用户。所以,LVS能处理很巨大的请求量,那种艺术,一台载荷均衡能为超越100台的宝马X3S服务,LVS不再是系统的瓶颈。
缺陷:可是,这种格局亟待有所的服务器援救”IP Tunneling”(IP
Encapsulation)协议,小编仅在Linux系统上完毕了这几个。
2.2.3 DR
可取:和TUN一样,LVS也只是散发请求,应答包通过单独的路由方法再次来到给客户端。与TUN相比,D福睿斯那种完毕形式不要求隧道结构,由此能够使用超越八分之四操作系统做为奇骏S。
不足:须求LVS的网卡必须与中华VS的网卡在1个网段上
3 区别情势的配备格局,验证措施分别是何许?
3.1 基本的条件供给
需要2台LVS和n(n>=2)台RS
3.1.1 LVS
安装ipvsadm(LVS管理工科具)和keepalived;
开启路由转载效能:
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
验证:
sysctl -p
net.ipv4.ip_forward = 1
3.1.2 RS
安装httpd(用于最终测试)
3.2 NAT情势配置
3.2.1 环境概述
操作系统 负载均衡格局 VIP NVIP
RHEL7.4 NAT 193.168.140.80 192.168.102.165

通过命令ifconfig能够查看到是不是开启了MULTICAST:

3.3 D汉兰达方式配置
3.3.1 环境概述
操作系统 负载均衡情势 VIP
RHEL7.4 DR 193.168.140.80

3.3.2 LVS
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
qingean@163.com
}
notification_email_from admin@test.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_MASTER
}
vrrp_instance VI_1 {
state MASTER #BACKUP上改动为BACKUP
interface ens4
virtual_router_id 51
priority 100 #BACKUP上修改为90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
193.168.140.80
}
}
virtual_server 193.168.140.80 80 {
delay_loop 6
lb_algo rr
lb_kind DR
nat_mask 255.255.255.255
protocol TCP
real_server 193.168.140.152 80 {
weight 10
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 193.168.140.224 80 {
weight 10
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}

keepalived的主主架构

3.3.3 RS
为所有RS修改sysctl.conf
net.ipv4.conf.lo.arp_ignore= 1
net.ipv4.conf.lo.arp_announce= 2
net.ipv4.conf.all.arp_ignore= 1
net.ipv4.conf.all.arp_announce= 2
net.ipv4.ip_forward= 1
执行/sbin/ifconfig lo:0 193.168.140.80 broadcast 193.168.140.80 netmask
255.255.255.255
可用route –n查看是还是不是成功
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 193.168.1.1 0.0.0.0 UG 100 0 0 ens4
193.168.0.0 0.0.0.0 255.255.0.0 U 100 0 0 ens4
193.168.140.80 0.0.0.0 255.255.255.255 UH 0 0 0 lo
若不成功实行/sbin/route add -host 193.168.140.80 dev lo:0
3.4 验证格局
3.4.1 全体机器关闭防火墙:
systemctl stop firewalld
3.4.2 全体ENCORES写入测试页和开启httpd服务
RS1:echo “RS1″ > /var/www/html/index.html
RS2:echo “RS2″ > /var/www/html/index.html
systemctl start httpd
3.4.3 主副LVS开启keepalived服务
systemctl start keepalived
3.4.4 访问
浏览器访问
刷新会轮番展现LacrosseS1或汉兰达S2
3.4.5 查看当前测试机的拜会请求被转接到哪个服务器
ipvsadm –lcn
IPVS connection entries
pro expire state source virtual destination
TCP 01:54 FIN_WAIT 10.167.225.60:53882 193.168.140.80:80
192.168.102.163:80
TCP 00:37 NONE 10.167.225.60:0 193.168.140.80:80 192.168.102.163:80
3.4.6 测试
模仿宕掉主LVS,服务器照常工作,再宕掉Web1,那时只会议及展览示Web2,这样就达成IP负载均衡,高可用集群。当主LVS复苏后,会切换到主动服务器,假诺Keepalived监察和控制模块检查和测试web故障复苏后,复苏的主机又将此节点出席集群系统中。


LVS(Linux Virtual
Server):Linux虚拟服务器,那里经过keepalived作为负载均衡器
PAJEROS(Real Server):真实服务器
VCRUISER汉兰达P(Virtual Router Redundancy Protocol): 虚拟路由冗余协和式飞机,
化解局域网中配置静态网关出现单点失效现象的路由协议
图片 3

发表评论

电子邮件地址不会被公开。 必填项已用*标注