WAF+SLB负载不均衡案例分享
問題演變過程
時間點1:高防+WAF+SLB+2臺ECS
時間點2:高防+WAF+SLB+4臺ECS
問題描述
在時間點1時,沒有發現明顯的負載不均衡的情況。在時間點2時,出現大部分請求都打到了其中一臺ECS上。需要定位問題原因
問題梳理
- 問題鏈路
是SLB后端的ECS出現負載不均衡的請求,那么直接影響這個轉發算法的,是WAF以及SLB。那么和高防沒有關系了。
-
配置情況
- SLB:TCP監聽,WRR轉發算法,開啟會話保持
- WAF:無特殊配置,域名直接回源負載均衡IP
問題點1:輪詢算法+會話保持
措施:嘗試修改輪詢算法為WLC,會話保持時間調短。
然而這個優化措施效果并不明顯,由于開啟了會話保持,那原有負載不均衡的情況下,調整WRR算法到WLC的算法,沒有實現預期的WLC。
但是從另外一個角度來說,如果源IP非常分散的場景下,即使有會話保持,理論上還是應該在經過一個較長的時間段之后,依然能夠到達均衡。
這里由于是使用WAF的回源地址進行訪問,所以對負載均衡來說,客戶端的公網IP地址是固定的,一直是固定的幾個;從而調整WLC+會話保持的調整收效甚微。
問題點2:會話保持模板刷新問題
措施:嘗試關閉會話保持。
稍有成效:關閉會話保持后,經過一段時間的通信,4臺ECS初步的開始均衡,但是到了一個固定值之后;沒有繼續均衡,一直保持著1:2的狀態。
這里有2個知識點:
1、WLC算法的計數開始是從調整為這個算法的時間點開始的;那么如果歷史開始就出現不均衡,那么開啟后還是會不均衡的。
2、由于WAF的回源地址與SLB的通信一直在,沒有斷過所以歷史的會話保持的效果依然存在,已經會話保持的IP,依然會發給對應負載均衡的RS,導致不均衡。
推薦的解法為:使用負載均衡的權重功能,將連接數多的機器的權重調低,待4臺機器的連接數基本均衡后,將RS的權重都調整為一致。
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的WAF+SLB负载不均衡案例分享的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 函数运行环境系统动态链接库版本太低?函数
- 下一篇: SLS机器学习介绍(02):时序聚类建模