標籤:des blog http io os 使用 ar strong 資料
Linux負載平衡軟體LVS之二(安裝篇)2011-04-26 16:01:47標籤:lvs安裝配置 linux lvs 休閑 linux高可用
原創作品,允許轉載,轉載時請務必以超連結形式標明文章 原始出處 、作者資訊和本聲明。否則將追究法律責任。http://ixdba.blog.51cto.com/2895551/554029
一、 安裝LVS軟體
1.安裝前準備工作
作業系統:統一採用Centos4.4版本。
地址規劃,如表1所示:
表1
更詳細的資訊2所示:
圖2 LVS DR模式安裝部署結構圖
圖2中的VIP指的是虛擬IP地址,還可以叫做LVS叢集的服務IP,在DR、TUN模式中,資料包是直接返回給使用者的,所以,在Director Server上以及叢集的每個節點上都需要設定這個地址。此IP在Real Server上一般綁定在迴環地址上,例如lo:0,同樣,在Director Server上,虛擬IP綁定在真實的網路介面裝置上,例如eth0:0。
各個Real Server可以是在同一個網段內,也可以是相互獨立的網段,還可以是分布在internet上的多個伺服器。
2.安裝作業系統
Centos4.4版本的Linux,核心預設支援LVS功能,為了方便編譯安裝IPVS管理軟體,在安裝作業系統時,建議選擇如下這些安裝包:
? 案頭環境:xwindows system、GNOME desktop environment。
? 開發工具:development tools、x software development、gnome software、development、kde software development。
系統安裝完畢,可以通過如下命令檢查kernel是否已經支援LVS的ipvs模組:
[[email protected] ~]#modprobe -l |grep ipvs
/lib/modules/2.6.9-42.ELsmp/kernel/net/ipv4/ipvs/ip_vs_rr.ko
/lib/modules/2.6.9-42.ELsmp/kernel/net/ipv4/ipvs/ip_vs_sh.ko
如果有類似上面的輸出,表明系統核心已經預設支援了IPVS模組。接著就可以安裝IPVS管理軟體了。
3.在Director Serve上安裝IPVS管理軟體
IPVS提供的軟體包有源碼方式的也有rpm方式的,這裡介紹下源碼方式安裝IPVS,首先從http://www.linuxvirtualserver.org/software/ipvs.html下載對應版本的ipvs源碼,由於我們這裡採用的作業系統為Centos4.4版本,因此,下載對應的ipvsadm-1.24版本,接著進行安裝:
[[email protected] ~]#tar zxvf ipvsadm-1.24.tar.gz
[[email protected] ~]#cd ipvsadm-1.24
[[email protected] ~]#make
[[email protected] ~]#make install
注意:在make時可能會出現錯誤編譯資訊,這是由於編譯器找不到對應核心的原因,按照如下操作就可以正常編譯:
[[email protected] ~]#ln -s /usr/src/kernels/2.6.9-42.EL-i686/ /usr/src/linux
也可以下載rpm安裝包,通過rpm方式進行安裝:
[[email protected] ~]#rpm –ivh ipvsadm-1.24-6.1.i386.rpm
然後執行:
[[email protected] ~]# ipvsadm --help
如果看到協助提示,表明IPVS已經成功安裝。
4.ipvsadm的用法
(1)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 virtual-service-address:port -r real-server-address:port
[-g|i|m] [-w weight]
ipvsadm -d -t|u|f virtual-service-address -r real-server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f virtual-service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm –h
其中:
? virtual-service-address:是指虛擬伺服器的IP地址,本文是192.168.60.200
? real-service-address:是指Real Server的IP地址,本文是192.168.60.132/144
? scheduler:指定調度演算法
ipvsadm命令選項詳細含義如表2所示:
表2
命令選項
含義
-A (--add-service) 在核心的虛擬伺服器列表中添加一條新的虛擬IP記錄。也就是增加一台新的虛擬伺服器。虛擬IP也就是虛擬伺服器的IP地址。
-E (--edit-service) 編輯核心虛擬伺服器列表中的一條虛擬伺服器記錄
-D (--delete-service) 刪除核心虛擬伺服器列表中的一條虛擬伺服器記錄
-C (--clear) 清除核心虛擬伺服器列表中的所有記錄
-R (--restore) 恢複虛擬伺服器規則
-S (--save) 儲存虛擬伺服器規則,輸出為-R 選項可讀的格式
-a (--add-server) 在核心虛擬伺服器列表的一條記錄裡添加一條新的Real Server記錄。也就是在一個虛擬伺服器中增加一台新的Real Server
-e (--edit-server) 編輯一條虛擬伺服器記錄中的某條Real Server記錄
-d (--delete-server) 刪除一條虛擬伺服器記錄中的某條Real Server記錄
-L|-l –list 顯示核心中虛擬伺服器列表
-Z (--zero) 虛擬伺服器列表計數器清零(清空當前的串連數量等)
--set tcp tcpfin udp 設定連線逾時值
-t 說明虛擬伺服器提供的是tcp服務,此選項後面跟如下格式:
[virtual-service-address:port] or [real-server-ip:port]
-u 說明虛擬伺服器提供的是udp服務,此選項後面跟如下格式:
[virtual-service-address:port] or [real-server-ip:port]
-f fwmark 說明是經過iptables標記過的服務類型
-s 此選項後面跟LVS使用的調度演算法
有這樣幾個選項: rr|wrr|lc|wlc|lblc|lblcr|dh|sh
預設的調度演算法是: wlc
-p [timeout] 在某個Real Server上持續的服務時間。也就是說來自同一個使用者的多次請求,將被同一個Real Server處理。此參數一般用於有動態請求的操作中,timeout 的預設值為300 秒。例如:-p 600,表示持續服務時間為600秒。
-r 指定Real Server的IP地址,此選項後面跟如下格式:
[real-server-ip:port]
-g (--gatewaying) 指定LVS 的工作模式為直接路由模式(此模式是LVS 預設工作模式)
-i (-ipip) 指定LVS 的工作模式為隧道模式
-m (--masquerading) 指定LVS 的工作模式為NAT模式
-w (--weight) weight 指定Real Server的權值
-c (--connection) 顯示LVS目前的串連資訊 如:ipvsadm -L -c
-L --timeout 顯示“tcp tcpfin udp”的timeout值,如:ipvsadm -L --timeout
-L --daemon 顯示同步守護進程狀態,例如:ipvsadm -L –daemon
-L --stats 顯示統計資訊,例如:ipvsadm -L –stats
-L --rate 顯示速率資訊,例如:ipvsadm -L --rate
-L --sort 對虛擬伺服器和真實伺服器排序輸出,例如:ipvsadm -L --sort
注釋:
在表2中,左邊括弧中的內容為ipvsadm每個選項的長格式表示形式,linux命令選項中,有長格式和短格式,短格式的選項用的比較多,實際應用中可以用括弧中的長格式替代短格式,例如,可以用“ipvsadm --clear”代替“ipvsadm -C”。
(2)舉例
[[email protected] ~]# ipvsadm -A -t 192.168.60.200:80 -s rr -p 600
以上表示在核心的虛擬伺服器列表中添加一條192.168.60.200的虛擬伺服器記錄,並且指定此虛擬伺服器的服務連接埠為80,然後指定此虛擬伺服器的調度策略為輪詢調度,並且在每個real server上的持續服務時間為600秒,即10分鐘。
[[email protected] ~]# ipvsadm -A -t 192.168.60.188:21 -s wlc
以上表示在核心的虛擬伺服器列表中又添加了一條192.168.60.188的虛擬伺服器,此虛擬伺服器的服務連接埠為21,即FTP服務。使用的調度策略為wlc,即加權最少連結演算法。
[[email protected] ~]# ipvsadm -a -t 192.168.60.200:80 -r 192.168.60.132:80 –g
[[email protected] ~]# ipvsadm -a -t 192.168.60.200:80 -r 192.168.60.144:80 –g
以上兩條設定表示在虛擬伺服器192.168.60.200中添加兩條新的Real Server記錄,兩個Real Server的IP分別為192.168.60.132和192.168.60.144,參數“-g”指定了虛擬伺服器的工作模式為直接路由模式,即DR模式。
這樣設定完畢後,當使用者訪問192.168.60.200的80服務時,LVS會根據設定的調度策略和路由模式將請求分配到192.168.60.132以及192.168.60.144的80連接埠。
本文出自 “技術成就夢想” 部落格,請務必保留此出處http://ixdba.blog.51cto.com/2895551/554029
Linux負載平衡軟體LVS之二(安裝篇)[轉]