客戶鏈接列表。由ip,port,protocol五元組肯定一個session。html
[root@lvs-fullnat-one keepalived]# ipvsadm -lnc IPVS connection entries pro expire state source virtual destination TCP 00:50 AC10611E 172.16.99.4:49684 2.2.2.3:80 172.16.98.10:5001 TCP 00:50 AC10611E 172.16.99.4:49685 2.2.2.3:80 172.16.98.10:5002 [root@lvs-fullnat-one keepalived]#
配置了這個session同步以後,當其中一個lvs宕機,已經和客戶端創建成功的鏈接,將繼續保持會話,並不會出現一部分用戶被迫斷開鏈接的狀況。node
在lvs fullnat+ECMP模式中,若是有一個BACKUP機可以同步全部MASTER主機的會話,則當一臺MASTER主機出現故障,此BACKUP只須要花費很短的時間(腳本配置網卡和啓動ospfd的時間),就能夠接替MASTER主機的地位,儘可能保證已經創建的會話不中斷。給與用戶更好的體驗。linux
使用lvs_sync_daemon_interface em3
命令來同步session。服務器
vrrp_instance VI_1 { state MASTER interface em3 lvs_sync_daemon_interface em3 mcast_src_ip 172.16.98.11 virtual_router_id 65 priority 180 advert_int 1 nopreempt authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.16.98.10 }
使用ipvsadm -ln --daemon
來查看主備狀態 網絡
[root@lvs-fullnat-one keepalived]# ipvsadm -ln --daemon master sync daemon (mcast=em3, syncid=65) [root@lvs-fullnat-one keepalived]#
備機會強行重啓
。報錯示例:session
Aug 31 01:18:19 lvs-fullnat-two kernel: Intel GenuineIntel Aug 31 01:18:19 lvs-fullnat-two kernel: AMD AuthenticAMD Aug 31 01:18:19 lvs-fullnat-two kernel: Centaur CentaurHauls Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-provided physical RAM map: Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 0000000000000000 - 000000000009c000 (usable) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 0000000000100000 - 00000000bd2f0000 (usable) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 00000000bd2f0000 - 00000000bd31c000 (reserved) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 00000000bd31c000 - 00000000bd35b000 (ACPI data) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 00000000bd35b000 - 00000000c0000000 (reserved) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 00000000fe000000 - 0000000100000000 (reserved) Aug 31 01:18:19 lvs-fullnat-two kernel: BIOS-e820: 0000000100000000 - 0000005040000000 (usable) Aug 31 01:18:19 lvs-fullnat-two kernel: DMI 2.7 present.
報錯日誌: app
https://pan.baidu.com/s/105m5dN8beyg6OGRHty0SZgide
查看京東大神寫的文章後,獲得一些啓發,能夠部署一個cache服務器,cache服務器用於同步全部master服務器的session,在某臺master出現故障的時候,cache服務器推送session到backup服務器上,以此來作到backup同步master的session。
可是文章中並無具體介紹cache服務器怎麼部署,怎麼提取session。
這個思路很好,可是目前沒有明確的操做方法。
http://www.infoq.com/cn/articles/jingdong-network-framework-gateway-dlvsoop
吳佳明(普空):LVS在大規模網絡環境中的應用:http://blog.sina.com.cn/s/blog_620c47630102v2iz.html
Linux之lvs集羣:https://www.jianshu.com/p/cc40b52cc5df
LVS 實驗筆記1 一些基礎概念:http://www.javashuo.com/article/p-uxwlbxqq-ep.html
LVS+Keepalived 主備機之間客戶鏈接列表同步問題:http://zh.linuxvirtualserver.org/node/2751
LVS-ospf集羣:http://noops.me/?p=974#comment-4756 測試
查看IPVS詳情:
查看/proc/net
目錄下的
[root@lvs-fullnat-one net]# ll ip_vs* -r--r--r--. 1 root root 0 Sep 13 00:14 ip_vs -r--r--r--. 1 root root 0 Sep 13 00:14 ip_vs_app -r--r--r--. 1 root root 0 Sep 13 00:14 ip_vs_conn -r--r--r--. 1 root root 0 Sep 13 00:14 ip_vs_conn_sync -r--r--r--. 1 root root 0 Sep 13 00:14 ip_vs_ext_stats -r--r--r--. 1 root root 0 Sep 13 00:14 ip_vs_stats [root@lvs-fullnat-one net]#
其中
[root@lvs-fullnat-one net]# ipvsadm -lnc IPVS connection entries pro expire state source virtual destination TCP 00:50 AC10611E 172.16.99.4:50870 2.2.2.3:80 172.16.98.10:5009 TCP 00:01 AC10611E 172.16.99.4:0 2.2.2.4:443 172.16.99.4:0 TCP 00:01 AC10611E 172.16.99.4:50872 2.2.2.4:443 172.16.98.10:5015 [root@lvs-fullnat-one net]# cat ip_vs_conn Pro FromIP FPrt ToIP TPrt LocalIP LPrt DestIP DPrt State Expires TCP AC106304 C6B6 02020203 0050 AC10620A 1391 AC10611E 0050 ESTABLISHED 26 TCP AC106304 0000 02020204 01BB AC106304 0000 AC10611E 01BB NONE 0 TCP AC106304 C6B8 02020204 01BB AC10620A 1397 AC10611E 01BB ESTABLISHED 29 [root@lvs-fullnat-one net]#
注:ip_vs_conn文件是沒法編輯的.