日常Zabbix報(bào)警案例中,大多都是報(bào)警發(fā)送郵件,場(chǎng)景里很少有需要報(bào)警后執(zhí)行一個(gè)命令(啟動(dòng)服務(wù)、清空磁盤(pán)空間、關(guān)停服務(wù)器);而今天就給大家講講最近需要做的事:報(bào)警后執(zhí)行遠(yuǎn)程命令
為朝天等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及朝天網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、朝天網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
首先講講需求吧, 遙遠(yuǎn)的一天,小伙伴們用上了MongoDB,而且需要大力使用,日后一些數(shù)據(jù)存儲(chǔ)在mongodb;從生產(chǎn)環(huán)境遷移數(shù)據(jù)進(jìn)mongodb,那么問(wèn)題來(lái)了,經(jīng)常聽(tīng)到別人說(shuō),mongodb量大就掛了。mongodb有些數(shù)據(jù)是在程序當(dāng)中被引用到,白天某個(gè)時(shí)刻掛了,那么用戶、客服、運(yùn)營(yíng)就呼喚著了。。團(tuán)隊(duì)中也在查問(wèn)題,找原因,請(qǐng)教大神,升級(jí)版本,可還是掛了。。 目前掛了就是在啟動(dòng)。。 小伙伴們不可能時(shí)常和電腦在一起,有時(shí)需要和妹紙?jiān)谝黄鹫{(diào)情啦、上高地啦。剛好zabbix動(dòng)作中有個(gè)遠(yuǎn)程命令功能,那么就通過(guò)它來(lái)解決問(wèn)題。。
遠(yuǎn)程命令整個(gè)過(guò)程: items -> triggers -> action -> remote commands
配置過(guò)程:
1.創(chuàng)建一個(gè)mongodb items
Configuration -> Hosts > Items
2.配置mongodb triggers
Configuration -> Hosts > Triggers
3.配置遠(yuǎn)程命令的actions
Configuraction -> Actions
條件選擇觸發(fā)器值為PROBLEM、觸發(fā)器為上面的mongodb觸發(fā)器
執(zhí)行次數(shù)為5次,每次間隔60秒
操作類型為:遠(yuǎn)程命令
類型為:自定義腳本
命令:具體的指令。內(nèi)容將貼在下面。
至此整個(gè)過(guò)程都配完了,,但是現(xiàn)在mongodb掛了,actions會(huì)執(zhí)行啟動(dòng)mongodb命令么。? 肯定不會(huì)。
遠(yuǎn)程命令前提條件,需要在配置文件開(kāi)啟遠(yuǎn)程命令參數(shù),并啟動(dòng)agentd。
echo 'EnableRemoteCommands=1' >> /usr/local/zabbix/zabbix_agentd.conf
/etc/init.d/zabbix_agentd restart
#注意,遠(yuǎn)程命令不支持在zabbix agentd active模式。。切記。。
腳本內(nèi)容:
cat /usr/local/mongodb/start_mongod.sh
#!/bin/bash
/usr/local/mongodb/mongod -f /usr/local/mongodb/mongod.conf >> /tmp/start.log
#注意,zabbix啟動(dòng)用戶,需要能執(zhí)行上述命令,也就是需要sudo賦權(quán)
那么現(xiàn)在,已經(jīng)全部完成,總結(jié)一下配置過(guò)程
1.在agentd配置文件中開(kāi)啟EnableRemoteCommands參數(shù)
2.配置actions里的Remote Comand
3.Commands里的腳本制作
故障演示
干掉mongodb
#killall mongod
過(guò)了采集時(shí)間,zabbix將會(huì)把triggers置為problem,同時(shí)觸發(fā)actions。記錄里顯示如下
Administration -> Audit -> Actions
如果配置正確,那么audit一定會(huì)產(chǎn)生一條remote commnad記錄。
有誤1,Audit無(wú)記錄,查下配置文件、actions配置
有誤2,Audit有記錄,但mongodb卻未啟動(dòng),腳本有問(wèn)題,調(diào)試一下。。
希望這篇文章能幫助大家,tks。 - -