生活札記 首頁 生活札記
提供一個可以讓大家無拘無束的討論園地
 
相簿相簿   常見問題常見問題   搜尋搜尋   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 


實做Load Balance 與 Cluster,使用ipvsadm與iptables的優缺點探討

 
發表新主題   回覆主題    生活札記 首頁 -> Linux基礎操作與系統管理
上一篇主題 :: 下一篇主題  
發表人 內容
luckyhoo



註冊時間: 2006-07-19
文章: 447

發表發表於: 星期一 一月 22, 2007 4:44 pm    文章主題: 實做Load Balance 與 Cluster,使用ipvsadm與iptables的優缺點探討 引言回覆

ipvsadm
代碼:
1.優點:可以架構單純化。
因為不用考慮後端Server掛點的問題,ipvsadm會幫你處理。
2.缺點:效率會變差,參考資料較少,實做上較為麻煩。


iptables
代碼:
1.優點:效率高。
2.缺點:很多機制要自己處理。
比如說Server出問題你要自己寫Shell Script偵測處理。


結論
代碼:
在Load Balance與Cluster的實做上。
ipvsadm 就像是C語言。
iptables 就像是組合語言。
理論上,組合語言寫得好會很快,但若寫不好,效率會比C語言更糟。


SeedNet提出的範例:
http://eservice.seed.net.tw/class/class93.html

ipvsadm指令說明來源網址:
http://zh.linuxvirtualserver.org/node/5
ipvsadm指令說明:
代碼:
對ipvsadm 的命令參考,並根據自己使用的經驗,進行了一個簡單的翻譯,希望
對ipvsadm 的使用者有一定的幫助。
為了更好的讓大家理解這份命令手冊,將手冊裡面用到的幾個術語先簡單的介紹
一下:
1,virtual-service-address:是指虛擬服務器的ip 地址
2,real-service-address:是指真實服務器的ip 地址
3,scheduler:調度方法
(lna@networksbase.com 翻譯 ipvsadm v1.21 2004 年4 月)
ipvsadm 的用法和格式如下:
ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p
[timeout]] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port
[-g|i|m] [-w weight]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface]
ipvsadm --stop-daemon
ipvsadm -h
命令選項解釋:
有兩種命令選項格式,長的和短的,具有相同的意思。在實際使用時,兩種都可
以。
-A --add-service 在內核的虛擬服務器表中添加一條新的虛擬服務器記錄。也
就是增加一台新的虛擬服務器。
-E --edit-service 編輯內核虛擬服務器表中的一條虛擬服務器記錄。
-D --delete-service 刪除內核虛擬服務器表中的一條虛擬服務器記錄。
-C --clear 清除內核虛擬服務器表中的所有記錄。
-R --restore 恢復虛擬服務器規則
-S --save 保存虛擬服務器規則,輸出為-R 選項可讀的格式
-a --add-server 在內核虛擬服務器表的一條記錄里添加一條新的真實服務器
記錄。也就是在一個虛擬服務器中增加一台新的真實服務器
-e --edit-server 編輯一條虛擬服務器記錄中的某條真實服務器記錄
-d --delete-server 刪除一條虛擬服務器記錄中的某條真實服務器記錄
-L|-l --list 顯示內核虛擬服務器表
-Z --zero 虛擬服務表計數器清零(清空當前的連接數量等)
--set tcp tcpfin udp 設置連接超時值
--start-daemon 啟動同步守護進程。他後面可以是master 或backup,用來說
明LVS Router 是master 或是backup。在這個功能上也可以採用keepalived 的
VRRP 功能。
--stop-daemon 停止同步守護進程
-h --help 顯示幫助信息
其他的選項:
-t --tcp-service service-address 說明虛擬服務器提供的是tcp 的服務
[vip:port] or [real-server-ip:port]
-u --udp-service service-address 說明虛擬服務器提供的是udp 的服務
[vip:port] or [real-server-ip:port]
-f --fwmark-service fwmark 說明是經過iptables 標記過的服務類型。
-s --scheduler scheduler 使用的調度算法,有這樣幾個選項
rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,
默認的調度算法是: wlc.
-p --persistent [timeout] 持久穩固的服務。這個選項的意思是來自同一個客
戶的多次請求,將被同一台真實的服務器處理。timeout 的默認值為300 秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真實的服務器[Real-Server:port]
-g --gatewaying 指定LVS 的工作模式為直接路由模式(也是LVS 默認的模式)
-i --ipip 指定LVS 的工作模式為隧道模式
-m --masquerading 指定LVS 的工作模式為NAT 模式
-w --weight weight 真實服務器的權值
--mcast-interface interface 指定組播的同步接口
-c --connection 顯示LVS 目前的連接 如:ipvsadm -L -c
--timeout 顯示tcp tcpfin udp 的timeout 值 如:ipvsadm -L --timeout
--daemon 顯示同步守護進程狀態
--stats 顯示統計信息
--rate 顯示速率信息
--sort 對虛擬服務器和真實服務器排序輸出
--numeric -n 輸出IP 地址和端口的數字形式
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    生活札記 首頁 -> Linux基礎操作與系統管理 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作