如何預(yù)防keepalived腦裂問題,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

(1)可以采用第三方仲裁的方法。由于keepalived體系中主備兩臺機器所處的狀態(tài)與對方有關(guān)。如果主備機器之間的通信出了網(wǎng)題,就會發(fā)生腦裂,此時keepalived體系中會出現(xiàn)雙主的情況,產(chǎn)生資源競爭。
(2)一般可以引入仲裁來解決這個問題,即每個節(jié)點必須判斷自身的狀態(tài)。最簡單的一種操作方法是,在主備的keepalived的配置文件中增加check配置,服務(wù)器周期性地ping一下網(wǎng)關(guān),如果ping不通則認為自身有問題 。
(3)最容易的是借助keepalived提供的vrrp_script及track_script實現(xiàn)。如下所示:
#vim /etc/keepalived/keepalived.conf
......
vrrp_script check_local {
script "/root/check_gateway.sh"
interval 5
}
......
track_script {
check_local
}
腳本內(nèi)容:
# cat /root/check_gateway.sh
#!/bin/sh
VIP=$1
GATEWAY=192.168.1.1
/sbin/arping -I em1 -c 5 -s $VIP $GATEWAY &>/dev/null
check_gateway.sh 就是我們的仲裁邏輯,發(fā)現(xiàn)ping不通網(wǎng)關(guān),則關(guān)閉keepalived。
(4)檢測思路:正常情況下keepalived的VIP地址是在主節(jié)點上的,如果在從節(jié)點發(fā)現(xiàn)了VIP,就設(shè)置報警信息。腳本(在從節(jié)點上)如下:
vim split-brainc_check.sh
#!/bin/bash
# 檢查腦裂的腳本,在備節(jié)點上進行部署
LB01_VIP=192.168.1.229
LB01_IP=192.168.1.129
LB02_IP=192.168.1.130
while true
do
ping -c 2 -W 3 $LB01_VIP &>/dev/null
if [ $? -eq 0 -a `ip add|grep "$LB01_VIP"|wc -l` -eq 1 ];then
echo "ha is brain."
else
echo "ha is ok"
fi
sleep 5
done
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
標題名稱:如何預(yù)防keepalived腦裂問題-創(chuàng)新互聯(lián)
本文來源:http://chinadenli.net/article32/gegpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、定制網(wǎng)站、做網(wǎng)站、服務(wù)器托管、網(wǎng)站制作、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)