自動安裝nagios

 #!/bin/bash

#Write by shine
clear
echo "========================================================================="
echo "Welcome to TM Monitor ! ^.^"
echo ""
echo "Now start nagios server on linux......"
echo "!!!!user------>>>>root!!!!"
echo ""
echo "========================================================================="
SOFTWARE_PATH=/usr/local/src
PLUGIN=nagios-plugins-1.4.15.tar.gz
NAGIOS=nagios-cn-3.2.3.tar.bz2
NRPE=nrpe-2.12.tar.gz
PNP=pnp4nagios-0.6.10.tar.gz
NDOUTILS=ndoutils-1.4b7.tar.gz
MSSQL=check_mssql_health-1.5.8.tar.gz
UNIXODBC=unixODBC-2.3.0.tar.gz
DBDODBC=DBD-ODBC-1.21.tar.gz
FREETDS=freetds-stable.tgz
SBIN=sbin.tar
SHARE=share.tar
DBI=DBI-1.607.tar.gz
DBD=DBD-mysql-3.0008.tar.gz
datetime(){
 echo
 echo "=======================set the timezone and time========================"
 echo
 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
 ntpdate cn.pool.ntp.org
 echo
 echo "========================the time is ok now!============================="
 echo
}
apache2(){
 echo
 echo
 echo "=============================install apache2============================"
 sleep 5
 cd $SOFTWARE_PATH
 apt-get install apache2 -y
 apt-get install libapache2-mod-php5 -y
 apt-get install build-essential -y
 apt-get install libgd2-xpm-dev -y
 apt-get install libssl-dev -y
 apt-get install gnokii -y
 apt-get install sendemail -y
}
download(){
 echo
 echo
 echo "======================Start download Nagios Client package==============="
 sleep 5
 cd $SOFTWARE_PATH
 wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.2.tar.gz
 wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz
 wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz
 wget http://prdownloads.sourceforge.net/sourceforge/pnp4nagios/pnp4nagios-0.6.2.tar.gz
 chmod +x nagios-plugins-1.4.15.tar.gz
 chmod +x nagios-3.2.2.tar.gz
 chmod +x nrpe-2.12.tar.gz
 chmod +x pnp4nagios-0.6.7.tar.gz
 echo "Download packages finished!"
 echo "========================================================================"
}
nagios(){
 echo
 echo
 echo "===========================Install nagios==============================="
 sleep 5
 cd $SOFTWARE_PATH
 groupadd nagios
 useradd nagios -g nagios
 usermod -G nagios nagios
 groupadd nagcmd
 usermod -G nagcmd nagios
 usermod -G nagcmd www-data
 tar xjvf $NAGIOS
 cd nagios-cn*
 chmod  777 *
 ./configure --with-command-group=nagcmd --prefix=/usr/local/nagios
 make all
 make install
 make install-init
 make install-config
 make install-commandmode
 make install-webconf
 htpasswd –c /usr/local/nagios/etc/htpasswd.users  nagiosadmin<<EOF
nagiosadmin
nagiosadmin
EOF
 /etc/init.d/apache2 reload
}
nagios-plugins(){
 echo
 echo
 echo "=========================Install Nagios-plugins======================="
 sleep 5
 cd $SOFTWARE_PATH
 tar xzvf $PLUGIN
 cd nagios-plugins-*
 ./configure --with-nagios-user=nagios --with-nagios-group=nagios
 make
 make install
}
nrpe(){
 echo
 echo
 echo "===========================Install nrpe==============================="
 sleep 5
 cd $SOFTWARE_PATH
 tar xzvf $NRPE
 cd nrpe-*
 ./configure
 make all
 make install-plugin
}
pnp4nagios(){
 echo
 echo
 echo "==========================Install pnp4nagios=========================="
 sleep 5
 apt-get install rrdtool -y
 apt-get install php5-gd -y
 cd $SOFTWARE_PATH
 tar xzvf $PNP
 cd pnp4nagios-*
 ./configure
 make all
 make install
 make install-init
 make install-config
 make fullinstall
 a2enmod rewrite
 mv /usr/local/pnp4nagios/share/install.php /usr/local/pnp4nagios/share/notinstall
 /etc/init.d/apache2 restart
}
mysqlin(){
 echo
 echo
 echo "============================Install mysql============================="
 echo
 echo "Do you want to install mysql[y/n]:"
 read a
 case $a in
 Y|y)
  apt-get install mysql-server -y
  ;;
 N|n)
  exit 1
  ;;
 *)
  echo "please input Y/y/N/n!!"
  ;;
 esac
}
ndoutils(){
 echo
 echo
 echo "===========================Install NDOutils==========================="
 sleep 5
 cd $SOFTWARE_PATH
 tar xzvf $DBI
 cd DBI*
 perl Makefile.PL
 make
 make install
 cd $SOFTWARE_PATH
 tar xzvf $DBD
 cd DBD-mysql*
 unset
 perl Makefile.PL --testhost=127.0.0.1 --testuser=root --testpassword=123456
 make
 make install
 cd $SOFTWARE_PATH
 tar xzvf $NDOUTILS
 cd ndoutils*
 ./configure --enable-mysql --disable-pgsql --with-mysql-lib=/usr/lib/mysql
 make
 mysql -uroot -p123456 -e "create database nagios;"
 mysql -uroot -p123456 -e "grant all on nagios.* to nagios@localhost identified by 'nagios';"
 cd db
 ./installdb -u root -p 123456 -d nagios
 cp ./src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
 cp ./src/ndo2db-3x /usr/local/nagios/bin/ndo2db
 cp ./config/ndo2db.cfg /usr/local/nagios/etc/ndo2db.cfg
 cp ./config/ndomod.cfg /usr/local/nagios/etc/ndomod.cfg
 chmod 774 /usr/local/nagios/bin/ndo*
 chown nagios:nagios /usr/local/nagios/bin/ndo*
}
odbc(){
 echo
 echo
 echo "=========================Install check_mssql_health==================="
 sleep 3
 cd $SOFTWARE_PATH
 tar xzvf $MSSQL
 cd check_mssql*
 ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-perl=/usr/bin/perl
 make
 make install
 echo
 echo
 echo "=========================Install freetds==============================="
 echo
 apt-get install freetds-dev -y
 apt-get install Sybase* -y
 echo "==========================Install unixODBC============================="
 sleep 3
 cd $SOFTWARE_PATH
 tar xzvf $UNIXODBC
 cd unixODBC*
 ./configure --prefix=/usr/local/unixODBC
 make
 make install
 echo
 echo
 echo "==========================Install DBD-ODBC============================"
 sleep 3
 export ODBCHOME=/usr/local/unixODBC
 cd $SOFTWARE_PATH
 tar xzvf $DBDODBC
 cd DBD-ODBC*
 perl Makefile.PL
 make
 make install
 echo
 echo
 echo "===========================Install freetds-stable====================="
 sleep 3
 cd $SOFTWARE_PATH
 tar xzvf $FREETDS
 cd freetds-*
 ./configure --prefix=/usr/local/freetds --with-unixodbc=/usr/local/unixODBC --with-tdsver=8.0
 make
 make install
 echo "!!You can config and use check_mssql_health.........................."
}
cgishare(){
 echo
 echo
 echo "===========================share and cgi=============================="
 sleep 3
 cd $SOFTWARE_PATH
 tar xf $SBIN
 cp ./sbin/*.cgi /usr/local/nagios/sbin
 tar xf $SHARE
 cp -r share/ /usr/local/nagios/
}
main(){
 apt-get update
 datetime
 apache2
 #download
 nagios
 nagios-plugins
 nrpe
 pnp4nagios
 mysqlin
 ndoutils
 odbc
 cgishare
 chown -R nagios.nagios /usr/local/nagios
 ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios
 echo "*************************Check the nagios config****************************"
 echo
 echo
 sleep 3
 /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
 echo "*************************Star nagios....***********************************"
 echo
 echo
 sleep 3
 /etc/init.d/nagios start
 
 echo "***************************************************************************"
 echo "If everything is ok ."
 echo "Then,you can do htpasswd the admin and ask:http://localhost_IP/nagios and the user is nagiosadmin..."
 echo "And you can config your nagios configure...."
 echo "The end!!!!!!!"
 echo "***************************************************************************"
 
}
main
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章