三台server的ip
    direct_server:192.168.248.128
    real_server1:192.168.248.130
    real_server2:192.168.248.131
yum install ipvsadm    #安装ipvsadm
ipvsadm -C #清除所有虚拟服务

1.编辑vim /sbin/lvsdr.sh

#!/bin/sh

VIP=192.168.248.128
RIP1=192.168.248.130
RIP2=192.168.248.131 /etc/rc.d/init.d/functions case "$1" in
start)
echo "start LVS of DirectorServer"
#set the Virtual IP Address
ifconfig ens33:0 $VIP/24 -->注意网卡ens33名称要与本机设备名称相符合
#/sbin/route add -host $VIP dev ens33:0
#Clear IPVS table
/sbin/ipvsadm -C
#set LVS
/sbin/ipvsadm -A -t $VIP:80 -s rr
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
#Run LVS
/sbin/ipvsadm
#end
;;
stop)
echo "close LVS Directorserver"
/sbin/ipvsadm -C
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
chown -R root:root /sbin/lvsdr.sh 
chmod -R 777 /sbin/lvsdr.sh 
启动服务:
/sbin/lvsdr.sh start
ifconfig ens33:0 192.168.88.250 broadcast 192.168.88.250 netmask 255.255.255.255 up   #添加一个ip
route add -host 192.168.88.250 dev ens33:0 #添加一条路由,使访问192.168.88.250的时候走ens33:0这个网卡

2.real_server端配置,server1和2的配置相同(可以称为员工)

1)在真实服务器上添加虚拟IP
    ifconfig lo:0 192.168.248.128 broadcast 192.168.248.128 netmask 255.255.255.255 up     #loopback(本地回环)
    route add -host 192.168.248.128 dev lo:0
 
2)设置真实服务器的lo接口不做ARP应答
设置这个选项可以使得各个接口只对本接口上的地址进行响应

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
service httpd restart
    arp_ignore:定义接收到ARP请求时的响应级别      
        0:默认,只用本地配置的有响应地址都给予响应       
        1:仅仅在目标IP是本地地址,并且是配置在请求进来的接口上的时候才给予响应
            (仅在请求的目标地址配置请求到达的接口上的时候,才给予响应)
 
   arp_announce:定义将自己的地址向外通告时的级别       
        0:默认,表示使用配置在任何接口的任何地址向外通告       
        1:尽量仅向目标网络通告与其网络匹配的地址       
        2:仅向与本地接口上地址匹配的网络进行通告       
 
real_server端配置(为了让查看信息时候好辨认)
vim /var/www/html/index.html
3、测试
​打开另一台虚拟机用curl 192.168.248.128测试是否成功 
ipvsadm -Ln --stats  查看状态
查看-L
-n:数字格式显示IP地址和端口号
--stats:统计信息
(轮叫调度:负载均衡两台RS访问次数会相等) 
如果不通:
提示未找到路由或者拒绝连接
1、检查防火墙是否关闭
2、检查DS端ipvsadm服务是否开启
3、检查http服务是否开启,配置文件里listen端口号是否为80 
aaarticlea/png;base64,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" alt="">
 
tun隧道模式
    lvs-server
ifconfig tunl0 192.168.248.128 broadcast 192.168.248.128 netmask 255.255.255.0 up
route add -host 192.168.248.128 dev tunl0
ipvsadm -A -t 192.168.248.128:80 -s rr
ipvsadm -a -t 192.168.248.128:80 -r 192.168.88.18 -i
ipvsadm -a -t 192.168.248.128:80 -r 192.168.88.19 -i
    real server
ifconfig tunl0 192.168.248.128 netmask 255.255.255.255 broadcast 192.168.248.128 up
route add -host 192.168.248.128 dev tunl0
echo "1" >/proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/tunl0/rp_filter
echo "0" > /proc/sys/net/ipv4/conf/all/rp_filter
    0:不开启源地址校验。
    1:开启严格的反向路径校验。对每个进来的数据包,校验其反向路径是否是最佳路径。
        如果反向路径不是最佳路径,则直接丢弃该数据包。
    2:开启松散的反向路径校验。对每个进来的数据包,校验其源地址是否可达,即反向路径是否能通(通过任意网口),
        如果反向路径不同,则直接丢弃该数据包。

lvs负载均衡配置的更多相关文章

  1. LVS负载均衡

    1.LVS负载均衡 实现LVS负载均衡转发方式有三种,分别为NAT.DR.TUN模式,LVS均衡算法包括:RR(round-robin).LC(least_connection).W(weight)R ...

  2. LVS负载均衡中arp_ignore和arp_annonuce参数配置的含义

    先简单的介绍下关于LVS负载均衡 LVS(Linux  Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...

  3. LVS+Keepalived实现MySQL从库读操作负载均衡配置

    转载于osyunwei 说明: 操作系统:CentOS 5.X 64位 MySQL主服务器:192.168.21.126 MySQL从服务器:192.168.21.127,192.168.21.128 ...

  4. LVS负载均衡机制之LVS-DR模式工作原理以及简单配置

    本博文主要简单介绍一下LVS负载均衡集群的一个基本负载均衡机制:LVS-DR:如有汇总不当之处,请各位在评论中多多指出. LVS-DR原理: LVS的英文全称是Linux Virtual Server ...

  5. LVS负载均衡中arp_ignore和arp_annonuce参数配置

    先简单的介绍下关于LVS负载均衡 LVS(Linux  Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...

  6. LVS负载均衡IP隧道模式原理介绍以及配置实战

    LVS 基本工作原理 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 PREROUTING 链首先会接收到用户请求,判断目标 IP 确定是本机 IP,将数 ...

  7. 观nginx与lvs负载均衡的较量

    在技术工作者中,常用到的就是lvs负载均衡和Nginx负载均衡了.这两者也是比较普及的.那么,根据不同的需求,两者存在着不同的优势.具体选择哪一个,还要看您的要求了.那么我们在此为大家分享一篇文章,对 ...

  8. 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群

    高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...

  9. lvs负载均衡的搭建

       lvs负载均衡的搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.         在部署环境前,我们需要了解一下一些协议 一.什么是arp 地址解析协议,即ARP(Addr ...

随机推荐

  1. SpringBoot与Lombok

    Lombok 在项目中使用Lombok可以减少很多重复代码的书写.具体详细资料可以浏览 https://blog.csdn.net/motui/article/details/79012846 一.引 ...

  2. windows系统下hosts文件的改写(为了测试nginx内网的证书代理,需要做域名解析)

    1. win加R     C:\WINDOWS\system32\drivers\etc 2.打开hosts文件  加入一行  IP为客户机要访问的IP地址  域名也是在nginx中定义好的 3.ct ...

  3. PTA的Python练习题(一)

    最近宅家里没事干,顺便把python给学了.教程和书看了一段时间,但是缺少练习的平台. 想起大一时候练习C语言的PTA平台,就拿来练手了. (因为没有验证码无法提交题目,所以自己用pycharm来做题 ...

  4. P1025数的划分

    P1025数的划分 #include <iostream> using namespace std; int n,k; int cnt; void dfs(int s,int step,i ...

  5. 2 Struts2的执行流程&配置文件的加载顺序

    执行流程: 访问前段页面,通过url访问action 访问xml中Struts2核心过滤器,并执行一组拦截器(这组拦截器在struts-default.xml中,实现了部分功能) 通过action配置 ...

  6. Spring学习(一)

    搭建环境 1.创建普通的Java工程 2.添加相应的jar包,下载链接:https://files.cnblogs.com/files/AmyZheng/lib.rar,此外,为了打印信息,我们还需要 ...

  7. c++特有的bool变量和用const定义变量

    写再最前面:摘录于柳神的笔记: bool 变量有两个值, false 和 true ,以前⽤C语⾔的时候都是⽤ int 的 0 和 1 表示 false 和 true 的,现在C++⾥⾯引⼊了这个叫做 ...

  8. Codeforces 1300E. Water Balance

    给你一个数列,有一个操作,将一段数字变成其和除以个数,求字典序最小的那一个,分析知,求字典序最小,就是求一个不下降序列,但我们此时有可以更改数字的操作,已知已经不下降的序列不会因为操作而变的更小,只有 ...

  9. 「HNOI2003」消防局的设立

    题目 [内存限制:$256 MiB$][时间限制:$1000 ms$] [标准输入输出][题目类型:传统][评测方式:文本比较] 题目描述 2020 年,人类在火星上建立了一个庞大的基地群,总共有 $ ...

  10. 带你了解后渗透工具Koadic

    前言: 在朋友的博客上看到推荐的一款工具Koadic,我接触了以后发现很不错这款工具的强大之处我觉得就是拿到shell后的各种模块功能,我就自己写出来发给大家看看吧. 首先把项目克隆到本地: 项目地址 ...