-
lvs是內核里面的功能,在內核中叫做ipvs
-
用戶空間使用ipvsadm這個工具包提供的工具來管理內核中的ipvs功能
ipvsadm 命令
ipvsadm核心功能:
-
集群服務管理:增、刪、改
-
集群服務的RS管理:增、刪、改
-
查看
使用 ipvsadm 管理集群服務:增、改、刪
增、修改:
ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]]
說明:
-A:表示新增
-E:表示修改
service-address:集群的地址(VIP:port)
-t|u|f: # 指定這個vip埠使用的協議型別
-t: TCP協議的埠,VIP:TCP_PORT 如: -t 10.0.0.100:80
-u: UDP協議的埠,VIP:UDP_PORT 如:-u 10.0.0.100:80
-f:firewall MARK,標記,一個數字
[-s scheduler]:指定集群的調度演算法,默認為wlc
例如:表示創建了一個負載均衡集群,lvs的ip為10.0.0.100
ipvsadm -A -t 10.0.0.100:80 -s wrr
例如:修改lvs的調度演算法為rr
[root@lvs ~]# ipvsadm -E -t 192.168.10.100:80 -s rr
[root@lvs ~]# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP lvs:http rr
-> 10.0.0.7:http Masq 1 0 0
-> 10.0.0.17:http Masq 1 0 0
洗掉:
ipvsadm -D -t|u|f service-address
說明:
-D:表示洗掉
使用 ipvsadm 管理集群上的RS:增、改、刪
增、改:
ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight]
說明:
server-address: #在添加rs的時候,指定前面創建的集群地址
rip[:port] #如省略port,不作埠映射
-r: 后端服務器rs的RIP地址
選項:
lvs型別: #表示指定lvs使用的功能模式
-g: gateway, dr型別,默認使用dr這種作業模式
-i: ipip, tun型別
-m: masquerade(偽裝), nat型別
-w weight:權重 指定這個rs的權重
范例:新增rs到集群中
ipvsadm -a -t 10.0.0.100:80 -r 10.0.0.8:8080 -m -w 3
范例:修改rs的權重,默認為1
[root@lvs ~]# ipvsadm -e -t 192.168.10.100:80 -r 10.0.0.17 -m -w 3
[root@lvs ~]# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP lvs:http rr
-> 10.0.0.7:http Masq 1 0 0
-> 10.0.0.17:http Masq 3 0 0
刪:
ipvsadm -d -t|u|f service-address -r server-address
清空定義的所有內容:
ipvsadm -C
資訊查看:
ipvsadm -L|l [options]
-L:查看創建的集群資訊
例如:查看集群的資訊
[root@lvs ~]# ipvsadm -L
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP lvs:http wrr
-> 10.0.0.7:http Masq 1 0 0
-> 10.0.0.17:http Masq 1 0 0
--numeric, -n:以數字形式輸出地址和埠號
--exact:擴展資訊,精確值
--connection,-c:當前IPVS連接輸出,查看連接資訊
--stats:統計資訊
--rate :輸出速率資訊
ipvs規則:
/proc/net/ip_vs
例如:
#存放在記憶體中的 十六進制格式顯示
[root@lvs ~]# cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn #InActConn表示的是非活動的鏈接
TCP C0A80A64:0050 wrr
-> 0A000011:0050 Masq 1 0 0
-> 0A000007:0050 Masq 1 0 0
ipvs連接:
/proc/net/ip_vs_conn
例如:
[root@lvs ~]# cat /proc/net/ip_vs_conn #存放的是pvs的連接資訊 十六進制顯示
Pro FromIP FPrt ToIP TPrt DestIP DPrt State Expires PEName PEData
TCP C0A80A06 A5B8 C0A80A64 0050 0A000011 0050 TIME_WAIT 115
TCP C0A80A06 A5B0 C0A80A64 0050 0A000011 0050 TIME_WAIT 113
TCP C0A80A06 A5C2 C0A80A64 0050 0A000007 0050 TIME_WAIT 117
TCP C0A80A06 A5C4 C0A80A64 0050 0A000011 0050 TIME_WAIT 117
TCP C0A80A06 A5BA C0A80A64 0050 0A000007 0050 TIME_WAIT 115
TCP C0A80A06 A5AC C0A80A64 0050 0A000011 0050 TIME_WAIT 112
TCP C0A80A06 A5AE C0A80A64 0050 0A000007 0050 TIME_WAIT 113
TCP C0A80A06 A5C0 C0A80A64 0050 0A000011 0050 TIME_WAIT 116
TCP C0A80A06 A5B6 C0A80A64 0050 0A000007 0050 TIME_WAIT 115
TCP C0A80A06 A5AA C0A80A64 0050 0A000007 0050 TIME_WAIT 106
TCP C0A80A06 A5C6 C0A80A64 0050 0A000007 0050 TIME_WAIT 118
TCP C0A80A06 A5B4 C0A80A64 0050 0A000011 0050 TIME_WAIT 114
TCP C0A80A06 A5BE C0A80A64 0050 0A000007 0050 TIME_WAIT 116
TCP C0A80A06 A5B2 C0A80A64 0050 0A000007 0050 TIME_WAIT 114
TCP C0A80A06 A5BC C0A80A64 0050 0A000011 0050 TIME_WAIT 116
lvs規則的保存:
規則默認是保存在記憶體中的,需要寫入一個對應的檔案,開啟的時候重新加載他生效,
建議保存至/etc/sysconfig/ipvsadm
ipvsadm-save > /PATH/TO/IPVSADM_FILE
ipvsadm -S > /PATH/TO/IPVSADM_FILE
lvs的Uint服務:
[root@lvs ~]# cat /usr/lib/systemd/system/ipvsadm.service
[Unit]
Description=Initialise the Linux Virtual Server
After=syslog.target network.target
[Service]
Type=oneshot
ExecStart=/bin/bash -c "exec /sbin/ipvsadm-restore < /etc/sysconfig/ipvsadm" #會自動保存規則至/etc/sysconfig/ipvsadm
ExecStop=/bin/bash -c "exec /sbin/ipvsadm-save -n > /etc/sysconfig/ipvsadm" #會自動加載/etc/sysconfig/ipvsadm中規則
ExecStop=/sbin/ipvsadm -C #會自動清空記憶體中的規則
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/520537.html
標籤:Linux
上一篇:Linux LVS的四種作業模式
