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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

heartbeat自带的断网切换功能-ipfail

發(fā)布時(shí)間:2025/3/19 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 heartbeat自带的断网切换功能-ipfail 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、我們一直以來用的heartbeat

大家用heartbeat做雙機(jī)熱備已經(jīng)都做過很多次很熟悉了,而且配置起來其實(shí)也可以說是比較容易的.但是,說實(shí)話我們雙機(jī)配置起來以后能實(shí)現(xiàn)的功能其實(shí)比較簡單,只有在主服務(wù)器down掉或者主服務(wù)器的heartbeat服務(wù)停掉才可以切換,如果要想監(jiān)控某個(gè)進(jìn)程只有靠腳本。


二、遇到的問題

前一段時(shí)間給國電做雙機(jī),國電說我們的雙機(jī)只有在主服務(wù)器down掉或者主服務(wù)器的heartbeat服務(wù)停掉才可以切換,功能太簡單了,他們需要在主服務(wù)器的網(wǎng)卡壞掉也可以切換,雖然國電的一直比較事多,但是這個(gè)要求也算在情理之中,當(dāng)時(shí)我沒有答應(yīng)他們,但是回來卻覺得這個(gè)功能heartbeat應(yīng)該可以實(shí)現(xiàn),但是問了技術(shù)部的兄弟們,說以前都沒有做過,只是通過自己寫shell腳本實(shí)現(xiàn)過。我相信寫腳本也可以很好的實(shí)現(xiàn)這個(gè)功能,但是我想heartbeat這么一個(gè)大名鼎鼎的開原雙機(jī)熱備的軟件怎么會(huì)沒有這個(gè)簡單,而不可缺少的功能呢?于是經(jīng)過我查找資料,以及試驗(yàn),終于找到了heartbeat自帶的斷網(wǎng)切換的工具-ipfail。我就把具體的實(shí)現(xiàn)方法寫給大家,希望大家以后可以用的到。


三、ipfail斷網(wǎng)切換的原理

? 關(guān)于ipfail這個(gè)斷網(wǎng)切換的原理很簡單,首先heartbeat要判斷自己的網(wǎng)絡(luò)是否正常其實(shí)就是通過ping某個(gè)ip,如果可以ping的通,說明網(wǎng)絡(luò)是通的,如果ping不通了,說明是網(wǎng)絡(luò)斷了,或者是主服務(wù)器的網(wǎng)卡壞了,然后執(zhí)行切換的動(dòng)作。

但是如果是被ping的那個(gè)ip的網(wǎng)卡出問題了怎么辦呢,那豈不是也造成了誤切換?所幸heartbeat想到了這種情況,而提供了ping group的功能,就是讓heartbeat同時(shí)ping兩個(gè)或者兩個(gè)以上的ip,如果所有的都ping不通了,ipfail才認(rèn)為是主服務(wù)器的網(wǎng)絡(luò)斷了,或是網(wǎng)卡壞了。

? 然而在大多數(shù)的一般情況下我們ping一個(gè)ip也是可以的,因?yàn)槲覀兛梢园堰@個(gè)ip設(shè)置成我們這個(gè)網(wǎng)絡(luò)中default gateway(默認(rèn)網(wǎng)關(guān))的ip,因?yàn)槿绻悄J(rèn)網(wǎng)關(guān)的網(wǎng)卡壞了,即便是誤切換也無所謂了,默認(rèn)網(wǎng)關(guān)壞了那么我們的服務(wù)是怎么也不可能被訪問到了。

下邊我會(huì)對 ping 一個(gè)ip和ping group的功能及配置方法一一介紹。

四、ipfail的配置與使用

我們要使用ipfail這個(gè)斷網(wǎng)切換的功能,只要在ha.cf這個(gè)配置文件中配置即可,下面我把和ipfail相關(guān),以及和斷網(wǎng)切換功能相關(guān)的配置文件行給列出:


#ping 10.10.10.254

#ping 172.16.103.254

#

# ? ? ? Treats 10.10.10.254 and 10.10.10.253 as a psuedo-cluster-member

# ? ? ? called group1. If either 10.10.10.254 or 10.10.10.253 are up

# ? ? ? then group1 is up

# ? ? ? Used together with ipfail below...

#

#ping_group group1 172.16.103.254 172.16.103.212

#ping_group group1 10.0.0.200 10.0.0.202 10.0.0.178

#ping_group group1 172.16.103.254 172.16.103.32

#

# ? ? ? Processes started and stopped with heartbeat. Restarted unless

# ? ? ? ? ? ? ? they exit with rc=100

#

#respawn userid /path/name/to/run

#respawn hacluster /usr/ha/lib/heartbeat/ipfail

#respawn hacluster ? ? /usr/local/lib/heartbeat/ipfail

#

# ? ? ? Access control for client api

# ? ? ? ? ? ? ? default is no access

#

#apiauth client-name gid=gidlist uid=uidlist

#apiauth ipfail gid=haclient uid=hacluster


1.配置文件中有很多英文的解釋以及示例被#號注釋,供參考,我們使用ipfail時(shí)只要去掉相應(yīng)的#號即可,下面寫出ping一個(gè)ipipfail配置:


ping 172.16.103.254

respawn hacluster ? ? /usr/local/lib/heartbeat/ipfail

apiauth ipfail gid=haclient uid=hacluster


只有這3行,非常簡單,只要寫在ha.cf重啟動(dòng)heartbeat服務(wù)就可以生效了,我來解釋一下這3行配置文件的意思:


ping 172.16.103.254

一般是ping網(wǎng)關(guān),告訴ipfail網(wǎng)絡(luò)是否暢通。


respawn hacluster ? ? /usr/local/lib/heartbeat/ipfail

這句就是指定斷網(wǎng)切換的程序文件路徑,我們一定要給出正確的路徑,一般情況下,這個(gè)ipfail文件會(huì)在heartbeat安裝目錄下的lib/heartbeat/子文件夾下,確認(rèn)好以后我們給出正確的路徑, 其中hacluster是一個(gè)uid,是以hacluster這個(gè)用戶身份運(yùn)行ipfail。


apiauth ipfail gid=haclient uid=hacluster

是指定對ipfail有權(quán)限的用戶和組




2.ping一個(gè)groupipfail配置:


ping_group group1 172.16.103.254 172.16.103.212

respawn hacluster ? ? /usr/local/lib/heartbeat/ipfail

apiauth ipfail gid=haclient uid=hacluster


ping_group group1 172.16.103.254 172.16.103.212

這個(gè)就是同時(shí)ping多個(gè)ip,只有所有的ip都無法ping通時(shí),ipfail才會(huì)執(zhí)行切換的動(dòng)作,保證了不會(huì)是因?yàn)楸籶ing的ip出了問題而產(chǎn)生誤切換。


后邊兩句前面說過了,不再解釋了。



最后需要注意的是不要把ping 和ping group 這兩行同時(shí)寫出來,寫ping的內(nèi)容時(shí),要保證ping group是注釋的,寫ping group時(shí),要保證ping那行是注釋著的,否則會(huì)出問題的, 切換運(yùn)行不正常。


轉(zhuǎn)載于:https://blog.51cto.com/lucifer119/1338212

總結(jié)

以上是生活随笔為你收集整理的heartbeat自带的断网切换功能-ipfail的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。