LVS類型及其調度算法

LVS類型:
    NAT:-->(DNAT) (多目標的DNAT)
    DR:
    TUN:
    FULLNAT:

LVS NAT的特性
    1.RS的應該使用私有地址
    2.RS的網關必須指向DIP
    3.RIP和DIP必須在同一網段內
    4.請求和響應的報文都得經過Director,在高負載場景中,Director很可能成為性能瓶頸
    5.支持端口映射
    6.RS可以使用任意支持集群服務的OS

LVS類型及其調度算法


LVS DR類型
    1.讓前段路由將請求發往VIP時,只能是Dirctor上的VIP
        解決方案
        1.靜態地址綁定
            未必有路由器的配置權限
            Director高可用時靜態地址綁定將難以適用
        2.arptables(命令行工具):相當于iptables,限制ARP通告和應答
        3.修改linux內核參數,將RS上的VIP配置在lo接口的別名上,限制linux僅對對應接口的ARP請求做響應

    負載均衡器如何轉發:
        如果修改目標IP為RIP,則響應時源IP為RIP,此時客戶端并沒有請求RIP,所以不能使用RIP響應
        此時,負載均衡器中有規則;定義那個是集群服務器,其下有哪些real server;
        RIP1:MAC1
        RIP2:MAC2
        RIP3:MAC3
        此時,轉發時,會修改目標MAC地址

LVS DR類型的特性
    1.RS可以使用私有地址,還可以使用公網地址,此時可以直接通過互聯網連入RS,以實現配置,監控等
    2.RS的網關一定不能指向DIP(負載均衡器不負責響應報文的轉發)
    3.RS跟Dirctory(DIP)要在同一物理網絡內(基于MAC地址通信),(不能有路由器分隔)
    4.請求報文經過Directory,但響應報文一定不經過Director
    5.不支持端口映射
    6.RS可以使用大多數的操作系統

LVS類型及其調度算法

LVS TUN類型:IP隧道(IP報文中,還存在IP)(容災)
    1.RIP、DIP、VIP都得是公網地址
    2.RS的網關不會指向也不可能指向DIP
    3.請求報文經過Directory,但響應報文一定不經過Director
    4.不支持端口映射
    5.RS的OS必須得支持隧道功能

rs server 同樣有vip
用于響應(此時客戶端請求的vip,所以響應報文的源地址一定是vip)

LVS類型及其調度算法

LNS-FULLNAT類型:
    (需要向內核打補丁才可以使用)
    NAT模型缺陷:所有的real server和DIP必須在同一個網段內(real server的網關要指向DIP)
    DR模型缺陷:所有的real server直接暴露在互聯網上、各主機要位于同一物理網絡中
    fullnat:可以跨VLAN(網段),基于NAT實現

LVS類型及其調度算法

LVS的調度方法:10種
    靜態方法:僅根據算法本身進行調度
        rr:Round Robin 輪詢
        wrr:Weighted RR 權重輪詢(根據后端服務器的承載能力,性能)
        sh:source hashing   源地址hash(可以實現session綁定;背后仍是rr,wrr算法) (hash會話表)
            能夠將同一個IP地址的訪問,定向至同一個RS
        dh:destination hashing 目標地址hash(背后仍是rr,wrr算法)
                將發往同一個目標地址的請求始終轉發至第一次挑中的RS
                后端為緩存服務器(提高命中率)
            前端有多個防火墻時,為了保證從某一個防火墻進入,一定可以從該臺防火墻出去
     動態方法:根據算法及RS當前的負載狀況
         lc:Least Connection 最少連接(-c)
            計算當前的負載Overhead=Active*256+Inactive來實現
            TCP其中兩種狀態,活動連接和非活動連接
            活動連接占用資源多
            非活動連接占用資源少
         wlc:Weighted LC
            Overhead=(Active*256+Inactive)/weight(權重)
                        剛開始時默認為第一個提供服務
         sed:Shortest Expect Delay  最短期望延遲
            Overhead=(Active+1)*256/weight      
             nq:Nerver Queus: 永不排隊
                第一次請求給權重最大的
                第二次請求給權重第二的
                第三次請求給權重第三的
                ..
                然后使用sed算法(增強改進的sed算法)
         lblc:Locality-based least connection 基于本地的最少連接
                 相當于dh+lc
         Lblcr:基于復制的基于本地的最少連接 Replicated and Locality-based least connection (lblc with replication)
                   適用于后端是緩存服務器的場景
                       緩存多的服務器復制一部分緩存給另一個緩存少的服務器

原創文章,作者:sixijie,如若轉載,請注明出處:http://www.www58058.com/55328

(0)
sixijiesixijie
上一篇 2016-10-29 00:44
下一篇 2016-10-29 10:08

相關推薦

  • Linux screen命令

    screen命令 一、簡介 Screen是一款終端模擬的屏幕管理器,用于命令行終端自由切換。 當我們需要執行一個用時較多的作業,不希望自己或者他人誤操作關閉終端導致作業中斷,可以進入screen,這樣,當終端關閉,作業仍會繼續執行。 GNU’s Screen 官方站點:http://www.gnu.org/software/screen/ &nb…

    2017-07-13
  • centos啟動流程

    1、centos啟動流程 簡單流程簡介: POST –> Boot Sequence(BIOS) –> Boot Loader (MBR) –> Kernel(ramdisk) –> rootfs –> switchroot –> /sbin/init…

    Linux干貨 2016-09-09
  • 將兩個局域網用openvpn連接起來

    考慮到我們做集群的時候需要用到可能有20臺機器,可能我的要求跟別人的不一樣的,我需要做20臺左右的集群,不僅僅是會,而且需要非常熟練的搭建,最后通過腳步一鍵自動化部署安裝。 目前我有兩臺電腦,一臺可以運行7臺,另一臺可以運行12臺左右,剛好可以滿足的我的要求,但是我兩臺電腦都是設置的nat模式的網絡,為什么我非要配置nat模式呢,根據集群架構思想,為了保證架…

    Linux干貨 2017-05-01
  • 0808文本處理作業

                           1 、刪除/etc/grub2.conf 文件中所有以空白開頭的行行首的空白字符。 答:sed  ‘@^[[:space]]\+@@’  /etc/grub2/cf…

    Linux干貨 2016-08-11
  • Linux下btrfs子卷的掛載

        對btrfs文件系統的補充:     btrfs文件手動掛載自不必多說,但若想btrfs文件系統開機自動掛載,該如何實現呢?     其實只需添加掛載選項即可,如下: UUID=c99895c8-5b14-4276-80c7-ecf…

    Linux干貨 2015-12-19
  • N22-浙江-情歌第一周博客作業

    一、計算機的組成及其功能    計算機有五大組成部分:CPU(控制器和運算器)、內存、輸入、輸出           CPU:運算、控制、寄存、緩存功能           內存:RAM       &nbsp…

    Linux干貨 2016-08-15
欧美性久久久久