lvs-dr

        通過為請求報文重新封裝一個MAC首部進行轉發,源MAC是DIP所在的接口的MAC,目標MAC是某挑選出的RS的RIP所在接口的MAC地址;源IP/PORT,以及目標IP/PORT均保持不變;
    VIP通常配置在lo:0 網卡上

Director和各RS都得配置使用VIP;

DR模型注意內容:

1、前端路由器將目標IP為VIP的請求報文發往Director

    有以下三種方法實現:

        (a) 在前端網關做靜態綁定;
        (b) 在RS上使用arptables;
        (c) 在RS上修改內核參數以限制arp通告及應答級別;
                 arp_ignore 限制響應級別

                0:默認值,表示可使用本地任意接口上配置的任意地址進行響應;
                1: 僅在請求的目標IP配置在本地主機的接收到請求報文接口上時,才給予響應;

             arp_announce  限制通告級別

                0:默認值,把本機上的所有接口的所有信息向每個接口上的網絡進行通告;
                1:盡量避免向非直接連接網絡進行通告;
                2:必須避免向非本網絡通告;

2、RS的RIP可以使用私網地址,也可以是公網地址;RIP與DIP在同一IP網絡;RIP的網關不能指向DIP,以確保響應報文不會經由Director;

3、同時RS跟Director要在同一個物理網絡;

4、請求報文要經由Director,但響應不能經由Director,而是由RS直接發往Client;

5、不支持端口映射;

大致拓撲圖如下:

lvs-dr

工作流程:

    客戶端發送對VIP的請求,通過網絡路由和交換機,將請求發送到Director,Director接受請求,經過負載均衡算法選取一臺RS,將RIP所在的網卡的MAC地址作為目標MAC,在局域網中進行ARP廣播,指定的RS收到請求,進行解析,之后將響應直接回饋給Client,不經過Director。


實驗,負載均衡wordpress:

    準備: VIP : 172.16.0.66

        Director: 172.16.251.73

        RS1: 172.16.252.137 

        RS2: 172.16.253.202

RS1、2中:

          先搭建amp環境yum install -y httpd php php-mysql php-mbstring php-mcrypt mariadb-server(最好rs共享mysql和使用分布式共享其他資源,使得訪問的數據相同,在這里先不考慮,詳情可查看之前的博客)

 配置數據庫:

    vim /etc/my.cnf.d/server.cnf

lvs-dr

systemctl start  mariadb.service

 mysql_secure_installation 加強數據庫安全性,為數據庫設置管理員密碼,并設定不可匿名訪問。

mysql -u root -p password 登錄數據庫創建,名為wordpress的數據庫

            CREATE DATABASE wordpress;

 編輯wordpress配置文件:

        cp wp-config-sample.php wp-config.php
        vim wp-config.php

    lvs-dr

chmod -R a+w wordpress/

配置httpd:

    在/var/www/html/下創建wordpress的軟連接 ln -s 源文件 目標文件

    vim /etc/httpd/conf.d/test.conf 根據需要進行配置

lvs-dr

啟動httpd服務 systemctl start httpd.service

配置RS網卡:ifconfig lo:0 172.16.0.66 netmask 255.255.255.255 broadcast 172.16.0.66 up

        echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
        echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
        echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
        echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

        route add -host 172.16.0.66 dev lo:0

Directory上:

        ifconfig ens33:0 172.16.0.66 netmask 255.255.255.255 broadcast 172.16.0.66 up

yum install -y ipvsadm

ipvsadm -A -t 172.16.0.66:80 -s rr

ipvsadm -a -t 172.16.0.66:80 -r 172.16.252.137 -g

ipvsadm -a -t 172.16.0.66:80 -r 172.16.253.202 -g

測試:

    在另外一臺172.16網域內的主機上

lvs-dr

在RS主機中 tail /var/log/httpd/access_log

lvs-dr



原創文章,作者:Immortals、zcy,如若轉載,請注明出處:http://www.www58058.com/78732

(1)
Immortals、zcyImmortals、zcy
上一篇 2017-06-28
下一篇 2017-06-29

相關推薦

  • linux下繪圖工具rrdtool

    一、前言       為了做云緩存平臺的技術儲備,從零開始學習了rrdtool,rrdtool非常強大,剛接觸會有摸不著邊的感覺,尤其是一堆概念性的東西。學習的切入點便是這些概念,一一理解后你才能品嘗到rrdtool的清香,首先要感謝ailms整理的“RRDtool簡體中文教程 v1.01”,通俗易…

    Linux干貨 2015-03-27
  • 馬哥教育網絡班21期+第六周課程練習

    1、描述計算機的組成及其功能 答: (1)計算機組成: 輸入(鍵盤)、輸出(顯示器),存儲器(硬盤),運算器,控制器(CPU) (2)實現功能:    1)文件系統    2)內存管理    3)網絡功能    4)進程管理    5)驅動程序 2、按系列羅列…

    Linux干貨 2016-08-15
  • awk學習筆記

        awk是一種模式掃描和處理工具,相對于grep的查找,sed的編輯,它在對數據進行分析生成報表時顯得尤為強大。awk通過逐行遍歷一個或多個文件的方式,查找模式匹配到的行,而后以指定的分隔符(缺省為空格)進行切片,然后針對切片數據進行處理和分析。事實上,gawk有自己的語言,其本身就相當于一個解釋器,允許用戶創建…

    Linux干貨 2015-08-04
  • Linux的用戶組和權限(二)

      一、1.passwd 設置密碼(類似usermod的用法)       passwd[OPTIONS] UserName:          修改指定用戶的密碼,僅root用戶有權限       …

    Linux干貨 2016-08-08
  • 二維碼的生成細節和原理

    二維碼又稱QR Code,QR全稱Quick Response,是一個近幾年來移動設備上超流行的一種編碼方式,它比傳統的Bar Code條形碼能存更多的信息,也能表示更多的數據類型:比如:字符,數字,日文,中文等等。這兩天學習了一下二維碼圖片生成的相關細節,覺得這個玩意就是一個密碼算法,在此寫一這篇文章 ,揭露一下。供好學的人一同學習之。 關于QR Code…

    Linux干貨 2016-08-15
  • 跟我一起學man page、history的使用,剖析FHS(文件系統目錄標準)

    跟我一起學man page、history的使用,剖析FHS(文件系統目錄標準) 描述 從Linux小白鼠成長為高(lao)高(hei)手(shu)的過程中,無論如何都要學會自個兒施法解決問題,法力的高深體現了解決問題的能力,這里的法力指的是在沒有互聯網的環境下如何使用man page或相關文檔找到命令的使用方法和配置文件的修改方法。本文第一部分總結了在Li…

    Linux干貨 2016-07-29
欧美性久久久久