LVS實現負載均衡安裝配置詳解

2022-08-20 19:57:16 字數 3383 閱讀 4584

*****====實踐lvs/nat模式**********

1、實驗環境

三颱伺服器,一台作為 director,兩台作為 real server,director 有乙個外網網絡卡(172.16.254.200) 和乙個內網ip(192.168.0.8),兩個 real server 上只有內網 ip (192.168.0.18) 和 (192.168.0.28),並且需要把兩個 real server 的內網閘道器設定為 director 的內網 ip(192.168.0.8)

2、安裝和配置

兩個 real server 上都安裝 nginx 服務

# yum install -y nginx

director 上安裝 ipvsadm

# yum install -y ipvsadm

director 上編輯 nat 實現指令碼# vim /usr/local/sbin/lvs_nat.sh

# 編輯寫入如下內容:

#! /bin/bash

# director伺服器上開啟路由**功能:

echo 1 > /proc/sys/net/ipv4/ip_forward

# 關閉 icmp 的重定向

echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/eth1/send_redirects

# director設定 nat 防火牆

iptables -t nat -f

iptables -t nat -x

iptables -t nat -a postrouting -s 192.168.0.0/24 -j masquerade

# director設定 ipvsadm

ipvsadm='/sbin/ipvsadm'

$ipvsadm -c

$ipvsadm -a -t 172.16.254.200:80 -s wrr

$ipvsadm -a -t 172.16.254.200:80 -r 192.168.0.18:80 -m -w 1

$ipvsadm -a -t 172.16.254.200:80 -r 192.168.0.28:80 -m -w 1

儲存後,在 director 上直接執行這個指令碼就可以完成 lvs/nat 的配置

/bin/bash /usr/local/sbin/lvs_nat.sh

檢視ipvsadm設定的規則

ipvsadm -ln

3、測試lvs的效果

通過瀏覽器測試2臺機器上的web內容  。為了區分開,我們可以把 nginx 的預設頁修改一下:

在 rs1 上執行

# echo "rs1rs1" >/usr/share/nginx/html/index.html

在 rs2 上執行

# echo "rs2rs2" >/usr/share/nginx/html/index.html

注意,切記一定要在兩台 rs 上設定閘道器的 ip 為 director 的內網 ip

***************===實踐lvs的dr模式********************==

1.實驗環境

三颱機器:

2、安裝

兩個 real server 上都安裝 nginx 服務

# yum install -y nginx

director 上安裝 ipvsadm

# yum install -y ipvsadm

3、director 上配置指令碼

# vim /usr/local/sbin/lvs_dr.sh

#! /bin/bash

echo 1 > /proc/sys/net/ipv4/ip_forward

ipv=/sbin/ipvsadm

vip=192.168.0.38

rs1=192.168.0.18

rs2=192.168.0.28

ifconfig eth0:0 down

ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip dev eth0:0

$ipv -c

$ipv -a -t $vip:80 -s wrr

$ipv -a -t $vip:80 -r $rs1:80 -g -w 3

$ipv -a -t $vip:80 -r $rs2:80 -g -w 1

執行指令碼:

# bash /usr/local/sbin/lvs_dr.sh
4、在2臺 rs 上配置指令碼:

# vim /usr/local/sbin/lvs_dr_rs.sh

#! /bin/bash

vip=192.168.0.38

ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip lo:0

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

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

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

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

rs 上分別執行指令碼:

bash /usr/local/sbin/lvs_dr_rs.sh
5、實驗測試

測試方式同上,瀏覽器訪問 

注意:在 dr 模式下,2臺 rs 節點的 gateway 不需要設定成 dir 節點的 ip 。

負載均衡lvs配置

1,準備3臺虛擬機器 2,先配置3臺虛擬機器的網路 eth0,配置在乙個網段 dip,rip在乙個網段3,配置lvs的vip ifconfig eth0 0 192.168.9.100 24 echo 1 proc sys net ipv4 ip forward ip forward 0,如果不是發...

LVS配置 (負載均衡)

搭建real server中的服務 在lvs服務裝置上安裝和核心互動的客戶端 ipvsadm lnc 顯示的連線狀態 解釋 lvs 高可用 ha ifconfig eth0 2 192.168.220.88 24 或者 ifconfig eth0 2 192.168.220.88 netmask 2...

負載均衡之LVS詳解

負載均衡 四層負載均衡 lvs 之前也寫過相關的文章,但是寫的太爛了。自己都不也敢直視。現在有空決定重新全面學習了下lvs.總結出本部落格。好了,其他的不多說了,我們開始吧。一 負載均衡 負載均衡包括如下 1 硬體負載均衡 f5,big ip citrix,netscaler a102 軟體負載均衡...