最近公司新上了幾個mongodb的項目(單機版MongoDB),需要坐下監(jiān)控。之前有一個監(jiān)控模板,但是效果不好。于是重新去google了一把,有了如下記錄。
公司主營業(yè)務:成都網站制作、成都網站建設、移動網站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出旺蒼免費做網站回饋大家。單機版的參考 https://github.com/oscm/zabbix/tree/master/mongodb
實驗環(huán)境:
CentOS6.8 X86_64
Percona-server-mongodb-3.2.9
步驟:
1、將mongodb.sh這個腳本拷貝到/etc/zabbix/scripts下,修改下適合自己的環(huán)境
(我們線上mongodb沒有設置密碼,腳本里面也注釋掉了相關代碼),并chmod加執(zhí)行權限
#!/bin/bash
##################################################
#AUTHOR: Neo
#WEBSITE: http://www.netkiller.cn
#Description£ozabbix mongodb monitor
#Note£oZabbix 3.2
#DateTime: 2016-11-23
##################################################
# 我這里線上環(huán)境的mongodb沒有配置密碼,只是通過iptables限制訪問的IP
HOST=localhost
PORT=27017
#USER=monitor
#PASS=chen
index=$(echo$@ | tr " " ".")
#status=$(echo"db.serverStatus().${index}" |mongo -u ${USER} -p ${PASS} admin--port ${PORT}|sed -n '3p')
status=$(echo"db.serverStatus().${index}" |/usr/local/mongodb/bin/mongo admin--port ${PORT}|sed -n '3p')
#checkif the output contains "NumberLong"
if[[ "$status" =~ "NumberLong" ]];then
echo $status|sed -n 's/NumberLong(//p'|sed-n 's/)//p'
else
echo $status
fi
2、將userparameter_mongodb.conf拷貝到/etc/zabbix/zabbix_agentd.d下,具體內容如下:
UserParameter=mongodb.status[*],/etc/zabbix/scripts/mongodb.sh$1 $2 $3 $4 $5
3、在zabbix的web后臺導入監(jiān)控模板,并將mongodb主機和模板做關聯(lián)。
附件為上面提到的3個文件打包。
配好的監(jiān)控如下圖:
復制集版本的MongoDB的監(jiān)控模板在試驗中,沒問題后再貼出來。
附件:http://down.51cto.com/data/2366564另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。