cacti 批量監控

說明:這個暫時只能針對linux客戶端進行操做,win端的暫無php

#!/bin/bash
#cacti的cli路徑
path="/var/www/cacti/cli"
cd $path
#配置一些因人、機器而異的選項
tree_id=1                   #樹id(tree_id,查看cacti中的樹狀況: php add_tree.php --list-trees)
community_name=public       #監控的項目名稱
network1=eth0               #網卡名稱,這裏配置兩個網卡
network2=eth1
#默認客戶端主機ip在ips.txt文本里面,也能夠單臺操做,即$1參數爲客戶端ip
case $1 in
    *.*.*.*)
        host_ips=$1
        ;;
    *)
        host_ips=`cat ips.txt`
        ;;
esac
for host_ip in $host_ips
do
        #添加cacti設備
        #template爲Host Template(ucd/net SNMP Host),avail爲Downed Device Detection(SNMP),具體可查看:php add_device.php
        php add_device.php --description="$host_ip" --ip="$host_ip" --template=3 --avail=snmp --version=2 --community=$community_name
        #讀取設備ID
        host_ids=`php add_graphs.php --list-hosts | grep $host_ip | awk -F " " '{print $1}'`
        #圖像模板只有兩種,cg爲基本圖像,ds爲定製圖像,eg:網卡,磁盤
        #graph-template-id爲【Associated Graph Templates】和【Associated Data Queries】裏的選項,具體可查看:php add_graphs.php --list-graph-templates
        #建立模板圖像
        php add_graphs.php --host-id="$host_ids" --graph-type=cg --graph-template-id=4      #4爲:ucd/net - CPU Usage
        php add_graphs.php --host-id="$host_ids" --graph-type=cg --graph-template-id=11     #11爲:ucd/net - Load Average
        php add_graphs.php --host-id="$host_ids" --graph-type=cg --graph-template-id=13     #13爲:ucd/net - Memory Usage
        #建立網卡數據圖像
        #可根據機器具體狀況添加,查看:php add_graphs.php --host-id="$host_ids" --snmp-field=ifDescr --list-snmp-values
        php add_graphs.php --host-id="$host_ids" --graph-type=ds --graph-template-id=2 --snmp-query-id=1 --snmp-query-type-id=16 --snmp-field=ifDescr --snmp-value=$network1
        php add_graphs.php --host-id="$host_ids" --graph-type=ds --graph-template-id=2 --snmp-query-id=1 --snmp-query-type-id=16 --snmp-field=ifDescr --snmp-value=$network2
        #建立分區數據圖像
        #可根據機器具體狀況添加,查看:php add_graphs.php --host-id="$host_ids" --snmp-field=hrStorageDescr --list-snmp-values
        php add_graphs.php --host-id="$host_ids" --graph-type=ds --graph-template-id=26 --snmp-query-id=8 --snmp-query-type-id=18 --snmp-field=hrStorageDescr --snmp-value="/"
        php add_graphs.php --host-id="$host_ids" --graph-type=ds --graph-template-id=26 --snmp-query-id=8 --snmp-query-type-id=18 --snmp-field=hrStorageDescr --snmp-value="Physical memory"
        #添加設備到相應的組
        #默認爲 Default Tree(自帶),自定義的話須要再web節目建立後再查看其樹id:php add_tree.php --list-trees
        php add_tree.php --host-id="$host_ids" --type=node --node-type=host --tree-id=$tree_id
done
相關文章
相關標籤/搜索