Rancher的4個(gè)監(jiān)控項(xiàng)

經(jīng)過(guò)長(zhǎng)期的生產(chǎn)實(shí)踐,我們發(fā)現(xiàn)Rancher 生產(chǎn)環(huán)境中經(jīng)常會(huì)遇到下面這4個(gè)問(wèn)題喊巍。 我們整理出了這個(gè)四個(gè)問(wèn)題發(fā)生的情景以及相關(guān)的監(jiān)控腳本膊畴,提供給需要的朋友們澄者。

4個(gè)監(jiān)控項(xiàng)

  1. ipsec 監(jiān)控
  2. 主機(jī) disconnect 監(jiān)控.
  3. stack unhealthy 監(jiān)控
  4. stack upgraded 監(jiān)控

監(jiān)控項(xiàng)對(duì)應(yīng)的腳本抚笔,以及如何部署

準(zhǔn)備工作

  1. 獲取 Rancher api:
    1. 打開(kāi) Rancher 其中一個(gè)環(huán)境.
    2. 在頂部菜單中選擇 API -> Keys扶认,點(diǎn)擊 “高級(jí)選項(xiàng)” -> “添加環(huán)境API KEY”
    3. 名稱(chēng)統(tǒng)一定為 monitor .
    4. 記錄下 Access Key 與 Secret Key
  2. 獲取Project ID
    1. 打開(kāi) Rancher 其中一個(gè)環(huán)境.
    2. 在頂部菜單中選擇 API -> Keys,點(diǎn)擊 “高級(jí)選項(xiàng)”
    3. 找到 端點(diǎn)殊橙,比如 http://rancher.wmcloud-qa.com/v2-beta/projects/1a5 , Proeject ID 即為 1a5

1. IPSEC 監(jiān)控

監(jiān)控原因

實(shí)際工作中辐宾,偶爾會(huì)出現(xiàn)主機(jī)之間的IPSEC 通道斷開(kāi),這會(huì)導(dǎo)致兩臺(tái)主機(jī)間的容器無(wú)法通信膨蛮, 在生產(chǎn)中一旦發(fā)生該故障叠纹, 則會(huì)出現(xiàn)非常嚴(yán)重的生產(chǎn)事故。

注意事項(xiàng)

  1. 所有Rancher主機(jī)都需要部署該監(jiān)控
  2. 報(bào)警策略是敞葛,輸出值改變即觸發(fā) S1 報(bào)警

監(jiān)控腳本

#!/bin/bash
c_id=`docker ps | grep ipsec-router | awk -F' ' '{ print $1 }'`
#echo $c_id

n=`docker exec $c_id swanctl -S | grep IKE_SAs | awk -F' ' '{ print $2 }'`
echo $n

2.主機(jī) disconnect 監(jiān)控

監(jiān)控原因

很多原因會(huì)觸發(fā)Rancher主機(jī)disconnect誉察, 譬如 CPU 用滿(mǎn), 內(nèi)存用滿(mǎn)惹谐, 網(wǎng)絡(luò)用滿(mǎn)持偏, 磁盤(pán)用滿(mǎn),系統(tǒng)load過(guò)高豺鼻, CPU上下文切換過(guò)高。 一旦發(fā)生Rancher 主機(jī) disconnect 就表明系統(tǒng)資源的使用已經(jīng)出現(xiàn)嚴(yán)重問(wèn)題款慨, 需要運(yùn)維人員手工緊急處理.

注意事項(xiàng)

  1. 每一個(gè)Rancher Environment 需要一套 Access Key 與 Secret Key.
  2. 腳本名稱(chēng) prod-respool-disconnect-monitor.sh
  3. 腳本內(nèi)容, 需要修改的地方有 RANCHER_URL, RANCHER_ACCESS_KEY, RANCHER_SECRET_KEY, PROJECT_ID
  4. 報(bào)警策略是輸出非0 即觸發(fā) S1報(bào)警

監(jiān)控腳本

RANCHER_URL=rancher.wmcloud.com
RANCHER_ACCESS_KEY=*****
RANCHER_SECRET_KEY=*****
# get project ID easily from the URL when you're in dashboard
PROJECT_ID=1a163

# get all disconnected hosts (YELLOW)
list=`curl -s -k -u "${RANCHER_ACCESS_KEY}:${RANCHER_SECRET_KEY}" \
  "https://${RANCHER_URL}/v2-beta/projects/${PROJECT_ID}/hosts" \
  | jq '.data[] |  select(.state | contains("disconnected"))'  | jq -r .hostname `


if [[ "X${list}" == "X" ]];
then 
   echo '0'
   exit 0 
else
   echo ${list}
   exit 127
fi

3. Stack unhealthy 監(jiān)控

監(jiān)控原因

出現(xiàn)Stack unhealthy 的情況很多儒飒,比如 應(yīng)用程序啟動(dòng)失敗, 對(duì)某個(gè)目錄權(quán)限不足檩奠, 依賴(lài)的服務(wù)沒(méi)有啟動(dòng)桩了,Rancher主機(jī)故障等等。 無(wú)論哪一種情況埠戳,都表示Stack 處于非正常工作狀態(tài)井誉,需要運(yùn)維人員立即進(jìn)行處理。

注意事項(xiàng)

  1. 每一個(gè)Rancher Environment 需要一套 Access Key 與 Secret Key.
  2. 腳本名稱(chēng) prod-respool-stack-unhealthy-monitor.sh
  3. 腳本內(nèi)容, 需要修改的地方有 RANCHER_URL, RANCHER_ACCESS_KEY, RANCHER_SECRET_KEY, PROJECT_ID
  4. 報(bào)警策略是輸出非0 即觸發(fā) S1報(bào)警

監(jiān)控腳本

#!/bin/bash

RANCHER_URL=rancher.wmcloud.com
RANCHER_ACCESS_KEY=***
RANCHER_SECRET_KEY=***

# get project ID easily from the URL when you're in dashboard
PROJECT_ID=1a163

# get all disconnected hosts (YELLOW)
list=`curl -s -k -u "${RANCHER_ACCESS_KEY}:${RANCHER_SECRET_KEY}" \
  "https://${RANCHER_URL}/v2-beta/projects/${PROJECT_ID}/stacks" \
  | jq '.data[] |  select(.healthState != "healthy")'  | jq -r .name `


if [[ "X${list}" == "X" ]];
then 
   echo '0'
   exit 0 
else
   echo '1'
   exit 127
fi

4. Stack upgrade 狀態(tài)監(jiān)控

監(jiān)控原因

rancher 有一個(gè)bug整胃, 當(dāng)stack處于 upgraded 狀態(tài)時(shí)颗圣,如果主機(jī)重啟, 處于 upgraded 狀態(tài)的service 都會(huì)處于stop 狀態(tài),并且無(wú)法自動(dòng)恢復(fù)在岂。 upgraded 狀態(tài)存在的意義在于方便運(yùn)維進(jìn)行回滾奔则,因此在監(jiān)控時(shí),保留24小時(shí)的緩沖時(shí)間

注意事項(xiàng)

  1. 每一個(gè)Rancher Environment 需要一套 Access Key 與 Secret Key.
  2. 腳本名稱(chēng) prod-respool-stack-unhealthy-monitor.sh
  3. 腳本內(nèi)容, 需要修改的地方有 RANCHER_URL, RANCHER_ACCESS_KEY, RANCHER_SECRET_KEY, PROJECT_ID
  4. 報(bào)警策略是輸出非0 ,并且持續(xù)24小時(shí)后蔽午,即觸發(fā) S2報(bào)警

監(jiān)控腳本

#!/bin/bash

RANCHER_URL=rancher.wmcloud.com
RANCHER_ACCESS_KEY=***
RANCHER_SECRET_KEY=***

# get project ID easily from the URL when you're in dashboard
PROJECT_ID=1a163

# get all disconnected hosts (YELLOW)
list=`curl -s -k -u "${RANCHER_ACCESS_KEY}:${RANCHER_SECRET_KEY}" \
  "https://${RANCHER_URL}/v2-beta/projects/${PROJECT_ID}/stacks" \
  | jq '.data[] |  select(.state == "upgraded")'  | jq -r .name `


if [[ "X${list}" == "X" ]];
then 
   echo 0
   exit 0 
else
   echo 1
   exit 127
fi
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末易茬,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子及老,更是在濱河造成了極大的恐慌抽莱,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件骄恶,死亡現(xiàn)場(chǎng)離奇詭異食铐,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)叠蝇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)璃岳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人悔捶,你說(shuō)我怎么就攤上這事铃慷。” “怎么了蜕该?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵犁柜,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我堂淡,道長(zhǎng)馋缅,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任绢淀,我火速辦了婚禮萤悴,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘皆的。我一直安慰自己覆履,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布费薄。 她就那樣靜靜地躺著硝全,像睡著了一般。 火紅的嫁衣襯著肌膚如雪楞抡。 梳的紋絲不亂的頭發(fā)上伟众,一...
    開(kāi)封第一講書(shū)人閱讀 51,182評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音召廷,去河邊找鬼凳厢。 笑死账胧,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的数初。 我是一名探鬼主播找爱,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼泡孩!你這毒婦竟也來(lái)了车摄?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤仑鸥,失蹤者是張志新(化名)和其女友劉穎吮播,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體眼俊,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡意狠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了疮胖。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片环戈。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖澎灸,靈堂內(nèi)的尸體忽然破棺而出院塞,到底是詐尸還是另有隱情,我是刑警寧澤性昭,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布拦止,位于F島的核電站,受9級(jí)特大地震影響糜颠,放射性物質(zhì)發(fā)生泄漏汹族。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一其兴、第九天 我趴在偏房一處隱蔽的房頂上張望顶瞒。 院中可真熱鬧,春花似錦元旬、人聲如沸榴徐。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)箕速。三九已至酪碘,卻和暖如春朋譬,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背兴垦。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工徙赢, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留字柠,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓狡赐,卻偏偏與公主長(zhǎng)得像窑业,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子枕屉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353