lvs主要有三種類型,即nat模式,DR模式 ,遂道模式。在這裏主要簡單介紹下DR與nat模式。
1. LVS-DR模式
1.1 重點內容
arptalbes
通過修改mac地址實現
集羣節點必須在同一個物理網絡中,不能跨越路由
rip可以使用公共地址
director僅處理入站請求,出站響應不再經過director
DR不支持端口帕映射
大多數系統支持real server
DR的director壓力小於nat的director
1.2 環境
lvs-server eth0:210.168.100.1 vip:210.168.100.100 255.255.255.255 real-server1 eth0:210.168.100.2 real-server2 eth0:210.168.100.3
虛擬機網卡模式 vm0
1.3 lvs-server配置
配置vip及路由
[root@master ~]# ifconfig eth0:0 210.168.100.100 netmask 255.255.255.255 [root@master ~]# route add -host 210.168.100.100 dev eth0:0
配置ipvsadm
通過運行腳本ipvs.sh來配置
#!/bin/bash #author by hu #date 2013-11-16 ipvsadm -C ipvsadm -At 210.168.100.100:80 -s rr ipvsadm -at 210.168.100.100:80 -r 210.168.100.2 -g ipvsadm -at 210.168.100.100:80 -r 210.168.100.3 -g ipvsadm
注:-g 表示DR直播路由模式;-m 表示nat模式;-i表示遂道模式。
運行腳本
[root@master ~]# ./ipvs.sh IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 210.168.100.100:http rr -> 210.168.100.2:http Route 1 0 0 -> 210.168.100.3:http Route 1 0 0
1.4 real-server配置
這裏以real-server1爲例
配置vip
[root@Nodes03 ~]# ifconfig lo:0 210.168.100.100 netmask 255.255.255.255 [root@Nodes03 ~]# route add -host 210.168.100.100 dev lo:0
配置arp
通過腳本ipvsadm.sh來更改
#!/bin/bash #author by hu #date 2013-11-16 ipvsadm -C ipvsadm -At 210.168.100.1:80 -s rr ipvsadm -at 210.168.100.1:80 -r 192.168.100.2:80 -m ipvsadm -at 210.168.100.1:80 -r 192.168.100.3:80 -m ipvsadm
運行腳本
[root@master ~]# ./ipvsadm.sh IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 210.168.100.1:http rr -> 192.168.100.2:http Masq 1 0 21 -> 192.168.100.3:http Masq 1 0 20
1.5 驗證
通過訪問210.168.100.100,如果有顯示並有不同的結果則正確
2 NAT模式
重點內容
所有集羣節點在同一個節點當中
RIP是私有地址,用於集羣節點之間進行通信
director 進行處理入站和出站請求
VIP網關要指向DIP
可以實現端口映射
director容易成爲系統性能瓶頸
2.1 環境
lvs-server eth0:210.168.100.1/25 eth1:192.168.100.1/25 real-server1 eth0:192.168.100.2/25 gw 192.168.100.1 real-server1 eth0:192.168.100.3/25 gw 192.168.100.1
注:real-server的網關要指向lvs-server內網地址,否則數據將無法返回。
2.2 ipvsadm配置
通過執行腳本ipvsadm.sh配置
#!/bin/bash #author by hu #date 2013-11-16 ipvsadm -C ipvsadm -At 210.168.100.1:80 -s rr ipvsadm -at 210.168.100.1:80 -r 192.168.100.2:80 -m ipvsadm -at 210.168.100.1:80 -r 192.168.100.3:80 -m ipvsadm
運行腳本
[root@master ~]# ./ipvsadm.sh IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 210.168.100.1:http rr -> 192.168.100.2:http Masq 1 0 21 -> 192.168.100.3:http Masq 1 0 20
2.3 驗證
通過訪問210.168.100.1,如果有顯示並有不同的結果則正確