LVS虛擬服務器相關實驗

本節內容主要是是lvs相關性實驗,及lvs健康性檢查工具Ldirectord

本節索引:

一、實驗:實現LVS-NAT

二、實驗:實現LVS與RS之間添加路由器的LVS-NAT

(1)實現端口映射

(2)添加權重

三、實驗:實現單網絡LVS-DR

四、Ldirectord:實現LVS的RS健康性檢查

 

 

一、實驗:實現LVS-NAT

邏輯拓撲:

Nat模型

前期準備:

CLIENT: ? 172.20.0.123; 網關:172.20.0.200

LVS: ? ? VIP:192.168.30.200, DIP:172.20.0.200,啟用ip_forward

RS1: ? ??192.168.30.17

RS2: ? ??192.168.30.27

 

LVS:

開啟路由轉發

echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf

sysctl –p

sysctl –a |grep ip_f

 

 

RS1、2:

搭建WEB環境

網關指向192.168.30.200

yum install httpd

RS1:

echo RS1> /var/www/html/index.html

systemctl start httpd

RS2:

echo RS2> /var/www/html/index.html

systemctl start httpd

 

LVS:

添加LVS規則

yum install ipvsadm

Ipvsadm –A –t 172.20.0.200:80 –s rr

Ipvsadm –a –t 172.20.0.200:80? –r 192.168.30.17 –m?

Ipvsadm –a –t 172.20.0.200:80? –r 192.168.30.27 –m?

Ipvsadm –Ln

1

 

測試:

curl 172.20.0.200

6

 

 

二、實驗:實現LVS與RS之間添加路由器的LVS-NAT

邏輯拓撲:

Nat-Router模型

前期準備:

新增加一臺虛擬機作為路由器,按下圖進行網絡環境搭建

CLIENT: ? 172.20.0.123;網關:172.20.0.200

LVS: ? 192.168.30.0,172.20.0.200,不啟用ip_forward

ROUTER: VIP:172.20.0.100/16;DIP:192.168.30.200 /24,啟用ip_forward

RS1: ?192.168.30.17

RS2: ?192.168.30.27

路由器必須配置到LVS的網關,并且開啟路由轉發功能

3

curl 172.20.0.200測試

4

 

實現端口映射:

以httpd服務為例,修改其中一臺RS服務器的80端口為8080

RS1:

vim /etc/httpd/conf/httpd.conf

Listen 80 ==>Listen 8080

 

LVS:

清除原有LVS規則

ipvsadm -C?

ipvsadm -A -t 172.20.0.200:80 -s rr

ipvsadm -a -t 172.20.0.200:80 -r 192.168.30.17:8080 -m

ipvsadm -a -t 172.20.0.200:80 -r 192.168.30.27:80 -m

5

CLIENT:

6

 

添加權重:

LVS:

修改調度算法為wrr模式

7

ipvsadm -a -t 172.20.0.200:80 -r 192.168.30.17:8080 -m -w 3

8

 

CLIENT:

我們看到LVS已按RS1:RS1 = 3:1的權重進行調度

9

 

 

三、實驗:實現單網絡LVS-DR

邏輯拓撲:

LVS-DR模型-單網絡

前期準備:

5臺虛擬機,網絡環境配置如下:

CLIENT: ? ?橋接模式;172.20.0.222/16

ROUTER: ?橋接模式;172.20.0.200/16;192.168.30.200/24

LVS: ?僅主機模式;VIP:192.168.30.7/24;DIP:192.168.30.100/24

RS1: ?僅主機模式;192.168.30.17/24;VIP:192.168.30.7/24

RS2: ?僅主機模式;192.168.30.27/24;VIP:192.168.30.7/24

 

RS1,RS2:

echo 1> /proc/sys/net/ipv4/conf/lo/arp_ignore

echo 1> /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2> /proc/sys/net/ipv4/conf/lo/arp_announce

echo 2> /proc/sys/net/ipv4/conf/all/arp_announce

一般習慣是將VIP綁定到RS服務器的回環網卡lo上

ip a a 192.168.30.7/32 dev lo

1

在RS1,RS2上搭建web服務

yum install httpd

RS1:

echo RS1> /var/www/html/index.html

systemctl start httpd

RS2:

echo RS2> /var/www/html/index.html

systemctl start httpd

 

 

LVS:

網絡配置要求

VIP: ?ip addr a192.168.30.7/32 dev lo

DIP: ?192.168.30.100/24 eth0

GATEWAY: ?192.168.30.X????????? #網關必須配,但可隨意配置,同一網段即可

配置調度策略:

yum install ipvsadm

ipvsadm -A -t 192.168.30.7:80 -s rr

ipvsadm -a -t 192.168.30.7:80 -r 192.168.30.17????? #默認dr模型

ipvsadm -a -t 192.168.30.7:80 -r 192.168.30.27

2

 

CLIENT:

測試

3

 

四、Ldirectord:實現LVS的RS健康性檢查

ldirectord:監控和控制LVS守護進程,可管理LVS規則

包名:ldirectord-3.9.6-0rc1.1.1.x86_64.rpm

文件:

/etc/ha.d/ldirectord.cf ? ?主配置文件

/usr/share/doc/ldirectord-3.9.6/ldirectord.cf ? 配置模版

/usr/lib/systemd/system/ldirectord.service ? ?服務

/usr/sbin/ldirectord ? 主程序

/var/log/ldirectord.log ? 日志

/var/run/ldirectord.ldirectord.pid pid ? 文件

 

Ldirectord配置文件示例

checktimeout=3

checkinterval=1

autoreload=yes

logfile=”/var/log/ldirectord.log” ? ? ? #日志文件

quiescent=no ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#down時yes權重為0,no為刪除

virtual=5 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #指定VS的FWM或IP:port

real=172.16.0.7:80 gate 2

real=172.16.0.8:80 gate 1

fallback=127.0.0.1:80 gate #sorry server

service=http

scheduler=wrr

checktype=negotiate

checkport=80

request=”index.html”

receive=”test Ldirectord”

Ldirectord配置

重啟ldirectord服務,將自動生成LVS規則

systemctl start ldirectord

Ldirectord配置2

默認情況下,當有一臺RS服務器宕機時,LVS還將繼續調度,啟動ldirectord服務后,當某臺RS服

務器宕機后,LVS將不再繼續調度至該臺服務器

 

 

 

 

 

 

 

 

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/102292

(1)
wangxczwangxcz
上一篇 2018-07-05
下一篇 2018-07-05

相關推薦

欧美性久久久久