一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

keepalived之vrrp_script詳解

 牽牛吃草 2016-06-04
nopreempt通常情況下,利用keepalived做熱備,其中一臺(tái)設(shè)置為master,一臺(tái)設(shè)置為backup。當(dāng)master出現(xiàn)異常后,backup自動(dòng)切換為master。當(dāng)backup成為master后,master恢復(fù)正常后會(huì)再次搶占成為master,導(dǎo)致不必要的主備切換。因此可以將兩臺(tái)keepalived初始狀態(tài)均配置為backup,設(shè)置不同的優(yōu)先級(jí),優(yōu)先級(jí)高的設(shè)置nopreempt解決異常恢復(fù)后再次搶占的問(wèn)題。

然而keepalived只能做到對(duì)網(wǎng)絡(luò)故障和keepalived本身的監(jiān)控,即當(dāng)出現(xiàn)網(wǎng)絡(luò)故障或者keepalived本身出現(xiàn)問(wèn)題時(shí),進(jìn)行切換。但是這些還不夠,我們還需要監(jiān)控keepalived所在服務(wù)器上的其他業(yè)務(wù)進(jìn)程,根據(jù)業(yè)務(wù)進(jìn)程的運(yùn)行狀態(tài)決定是否需要進(jìn)行主備切換。這個(gè)時(shí)候,我們可以通過(guò)編寫(xiě)腳本對(duì)業(yè)務(wù)進(jìn)程進(jìn)行檢測(cè)監(jiān)控。

例如編寫(xiě)個(gè)簡(jiǎn)單腳本查看haproxy進(jìn)程是否存活

#!/bin/bash
count = `ps aux | grep -v grep | grep haproxy | wc -l`
if [ $count > 0 ]; then
    exit 0
else
    exit 1
fi

在keepalived的配置文件中增加相應(yīng)配置項(xiàng)

vrrp_script checkhaproxy
{
    script "/home/check.sh"
    interval 3
    weight -20
}

vrrp_instance test
{
    ...
    
    track_script
    {
        checkhaproxy
    }
    
    ...
}


keepalived會(huì)定時(shí)執(zhí)行腳本并對(duì)腳本執(zhí)行的結(jié)果進(jìn)行分析,動(dòng)態(tài)調(diào)整vrrp_instance的優(yōu)先級(jí)。

如果腳本執(zhí)行結(jié)果為0,并且weight配置的值大于0,則優(yōu)先級(jí)相應(yīng)的增加

如果腳本執(zhí)行結(jié)果非0,并且weight配置的值小于0,則優(yōu)先級(jí)相應(yīng)的減少

其他情況,維持原本配置的優(yōu)先級(jí),即配置文件中priority對(duì)應(yīng)的值。

這里需要注意的是:

1) 優(yōu)先級(jí)不會(huì)不斷的提高或者降低

2) 可以編寫(xiě)多個(gè)檢測(cè)腳本并為每個(gè)檢測(cè)腳本設(shè)置不同的weight

3) 不管提高優(yōu)先級(jí)還是降低優(yōu)先級(jí),最終優(yōu)先級(jí)的范圍是在[1,254],不會(huì)出現(xiàn)優(yōu)先級(jí)小于等于0或者優(yōu)先級(jí)大于等于255的情況

這樣可以做到利用腳本檢測(cè)業(yè)務(wù)進(jìn)程的狀態(tài),并動(dòng)態(tài)調(diào)整優(yōu)先級(jí)從而實(shí)現(xiàn)主備切換。


但是利用該方式會(huì)存在一個(gè)問(wèn)題,例如:A,B兩臺(tái)keepalived

A的配置大概為:

vrrp_script checkhaproxy
{
    script "/etc/check.sh"
    interval 3
    weight -20

}

vrrp_instance test
{
    ....
    
    state backup
    priority 80
    nopreempt

    track_script
    {
        checkhaproxy
    }

    ....
}
B的配置大概為:
vrrp_script checkhaproxy
{
    script "/etc/check.sh"
    interval 3
    weight -20
}

vrrp_instance test
{
    ....
    
    state backup
    priority 70

    track_script
    {
        checkhaproxy
    }

    ....
}
A,B同時(shí)啟動(dòng)后,由于A(yíng)的優(yōu)先級(jí)較高,因此通過(guò)選舉會(huì)成為master。當(dāng)A上的業(yè)務(wù)進(jìn)程出現(xiàn)問(wèn)題時(shí),優(yōu)先級(jí)會(huì)降低到60。此時(shí)B收到優(yōu)先級(jí)比自己低的vrrp廣播包時(shí),將切換為master狀態(tài)。那么當(dāng)B上的業(yè)務(wù)出現(xiàn)問(wèn)題時(shí),優(yōu)先級(jí)降低到50,盡管A的優(yōu)先級(jí)比B的要高,但是由于設(shè)置了nopreempt,A不會(huì)再搶占成為master狀態(tài)。

所以,可以在檢測(cè)腳本中增加殺掉keepalived進(jìn)程(或者停用keepalived服務(wù))的方式,做到業(yè)務(wù)進(jìn)程出現(xiàn)問(wèn)題時(shí)完成主備切換。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多

    国产中文字幕一区二区| 精品久久少妇激情视频| 国产精品午夜福利在线观看| 亚洲一区二区精品久久av| 五月天六月激情联盟网| 中文字幕日韩欧美一区| 视频一区二区 国产精品| 亚洲视频在线观看你懂的| 成人精品网一区二区三区| 亚洲精品中文字幕欧美| 高清一区二区三区四区五区| 日韩性生活视频免费在线观看 | 偷拍美女洗澡免费视频| 国产亚洲精品俞拍视频福利区| 国产欧美日韩在线一区二区| 老司机精品福利视频在线播放| 国产午夜福利在线观看精品| 91精品视频全国免费| 国产成人免费高潮激情电| 国产老熟女超碰一区二区三区| av一区二区三区天堂| 国产福利在线播放麻豆| 中文字幕亚洲视频一区二区| 成人你懂的在线免费视频| 日韩成人中文字幕在线一区| 99精品国产自在现线观看| 亚洲男女性生活免费视频| 欧美日韩欧美国产另类| 一级片二级片欧美日韩| 亚洲综合日韩精品欧美综合区| 国产伦精品一区二区三区精品视频| 国产免费自拍黄片免费看| 好吊色免费在线观看视频| 日本久久中文字幕免费| 女同伦理国产精品久久久| 内用黄老外示儒术出处| 欧美一二三区高清不卡| 丰满少妇高潮一区二区| 天堂热东京热男人天堂| 精品国产亚洲免费91| 日本三区不卡高清更新二区|