`

LVS技术浅析-proc参数

    博客分类:
  • LVS
 
阅读更多
根据前文的介绍,可以通过ipvsadm命令和LVS内核打交道;
除此之外,我们还可以通过proc参数,来 配置全局参数 和 获取统计信息;

配置全局参数,位于目录/proc/sys/net/ipv4/vs/下;
获取统计信息,位于目录/proc/net/下;
下面介绍一下几个常用的proc参数;


1. /proc/net/ip_vs

   获取当前LVS内核配置,包括VS和RS相关信息;同ipvsadm -ln;
IP Virtual Server version 1.2.1 (size=1048576) - 这里size是指连接hash表大小;
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP  0ADC0108:0050 rr                          - vs信息,vip和vport 16进制,调度算法rr;
  -> C0A8010B:0050      Route   1      0          0   - rs信息,rip和rport 16进制,权值为1,
  -> C0A8010A:0050      Route   1      0          0   - ActiveConn是指established状态的连接个数;
                                                      - InActConn是指非established状态的连接个数;
2./proc/net/ip_vs_conn
  获取所有连接信息,建议不要用该命令,因为连接数很多时,CPU开销会很大;
Pro FromIP   FPrt ToIP     TPrt DestIP   DPrt State       Expires
- 用户ip和port   vs ip和port  rs ip和port  tcp状态机状态  连接超时剩余的时间
3./proc/net/ip_vs_stats
  获取 连接/数据包/字节数 的全局统计信息;
  第一行是 累计值;
  第二行是 速率,统计周期为2s;
   Total Incoming Outgoing         Incoming         Outgoing
   Conns  Packets  Packets            Bytes            Bytes
       0        0        0                0                0

Conns/s   Pkts/s   Pkts/s          Bytes/s          Bytes/s
       0        0        0                0                0
4./proc/sys/net/ipv4/vs/expire_nodest_conn
  默认值为0,当LVS转发数据包,发现目的RS无效(删除)时,会丢弃该数据包,但不删除相应连接;这样设计的考虑是,RS恢复时,如果Client和RS socket还没有超时,则 可以继续通讯;
  如果将该参数置1,则马上释放相应 连接;
  个人建议采用默认值,配置为0;
5. /proc/sys/net/ipv4/vs/expire_quiescent_template
  默认值为0,当RS的weight值=0(如,健康检测失败,应用程序将RS weight置0)时,会话保持的新建连接 还会继续调度到该RS上;
  如果配置为1,则马上将 会话保持的连接模板 置为无效,重新调度新的RS;
  如果有会话保持的业务,建议该值 配置为1;
6. /proc/sys/net/ipv4/vs/nat_icmp_send
  默认值为0;
  如果置为1,当LVS收到RS发送出来的数据包,但没有找到相应连接时,则发送目的不可达(端口不可达)的ICMP给RS;
  建议采用默认值,为0;
7. /proc/sys/net/ipv4/vs/sync_threshold
  默认值为 3  50;
  这个参数和连接同步相关,LVS收到3个包后,开始启动同步;之后,每收到50个包,启动一次同步;
  可以根据LVS的流量,可以调整连接同步的频率,从而控制同步的系统开销;
8. /proc/sys/net/ipv4/vs/下其它参数
  用于“内存不足时释放连接”,但当前服务器内存很大,这些参数已经无用;
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics