Keepalived+Lvs高可用高性能负载配置

这篇具有很好参考价值的文章主要介绍了Keepalived+Lvs高可用高性能负载配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境准备

IP 配置 VIP
node1 192.168.134.170 LVS+Keepalived 192.168.134.100
node3 192.168.134.172 LVS+Keepalived 192.168.134.100
node2 192.168.134.171 做web服务器使用
node4 192.168.134.173 做web服务器使用

1、准备node1与node3环境(安装LVS与Keepalived)==>由于只是简单的模拟测试,故环境安装使用yum即可。(LVS使用DR模式)

yum install  ipvsadm

2、准备web服务器环境(两台)

yum install httpd -y

3、写测试实例(web服务器上)

 echo "web test page ,ip is `hostname -I`" > /var/www/html/index.html
systemctl restart httpd

4、写脚本准备web环境

cat /etc/init.d/lvs_rs

#!/bin/sh
#
# Startup script handle the initialisation of LVS
# chkconfig: - 28 72
# description: Initialise the Linux Virtual Server for DR
#
### BEGIN INIT INFO
# Provides: ipvsadm
# Required-Start: $local_fs $network $named
# Required-Stop: $local_fs $remote_fs $network
# Short-Description: Initialise the Linux Virtual Server
# Description: The Linux Virtual Server is a highly scalable and highly
# available server built on a cluster of real servers, with the load
# balancer running on Linux.
# description: start LVS of DR-RIP
LOCK=/var/lock/ipvsadm.lock
VIP=192.168.95.10
. /etc/rc.d/init.d/functions
start() {
PID=`ifconfig | grep lo:10 | wc -l`
if [ $PID -ne 0 ];
then
echo "The LVS-DR-RIP Server is already running !"
else
/sbin/ifconfig lo:10 $VIP netmask 255.255.255.255 broadcast $VIP up
/sbin/route add -host $VIP dev lo:10
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/eth0/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/eth0/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
/bin/touch $LOCK
echo "starting LVS-DR-RIP server is ok !"
fi
}
stop() {
/sbin/route del -host $VIP dev lo:10
/sbin/ifconfig lo:10 down >/dev/null
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/eth0/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/eth0/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
rm -rf $LOCK
echo "stopping LVS-DR-RIP server is ok !"
}
status() {
if [ -e $LOCK ];
then
echo "The LVS-DR-RIP Server is already running !"
else
echo "The LVS-DR-RIP Server is not running !"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo "Usage: $1 {start|stop|restart|status}"
exit 1
esac
exit 0

chomd +x /etc/init.d/lvs_rs # 添加执行权限
/etc/init.d/lvs_rs start # 启动脚本
route -n # 查看路由

5、修改keeplaived服务器配置文件(实现健康检查和故障切换功能)

! Configuration File for keepalived  # 主配置文件


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 {  # 实例一
    state MASTER  # 指定为主节点
    # nopreempt 非抢占模式
    interface ens33  # 指定VIP绑定网卡
    virtual_router_id 51  # 指定实例的id
    priority 100  # 指定主节点的优先级,主节点要高于备节点
    advert_int 1  # 指定发送vrrp通告的间隔
    authentication {
        auth_type PASS  # 指定认证方式
        auth_pass 1111  # 指定使用密码
    }
    virtual_ipaddress {  # 指定vip(需要与真实ip在同一个网段)
        192.168.134.100
    }
}

# 以下是做LVS配置
virtual_server 192.168.134.100 80 {  # 指定所绑定的VIP及端口
    delay_loop 6  # 健康检查的时间间隔
    lb_algo rr  # 指定LVS调度算法
    lb_kind DR  # 指定LVS模式,此处我们选取的是DR模式,还有NAT和TUN模式
    protocol TCP  # 指定四层协议为TCP

    real_server 192.168.134.171 80 {  # 指定真实服务器地址
        weight 1  # 设定真实主机的权重
        TCP_CHECK {  # 选中健康检查方式为tcp-check
            connect_timeout 3  # 连接超时时间
            retry 3  # 重试次数
            delay_before_retry 3  # 在重试之前延迟多少秒
            connect_port 80  # 指定连接端口
        }
    }


    real_server 192.168.134.173 80 {  # 指定另一台真实服务器
        weight 1
        TCP_CHECK {
            connect_timeout 3
            retry 3
            delay_before_retry 3
            connect_port 80
        }
    }
}


备节点配置
修改以下三处即可
 router_id LVS_DEVEL2
   state BACKUP 
   priority 80 

6、重启Keepalived

 systemctl restart keepalived.service # 先启动主,再启动备



ip a|grep 192.168.134.100 # 此时只有主机有VIP,备机,没有

7、测试(找客户端写以下测试来访问,得到如下结果即正确)

for ((i=1;i<=6;i++)); do curl http://192.168.134.100; done

结果:
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.171 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.171 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.171 192.168.122.1 

8、测试健康检查与故障转移文章来源地址https://www.toymoban.com/news/detail-646213.html

健康检查:
停掉一台web服务器
systemctl stop httpd


此时客户端访问结果: 由于时间设置,需要一段时间后才可以出结果,虽然访问结果少了一台web服务器,但是可以被另一台顶上,同样不影响访问。
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 


故障转移:
停掉一台keepalived服务器
systemctl stop keepalived


此时VIP转移至另一台
[root@localhost keepalived]# ip a|grep 192.168.134.100
    inet 192.168.134.100/32 scope global ens33
客户端访问结果正常(1:1轮询)
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.171 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.171 192.168.122.1 
web test page ,ip is 192.168.134.173 192.168.122.1 
web test page ,ip is 192.168.134.171 192.168.122.1 

在重新启动主keepalived后,vip又回到主机,访问仍旧正常。

到了这里,关于Keepalived+Lvs高可用高性能负载配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LVS+Keepalived架构(负载均衡高可用集群)

    普通的群集的部署是通过 一台调度器控制调配多台节点服务器 进行业务请求的处理,但是仅仅是一台调度器,就会存在极大的单点故障风险,当该调度器的链路或则调度器本身出现故障时,就会导致整个业务的无法正常进行  而高可用集群是由 一台主调度器和一台或多台备

    2024年02月12日
    浏览(58)
  • 如何部署LVS + keepalived 负载均衡高可用集群

    一、LVS架构 概念 L4和L7负载均衡的区别 keepalive故障自动切换 抢占与非抢占 二、keepalived管理LVS负载均衡器 LVS集中节点的健康检查 三、部署LVS + keeplived 高可用集群 第一步 关闭防火墙和安全机制          第二步 安装工具 第三步 手动配置模块 第四步 编辑策略配置文件 第五

    2024年02月13日
    浏览(45)
  • 【简单认识LVS+Keepalived负载均衡高可用群集】

    Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题。 在一个LVS服务集群中通常有主服务器(MASTER)和备份服务器(BACKUP)两种角色的服务器,但是对外表现为一个虚拟IP,主服务器会发送VRRP通告信息给备份服务器,当备份服务器收

    2024年02月15日
    浏览(44)
  • LVS-DR+keepalived实现高可用负载群集

    VRRP 通信原理: VRRP就是虚拟路由冗余协议,它的出现就是为了解决静态路由的单点故障。 VRRP是通过一种竞选的一种协议机制,来将路由交给某台VRRP路由。 VRRP用IP多播的方式(多播地址224.0.0.18)来实现高可用的通信,工作时主节点发包,备节点接收包,当备节点接收不到主

    2024年02月12日
    浏览(41)
  • 高性能:负载均衡

    目录 什么是负载均衡 负载均衡分类 服务端负载均衡 服务端负载均衡——软硬件分类 服务端负载均衡——OSI模型分类 客户端负载均衡 负载均衡常见算法 七层负载均衡做法 DNS解析 反向代理         将用户请求 分摊(分流)  到不同的服务器上,提高系统整体并发能力及

    2024年02月03日
    浏览(116)
  • 架构篇21:高性能负载均衡-算法

    负载均衡算法数量较多,而且可以根据一些业务特性进行定制开发,抛开细节上的差异,根据算法期望达到的目的,大体上可以分为下面几类。 任务平分类:负载均衡系统将收到的任务平均分配给服务器进行处理,这里的“平均”可以是绝对数量的平均,也可以是比例或者权

    2024年01月25日
    浏览(54)
  • 高性能软件负载OpenResty介绍和安装

    OpenResty是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项 当请求进入Nginx后先READ REQUEST HEADERS 读取头部 然后再分配由哪个指令操作 Identity 寻找匹配哪个Location* Apply Rate Limits 是否要对该请求限制 Preform Authertication 权限验

    2024年02月08日
    浏览(59)
  • Ceph入门到精通-大流量10GB/s LVS+OSPF 高性能架构

     LVS 和 LVS+keepalived 这两种架构在平时听得多了,最近才接触到另外一个架构LVS+OSPF。这个架构实际上是LVS+Keepalived 的升级版本,我们所知道LVS+Keepalived 架构是这样子的:        随着业务的扩展,我们可以对web服务器做水平扩展,以此来提高系统的处理能力。但是我们会发现

    2024年02月11日
    浏览(41)
  • LVS-DR模式+keepalived+nginx+tomcat实现动静分离、负载均衡、高可用实验

    实验条件: test2——20.0.0.20——主服务器——ipvsadm、keepalived服务 test3——20.0.0.30——备服务器——ipvsadm、keepalived服务 nginx5——20.0.0.51——后端真实服务器1(tomcat的代理服务器)——nginx服务 nginx6——20.0.0.61——后端真实服务器2(tomcat的代理服务器)——nginx服务 tomcat——

    2024年02月08日
    浏览(67)
  • 架构篇20:高性能负载均衡-分类及架构

    单服务器无论如何优化,无论采用多好的硬件,总会有一个性能天花板,当单服务器的性能无法满足业务需求时,就需要设计高性能集群来提升系统整体的处理性能。 高性能集群的本质很简单,通过增加更多的服务器来提升系统整体的计算能力。由于计算本身存在一个特点:

    2024年01月25日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包