在知曉和定位故障以后,結下來就是分析和處理故障。Lvs負載均衡故障點可分為:負載均衡器故障、真實服務器故障、vip故障、服務故障這幾個部分。這些故障出現后,怎么著手處理?下面分別論述之。
◆負載均衡器發生故障的檢查點
1、 查看系統日志 /var/log/messages ,了解內核是否有報錯信息。因為keepalived的日志也被追加到系統日子,因此通過系統日志,也能了解keepalived的運行情況。
2、 檢查負載均衡器的網絡連通狀況。這包括ip地址的設置是否正確,是否能遠程訪問(如ping 、tracert等)。
3、 檢查keepalived的運行情況。這包括進程是否處于運行中,ipvs模塊是否被加載到系統的內核,vip是否被綁定到網絡接口,ipvsadm是否有輸出。
4、 檢查負載均衡器的系統負載。
5、 檢查keepalived的配置文件書寫是否正確。因為keepalived啟動過程不對配置文件做語法檢查,因此在運行前,必須按需求表逐項檢查配置文件keepalived.conf 的內容。有時,就可能就是因為漏寫了一個"}"符號而導致意外的結果。配置文件的內容檢查還包括主從優先級priority、虛擬路由標識virtual_router_id、路由標識router_id等幾個部分,這些值有些是必須相同的、有些則必須不同。
6、 檢查負載均衡器是否啟用防火墻規則。
◆真實服務器發生故障的檢查點
1、 查看系統日志 /var/log/messages ,了解內核是否有報錯信息。
2、 檢查服務器的網絡連通狀況。
3、 檢查服務是否正常運行。可以結合察看進程、模擬用戶訪問來確定。
4、 檢查服務器的負載情況,看哪些進程占用較高的資源。如果暫停占資源高的進程,情況會怎么樣?
5、 檢查vip是否被綁定。Linux只能通過ip add 指令察看,freebsd 用ifconfig就可以了。
6、 檢查主機防火墻是否被啟用。如果需要啟用主機防火墻,則應設置好過濾規則。
7、 從客戶端直接訪問服務器的服務,看是否能正常訪問。這是dr模式的一個優點。
◆vip發生故障的檢查點
1、 檢查負載均衡器的vip是否被綁定。
2、 檢查負載均衡器ipvsadm的輸出,察看輸出的vip項是否與我們的設定相一致。
3、 檢查各真實服務器的vip是否被綁定。
4、 從客戶端測試一下vip的連通情況,如ping vip。
5、 檢查vip地址是否與其它服務器的地址相沖突。
◆服務發生故障檢查點
1、 檢查服務是否正常運行。如查進程、模擬用戶訪問等。
2、 檢查系統的負載情況。
3、 檢查是否啟用主機防火墻。
一旦知道問題的所在,解決Lvs負載均衡故障本身就不再是什么困難的事情了,因此這里不再一一列舉對應的解決方法。