<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • linux網站服務器搭建(怎樣正確搭建linux網站服務器)


    LVS是Linux Virtual Server的簡稱,也就是Linux虛擬服務器,它是我國的章文嵩博士發起的一個開源項目,現在LVS已經是Linux標準內核的一部分。LVS主要用于多服務器的負載均衡,它工作在網絡層,可以實現一個高性能,高可用的服務器群集,它具有良好的可靠性、可擴展性和可操作性,即使在集群的服務器中某臺服務器無法正常工作,也不影響整體效果。官方站點:http://www.linuxvirtualserver.org。

    Linux虛擬服務器LVS詳解及部署配置實現Web業務訪問負載均衡

    LVS體系架構

    如上圖所示,LVS可分為三部分:

    1. Load Balancer:這是LVS的核心部分,位于整個集群系統的最前端,有一臺或者多臺負載調度器(Director Server)組成,它負責將客戶的請求按照一定的算法分發到下一層(Server Array層)不同的應用服務器(Real Server)進行處理,自己本身不做具體業務的處理。
    2. Server Array:該層負責具體業務,由一組實際運行應用服務的機器組成,Real Server可以是WEB服務器、MAIL服務器、FTP服務器、DNS服務器、視頻服務器中的一個或者多個,每個Real Server之間通過高速的LAN或分布在各地的WAN相連接。在實際的應用中,上層的Director Server其實也可以同時兼任Real Server的角色。
    3. Shared Storage:為所有Real Server提供共享存儲空間和內容一致性的存儲區域,在物理上,一般由磁盤陣列設備組成。

    LVS基本工作原理

    LVS是工作在網絡層,LVS通過控制IP來實現負載均衡。IPVS是其具體的實現模塊。IPVS的主要作用:安裝在Director Server上,在Director Server虛擬一個對外訪問的IP(VIP)。用戶訪問VIP,到達Director Server,Director Server根據一定的規則選擇一個Real Server,處理完成后然后返回給客戶端數據。

    Linux虛擬服務器LVS詳解及部署配置實現Web業務訪問負載均衡
    1. 當用戶向負載均衡調度器(Director Server)發起請求,調度器將請求發送至內核空間;
    2. PREROUTING鏈首先會接收到用戶請求,判斷目標IP確定是本機IP,將數據包發往INPUT鏈;
    3. IPVS是工作在INPUT鏈上的,當用戶請求到達INPUT時,IPVS會將用戶請求和自己已定義好的集群服務進行比對,如果用戶請求的就是定義的集群服務,那么此時IPVS會強行修改數據包里的目標IP地址及端口,并將新的數據包發往POSTROUTING鏈;
    4. POSTROUTING鏈接收數據包后發現目標IP地址剛好是自己的后端服務器,那么此時通過選路,將數據包最終發送給后端的服務器。

    LVS轉發類型

    這些步驟產生了一些具體的問題,比如如何選擇具體的Real Server,Real Server如何返回給客戶端數據等等。IPVS為此有三種轉發類型:

    1. VS/NAT(Virtual Server via Network Address Translation)網絡地址轉換,即網絡地址翻轉技術實現虛擬服務器。當請求來到時,Diretor server上處理的程序將數據報文中的目標地址(即虛擬IP地址)改成具體的某臺Real Server,端口也改成Real Server的端口,然后把報文發給Real Server。Real Server處理完數據后,需要返回給Diretor Server,然后Diretor server將數據包中的源地址和源端口改成VIP的地址和端口,最后把數據發送出去。由此可以看出,用戶的請求和返回都要經過Diretor Server,如果數據過多,Diretor Server肯定會不堪重負。
    2. VS/TUN(Virtual Server via IP Tunneling)隧道模型,即IP隧道技術實現虛擬服務器。它跟VS/NAT基本一樣,但是Real server是直接返回數據給客戶端,不需要經過Diretor server,這大大降低了Diretor server的壓力。
    3. VS/DR(Virtual Server via Direct Routing)直接路由模型,即用直接路由技術實現虛擬服務器。跟前面兩種方式,它的報文轉發方法有所不同,VS/DR通過改寫請求報文的MAC地址,將請求發送到Real Server,而Real Server將響應直接返回給客戶端,免去了VS/TUN中的IP隧道開銷。這種方式是三種負載調度機制中性能最好的,應用比較廣泛。
    Linux虛擬服務器LVS詳解及部署配置實現Web業務訪問負載均衡

    LVS-DR模型的工作原理:

    1. 當用戶請求到達Director Server,此時請求的數據報文會先到內核空間的PREROUTING鏈。 此時報文的源IP為CIP(Client IP),目標IP為VIP;
    2. PREROUTING檢查發現數據包的目標IP是本機,將數據包送至INPUT鏈;
    3. IPVS比對數據包請求的服務是否為集群服務,若是,將請求報文中的源MAC地址修改為DIP(Director Server IP)的MAC地址,將目標MAC地址修改RIP(Real Server IP)的MAC地址,然后將數據包發至POSTROUTING鏈。 此時的源IP和目的IP均未修改,僅修改了源MAC地址為DIP的MAC地址,目標MAC地址為RIP的MAC地址;
    4. 由于DS和RS在同一個網絡中,所以是通過二層來傳輸。POSTROUTING鏈檢查目標MAC地址為RIP的MAC地址,那么此時數據包將會發至Real Server;
    5. RS發現請求報文的MAC地址是自己的MAC地址,就接收此報文。處理完成之后,將響應報文通過lo接口傳送給eth0網卡然后向外發出。 此時的源IP地址為VIP,目標IP為CIP;
    6. 響應報文最終送達至客戶端。

    LVS調度算法

    我們都知道Director Server要選擇不同的Real server,那么它具體如何選擇Real Server以達到負載均衡的呢,IPVS支持十種調度方法。

    一)靜態調度:

    ①RR(Round Robin):輪詢調度

    輪詢調度算法的原理是每一次把來自用戶的請求輪流分配給內部中的服務器,從1開始,直到N(內部服務器個數),然后重新開始循環。算法的優點是其簡潔性,它無需記錄當前所有連接的狀態,所以它是一種無狀態調度

    ②WRR:weight:加權輪詢

    由于每臺服務器的配置、安裝的業務應用等不同,其處理能力會不一樣。所以,我們根據服務器的不同處理能力,給每個服務器分配不同的權值,使其能夠接受相應權值數的服務請求。

    ③SH:source hashing:源地址散列

    根據請求的源IP地址,作為散列鍵(Hash Key)從靜態分配的散列表找出對應的服務器。

    ④DH:Destination hashing:目標地址散列

    根據請求的目標IP地址,作為散列鍵(Hash Key)從靜態分配的散列表找出對應的服務器。

    二)動態調度:

    ①LC(Least-Connection):最少連接

    最少連接調度算法是把新的連接請求分配到當前連接數最小的服務器,最小連接調度是一種動態調度短算法,它通過服務器當前所活躍的連接數來估計服務器的負載均衡。

    ②WLC(Weighted Least-Connection Scheduling):加權最少連接。

    加權最小連接調度算法是最小連接調度的超集,各個服務器用相應的權值表示其處理性能。服務器的缺省權值為1,系統管理員可以動態地設置服務器的權限,加權最小連接調度在調度新連接時盡可能使服務器的已建立連接數和其權值成比例。

    ③SED(Shortest Expected Delay):最短期望延遲

    基于wlc算法,簡單算法:(active+1)*256/weight 【(活動的連接數+1)*256/除以權重】

    ④NQ(never queue):永不排隊(改進的sed)

    無需隊列,如果有臺realserver的連接數=0就直接分配過去,不需要再進行sed運算。

    ⑤LBLC(Locality-Based Least Connection):基于局部性的最少連接

    基于局部性的最少連接調度算法根據請求的目標IP地址找出該目標IP地址最近使用的RealServer,若該Real Server是可用的且沒有超載,將請求發送到該服務器;若服務器不存在,或者該服務器超載且有服務器處于一半的工作負載,則用“最少鏈接”的原則選出一個可用的服務器,將請求發送到該服務器。

    ⑥LBLCR(Locality-Based Least Connections withReplication):帶復制的基于局部性最少鏈接

    帶復制的基于局部性最少鏈均衡,該算法根據請求的目標IP地址找出該目標IP地址對應的服接調度算法也是針對目標IP地址的負載務器組,按“最小連接”原則從服務器組中選出一臺服務器,若服務器沒有超載,將請求發送到該服務器;若服務器超載,則按“最小連接”原則從這個集群中選出一臺服務器,將該服務器加入到服務器組中,將請求發送到該服務器。

    LVS具體配置操作

    實驗環境三臺Linux主機

    Diretor server:192.168.52.20

    Real server1:192.168.52.121

    Real server2:192.168.52.122

    下面我們VS/DR介紹詳細的配置過程:

    在Real server 1和2上面,配置web服務。

    yum install httpd -y #安裝http服務

    echo “This is 192.168.52.12x!!!” > /var/www/html/index.html #配置兩臺web文件用于測試顯示效果

    systemctl start httpd #啟動http服務

    通過瀏覽器輸入IP訪問效果如下。

    Linux虛擬服務器LVS詳解及部署配置實現Web業務訪問負載均衡

    Diretor server上安裝LVS。

    yum install ipvsadm -y

    Director Server上綁定一個虛擬VIP地址192.68.52.250,此IP用于對外提供服務。

    ifconfig ens33:0 192.168.52.250 broadcast 192.168.52.250 netmask 255.255.255.255 up

    添加路由,訪問192.168.52.250都走ens33:0這塊網卡。

    route add -host 192.168.52.250 dev ens33:0

    啟用系統的包轉發功能。

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

    如果之前配置過LVS,可先清除ipvsadm以前的設置。

    ipvsadm -C

    添加一個新的虛擬IP記錄192.168.52.250,設置算法為rr輪詢算法。
    ipvsadm -A -t 192.168.52.250:80 -s rr

    在新增的虛擬IP記錄中新增兩條real server記錄,-g即為使用VS/DR模式
    ipvsadm -a -t 192.168.52.250:80 -r 192.168.52.121:80 -g
    ipvsadm -a -t 192.168.52.250:80 -r 192.168.52.122:80 -g

    啟用LVS服務。

    ipvsadm

    兩臺real server上的配置:
    在環回口上綁定了虛擬IP地址,并添加路由。

    ifconfig ens33:0 192.168.52.250 broadcast 192.168.52.250 netmask 255.255.255.255 up

    route add -host 192.168.52.250 dev lo:0
    禁用本機的ARP請求。

    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

    最后在其他客戶端機子上面,訪問http://192.168.52.250/,則可以看到結果了,外部客戶端的請求被均衡的分配到兩臺Real Server上,出現不同的界面。

    Linux虛擬服務器LVS詳解及部署配置實現Web業務訪問負載均衡

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费