首页 > 其他分享 >lvs+keepalived 实现负载均衡与高可用

lvs+keepalived 实现负载均衡与高可用

时间:2023-04-20 11:35:41浏览次数:27  
标签:负载 lvs keepalived 192.168 echo conf Server 节点

参考拓扑结构

 

1、在两台Director Server上安装lvs 与keepalived

yum -y install keepalived ipvsadm

2、修改两台Director Server中 /etc/keepalived/keepalived.conf配置文件

 

global_defs {
   notification_email {
     root@localhost                         #默认三个地址,修改可用地址
   }
   #notification_email_from root@localhost
   #smtp_server localhost
   #smtp_connect_timeout 30
   #router_id LVS1                       #标识当前节点名字,两个节点的此项需要不相同。
   #vrrp_skip_check_adv_addr
   #vrrp_strict
   #vrrp_garp_interval 0
   #vrrp_gna_interval 0

}

#默认的配置文件中,使用第三方 smtp 服务器,但这在现实中几乎没有意义,发不出邮件,我们将其挃定为 localhost, 我们也可以将通知信息的发送交给本地 sendmail 服务处理。 

vrrp_instance VI_1 {  #定义一个实例,一个集群就是一个实例。 默认VI_1 可以随意改
    state MASTER        #指定 A 节点为主节点 备用节点上设置为 BACKUP 即可 
    interface ens33          #绑定虚拟 IP 的网络接口 
    virtual_router_id 51    #VRRP 组名,两个节点的设置必须一样,以指明各个节点属于同一 VRRP 组
    priority 100            #主节点的优先级(1-254 之间),备用节点必须比主节点优先级低 
    advert_int 1             #组播信息发送间隔,两个节点设置必须一样 
    authentication {         #设置验证信息,两个节点必须一致 
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.20.103        #指定虚拟 IP, 两个节点设置必须一样
    }
}

#类似添加虚拟一个服务 ipvsadm -A -t 192.168.1.70:80 -s rr
virtual_server 192.168.20.103 9000 {    #对虚拟IP63添加LVS相关内容
    delay_loop 6                    #Keepalived 多长时间监测一次 RS
    lb_algo rr                      #分发算法
    lb_kind DR                      #DR 模式
    nat_mask 255.255.255.0  #非NAT模式注释掉此行  注释用!号
    persistence_timeout 50  #同一 IP 50秒内的请求都发到同个real server ,这个会影响LVS的 rr 调度算法, 同一 IP 超过 50 秒后,再次访问,才会被转发到另一台 real server 上。 persistence 持久性的意思
    protocol TCP
    #ipvsadm -a -t 192.168.2.111:80 -r 192.168.2.7 -g 添加的内容,类似这条命令
    #ipvsadm -a -t 192.168.2.111:80 -r 192.168.2.8 –g 添加的内容,类似这条命令
    
   real_server 192.168.20.101 9000 { #配置服务节点 1,需要指定 realserver 的真实 IP 地址和端口,IP不端口之间用空格隔开 
        weight 1    #配置服务节点的权值,权值大小用数字表示,数字越大,权值越高,设置权值大小可以为不同性能的服务器  
        TCP_CHECK {     #这段内容手动添加,把以前的内容删除
          connect_timeout 3       #表示 3 秒无响应超时
          nb_get_retry 3          #表示重试次数
          delay_before_retry 3    #表示重试间隔
          connect_port 9000         #检测端口
       }
    }
 
   real_server 192.168.20.102 9000 {
        weight 1
        TCP_CHECK {
           connect_timeout 3
           nb_get_retry 3
           delay_before_retry 3
           connect_port 9000
         }
    }
}

3、重启keepalived 

 systemctl restart keepalived

备Director Server上keepalived的配置文件,只需要修改vrrp_instance VI_1中

state BACKUP

priority 80  #比100小的值

 

4、在两台Real Server上安装apache

    yum install httpd

5、修改两台Real Server上的/etc/httpd/conf/httpd.conf 配置文件中监听端口为9000

  (与keepalived配置文件中的一致,可不修改,用默认80)

6、在Real Server 1 的/var/www/html目录下添加网页

    echo "this ip is 192.168.20.101" >> index.html

  Real Server 2中

   echo "this ip is 192.168.20.102" >> index.html

7、启动两台Real Server中的httpd 服务

   systemctl start httpd

8、在台Real Server通过脚本添加VIP

#!/bin/bash
#description:start relserver
VIP=192.168.20.103
source /etc/init.d/functions                #加载环境变量(可以加载所有的环境变量)

case $1 in
start)
        echo "start LVS of Realserver DR"
        /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
        /sbin/route add -host $VIP dev lo:0
        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
        ;;
stop)
        /sbin/ifconfig lo:0 down
        echo "Close LVS of Realserver DR"
        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/all/arp_ignore
        echo "0" > /proc/sys/net/ipv4/conf/all/arp_announce
        ;;
*)
        echo "Usage:$0 (start|stop)"
        exit 1
esac

chmod 755 lvsrs.sh

启动脚本 sh lvsrs.sh start

可以通过 ip addr 查看VIP情况

 

9、通过VIP访问网页

 

 

参考文档:https://www.cnblogs.com/meml/p/12686851.html

标签:负载,lvs,keepalived,192.168,echo,conf,Server,节点
From: https://www.cnblogs.com/fengzhengfly/p/17336160.html

相关文章

  • 负载均衡
    负载均衡是一种将网络流量分配到多个服务器上的技术,以提高系统的可用性、性能和可扩展性。负载均衡器可以根据不同的算法,将请求分配到不同的服务器上,从而避免单个服务器过载,提高系统的稳定性和可靠性。负载均衡可以应用于各种网络服务,如网站、应用程序、数据库等。......
  • 配置haproxy负载均衡群集
    推荐步骤:Haproxy服务器和web服务器以及客户端配置IP地址安装配置两台Nginx网站服务器配置haproxy和DNS服务器使用域名访问负载均衡群集实验步骤:haproy配置IP地址和路由功能第一台web服务器配置IP地址第二台web服务器IP地址客户端配置IP地址配置第一台web服务器安装依赖和创建管理ng......
  • VMware vSphere 8.0 Update 1 正式版发布 - 企业级工作负载平台
    ESXi8.0U1&vCenterServer8.0U1请访问原文链接:https://sysin.org/blog/vmware-vsphere-8-u1/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org2023-04-18,VMwarevSphere8.0Update1正式版发布。企业级工作负载平台vSphere将云计算的优势引入本地部署工作负......
  • linux-LVS
    LVS一、概述1.常见负载均衡常见负载均衡对比优势缺点硬件:F5性能好技术支持价格昂贵购买2台1对.lvs工作四层效率极其高对数据做的转发负载均衡部署维护(运维成本较高)nginx/tengine/openresty(lua)使用简单支持4层(1.9版本后支持)和7层反向代理......
  • 四月学习之LVS shell脚本配置DR模型
    1、DS脚本配置#!/usr/bin/bashVIP=172.16.1.100RS1=172.16.1.5RS2=172.16.1.6PORT=80SCHEDULER=rrDEV=eth1:1case$1instart)#配置虚拟IP地址VIP cat>/etc/sysconfig/network-scripts/ifcfg-${DEV}<<-EOF TYPE=Ethernet BOOTPROTO=none DEFROUTE=y......
  • HAProxy + Keepalived实现mycat高可用方案
    在实际项目中,Mycat服务也需要考虑高可用性,如果Mycat所在服务器出现宕机,或Mycat服务故障,需要有备机提供服务,需要考虑Mycat集群。高可用方案我们可以使用HAProxy+Keepalived配合两台Mycat搭起Mycat集群,实现高可用性。HAProxy实现了MyCat多节点的集群高可用和负......
  • MySQL高可用-双主(keepalived)
    生产环境中一台mysql主机存在单点故障,所以我们要确保mysql的高可用性,即两台MySQL服务器如果其中有一台MySQL服务器挂掉后,另外一台能立马接替其进行工作。MySQL的高可用方案一般有如下几种:keepalived+双主,MHA,PXC,MMM,Heartbeat+DRBD等,比较常用的是keepalived+双主,MHA和PXC。本节主......
  • ECShop开源商城与COS互通:降低本地存储负载、提升访问体验
    ECShop简介ECShop是一款开源电子商务平台,具有简单易用、安全稳定、模块化设计等特点。它提供了完整的电子商务解决方案,包括商品管理、订单管理、支付管理、配送管理、会员管理、促销管理、数据统计等功能。ECShop支持多语言、多货币、多种支付方式和配送方式,并可通过插件扩展更多......
  • keepalived+nginx ansible部署
    Linux9自动化部署Keepalived+Nginx高可用负载均衡器原创 魏文第 魏文第 2023-03-0619:00 发表于北京收录于合集#linux39个#ansible19个#自动化18个 通常使用负载均衡器(LB)为一组realserver(提供服务的服务器) 分配流量,以实现后端服务的高可......
  • 第3章 高可用负载均衡集群规划
    作者:田逸(formyz) 开篇之初,先举几个反例,来说明事前规划的重要性。案例一:某广告媒体公司,需要部署一套媒体播放系统,由一台应用服务器和一台数据库服务器组成,让人没想到的是,为了这两台服务器,花了几十万采购了一台网络端口超过96个的三层核心交换机。询问相关人员,这样配备是基于什么考虑......