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

[经验分享] ubuntu环境部署LVS DR模式

[复制链接]

尚未签到

发表于 2019-1-5 13:15:43 | 显示全部楼层 |阅读模式
  一、环境说明:
系统环境:ubuntu14.04
lvs服务器:10.36.1.55/10.36.1.56
真实服务器:10.36.1.55/10.36.1.56 在这里也充当mysql和zabbix角色
VIP:10.36.1.101
部署目的:
1、访问VIP的3306端口,可以将请求报文转发至10.36.1.55-56上进行负载
2、zabbix agent向VIP的10051端口上报采集数据的时候,可以将请求报文转发至10.36.1.55-56上进行负载
3、向VIP访问80端口(zabbix web管理界面)的时候,可以将请求报文转发至10.36.1.55-56上进行负载

二、安装LVS(两台服务器都要安装)
apt-get -y install ipvsadm

查看版本
ipvsadm -v

查看是否已加载进内核模块中
lsmod | grep ip_vs

#查看lvs规则
ipvsadm -L -n      

#查看连接情况
ipvsadm -L -c   

三、配置LVS VIP服务
说明:-A是添加一条虚拟服务器记录,即VIP。此处配置要选择算法
ipvsadm -A -t 10.36.1.101  -s wrr -p 300     #代理转发所有去往该IP TCP的报文,-s指定算法wrr为加权轮询算法,-p会话保持时间(默认值是300s)

ipvsadm -A -t 10.36.1.101:80 -s wrr -p 20    #代理转发去往该IP TCP80端口的报文
ipvsadm -A -t 10.36.1.101:3306 -s wrr -p 20
ipvsadm -A -t 10.36.1.101:10051 -s wrr -p 20

四、VIP维护
使用-E修改VIP设置
例:ipvsadm -E -t 10.36.1.101 -s wrr -p 40 #可修改会话保持时间与算法。

使用-D删除VIP设置
例:ipvsadm -D -t 10.36.1.101    #删除该条VIP

五、配置LVS RIP规则
-a是添加VIP要对哪些真实服务器IP(即RIP)进行负载(默认是DR模式即-g)。
我这里的LVS服务器也充当了真是服务器

ipvsadm -a -t 10.36.1.101 -r 10.36.1.55 -g -w 1   #-r指定真实服务器IP,-g为选择DR模式(-m为NAT模式,-t为tunnel模式),-w选择权重。
ipvsadm -a -t 10.36.1.101 -r 10.36.1.56 -g -w 1



#如果只对tcp 80端口进行负载,可使用如下命令:
ipvsadm -a -t 10.36.1.101:80 -r 10.36.1.55:80 -g -w 1  
ipvsadm -a -t 10.36.1.101:80 -r 10.36.1.56:80 -g -w 1

ipvsadm -a -t 10.36.1.101:3306 -r 10.36.1.55:3306 -g -w 1  
ipvsadm -a -t 10.36.1.101:3306 -r 10.36.1.56:3306 -g -w 1

ipvsadm -a -t 10.36.1.101:10051 -r 10.36.1.55:10051 -g -w 1  
ipvsadm -a -t 10.36.1.101:10051 -r 10.36.1.56:10051 -g -w 1

RIP维护:

使用-e修改RIP配置
例:ipvsadm -e -t 10.36.1.101 -r 10.36.1.55 -g -w 4    #修改这条RIP规则的权重。

使用-d删除RIP配置
例:ipvsadm -d -t 10.36.1.101 -r 10.36.1.55 -g -w 1   #删除该条RIP配置


六、在真实服务器上配置VIP

在两台真实服务器上都配置上VIP,即10.36.1.101地址。
ifconfig lo:0 10.36.1.101 netmask 255.255.255.255


七、在真实服务器上关闭ARP响应
关闭真实服务器上loop口的arp回应,其它口的无须关闭。
默认arp_ignore和arp_announce的参数都是0,即回应所有目的IP是本机的arp请求。
在所有真实服务器上进行如下操作:
echo "1">/proc/sys/net/ipv4/conf/all/arp_ignore         #只回答目标IP地址是来访网络接口本地地址的ARP查询请求。
echo "2">/proc/sys/net/ipv4/conf/all/arp_announce      #对查询目标使用最适当的本地地址。

#此处可以进行测试,在测抑制arp前,能ping通VIP地址。在抑制arp后,在前端交换机上清掉arp缓存,再ping VIP就不通了。但物理eth0网卡IP还是能通的。

arp含义参考地址:http://www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html

接下来在lvs上配置VIP:
ifconfig lo:0 10.36.1.101 netmask 255.255.255.255 (注意,我这里是LVS和业务服务器都跑一起了,所以配置一次即可)

八、开启内核转发功能
在lvs上开启内核转发功能。
echo 'net.ipv4.ip_forward=1' >>/etc/sysctl.conf
sysctl -p    #查看配置

9、LVS测试
#查看lvs规则
ipvsadm -L -n      
#查看连接情况

ipvsadm -L -c  
至此lvs搭建成功。

说明:以上配置系统重启以后无效,需重新配置一遍


10、配置好后,那么目前的lvs面临有哪些问题呢?

1、自身无法对真实服务器保活,如果出现服务器down情况,还会向down的服务器转发请求。解决方法是keepalived或自已写脚本来监测连通性再清除相应规则。

2、一台LVS服务器会出现单点故障,需要有备份LVS服务器,解决方法是keepalived来进行LVS故障接管。





运维网声明 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-659687-1-1.html 上篇帖子: lvs几种算法的简单介绍 下篇帖子: Linux集群系列之六——LVS持久连接
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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