Keepalived+LVS的简单应用

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介:

实验一:实现keepalived企业级高可用基于LVS-DR模式的应用实战

一、环境准备:两台centos系统做DR、一主一从,两台实现过基于LNMP的电子商务网站

准备四台主机:都是仅主机模式

一台Director-master,DIP:192.168.159.151 VIP:192.168.159.110

一台Director-backup,DIP:192.168.159.129 VIP:192.168.159.110

一台后台服务器,RIP:192.168.159.120 VIP:192.168.159.110

一台后台服务器,RIP:192.168.159.121 VIP:192.168.159.110

二、安装步骤:

使用yum方式安装keepalived服务

Director-master上操作:

安装keepalived服务:yum install keepalived

Director-backup上操作:

安装keepalived服务:yum install keepalived

iptables -F && setenforing 清空防火墙策略,关闭selinux

三、配置基于DR模式的LVS负载均衡集群:

修改keepalived主(Director-master)配置文件实现virtual_instance(vim /etc/keepalived/keepalived.conf)

! Configuration File for keepalived

global_defs {

notification_email {

root@localhost 邮件接收者

}

notification_email_from Alexandre.Cassen@firewall.loc 发件人

smtp_server 127.0.0.1 发邮件的服务器

smtp_connect_timeout 2 连接超时时间

router_id LVS_DEVEL 路由器的标识

}

vrrp_instance VI_1 { 配置虚拟路由器

state MASTER 初始状态

interface eth0 所用端口

virtual_router_id 51 虚拟路由的ID号

priority 100 优先级

advert_int 1 VRRP通告间隔

authentication { 认证机制

auth_type PASS

auth_pass magedu

}

nopreempt 非抢占式,当多个BACKUP时,其中有个BACKUP的优先级高但是为非抢占式,那么它就不去抢VIP。

virtual_ipaddress {

168.159.110

}

}

virtual_server 192.168.159.110 80 { 虚拟服务

delay_loop 6 服务轮询的时间间隔

ld_algo wrr LVS调度算法

lb_kind DR LVS集群模式

protocol TCP

real_server 192.168.159.120 80 { 后端真实节点主机

weight 1 权重

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.121 80 {

weight 1

TCP_CHECK {

connect_timeout 3 连接超时时间

}

}

}

systemctl start keepalived

修改keepalived从Director-backup)配置文件实现virtual_instance

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 51

priority 99

advert_int 1

authentication {

auth_type PASS

auth_pass grr02

}

virtual_ipaddress {

168.159.110

}

}

virtual_server 192.168.159.110 80 {

delay_loop 6

ld_algo rr

lb_kind DR

protocol TCP

real_server 192.168.159.120 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.121 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

rs01,rs02:配置回环网卡

①配置回环网卡:

ifconfig lo:0 192.168.159.110 broadcast 192.168.159.110 netmask 255.255.255.255 up

route add -host 192.168.159.110 lo:0

删除:route del -net 169.254.0.0/16 dev eth0

②忽略ip与mac不匹配的问题:

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

四、测试:刚启动服务查看ip是在MASTER上,当关闭MASTER上的keepalived服务,那么ip就被BACKUP拿走了
Keepalived+LVS的简单应用
Keepalived+LVS的简单应用

实验二:实现keepalived主主架构 (基于DR集群工作模式)

一、环境准备:两台centos系统做DR、一主一从,两台实现过基于LNMP的电子商务网站

准备四台主机:都是仅主机模式

一台Director-master,DIP:192.168.159.151 VIP:192.168.159.110

一台Director-backup,DIP:192.168.159.129 VIP:192.168.159.110

一台后台服务器,RIP:192.168.159.120 VIP:192.168.159.110

一台后台服务器,RIP:192.168.159.121 VIP:192.168.159.110

二、安装步骤:

使用yum方式安装keepalived服务

Director-master1上操作:

安装keepalived服务:yum install keepalived

Director-backup上操作:

安装keepalived服务:yum install keepalived

iptables -F && setenforing 清空防火墙策略,关闭selinux

三、配置基于DR模式的LVS负载均衡集群:

Director-master1上操作:

修改keepalived主(Director-master)配置文件实现virtual_instance(vim /etc/keepalived/keepalived.conf)

! Configuration File for keepalived

global_defs {

notification_email {

root@localhost 邮件接收者

}

notification_email_from Alexandre.Cassen@firewall.loc 发件人

smtp_server 127.0.0.1 发邮件的服务器

smtp_connect_timeout 2 连接超时时间

router_id LVS_DEVEL 路由器的标识

}

vrrp_instance VI_1 { 配置虚拟路由器

state MASTER 初始状态

interface eth0 所用端口

virtual_router_id 51 虚拟路由的ID号

priority 100 优先级

advert_int 1 VRRP通告间隔

authentication { 认证机制

auth_type PASS

auth_pass magedu

}

*# nopreempt 非抢占式,当多个BACKUP时,其中有个BACKUP的优先级高但是为非抢占式,那么它就不去抢VIP。****

virtual_ipaddress {

168.159.110

}

}

virtual_server 192.168.159.110 80 { 虚拟服务

delay_loop 6 服务轮询的时间间隔

ld_algo wrr LVS调度算法

lb_kind DR LVS集群模式

protocol TCP

real_server 192.168.159.120 80 { 后端真实节点主机

weight 1 权重

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.121 80 {

weight 1

TCP_CHECK {

connect_timeout 3 连接超时时间

}

}

vrrp_instance VI_2 {

state BACKUP

interface eth0

virtual_router_id 51

priority 99

advert_int 1

authentication {

auth_type PASS

auth_pass grr02

}

virtual_ipaddress {

168.159.122

}

}

virtual_server 192.168.159.122 80{

delay_loop 6

ld_algo rr

lb_kind DR

protocol TCP

real_server 192.168.159.120 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.121 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

启动服务:systemctl start keepalived

Director-master2上操作:(vim /etc/keepalived/keepalived.conf)

! Configuration File for keepalived

global_defs {

notification_email {

root@localhost 邮件接收者

}

notification_email_from Alexandre.Cassen@firewall.loc 发件人

smtp_server 127.0.0.1 发邮件的服务器

smtp_connect_timeout 2 连接超时时间

router_id LVS_DEVEL 路由器的标识

}

vrrp_instance VI_1 { 配置虚拟路由器

state BACKUP 初始状态

interface eth0 所用端口

virtual_router_id 51 虚拟路由的ID号

priority 98 优先级

advert_int 1 VRRP通告间隔

authentication { 认证机制

auth_type PASS

auth_pass magedu

}

*# nopreempt 非抢占式,当多个BACKUP时,其中有个BACKUP的优先级高但是为非抢占式,那么它就不去抢VIP。**

virtual_ipaddress {

168.159.110

}

}

virtual_server 192.168.159.110 443 { 虚拟服务

delay_loop 6 服务轮询的时间间隔

ld_algo wrr LVS调度算法

lb_kind DR LVS集群模式

protocol TCP

real_server 192.168.159.120 443 { 后端真实节点主机

weight 1 权重

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.121 443 {

weight 1

TCP_CHECK {

connect_timeout 3 连接超时时间

}

}

vrrp_instance VI_2 {

state MASTER

interface eth0

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass grr02

}

virtual_ipaddress {

168.159.122

}

}

virtual_server 192.168.159.122 443{

delay_loop 6

ld_algo rr

lb_kind DR

protocol TCP

real_server 192.168.159.120 443 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.121 443 {

weight 1

TCP_CHECK {

connect_timeout 3

}

启动服务:systemctl start keepalived

rs01,rs02:配置回环网卡

①配置回环网卡:

ifconfig lo:0 192.168.159.110 broadcast 192.168.159.110 netmask 255.255.255.255 up

ifconfig lo:1 192.168.159.122 broadcast 192.168.159.122 netmask 255.255.255.255 up

route add -host 192.168.159.110 lo:0

route add -host 192.168.159.122 lo:1

删除:route del -net 169.254.0.0/16 dev eth0

route del default gw 192.168.159.110 dev eth1

②忽略ip与mac不匹配的问题:

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

四、测试:刚启动服务时MASTER1主机上有192.168.159.110无192.168.159.122

MASTER2主机上有192.168.159.122无192.168.159.110
Keepalived+LVS的简单应用
Keepalived+LVS的简单应用

当关闭MASTER2主机时,两个VIP都会在MASTER1主机上,而MASTER2主机上无VIP
Keepalived+LVS的简单应用

实验三、实现keepalived的NAT模型

一、环境准备:两台centos系统做NAT、一主一从,两台实现过基于LNMP的电子商务网站

准备四台主机:

一台Director-master,DIP:192.168.159.151 VIP:192.168.159.110(作为可漂移的DIP),172.17.253.115 (桥接与仅主机)

一台Director-backup,DIP:192.168.159.129 VIP:192.168.159.110,172.17.253.115

一台后台服务器,RIP:192.168.159.120 VIP:192.168.159.110(仅主机模式)可实现网站访问

一台后台服务器,RIP:192.168.159.121 VIP:192.168.159.110(仅主机模式)

二、安装步骤:

使用yum方式安装keepalived服务

Director-master1上操作:

安装keepalived服务:yum install keepalived

Director-backup上操作:

安装keepalived服务:yum install keepalived

iptables -F && setenforing 清空防火墙策略,关闭selinux

开启路由转发 vim /etc/sysctl.conf

net.ipv4.ip_forward=1

sysctl -p

三、配置基于DR模式的LVS负载均衡集群:

Director-master1上操作:

! Configuration File for keepalived

global_defs {

notification_email {

root@localhost

}

notification_email_from root@magedu.com

smtp_server 127.0.0.1

smtp_connect_timeout 5

router_id LVS_DEVEL

}

vrrp_instance VI_1 {

state MASTER

interface eth0

virtual_router_id 23

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass riqi

}

virtual_ipaddress {

17.253.115

168.159.110

}

}

virtual_server 172.17.253.115 80 {

delay_loop 6

lb_algo wrr

lb_kind NAT

protocol TCP

real_server 192.168.159.121 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.120 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

}

Director-master2上操作:

! Configuration File for keepalived

global_defs {

notification_email {

root@localhost

}

notification_email_from root@magedu.com

smtp_server 127.0.0.1

smtp_connect_timeout 5

router_id LVS_DEVEL

}

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 23

priority 91

advert_int 1

authentication {

auth_type PASS

auth_pass riqi

}

virtual_ipaddress {

17.253.115

168.159.110

}

}

virtual_server 172.17.253.115 80 {

delay_loop 6

lb_algo wrr

lb_kind NAT

protocol TCP

real_server 192.168.159.121 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

real_server 192.168.159.120 80 {

weight 1

TCP_CHECK {

connect_timeout 3

}

}

}

启动服务:systemctl start keepalived

rs01,rs02:配置网关

route add default gw 192.168.159.110 dev eth1

删除:route del -net 169.254.0.0/16 dev eth0

四、测试:刚启动服务时MASTER1主机上有192.168.159.110和172.17.253.115

MASTER2主机上无192.168.159.110和172.17.253.115.

当关闭MASTER1上的keepalived,MASTER2有192.168.159.110和172.17.253.115
Keepalived+LVS的简单应用

访问172.17.253.115
Keepalived+LVS的简单应用

以上是做的实验,还望各位多多赐教!



本文转自 优果馥思 51CTO博客,原文链接:http://blog.51cto.com/youguofusi/2044116

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
7月前
|
负载均衡 应用服务中间件 Linux
Nginx系列教程(14) - LVS+KeepAlived+Nginx实现高性能负载均衡集群
Nginx系列教程(14) - LVS+KeepAlived+Nginx实现高性能负载均衡集群
331 0
|
1月前
|
运维 负载均衡 监控
keepalived+LVS实现高可用性集群
通过结合keepalived和LVS,你可以创建一个高可用性的负载均衡集群,确保服务器的稳定性和性能。这对于托管Web服务、应用服务器等关键服务的服务器集群非常有用。
62 1
|
1月前
|
负载均衡 监控 Linux
CentOS6.5高可用集群LVS+Keepalived(DR模式)
CentOS6.5高可用集群LVS+Keepalived(DR模式)
|
1月前
|
负载均衡 监控 调度
Keepalived+Lvs(dr)调度器主备配置小实验
Keepalived和LVS(Linux Virtual Server)是两个常用的开源软件,通常结合使用以提供高可用性和负载均衡的解决方案。 Keepalived是一种用于实现高可用性的软件,它可以监控服务器的健康状态,并在主服务器出现故障时自动切换到备份服务器。
121 2
|
7月前
|
负载均衡 算法 网络协议
Keepalived+LVS搭建高可用负载均衡
Keepalived+LVS搭建高可用负载均衡
221 1
|
6月前
|
负载均衡 网络协议 Linux
小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)
小白带你学习linux的keepalived+lvs和keepalived双机热备(三十七)
99 0
|
9月前
|
负载均衡 监控 Linux
LVS + keepalived
LVS + keepalived
78 1
|
9月前
|
负载均衡 测试技术
LVS+KeepAlived构建高可用集群
LVS+KeepAlived构建高可用集群
62 0
|
9月前
|
缓存 负载均衡 网络协议
LVS+KeepAlived快速入门2
LVS+KeepAlived快速入门2
100 0
|
9月前
|
负载均衡 算法 网络协议
LVS+KeepAlived快速入门1
LVS+KeepAlived快速入门2
79 0