LVS-实现负载均衡

lvs主要文件说明
/etc/rc.d/init.d/
ipvsadm:sysV风格服务管理脚本
/etc/sysconfig/ipvsadm-config:配置文件
/sbin/ipvsadm:用于配置lvs规则的工具
/sbin/ipvsadm-restore:恢复或者读取规则到内存的工具
【默认情况下,所配置的规则都是保存在内存中的】

ipvsadm的使用格式
ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]] [-M netmask] [–pe persistence_engine]
ipvsadm -D -t|u|f service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address -r server-address [options]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [–mcast-interface interface] [–syncid sid]
ipvsadm --stop-daemon state
ipvsadm -h

-A:添加一个虚拟服务(添加vip)
-E:编辑修改一个虚拟服务
-D:删除虚拟服务
-C:清空规则表
-R:从标准输入恢复规则表
–save|-S:将当前内存中的规则保存到标准输出

-a:指定在虚拟服务中添加RS节点
-e:指定在虚拟服务中编辑修改RS节点
-d:指定在虚拟服务中删除RS节点

-L|-l:显示lvs中的规则表
-Z:将计数器清零
-t service-address[:port]:该规则是对tcp协议的请求做调度
-u service-address[:port]:该规则是对udp协议的请求做调度
-f:表示这个请求是经过iptables所标记过的服务类型
-r: 指定真实服务器的地址
-s scheduler:指定该规则要用的调度算法(rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq)
-p [time]:指定在多次时间以内,将相同的客户端调度到相同的后端节点之上,默认时间300s
-w:设置RS节点的权重
-g:指定用DR模式(默认)
-i:指定用tunnel模式
-m:指定用nat模式

准备环境
DR1 10.220.5.192
WEB1 10.220.5.190
WEB2 10.220.5.191
VIP 10.220.5.233

实现思路
DR1上安装lvs,并配置调度规则和算法
web1 web2上只需要安装web服务器,并分别准备一个测试页面

安装步骤
一、安装各种依赖

[root@DR1 ~]# yum install libnl* popt* kernel-devel ipvsadm -y

二、给安装的内核开发库做连接

[root@DR1 ~]# ln -sv /usr/src/kernels/2.6.32-754.el6.x86_64/ /usr/src/linux

(如果这里不做连接,那么在使用ipvsadm的时候,需要手动指定/usr/src/kernels/2.6.32-754.el6.x86_64/)
三、安装lvs

[root@DR1 ~]# yum install ipvsadm -y 

配置LVS (DR)
配置DR1
一、添加一个vip

ifconfig eth0:0 10.220.5.233/24 up

测试vip是否可用,测试方法:从windows ping vip
二、在lvs中添加一个虚拟服务(vip)

[root@DR1 ~]# ipvsadm -A -t 10.220.5.233:80 -s rr -p 80 

查看一下所创建的虚拟服务

[root@DR1 ~]# service ipvsadm status

三、在虚拟服务中添加真实服务器

[root@DR1 ~]# ipvsadm -a -t 10.220.5.233:80 -r 10.220.5.190:80 -w 1 -g
[root@DR1 ~]# ipvsadm -a -t 10.220.5.233:80 -r 10.220.5.191:80 -w 1 -g

查看一下RS的信息

[root@DR1 ~]# service ipvsadm status

四、保存规则

[root@DR1 ~]# service ipvsadm save

查看状态

[root@DR1 ~]# ipvsadm -L -n --stats

配置RS
一、安装配置web服务

二、给RS绑定VIP【所有的RS都需要做】

[root@web1 ~]# ifconfig lo:0 10.220.5.233/32 up

三、在RS做ARP抑制

[root@web1 ~]# echo "1">/proc/sys/net/ipv4/conf/lo/arp_ignore
[root@web1 ~]# echo "1">/proc/sys/net/ipv4/conf/all/arp_ignore 
[root@web1 ~]# echo "2">/proc/sys/net/ipv4/conf/lo/arp_announce 
[root@web1 ~]# echo "2">/proc/sys/net/ipv4/conf/all/arp_announce 

四、测试

默认规则保存路径:/etc/sysconfig/ipvsadm

关于arp抑制
作用:设置不对某些arp请求做应答
实现原理:修改内核参数 /proc/sys/net/ipv4/conf/

控制方式1:arp_ignore
0:默认,表示的当该主机收到arp请求,只有该主机有所请求的哪个IP地址,就会给对方做成应答
1:只对哪些请求的目标IP是当前主机的网卡接口(这个接口就是插着网线的接口)上的地址的时候,才会做出应答
控制方式2:arp_announced
作用:限制当前主机做arp应该的条件(也就是限制当用户所请的ip是哪个IP的时候,才做arp应答)
0:默认值,表示在任意网络接口上的IP都可以做arp应答
1:优先使用本地的接口做arp应答
2:优先使用子接口做arpm应答

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值