一 安裝IPVS
可通過原始碼安裝或yum安裝,原始碼包如下:
http://www.linuxvirtualserver.org/software/ipvs.html
1 [root@lvsmaster ~]# yum -y install ipvsadm
二 IPVS常用命令
1 [root@lvsmaster ~]# ipvsadm --help 2 ipvsadm v1.26 2008/5/15 (compiled with popt and IPVS v1.2.1) 3 Usage: 4 ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]] [-M netmask] [--pe persistence_engine] 5 ipvsadm -D -t|u|f service-address 6 ipvsadm -C 7 ipvsadm -R 8 ipvsadm -S [-n] 9 ipvsadm -a|e -t|u|f service-address -r server-address [options] 10 ipvsadm -d -t|u|f service-address -r server-address 11 ipvsadm -L|l [options] 12 ipvsadm -Z [-t|u|f service-address] 13 ipvsadm --set tcp tcpfin udp 14 ipvsadm --start-daemon state [--mcast-interface interface] [--syncid sid] 15 ipvsadm --stop-daemon state 16 ipvsadm -h
含義:
f service-address -r server-address
第一個service-address:虛擬伺服器的IP地址;第二個server-address:Real Server的IP地址。
scheduler:用於指定排程演算法。
三 命令選項
ipvsadm命令引數選項詳細含義如下所示:
-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 的預設值為360 分鐘。例如:-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
注意: 儲存新增的虛擬ip記錄和ipvsadm的規則可以使用service ipvsadm save,還可以用-S或–save。清除所有記錄和規則除了使用-C,還以使用–clear。
三 示例
1 ipvsadm -A -t 192.168.10.200:800 -s rr -p 600
表示在核心的虛擬伺服器列表中新增一條IP為192.168.10.200的虛擬伺服器,並且指定此虛擬伺服器的服務埠為80,其排程策略為輪詢模式,並且每個Real Server上的持續時間為600秒。
1 ipvsadm -a -t 192.168.10.10:800 -r 192.168.10.100:80 -g
表示在IP地位為192.168.10.10的虛擬伺服器上新增一條新的Real Server記錄,且虛擬伺服器的工作模式為直接路由模式。