KVM

check_virsh

Description:

Script to check KVM’s hosts

Current Version

Last Release Date

February 4, 2010

Compatible With


Project Files
Project Notes
Script to check KVM's hosts
Reviews (2) Add a Review
Hi I did some changes. Now script check the entire name!!!
by jlevy, August 31, 2018

#!/bin/bash # Versao 1.2 # Criador: Aline Carvalho # Criacao: 14/10/2009 # LastCHanges: 10/08/2018 # By Jeremy Levy # |_ English Tradution. Corrige no exact name # # Objective: Verify that virtual server is online or offline ## Variables VIRSH=`which virsh` function check_srv { HOST=$1 # Check if sudo command is installed which sudo > /dev/null 2>&1 if [ $? -ne 0 ] then echo "ERRO: sudo not installing" exit 3 fi #sudo $VIRSH list | grep $HOST > /dev/null RESULT=`sudo $VIRSH list | grep $HOST | cut -d" " -f7` for FOO in $RESULT do #if [ $? != "0" ] if [ "$FOO" != "$HOST" ] then echo "CRITICAL: Virtual Machine $HOST is down, or not exist!!!" exit 2 else STATE=`sudo $VIRSH list | grep $HOST | awk '{ print $3 }'` if [ $STATE == "paused" ] then echo "WARNING: $HOST is in paused states." exit 1 elif [ $STATE == "blocked" ] then echo "WARNING: $HOST is in blocked states." exit 1 elif [ $STATE == "shutdown" ] then echo "WARNING: $HOST is in shutdown states." exit 1 elif [ $STATE == "crashed" ] then echo "WARNING: $HOST is in crashed states." exit 1 elif [ $STATE == "dying" ] then echo "WARNING: $HOST is in dying states." exit 1 else echo "OK: Virtual Machine $HOST is UP" exit 0 fi fi done } function print_usage { echo "" echo "" echo " Usage: $0 srv HOST " echo "" echo " Important: " echo " First of all you need to configure sudo in /etc/sudores:" echo " nagios ALL=(ALL) NOPASSWD:/usr/bin/virsh list" echo " and comment the line # Defaults requiretty" echo "" } ## Checks if the user has typed the command with the correct parameters case $1 in srv) HOST=$2 if [ -z $2 ] then echo "" echo "You need to specify the virtual machine" echo " ex: $0 $1 HOST" echo "" exit 3 fi check_srv $HOST ;; *) print_usage ;; esac



works well
by jtennity, August 31, 2016

After converting it to english and to the right text format by making a new file and copy and pasting code into it, it worked. past this into /etc/sudoers: nagios ALL=(ALL) NOPASSWD:/usr/bin/virsh list and uncomment the line: Defaults requiretty to run command, type: ./check_virsh srv "virtual machine name" example: ./check_virsh srv server1.example.com



Add a Review

You must be logged in to submit a review.

Thank you for your review!

Your review has been submitted and is pending approval.

Recommend

To:


From:


Thank you for your recommendation!

Your recommendation has been sent.

Project Stats
Rating
4.3 (4)
Favorites
0
Views
159,954