no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
— | monitors:netbackup [2009/11/23 06:04] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== netbackup ====== | ||
+ | |||
+ | ^ Author | [[ grossi@acantho.net | Gianluca Rossi ]] | | ||
+ | ^ Compatibility | Xymon 4.2 | | ||
+ | ^ Requirements | Netbackup 4.5 and Netbackup 6, sudo | | ||
+ | ^ Download | None | | ||
+ | ^ Last Update | 2007-02-15 | | ||
+ | |||
+ | ===== Description ===== | ||
+ | |||
+ | Monitor Vertias NetBackup status. | ||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | ==== Client Configuration ==== | ||
+ | - Add the following to sudoers on the NetBackup Master Server.< | ||
+ | Cmnd_Alias | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | hobbit | ||
+ | </ | ||
+ | - Add nb* scripts to client' | ||
+ | * nb.cfg | ||
+ | * nb-media.sh : check available and frozen media, you should not edit this file | ||
+ | * nb.sh : check netbackup messages, you should not edit this file | ||
+ | - Add the following to client hobbitlaunch.cfg < | ||
+ | [nbmedia] | ||
+ | ENVFILE $HOBBITCLIENTHOME/ | ||
+ | CMD $HOBBITCLIENTHOME/ | ||
+ | LOGFILE $HOBBITCLIENTHOME/ | ||
+ | INTERVAL 5m | ||
+ | |||
+ | [nblog] | ||
+ | ENVFILE $HOBBITCLIENTHOME/ | ||
+ | CMD $HOBBITCLIENTHOME/ | ||
+ | LOGFILE $HOBBITCLIENTHOME/ | ||
+ | INTERVAL 5m | ||
+ | </ | ||
+ | |||
+ | ==== Server Configuration ==== | ||
+ | |||
+ | None. | ||
+ | |||
+ | ===== Source ===== | ||
+ | |||
+ | ==== nb.sh ==== | ||
+ | <hidden onHidden=" | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | # Netbackup messages monitoring script | ||
+ | # Gianluca Rossi - grossi@acantho.net | ||
+ | |||
+ | # TEST NAME: THIS WILL BECOME A COLUMN ON THE DISPLAY | ||
+ | # IT SHOULD BE AS SHORT AS POSSIBLE TO SAVE SPACE... | ||
+ | # NOTE YOU CAN ALSO CREATE A HELP FILE FOR YOUR TEST | ||
+ | # WHICH SHOULD BE PUT IN www/ | ||
+ | # BE LINKED INTO THE DISPLAY AUTOMATICALLY. | ||
+ | # | ||
+ | TEST=" | ||
+ | |||
+ | # | ||
+ | # BBHOME CAN BE SET MANUALLY WHEN TESTING. | ||
+ | # OTHERWISE IT SHOULD BE SET FROM THE BB ENVIRONMENT | ||
+ | # | ||
+ | # BBHOME=/ | ||
+ | |||
+ | if test " | ||
+ | then | ||
+ | echo " | ||
+ | exit 1 | ||
+ | fi | ||
+ | |||
+ | if test ! " | ||
+ | then | ||
+ | # echo "*** LOADING BBDEF ***" | ||
+ | . $BBHOME/ | ||
+ | fi | ||
+ | |||
+ | |||
+ | # | ||
+ | # include Netbackup configuration | ||
+ | # | ||
+ | . $BBHOME/ | ||
+ | |||
+ | |||
+ | WARNING=" | ||
+ | ERROR=" | ||
+ | CRITICAL=" | ||
+ | INFO=" | ||
+ | LINE="" | ||
+ | |||
+ | COLOR=" | ||
+ | STATUS=" | ||
+ | |||
+ | if [ ! -z " | ||
+ | then | ||
+ | LINE=`printf "\n - - - INFO MESSAGES- - -\n${INFO}\n${LINE}" | ||
+ | fi | ||
+ | |||
+ | if [ ! -z " | ||
+ | then | ||
+ | LINE=`printf "\n - - - WARNING MESSAGES - - -\n${WARNING}\n${LINE}" | ||
+ | COLOR=" | ||
+ | STATUS=" | ||
+ | fi | ||
+ | |||
+ | if [ ! -z " | ||
+ | then | ||
+ | LINE=`printf "\n - - - ERROR MESSAGES - - -\n${ERROR}\n${LINE}" | ||
+ | COLOR=" | ||
+ | STATUS=" | ||
+ | fi | ||
+ | |||
+ | |||
+ | if [ ! -z " | ||
+ | then | ||
+ | LINE=`printf "\n - - - CRITICAL MESSAGES - - -\n${CRITICAL}\n${LINE}" | ||
+ | COLOR=" | ||
+ | STATUS=" | ||
+ | fi | ||
+ | |||
+ | |||
+ | |||
+ | # | ||
+ | # AT THIS POINT WE HAVE OUR RESULTS. | ||
+ | # THE BBDISPLAY TO BE DISPLAYED... | ||
+ | # | ||
+ | $BB $BBDISP " | ||
+ | |||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== nb-media.sh ==== | ||
+ | <hidden onHidden=" | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | # | ||
+ | # Veritas NetBackup hobbit plugin | ||
+ | # Gianluca Rossi - grossi@acantho.net | ||
+ | # 1 - check available media | ||
+ | # 2 - check DOWNed drive | ||
+ | # 3 - check FROZEN media | ||
+ | # | ||
+ | # TEST NAME: THIS WILL BECOME A COLUMN ON THE DISPLAY | ||
+ | # IT SHOULD BE AS SHORT AS POSSIBLE TO SAVE SPACE... | ||
+ | # NOTE YOU CAN ALSO CREATE A HELP FILE FOR YOUR TEST | ||
+ | # WHICH SHOULD BE PUT IN www/ | ||
+ | # BE LINKED INTO THE DISPLAY AUTOMATICALLY. | ||
+ | # | ||
+ | TEST=" | ||
+ | |||
+ | # | ||
+ | # BBHOME CAN BE SET MANUALLY WHEN TESTING. | ||
+ | # OTHERWISE IT SHOULD BE SET FROM THE BB ENVIRONMENT | ||
+ | # | ||
+ | # BBHOME=/ | ||
+ | |||
+ | if test " | ||
+ | then | ||
+ | echo " | ||
+ | exit 1 | ||
+ | fi | ||
+ | |||
+ | if test ! " | ||
+ | then | ||
+ | # echo "*** LOADING BBDEF ***" | ||
+ | . $BBHOME/ | ||
+ | fi | ||
+ | |||
+ | # | ||
+ | # include Netbackup configuration | ||
+ | # | ||
+ | . $BBHOME/ | ||
+ | |||
+ | |||
+ | LINE=" | ||
+ | " | ||
+ | ERR=0 | ||
+ | #set -x | ||
+ | # | ||
+ | # how many media are available on the scratch pool? | ||
+ | # | ||
+ | $VMQUERY -pn $SCRATCH_POOL | egrep 'robot number:' | ||
+ | uniq < $BBTMP/ | ||
+ | while read line | ||
+ | do | ||
+ | set $line | ||
+ | ROBOT_NUMBER=$3 | ||
+ | NUM_MEDIA=`grep $ROBOT_NUMBER $BBTMP/ | ||
+ | COLOR=" | ||
+ | if [ $NUM_MEDIA -lt $WARN_MEDIA ] ; then | ||
+ | ERR=`expr $ERR + 1` | ||
+ | COLOR=" | ||
+ | fi | ||
+ | if [ $NUM_MEDIA -lt $ERR_MEDIA ] ; then | ||
+ | ERR=1000 | ||
+ | COLOR=" | ||
+ | fi | ||
+ | LINE=" | ||
+ | & | ||
+ | done < $BBTMP/ | ||
+ | rm -f $BBTMP/ | ||
+ | |||
+ | |||
+ | # | ||
+ | # check for DOWN drive | ||
+ | # | ||
+ | $VMDAREQ -a > | ||
+ | # | ||
+ | NUMDRIVE=`cat $BBTMP/ | ||
+ | NUMDOWN=`cat $BBTMP/ | ||
+ | VMSTATUS=`cat $BBTMP/ | ||
+ | if [ $NUMDOWN -gt $WARN_DOWN ]; then | ||
+ | ERR=`expr $ERR + 1` | ||
+ | COLOR=" | ||
+ | fi | ||
+ | if [ $NUMDOWN -gt $ERR_DOWN ]; then | ||
+ | ERR=1000 | ||
+ | COLOR=" | ||
+ | fi | ||
+ | |||
+ | LINE=" | ||
+ | & | ||
+ | ${VMSTATUS} | ||
+ | " | ||
+ | rm -f $BBTMP/ | ||
+ | |||
+ | |||
+ | # | ||
+ | # check for frozen media on every media server | ||
+ | # | ||
+ | for host in $MEDIA_SERVERS | ||
+ | do | ||
+ | $BPMEDIA -summary -h $host | sed ' | ||
+ | FROZEN=`cat $BBTMP/ | ||
+ | COLOR=" | ||
+ | if [ $FROZEN -gt $WARN_FROZEN ] ; then | ||
+ | COLOR=" | ||
+ | ERR=`expr $ERR + 1` | ||
+ | fi | ||
+ | if [ $FROZEN -gt $ERR_FROZEN ] ; then | ||
+ | COLOR=" | ||
+ | ERR=1000 | ||
+ | fi | ||
+ | O=`tail +2 $BBTMP/ | ||
+ | LINE=" | ||
+ | ******************************************************************************* | ||
+ | $O" | ||
+ | done | ||
+ | |||
+ | rm -f $BBTMP/ | ||
+ | |||
+ | if [ $ERR -ge 1000 ] ; then | ||
+ | ERR=" | ||
+ | STATUS=" | ||
+ | elif [ " | ||
+ | ERR=" | ||
+ | STATUS=" | ||
+ | else | ||
+ | ERR=" | ||
+ | STATUS=" | ||
+ | fi | ||
+ | |||
+ | |||
+ | # | ||
+ | # AT THIS POINT WE HAVE OUR RESULTS. | ||
+ | # THE BBDISPLAY TO BE DISPLAYED... | ||
+ | # | ||
+ | $BB $BBDISP " | ||
+ | $LINE" | ||
+ | #echo $BBDISP " | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== nb.cfg ==== | ||
+ | <hidden onHidden=" | ||
+ | <code bash> | ||
+ | # NetBackup plugin configuration | ||
+ | # | ||
+ | MASTER_SERVER=" | ||
+ | MEDIA_SERVERS=" | ||
+ | |||
+ | # change following commands to the correct path | ||
+ | SUDO="/ | ||
+ | BPERROR=" | ||
+ | VMQUERY=" | ||
+ | BPMEDIA=" | ||
+ | VMDAREQ=" | ||
+ | BPDBJOBS=" | ||
+ | |||
+ | # | ||
+ | # minimun number of media available on the scratch poll | ||
+ | # | ||
+ | WARN_MEDIA=7 | ||
+ | ERR_MEDIA=5 | ||
+ | |||
+ | # name of the scratch poll | ||
+ | SCRATCH_POOL=Scratch_pool | ||
+ | |||
+ | # alert if there are too many frozen media | ||
+ | WARN_FROZEN=5 | ||
+ | ERR_FROZEN=7 | ||
+ | |||
+ | # alert in there are DOWN drive | ||
+ | ERR_DOWN=2 | ||
+ | WARN_DOWN=1 | ||
+ | |||
+ | # | ||
+ | # not yet used | ||
+ | # | ||
+ | IGNORE_CODES=" | ||
+ | WARNING_CODES=" | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== Known Bugs and Issues ===== | ||
+ | |||
+ | * No known bugs | ||
+ | |||
+ | ===== To Do ===== | ||
+ | |||
+ | ===== Credits ===== | ||
+ | |||
+ | ===== Changelog ===== | ||
+ | |||
+ | * **2007-02-15** | ||
+ | * Initial release | ||