设为首页 收藏本站
查看: 1236|回复: 0

[经验分享] linux中LVS的简单实现

[复制链接]

尚未签到

发表于 2019-1-4 10:48:26 | 显示全部楼层 |阅读模式
LVS三种模型及其各自的特点:
NAT模型:
1、RS跟Director在同一子网
2、RIP使用私有地址,仅用于本地通信
3、Director工作在Clients和RS中间,负责处理进出的全部报文
4、RS网关要指向DIP
5、可以实现端口映射
6、RS可以是任何操作系统
7、Director在较大规模应用中会成为性能瓶颈
DR模型:
1、RS跟Director必须在同一物理网上 (VIP必须是公网地址)
2、RIP可以使用公网地址
3、Director仅处理请求报文
4、RS的网关不能指向DIP
5、不能使使用端口映射
6、大多数OS都可以用于RS
7、DR模型的Director能够处理比NAT模型多得多的请求
TUN模型(隧道模型):
1、RS跟Director不必在同一物理网络中
2、RIP一定不能使用私有地址
3、Director仅处理请求报文
4、响应报文不能经过Director
5、不能使用端口映射
6、仅允许支持隧道协议的OS用于RS

DR模型配置:(做实验时所有地址要在一个网段内,否则需要添加路由设备)
实验所用地址:
VIP:192.168.0.254(配置在网卡别名上)
RIP1:192.168.0.9(配置在lo别名上)
RIP2:192.168.0.10
director上的配置:
  [root@localhost ~]# ifconfig eth0:1 192.168.0.254 broadcast 192.168.0.254 netmask 255.255.255.255
  [root@localhost ~]# route add -host 192.168.0.254 dev eth0:1 定义哪个地址接受的请求必须以该地址为源地址响应
  [root@localhost ~]# sysctl -w net.ipv4.ip_forward=1打开路由转发功能
  [root@localhost ~]# cat /proc/sys/net/ipv4/ip_forward 查看路由转发是否打开
   配置ipvsadm:
  [root@localhost ~]# ipvsadm -A -t 192.168.0.254:80 -s rr
  [root@localhost ~]# ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.9 -g (-g 可以省略,默认就为DR模型)
  [root@localhost ~]# ipvsadm -a -t 192.168.0.254:80 -r 192.168.0.10 -g
  [root@localhost ~]# ipvsadm -L -n查看规则
  [root@localhost ~]# service ipvsadm save 保存ipvsadm配置
real server上的配置:
  [root@bogon ~]# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
  [root@bogon ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
  [root@bogon ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
  [root@bogon ~]# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
  [root@localhost ~]# ifconfig lo:0 192.168.0.254 broadcast 192.168.0.254 netmask 255.255.255.255
  [root@localhost ~]# route add -host 192.168.0.254 dev lo:0
在浏览器中输入http://192.168.0.254可以验证配置是否正常


NAT模型配置:
VIP:192.168.0.8
DIP:192.168.100.10
RS1:192.168.100.11
RS2:192.168.100.12
director:
  [root@localhost ~]# grep -i "vs" /boot/config-2.6.18-308.el5 查看内核是否支持ipvs
  [root@localhost ~]# yum -y install ipvsadm 安装ipvsadm
  [root@localhost ~]# sysctl -w net.ipv4.ip_forward=1 打开路由转发
  [root@localhost ~]# ipvsadm -A -t 192.168.0.8:80 -s rr
  [root@localhost ~]# ipvsadm -a -t 192.168.0.8:80 -r 192.168.100.11 -m(如果使用端口映射,在RIP后加映射的端口,否则可以不加,默认和VIP端口一样)
  [root@localhost ~]# ipvsadm -a -t 192.168.0.8:80 -r 192.168.100.12 -m
支持权重的NAT配置:
示例:
  [root@localhost ~]# ipvsadm -A -t 192.168.0.6:80 -s wrr
  [root@localhost ~]# ipvsadm -a -t 192.168.0.6:80 -r 192.168.100.2 -w 3 -m
  [root@localhost ~]# ipvsadm -a -t 192.168.0.6:80 -r 192.168.100.3 -w 3 -m
在realserver上的配置同DR模型,请参考DR模型的配置


LVS持久连接类型:
PCC 持久客户端连接,将同一个客户端的所有服务请求都定义到一个RS上
PPC 只持久一种服务连接
PFWM 持久防火墙标记,将指定的数种服务定义到一个RS上

LVS持久连接的实现:

  在DR模型的基础上修改ipvs即可:
   [root@localhost ~]# ipvsadm -E -t 192.168.0.6:80 -s rr -p(PPC类型)
  
  使用PCC:
   将VIP后的端口号改为0即可
    例如:[root@localhost ~]# ipvsadm -A -t 192.168.0.6:0 -s wrr -p 使用持久连接模型时后面必须加-p
   
PFWM的配置:
  [root@localhost ~]# iptables -t mangle -A PREROUTING -d 192.168.0.66 -p tcp --dport 80 -j MARK --set-mark 1
  [root@localhost ~]# iptables -t mangle -A PREROUTING -d 192.168.0.66 -p tcp --dport 443 -j MARK --set-mark 1
  [root@localhost ~]# ipvsadm -A -f 1 -s rr
  [root@localhost ~]# ipvsadm -a -f 1 -r 192.168.0.2 -g
  [root@localhost ~]# ipvsadm -a -f 1 -r 192.168.0.3 -g
  [root@localhost ~]# ipvsadm -E -f 1 -s rr -p 修改为长连接

隧道模型配置和DR模型配置方法类似,但director和realserver可以再不同的网络,且RIP必须使用公网地址,配置方法请参照DR模型的配置

以上内容为个人实验大致步骤,仅供参考




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-659247-1-1.html 上篇帖子: 使用piranha配置lvs 下篇帖子: LVS线上操作说明
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表