看到朋友的一篇文章介绍了此东东,修改了一下测试可用:
#!/bin/bash ip=('192.168.1.1' '192.168.1.2' '192.168.1.3' '192.168.1.4' ) tree=('test1' 'test2' 'test3' 'test4') base_type=(7 4 11 13) #type 4 CPU #type 7 PING #type 11 LOAD #type 13 MEM function f_add_LinuxHost() { /usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_device.php --description="$1" --ip="$1" --template=3 --version=2 --community=public > /tmp/cacti_cache.txt id=`cat /tmp/cacti_cache.txt | grep "Success" | awk -F "[:()]" '{print $3}'` /bin/rm -f /tmp/cacti_cache.txt } function f_add_network() { /usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_graphs.php --host-id="$1" --graph-type=ds --graph-template-id=2 --snmp-query-id=1 --snmp-query-type-id=14 --snmp-field=ifName --snmp-value=eth0 /usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_graphs.php --host-id="$1" --graph-type=ds --graph-template-id=2 --snmp-query-id=1 --snmp-query-type-id=14 --snmp-field=ifName --snmp-value=eth1 } function f_add_base() { /usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_graphs.php --host-id="$1" --graph-type=cg --graph-template-id="$2" }
function f_add_tree() { tree_id=`/usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_tree.php --list-trees | egrep "\b$2\b" | awk '{print $1}'` if [ -z $tree_id ];then /usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_tree.php --type=tree --name="$2" tree_id=`/usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_tree.php --list-trees | egrep "\b$2\b" | awk '{print $1}'` fi /usr/local/php/bin/php /usr/local/nginx/html/cacti/cli/add_tree.php --type=node --node-type=host --tree-id="$tree_id" --host-id="$1" } for (( i=0; i<${#ip[@]}; i++ )) do f_add_LinuxHost ${ip[i]} f_add_network $id for type in ${base_type[@]} do f_add_base $id $type done f_add_tree $id ${tree[i]} done |
需要注意的是:
ip=('192.168.1.1' '192.168.1.2' '192.168.1.3' '192.168.1.4' ) tree=('test1' 'test2' 'test3' 'test4') |
这里的IP和对应加入的tree 要一一对应
监控硬盘还不会,待会还要研究一下。。。
转载于:https://blog.51cto.com/lihuipeng/776248