<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          LVS負(fù)載均衡策略的部署與應(yīng)用

          共 5725字,需瀏覽 12分鐘

           ·

          2020-07-11 11:30

          通常來說負(fù)載均衡可分為四層負(fù)載均衡和七層負(fù)載均衡,而四層負(fù)載均衡策略中比較典型的實現(xiàn)方式為LVS負(fù)載均衡

          LVS簡介

          LVS負(fù)載均衡中有三種調(diào)度方法,分別為:NAT(Network Address Translation網(wǎng)絡(luò)地址轉(zhuǎn)換)、TUN(tunnel 隧道)、DR(direct route 直接路由)
          LVS-DR
          DR模式下需要LVS服務(wù)器和后臺服務(wù)器綁定同一個VIP, 一個請求過來時,LVS只需要將網(wǎng)絡(luò)幀的MAC地址修改為其中一臺后臺服務(wù)器的MAC,該包就會被轉(zhuǎn)發(fā)到相應(yīng)的服務(wù)器處理,當(dāng)服務(wù)器返回響應(yīng)時,只要直接向用戶的IP地址返回即可,不再經(jīng)過LVS服務(wù)器
          優(yōu)缺點:
          1)lvs接收請求輸入,將請求轉(zhuǎn)發(fā)給RS,由RS輸出響應(yīng)給用戶,性能非常高。
          2)不足之處是要求負(fù)載均衡器與RS在一個物理段上
          LVS-TUN
          LVS-TUN模式是通過ip隧道技術(shù)減輕lvs調(diào)度服務(wù)器的壓力,很多時候服務(wù)器收到的請求包很短小,但應(yīng)答包通常很大,負(fù)載均衡器只負(fù)責(zé)將請求包分發(fā)給后臺服務(wù)器,后臺服務(wù)器會直接將應(yīng)答包返回給用戶。因此,負(fù)載均衡器能處理很巨大的請求量。
          優(yōu)缺點:
          1)性能比LVS-NAT模式要高的多,且不限制負(fù)載均衡器與后臺服務(wù)器在一個物理段上
          2)不足之處是需要所有的服務(wù)器都要支持"IP Tunneling"協(xié)議
          LVS-NAT
          LVS-NAT模式是一種外網(wǎng)和內(nèi)網(wǎng)地址映射的技術(shù)。在NAT模式中,LVS需要作為后臺服務(wù)器的網(wǎng)關(guān),當(dāng)客戶端訪問LVS服務(wù)器的外網(wǎng)網(wǎng)卡IP地址時,LVS會將數(shù)據(jù)包的目標(biāo)IP地址改為后臺服務(wù)器的IP地址;當(dāng)后臺服務(wù)器返回響應(yīng)時,同樣需要通過LVS服務(wù)器作為網(wǎng)關(guān)進行中轉(zhuǎn),LVS服務(wù)器會將數(shù)據(jù)包的源地址改為LVS服務(wù)器的外網(wǎng)網(wǎng)卡IP地址,因此客戶端會認(rèn)為響應(yīng)是LVS服務(wù)器返回的
          優(yōu)缺點:
          1)可以有效把后臺服務(wù)器IP地址隱藏起來
          2)NAT模式請求和響應(yīng)都需要經(jīng)過lvs,性能沒有DR模式好
          前期準(zhǔn)備
          準(zhǔn)備三臺centos7,配置IP地址和hostname,同步時間,關(guān)閉防火墻和selinux,配置IP地址和hostname映射

          hostnameip
          node1192.168.29.143
          node2192.168.29.142
          node3192.168.29.144

          在node2和node3中部署httpd服務(wù)并修改首頁內(nèi)容

          [root@node2 ~]# yum install httpd -y
          [root@node2 ~]# echo node2 > /var/www/html/index.html
          [root@node3 ~]# yum install httpd -y
          [root@node3 ~]# echo node3 > /var/www/html/index.html
          [root@node2 ~]# systemctl start httpd
          [root@node3 ~]# systemctl start httpd

          node1部署ipvsadm

          [root@node1 ~]# yum install ipvsadm -y
          [root@node1 ~]# systemctl start ipvsadm.service

          部署LVS-DR

          node1端設(shè)置部署
          添加VIP和設(shè)置路由表

          [root@node1 ~]# ifconfig ens33:0 192.168.29.122 broadcast 192.168.29.122 netmask 255.255.255.255 up
          [root@node1 ~]# route add -host 192.168.29.122 dev ens33:0

          開啟包轉(zhuǎn)發(fā)功能

          [root@node1 ~]# echo "1" >/proc/sys/net/ipv4/ip_forward

          設(shè)置ipvsadm轉(zhuǎn)發(fā)規(guī)則

          #先清除所有轉(zhuǎn)發(fā)規(guī)則
          [root@node1 ~]# ipvsadm --clear
          [root@node1 ~]# ipvsadm -A -t 192.168.29.122:80 -s rr
          [root@node1 ~]# ipvsadm -a -t 192.168.29.122:80 -r 192.168.29.142:80 -g -w 1
          [root@node1 ~]# ipvsadm -a -t 192.168.29.122:80 -r 192.168.29.144:80 -g -w 1
          #設(shè)置完成后查看狀態(tài)
          [root@node1 ~]# ipvsadm
          IP Virtual Server version 1.2.1 (size=4096)
          Prot LocalAddress:Port Scheduler Flags
          -> RemoteAddress:Port Forward Weight ActiveConn InActConn
          TCP node1:http rr
          -> node2:http Route 1 0 0
          -> node3:http Route 1 0 0

          #選項說明:
          -A:添加一個虛擬服務(wù),使用ip地址、端口號、協(xié)議來唯一定義一個虛擬服務(wù)
          -t:使用TCP服務(wù),該參數(shù)后需加主機與端口信息
          -s:指定lvs的調(diào)度算法
          rr:輪詢算法
          -a:添加一臺真實服務(wù)器
          -r:設(shè)置真實服務(wù)器IP與端口
          -g:設(shè)置lvs工作模式為DR直連路由
          -w:指定真實服務(wù)器權(quán)重

          node2和node3設(shè)置部署
          添加VIP和設(shè)置路由表

          [root@node2 ~]# ifconfig lo:0 192.168.29.122 broadcast 192.168.29.122 netmask 255.255.255.255 up
          [root@node2 ~]# route add -host 192.168.29.122 dev lo:0
          [root@node3 ~]# ifconfig lo:0 192.168.29.122 broadcast 192.168.29.122 netmask 255.255.255.255 up
          [root@node3 ~]# route add -host 192.168.29.122 dev lo:0

          關(guān)閉arp解析

          [root@node2 ~]# echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
          [root@node2 ~]# echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
          [root@node2 ~]# echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
          [root@node2 ~]# echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
          [root@node2 ~]# sysctl -p
          [root@node3 ~]# echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
          [root@node3 ~]# echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
          [root@node3 ~]# echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
          [root@node3 ~]# echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
          [root@node3 ~]# sysctl -p

          測試驗證
          瀏覽器訪問http://192.168.29.122,刷新則會按照輪詢算法自動進行負(fù)載均衡
          a5eafd423e4fed95cbaebbcfd8d60b57.webp
          e9cae29043055e2675e929979d091222.webp

          部署LVS-TUN

          node1端設(shè)置部署
          添加VIP

          [root@node1 ~]# ip addr add 192.168.29.122 dev ens33:0

          開啟包轉(zhuǎn)發(fā)功能

          [root@node1 ~]# echo "1" >/proc/sys/net/ipv4/ip_forward

          設(shè)置ipvsadm轉(zhuǎn)發(fā)規(guī)則

          #先清除所有轉(zhuǎn)發(fā)規(guī)則
          [root@node1 ~]# ipvsadm --clear
          [root@node1 ~]# ipvsadm -A -t 192.168.29.122:80 -s rr
          [root@node1 ~]# ipvsadm -a -t 192.168.29.122:80 -r 192.168.29.142:80 -i
          [root@node1 ~]# ipvsadm -a -t 192.168.29.122:80 -r 192.168.29.144:80 -i
          #設(shè)置完成后查看狀態(tài)
          [root@node1 ~]# ipvsadm
          IP Virtual Server version 1.2.1 (size=4096)
          Prot LocalAddress:Port Scheduler Flags
          -> RemoteAddress:Port Forward Weight ActiveConn InActConn
          TCP node1:http rr
          -> node2:http Tunnel 1 1 2
          -> node3:http Tunnel 1 0 1
          #選項說明:
          -i:設(shè)置lvs工作模式為TUN隧道

          node2和node3設(shè)置部署
          添加tunl0隧道

          modeprobe ipip

          添加VIP

          [root@node2 ~]# ip addr add 192.168.29.122 dev tunl0
          [root@node2 ~]#ip link set tunl0 up
          [root@node3 ~]# ip addr add 192.168.29.122 dev tunl0
          [root@node3 ~]#ip link set up tunl0

          關(guān)閉arp解析

          [root@node2 ~]# vi /etc/sysctl.conf
          net.ipv4.conf.tunl0.arp_ignore = 1
          net.ipv4.conf.tunl0.arp_announce = 2
          net.ipv4.conf.all.arp_ignore = 1
          net.ipv4.conf.all.arp_announce = 2
          net.ipv4.conf.tunl0.rp_filter = 0
          net.ipv4.conf.all.rp_filter = 0
          [root@node2 ~]# sysctl -p
          [root@node3 ~]# vi /etc/sysctl.conf
          net.ipv4.conf.tunl0.arp_ignore = 1
          net.ipv4.conf.tunl0.arp_announce = 2
          net.ipv4.conf.all.arp_ignore = 1
          net.ipv4.conf.all.arp_announce = 2
          net.ipv4.conf.tunl0.rp_filter = 0
          net.ipv4.conf.all.rp_filter = 0
          [root@node3 ~]# sysctl -p

          測試驗證
          瀏覽器訪問http://192.168.29.122,刷新則會按照輪詢算法自動進行負(fù)載均衡
          a5eafd423e4fed95cbaebbcfd8d60b57.webp
          e9cae29043055e2675e929979d091222.webp

          部署LVS-NAT

          在部署LVS-NAT架構(gòu)前需要在調(diào)度機上安裝兩塊網(wǎng)卡,一塊為內(nèi)網(wǎng)地址,另一塊為外網(wǎng)地址

          內(nèi)網(wǎng)ip外網(wǎng)ip
          192.168.29.143192.168.31. 128

          node1端設(shè)置部署
          開啟包轉(zhuǎn)發(fā)功能

          [root@node1 ~]# echo "1" >/proc/sys/net/ipv4/ip_forward

          設(shè)置ipvsadm轉(zhuǎn)發(fā)規(guī)則

          #先清除所有轉(zhuǎn)發(fā)規(guī)則
          [root@node1 ~]# ipvsadm --clear
          [root@node1 ~]# ipvsadm -A -t 192.168.31.128:80 -s rr
          [root@node1 ~]# ipvsadm -a -t 192.168.31.128:80 -r 192.168.29.142:80 -m
          [root@node1 ~]# ipvsadm -a -t 192.168.31.128:80 -r 192.168.29.144:80 -m
          #設(shè)置完成后查看狀態(tài)
          [root@node1 ~]# ipvsadm
          IP Virtual Server version 1.2.1 (size=4096)
          Prot LocalAddress:Port Scheduler Flags
          -> RemoteAddress:Port Forward Weight ActiveConn InActConn
          TCP node1:http rr
          -> node2:http Masq 1 0 0
          -> node3:http Masq 1 0 0
          #選項說明:
          -m:設(shè)置lvs工作模式為NAT地址轉(zhuǎn)換模式

          node2和node3設(shè)置部署
          設(shè)置路由表

          [root@node2 ~]# route add -net 192.168.31.0/24 gw 192.168.29.143
          [root@node3 ~]# route add -net 192.168.31.0/24 gw 192.168.29.143

          測試驗證
          04d4ce89f2a6e62890fac2224e80c8ed.webp

          瀏覽 47
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  男女日逼视频网站 | 欧美乱伦xxxx | 男女操逼逼 | 国产免费一区 | 留学生苏琪和外国男友第二季 |