Keealived+LVS 维护技巧与调优

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Keealived+LVS 维护技巧与调优相关的知识,希望对你有一定的参考价值。

【Keealived+LVS负载均衡部署问题排错思路】

1、iptables防火墙问题

   [Directort 和 Real Server]

   iptalbes防火墙会造成Clinet用户、Director和Rs真实服务器3者之间两者任意连接有问题,在部署过程中,我们最好配置防火墙允许LAN内所有IP互相访问。即内网都互通,如果是学习测试环境,建议把iptables防火墙关掉测试,Directors之间的failover切换也会被防火墙影响,而导致LVS Director两边启动VIP发生裂脑

2、LINUX负载均衡器转发问题[Director]

   对于NAT模式,Linux内核转发及iptables转发功能需要开发,对于DR模式负载均衡,转发模式可以不打开

3、RS端抑制ARP问题[Real Server]

   这个经常被忘记执行,要注意,每个RS端都要搞,我们习惯通过一个脚本来执行,例如:lvs

4、RS端lo上绑定业务VIP,多业务VIP,每个RS都要绑定[Real Server]

   这个经常被忘记执行,要注意,每个RS端都要搞,我们习惯通过一个脚本来执行,例如:ipvs_client,特别是当一个RS被多个负载均衡器转发时,会配多个VIP

5、RS端lo上绑定的业务VIP,有时lo接口VIP会丢失,例如执行/etc/init.d/network restart后

   解决办法:

   1、lvs完整脚本启动命令放入/etc/local

   2、把RS端lo绑定的业务VIP做成网卡配置文件提供服务如/etc/sysconfig/network-scripts/ifcfg-lo:181

   3、修改/etc/init.d/network 脚本,让重启network时也把lvs脚本启动

6、ipvsadm -L -n 检查LVS真实服务器情况及 VIP 连接及配置

7、检查Keepalived配置文件(主从的不同)

   单实例主从模式区别:主从配置文件的区别是 (route_id,state,priorities)

8、查看系统日志/var/log/messages

   对于LVS负载均衡来说,系统日志/var/log/messages很重要,要随时保持查看日志的习惯

9、通过tcpdump跟踪数据包流向

   tcpdump非常强大,在各种场合都可以使用,这里也不例外。例:在RS监控来自Director的数据流信息

   tcpdump -nnn -i eth1 -s 10000 -A host 192.168.1.1 and port 80

   tcpdump -i eth0 -nn ‘port 52114 and src host 192.168.1.1‘

10、注意LVS配置语法,尤其是大括号问题,要成对出现,可以写个脚本来判断大括号是不是成对



【Keepalived+LVS生产环境负载均衡维护思路】

 对于一个有数十个实例的负载均衡keepalived.conf维护确实不是很容易的事情

 1、业务高峰期尽量不修改负载均衡配置,以免发生故障影响用户体验

 2、修改keepalived.conf时,执行临时备份操作/bin/cp keepalived.conf                             keepalived.conf.20160610

 3、修改keepalived.conf时,把两个负均衡器的改名标识好,然后下载下来,保留原始的配置,然后复     制出新两份配置,改好一份后,然后通过比较工具来比较修改另一份,线上用vimdiff也可以

4、替换正式配置文件后,主负载均衡器可以先执行/etc/keepalived stop,把业务切到备份负载均衡器    上,也可以直接执行/etc/init.d/keepalived restart重启直接让主生效,如果发现异常,立即        stop,或者用事先准备好的命令恢复,例如:

   重启后立刻检查业务是否正常,可以浏览器访问或者Linux下wget业务地址,如果发现问题立即用事    先准备好的恢复命令恢复,或者停止keepalived,把业务切到未修改的备机上,然后查看主负均服务    器的配置  

   /etc/init.d/keepalived restart

   wget http://www.wsyht.com (检查不在负载均衡器上)

   事先准备好的恢复命令

   /bin/cp keepalived.conf /bin/cp keepalived.conf.new

   /bin/cp keepalived.conf.2016.06.19 keepalived.conf

   /etc/init.d/keepalived restart

   主负均衡器调整好之后,备份负载均衡器直接执行/etc/init.d/keepalived restart 重启直接生      效,如果有必要刻意过下切换分别测试下,以免配置不对导致以后自动切换时异常



【LVS性能调忧】

1、关闭iptables时,换硬件防火墙

   大流量时,iptables是一个性能瓶颈,关闭或换硬件防火墙

2、内核优化

3、网卡优化

   增加LVS主机的网络吞吐能力,有利于提高LVS的处理速度和能力

   1、使用更快的网卡,比如使用千兆,万兆的网卡

   2、可以进一步将两块或多块网卡绑定(多块网卡的绑定有待验证)

4、TCP/IP优化

   net.core.netdev_max_backlog = 65000

5、硬件优化

   IPVS的运行,使用的服务器资源主要是CPU、内存I/O,网络I/O;IPVS完全运行在内存中,并且运行    在内核上

   当IPVS的应用在DR模式时,即不耗CPU,也不耗I/O,运行非常快,所以系统负载非常的低,所以LVS    应用服务器的配置要求非常低,以为LVS很重要,所以配置一个相当高端的服务器,实在是一种浪      费,只要服务器稳定就好,例如:

   生产环境负载均衡集群系统架构设备选购案例

   选项的依据:价格、性能、冗余

6、增大哈希表,调到 ip_vs_conn_tab_bits 到20

   通过重启,向内核传递参数来调整,在引导程序的kernel相关的配置行上,添加:                    ip_vs_conn_tab_bits=20,然后,重启

    

本文出自 “wsyht的博客” 博客,请务必保留此出处http://wsyht2015.blog.51cto.com/9014030/1790731

以上是关于Keealived+LVS 维护技巧与调优的主要内容,如果未能解决你的问题,请参考以下文章

史上最全JVM整体架构和调优参数说明,带你彻底理解JVM整体架构与调优技巧

史上最全JVM整体架构和调优参数说明,带你彻底理解JVM整体架构与调优技巧

MYSQL数据库的设计与调优

MySQL性能诊断与调优

JVM监控与调优

MySQL性能诊断与调优