高可用与负载均衡(8)之聊聊 LVS重要参数和优化以及监控

preface

在明白LVS-DR模式的部署之后,我们看看LVS的几个重要参数:
如有问题,请联系我18500777133@sina.cn

[root@localhost ~]# ls /proc/sys/net/ipv4/vs/ -lrt
'''
-rw-r--r-- 1 root root 0 Nov 19 19:43 sync_threshold
-rw-r--r-- 1 root root 0 Nov 19 19:43 expire_quiescent_template
-rw-r--r-- 1 root root 0 Nov 19 19:43 expire_nodest_conn
'''

expire_quiescent_template和expire_nodest_conn
这两个参数对LVS转发行为有重要的作用

  • expire_nodest_conn
    这个值有2种:0 表示禁用,非0表示启用。默认值是0,在负载均衡器发现目标后端服务器不可用时边丢包。举个例子,某个后端服务器闪断之后,马上恢复了与LV的S连接,如果这个是值为0,那么表示这个闪断后的服务器连接还可以和LVS继续连接,如果启用了这个特性,那么LVS会立即使这个连接过期,然后client也会等到通知连接已经关闭。
  • expire_quiescent_template
    这个值也是有2种,0为禁用,非0为启用。如果是启用状态,那么负载均衡器当发现调度的后端服务器处于静止期(权重为0)会立即使持久连接过期,并被发送到新的服务器上。

LVS-DR模式的核心提示与优化

  1. LVS-DR模式,因为后端服务器上同样配置了VIP,如果客户端进行ARP请求的时候,后端服务器以自身的MAC地址进行回复,则起不到负载均衡的效果,此时客户端直接连接到了后端某台real-server上了。
  2. 后端服务器的虚拟IP必须绑定到lo:0上,同事子网掩码是255.255.255.255,否则APR禁用会出现异常。
  3. 持久连接(Persistence)的问题。持久连接使一个客户端在超时时间内(ipvsadmin -p参数指定,keepalived的配置文件persistence_timeout指令)会持续连接到同一台后端服务器,这个是4层上的持久连接,来自客户端的每个新的连接会被重置该超时时间。
  4. keepalived对后端服务器的健康检查,推荐使用应用层检测方式,另外可以配置自定义监控监控,通过vrrp_script参数指定.
  5. keepalived通过vrrp协议通信,那么lvs之间建议关闭防火墙,如果需要开启防火,请放行该协议。
  6. LVS服务器推荐使用16GB以及以上的内存,同时采用多队列网卡来提高网卡的吞吐量,减少延迟。
  7. LVS后端服务器根据业务倾向的不同,根据IO密集型和CPU密集型2类,可以使用raid5以及多核高频处理器。

多组LVS设定的注意事项。

  1. 虚拟路由器的ID(keepalived配置文件的router_id参数),这个在相同组的LVS集群里面,必须设置为一致,不同组LVS集群里面必须不同。
  2. 是优先级,master的priority必须比backup的值更高。
  3. 虚拟IP地址,不同组的LVS集群不同。
  4. 同一组LVS里面认证的密钥,同一组必须相同。不同组建议采用不同的值。

性能采集与监控

对于LVS的性能采集,可以查看proc的文件:

[root@localhost ~]# cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP  C0A801C8:0050 wrr
  -> C0A80104:0050      Route   1      0          0
  -> C0A80106:0050      Route   1      0          0
  

[root@localhost ~]# cat /proc/net/ip_vs_stats
   Total Incoming Outgoing         Incoming         Outgoing
   Conns  Packets  Packets            Bytes            Bytes
      66  18EA39B        0         4EC6436F                0

 Conns/s   Pkts/s   Pkts/s          Bytes/s          Bytes/s
       0        0        0                0                0

zabbix监控可以参考这个资料:https://share.zabbix.com/cat-app/high-availability-ha/linux-virtual-server-statictics

posted @ 2016-11-21 22:22  温柔易淡  阅读(2836)  评论(0编辑  收藏  举报