LVS性能优化
1、最小化安装编译系统内核
2、优化持久服务超时时间:
1)显示超时时间
#ipvsadm -Ln –timeout
#Timeout (tcp tcpfin udp): 900 120 300
2)配置为与自身应用贴近的超时时间
#ipvsadm –set tcp tcpfin udp
3、修改内核参数vi /etc/sysctl.conf
net.ipv4.tcp_tw_recyle=1
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_max_syn_backlog=8192
net.ipv4.tcp_keepalive_time=1800
net.ipv4.tcp_fin_timeout=30
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
net.core.netdev_max_backlog=3000
##其它
# 关闭网卡LRO和GRO
ethtool -K em1 gro off
ethtool -K em1 lro off
# 禁用ARP,增大backlog并发数
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.core.netdev_max_backlog = 500000
# 调整内核的时钟机制
kernel nohz=off
4 CONFIG_IP_VS_TAB_BITS 优化
`ipvsadm -Ln`的 size的扩大由默认的4090扩大到 1000000
可以用 ipvsadm -Ln 查看
5 网络方面这些性能优化方法对大家网络服务也是有用的。
第一:多队列网卡,即一个队列绑定到一个CPU核上,让多核同时处理网络数据包。如果网卡不支持多队列,可以用google提供的软多队列-RPS,linux内核默认已经集成;
第二 : 对keepalived进行了优化,主要将网络模式从select改为了epool。
第三 : 大家如果自己买的服务器的话,建议把网卡LRO、GRO功能关掉,尤其是broadcom的网卡,我们踩过很多坑。