搭建LVS_DR模型
系統準備
1.ubuntu
2.vmware,NAT模式,啟動三臺虛擬機。
模型圖
node1作為LVS負載均衡服務器,node2和node3模擬應用程序(httpd)真實服務器。VIP 為192.168.100.100,采用輪訓算法負載。
操作
node1
- 安裝ipvs客戶端,yum -y ipvsadm
- 配置VIP:ifconfig ens33:1 192.168.100.100/24
- 配置連接入口:ipvsadm -A -t 192.168.100.100:80 -s rr
- 配置連接出口之node2:ipvsadm -a -t 192.168.100.100 -r 192.168.174.4 -g -w 1
- 配置連接出口值node3:ipvsadm -a -t 192.168.100.100 -r 192.168.174.5 -g -w 1
node2,node3
- 修改內核:echo 1 > /proc/sys/net/ipv4/ens33/arp_ignore,echo 1 > /proc/sys/net/ipv4/all/arp_ignore,echo 2 > /proc/sys/net/ipv4/ens33/arp_announce,/proc/sys/net/ipv4/all/arp_announce,
- 環回網卡增加不可見VIP:ifconfig lo:1 192.168.100.100 netmask 255.255.255.255
- 安裝應用程序httpd:yum -y install httpd
- 編輯應用程序主頁,便于識別:vi /var/www/html/index.html,輸入 from 2號機(node2,node3就寫4號機),保存退出
- 啟動應用程序:service httpd start
- 驗證應用程序已經啟動:ubuntu的瀏覽器訪問192.168.172.4/5,能正確訪問
ubuntu 增加一個到 192.168.100.100 的路由:route add -net 192.168.100.100 netmask 255.255.255.255 gw 192.168.172.3
然后驗證是否成功,瀏覽器輸入 192.168.100.100,瘋狂刷新,看是否在2號機和3號機之間來回切換,如果正確,則1號機可以看到ipvs的偷窺記錄。其中 FIN_WAIT: 連接過,偷窺了所有的包 SYN_RECV: 基本上lvs都記錄了,證明lvs沒事,一定是后邊網絡層出問題
2號機器的記錄
3號機的記錄
ipvs參數
隱藏vip方法:對外隱藏,對內可見:
kernel parameter:
目標mac地址全為F,交換機出發廣播
/proc/sys/net/ipv4/conf/IF/
arp_ignore:定義接收arp請求時的響應級別:
0:只要本地配置的有相應地址,就給予響應;
1:僅在請求的目標(mac)地址配置請求到達的接口上的時候,才給予響應
arp_announce:定義將自己的地址向外通告時的通告級別:
0:將本地任何接口上的任何地址向外通告;
1:視圖僅向目標網絡通告與其匹配的地址;
2:僅向與本地接口上地址匹配的網絡進行通告
四種靜態:
RR:輪循
WRR:
DH:
SH:
動態調度算法:
LC:最少連接
WLC:加權最少連接
SED:最短期望延遲
NQ:never queue
LBLC:基于本地的最少連接
DH:
LBLCR:基于本地的帶復制功能的最少連接
ipvs內核模塊
yum -y install ipvsadm
管理集群服務連接進來的
添加:-A -t|u|f service-address [-s scheduler]
-t:TCP協議的集群
-u:UDP協議的集群
service-address: IP:PORT
-f:FWM:防火墻標記
修改:-E
刪除:-D -t|u|f service-address
ipvsadm -A -t 192.168.9.100:80 -s rr
管理集群服務連接匹配分發的
添加:-a -t|u|f service-address -r service-address [-g|i|m] [-w weight]
-t|u|f service-address:事先定義好的某集群服務
-r service-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 -g
ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.9 -g
查看
-L|l
-n:數字格式顯示主機地址和端口
–stats:統計數據
–rate:速率
–timeout:顯示TCP、TCPFIN和UDP的會話超時時長
-c:顯示當前的ipvs連接狀況
刪除所有集群服務
-C:清空ipvs規則
保存規則
-S
ipvsadm -S > /path/to/somefile
載入此前的規則
-R
ipvsadm -R < /path/to/somefile
總結
以上是生活随笔為你收集整理的搭建LVS_DR模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吓一跳
- 下一篇: Bio->Nio->Selector->