-d 查看: -L | -l -n
--stats --rate --timeout --sort --daemon 规则管理: -C -S -R
ipvsadm: 管理集群服务
添加:-A -t|u|f service-address [-s scheduler] -t: TCP协议的集群 -u: UDP协议的集群
service-address: IP:PORT -f: FWM: 防火墙标记
service-address: Mark Number 修改:-E
删除:-D -t|u|f service-address
# ipvsadm -A -t 172.16.100.1:80 -s rr
管理集群服务中的RS
添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight] -t|u|f service-address:事先定义好的某集群服务
-r server-address: 某RS的地址,在NAT模型中,可使用IP:PORT实现端口映射;
[-g|i|m]: LVS类型 -g: DR -i: TUN -m: NAT
[-w weight]: 定义服务器权重 修改:-e
删除:-d -t|u|f service-address -r server-address
# ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.8 -m # ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.9 -m 查看 -L|l
-n: 数字格式显示主机地址和端口 --stats:统计数据 --rate: 速率
--timeout: 显示tcp、tcpfin和udp的会话超时时长 -c: 显示当前的ipvs连接状况
删除所有集群服务 -C:清空ipvs规则 保存规则 -S
# ipvsadm -S > /path/to/somefile 载入此前的规则: -R
# ipvsadm -R < /path/form/somefile
LVS-NAT配置 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
[root@lvs ~]#grep -i vs /boot/config-2.6.18-308.el5 # CONFIG_X86_VSMP is not set CONFIG_IP_VS=m
# CONFIG_IP_VS_DEBUG is not set CONFIG_IP_VS_TAB_BITS=12
# IPVS transport protocol load balancing support CONFIG_IP_VS_PROTO_TCP=y CONFIG_IP_VS_PROTO_UDP=y CONFIG_IP_VS_PROTO_ESP=y CONFIG_IP_VS_PROTO_AH=y # IPVS scheduler CONFIG_IP_VS_RR=m CONFIG_IP_VS_WRR=m CONFIG_IP_VS_LC=m CONFIG_IP_VS_WLC=m CONFIG_IP_VS_LBLC=m CONFIG_IP_VS_LBLCR=m CONFIG_IP_VS_DH=m CONFIG_IP_VS_SH=m CONFIG_IP_VS_SED=m CONFIG_IP_VS_NQ=m # IPVS application helper CONFIG_IP_VS_FTP=m CONFIG_SCSI_MVSAS=m CONFIG_MOUSE_VSXXXAA=m CONFIG_MAX_RAW_DEVS=8192
[root@lvs ~]#echo 1>/proc/sys/net/ipv4/ip_forward [root@lvs ~]#service iptables off
29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66.
[root@lvs ~]#ipvsadm -C
[root@lvs ~]#ipvsadm -A -t 132.96.138.33:80-s rr
[root@lvs ~]#ipvsadm -a -t 132.96.138.33:80-r 192.168.0.200-m [root@lvs ~]# ipvsadm -a -t 132.96.138.33:80-r 192.168.0.210-m [root@lvs ~]#serveice ipvsadm save [root@lvs ~]#ipvsadm -S /root/ipvsadm [root@lvs ~]#cat /etc/sysconfig/ipvsadm -A -t 132.96.138.33:80-s rr
-a -t 132.96.138.33:80-r 192.168.0.210:80-m -a -t 132.96.138.33:80-r 192.168.0.200:80-m
[root@lvs ~]#ipvsadm -E -t 132.96.138.33:80-s wrr
[root@lvs ~]#ipvsadm -e -t 132.96.138.33:80-r 192.168.0.200-m -w 1 [root@lvs ~]#ipvsadm -e -t 132.96.138.33:80-r 192.168.0.210-m -w 3 [root@lvs ~]#serveice ipvsadm save [root@lvs ~]#cat /etc/sysconfig/ipvsadm -A -t 132.96.138.33:80-s wrr
-a -t 132.96.138.33:80-r 192.168.0.210:80-m -w 1 -a -t 132.96.138.33:80-r 192.168.0.200:80-m -w 3
[root@lvs ~]#ipvsadm -L -n
IP VirtualServer version 1.2.1(size=4096) ProtLocalAddress:PortSchedulerFlags
->RemoteAddress:PortForwardWeightActiveConnInActConn TCP 132.96.138.33:80 wrr ->192.168.0.200:80Masq300 ->192.168.0.210:80Masq100
[root@lvs ~]# ipvsadm -L -n --stats IP VirtualServer version 1.2.1(size=4096)
ProtLocalAddress:PortConnsInPktsOutPktsInBytesOutBytes ->RemoteAddress:Port
TCP 132.96.138.33:80282335000355000253660245655903088 ->192.168.0.200:80211753750353750252745245641853088 ->192.168.0.210:807058125000125000915000014050000
lvs : 132.96.138.33 192.168.0.100
rserver1 192.168.0.200 ping 132.96.138.33 ok rserver2 192.168.0.210 ping 132.96.138.33 ok
LVS-DR 配置 1. 2. 3. 4.
[root@lvs ~]#ifconfig
eth0 Link encap:EthernetHWaddr00:50:56:A3:1F:54
inet addr:132.96.138.33Bcast:132.96.138.127Mask:255.255.255.128 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1
5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.
RX packets:1229146 errors:0 dropped:0 overruns:0 frame:0 TX packets:1577146 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000
RX bytes:108852556(103.8MiB) TX bytes:198691794(189.4MiB)
eth0:0Link encap:EthernetHWaddr00:50:56:A3:1F:54
inet addr:132.96.138.36Bcast:132.96.138.127Mask:255.255.255.128 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1
eth1 Link encap:EthernetHWaddr00:50:56:A3:4B:F3
inet addr:192.168.0.100Bcast:192.168.0.255Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:1966367 errors:0 dropped:0 overruns:0 frame:0 TX packets:1562070 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000
RX bytes:231330026(220.6MiB) TX bytes:136237581(129.9MiB)
lo Link encap:LocalLoopback
inet addr:127.0.0.1Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436Metric:1
RX packets:6139 errors:0 dropped:0 overruns:0 frame:0 TX packets:6139 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0
RX bytes:8052690(7.6MiB) TX bytes:8052690(7.6MiB) [root@lvs ~]# route add -host 132.96.138.36 dev eth0:0 [root@lvs ~]#route Kernel IP routing table
DestinationGatewayGenmaskFlagsMetricRefUseIface 132.96.138.36*255.255.255.255 UH 000 eth0 132.96.138.0*255.255.255.128 U 000 eth0 192.168.0.0*255.255.255.0 U 000 eth1
default 132.96.138.1260.0.0.0 UG 000 eth0
[root@rserver1 ~]#sysctl -w net.ipv4.conf.eth0.arp_announce=2 net.ipv4.conf.eth0.arp_announce =2
[root@rserver1 ~]#sysctl -w net.ipv4.conf.all.arp_announce=2 net.ipv4.conf.all.arp_announce =2
[root@rserver1 ~]#echo 1>/proc/sys/net/ipv4/conf/eth0/arp_ignore [root@rserver1 ~]#echo 1>/proc/sys/net/ipv4/conf/all/arp_ignore
[root@rserver1 ~]#ifconfig lo:0132.96.138.36 netmask 255.255.255.255 [root@rserver1 ~]# ifconfig
broadcast 132.96.138.36
48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90.
eth0 Link encap:EthernetHWaddr00:50:56:A3:65:C9
inet addr:132.96.138.34Bcast:132.96.138.127Mask:255.255.255.128 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:916606 errors:0 dropped:0 overruns:0 frame:0 TX packets:904245 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000
RX bytes:79681269(75.9MiB) TX bytes:113582208(108.3MiB)
lo Link encap:LocalLoopback
inet addr:127.0.0.1Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436Metric:1
RX packets:6173 errors:0 dropped:0 overruns:0 frame:0 TX packets:6173 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0
RX bytes:8461753(8.0MiB) TX bytes:8461753(8.0MiB)
lo:0Link encap:LocalLoopback
inet addr:132.96.138.36Mask:255.255.255.255 UP LOOPBACK RUNNING MTU:16436Metric:1 [root@rserver1 ~]#route add -host 132.96.138.36 dev lo:0 [root@rserver1 ~]#route Kernel IP routing table
DestinationGatewayGenmaskFlagsMetricRefUseIface 132.96.138.36*255.255.255.255 UH 000 lo 132.96.138.0*255.255.255.128 U 000 eth0 169.254.0.0*255.255.0.0 U 000 eth0
default 132.96.138.1260.0.0.0 UG 000 eth0
[root@rserver2 ~]#sysctl -w net.ipv4.conf.eth0.arp_announce=2 net.ipv4.conf.eth0.arp_announce =2
[root@rserver2 ~]#sysctl -w net.ipv4.conf.all.arp_announce=2 net.ipv4.conf.all.arp_announce =2
[root@rserver2 ~]# echo 1>/proc/sys/net/ipv4/conf/eth0/arp_ignore [root@rserver2 ~]# echo 1>/proc/sys/net/ipv4/conf/all/arp_ignore
[root@rserver2 ~]#ifconfig lo:0132.96.138.36 netmask 255.255.255.255 [root@rserver2 ~]#ifconfig
eth0 Link encap:EthernetHWaddr00:50:56:A3:05:EC
inet addr:132.96.138.35Bcast:132.96.138.127Mask:255.255.255.128 UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1 RX packets:665881 errors:0 dropped:0 overruns:0 frame:0 TX packets:653658 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000
broadcast 132.96.138.36