日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

lvs-dr模式原理详解和可能存在的“假负载均衡”

發布時間:2023/12/10 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 lvs-dr模式原理详解和可能存在的“假负载均衡” 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文地址:?http://blog.csdn.net/lengzijian/article/details/8089661

lvs-dr模式原理

轉載注明出處:http://blog.csdn.net/lengzijian/article/details/8089661

先附上一張原理圖:

為了更清晰的表述lvs-dr原理,我們用tcpdump工具打印出tcp數據,查看mac地址的更改情況,繪制出如下的時序圖;

圖1表示201收到轉發消息,圖2表示200收到轉發請求(下面兩張為錯誤的圖,錯誤的理由下面會詳細解釋)

上面的信息全部用tcpdump命令取得(tcpdump? -e -X-A -n -s 10000 port 80;具體含義這里就不詳細講解了),用上述命令分別在149、200、201上執行。

圖只是輔助理解,剛開始不用研究太深入??梢愿鶕旅娴闹v解慢慢體會。

首先,從兩幅圖中我們都能看到這樣的流程:

TCP建立(三次握手)->交換機發送請求->服務器響應請求->TCP連接斷開(四次揮手)

下面解答和分享下我所遇到的問題:

問題1:按照我之前對負載均衡的理解,應該是149收到交換機發來的消息,然后轉發給201或者200,為什么是201先收到交換機發來的數據,然后轉發到149呢?

這個問題也困擾了我好久,后來我把201網線斷掉之后,重新嘗試,發現149和200都沒有收到交換機發過來的消息,心想應該是被交換機緩存了(猜測)。之后把服務全停掉,重新設置lvs配置,然后重啟。之后看到的tcp流,就和預想中的一樣。

當200接收到消息時,只有149和200會收到tcp流信息。同理201;

有人會說我這是多此一舉,花了這么久的圖,最后還是錯的。其實不是這樣。起碼以后我知道如何查看tcp是否正常,表面上看lvs轉發消息時正常的,其實tcp流多走了幾步。表面上是負載均衡,其實一臺realserver負載非常高。。。。這里可能會導致很多問題。

有人想要正常的tcp流圖,這里本人不想再多畫了,如果有時間再補上吧??梢园凑丈厦娴膱D,把交換機接受的數據移植到149上,就是正常的圖啦。

下面補上正確的lvs-er模式的tcp流圖,201收到消息時同理:

有了正確的圖理解原理更加方便了。

問題2:vs-dr如何轉發消息的?

由上圖3中第二步驟可以看出,director接受到交換機的請求,然后根據算法選取一臺realserver,并且把包轉發過去,realserver接收到包后,直接把結果返回給交換機,而沒有走director。

具體步驟:

1.????接收到源mac地址為38:22:d6:6c:07:5d,目的地址為00:1A:4D:8C:FA:D5。源ip為192.168.0.237、目的ip為192.168.30.149

2.????vs根據負載均衡,把源mac地址改為00:1A:4D:8C:FA:D5,目的地址改為00:26:18:45:D7:88。源ip和目的ip都不變

3.????realserver(00:26:18:45:D7:88)接收到請求,做出響應。源ip改為192.168.30.149,目的ip改為192.168.0.237

4.????realserver的消息源mac為00:26:18:45:D7:88,目的mac地址為38:22:d6:6c:07:5d。所以跳過了149,直接返回客戶端請求的信息。

今天畫圖畫累了,明天有空再講下具體配置問題。。。

轉載于:https://www.cnblogs.com/AloneSword/p/3935897.html

總結

以上是生活随笔為你收集整理的lvs-dr模式原理详解和可能存在的“假负载均衡”的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。