欢迎来到思维库

思维库

使用Nagios监视企业集群

时间:2025-11-03 18:26:40 出处:IT科技类资讯阅读(143)

使用Nagios监视企业集群
复制  #!/bin/ksh   NAGIOSSRC=nagios-3.0.6   NAGIOSPLUGINSRC=nagios-plugins-1.4.13   NAGIOSCONTACTSCFG=/usr/local/nagios/etc/objects/contacts.cfg   NAGIOSPASSWD=/usr/local/nagios/etc/htpasswd.users   PASSWD=cluster OS=foo   function buildNagiosPlug {     if [ -e $NAGIOSPLUGINSRC.tar.gz ]     then     echo "found $NAGIOSPLUGINSRC.tar.gz building and installing Nagios"     else     echo "could not find $NAGIOSPLUGINSRC.tar.gz in current directory."     echo "Please run $0 in the same directory as the source files."     exit 1     fi     echo "Extracting Nagios Plugins..."     tar zxf $NAGIOSPLUGINSRC.tar.gz     cd $NAGIOSPLUGINSRC     echo "Configuring Nagios Plugins..."     if ./configure --with-nagios-user=nagios --with-nagios-group=nagios   -prefix=/usr/local/nagios > config.LOG.$$ 2>&1     then     echo "Making Nagios Plugins..."     if make -j8 > make.LOG.$$ 2>&1     then     make install > make.LOG.$$ 2>&1     else     echo "Make failed of Nagios plugins. See $NAGIOSPLUGINSRC/make.LOG.$$"     exit 1     fi     else     echo "configure of Nagios plugins failed. See config.LOG.$$"     exit 1     fi     echo "Successfully built and installed Nagios Plugins!"     cd ..     }     function buildNagios {     if [ -e $NAGIOSSRC.tar.gz ]     then     echo "found $NAGIOSSRC.tar.gz building and installing Nagios"     else     echo "could not find $NAGIOSSRC.tar.gz in current directory."     echo "Please run $0 in the same directory as the source files."     exit 1     fi     echo "Extracting Nagios..."     tar zxf $NAGIOSSRC.tar.gz     cd $NAGIOSSRC     echo "Configuring Nagios..."     if ./configure --with-command-group=nagcmd> config.LOG.$$ 2>&1     then     echo "Making Nagios..."     if make all -j8 > make.LOG.$$ 2>&1     then     make install > make.LOG.$$ 2>&1     make install-init > make.LOG.$$ 2>&1     make install-config > make.LOG.$$ 2>&1     make install-commandmode > make.LOG.$$ 2>&1     make install-webconf > make.LOG.$$ 2>&1     else     echo "make all failed. See log:"     echo "$NAGIOSSRC/make.LOG.$$"     exit 1     fi     else     echo "configure of Nagios failed. Please read $NAGIOSSRC/config.LOG.$$ for details."     exit 1     fi     echo "Done Making Nagios!"     cd ..     }     function configNagios {     echo "Well now configure Nagios."   LOOP=1   while [[ $LOOP -eq 1 ]]     do     echo "Youll need to put in a user name. This should be the person"     echo "who will be receiving alerts. This person should have an account"     echo "on this server. "     print "Type in the userid of the person who will receive alerts (e.g. bob)> \c"     read NAME     print "What is ${NAME}s email?使用> \c"     read EMAIL     echo     echo     echo "Nagios alerts will be sent to $NAME at $EMAIL"     print "Is this correct? [y/N] \c"     read YN     if [[ "$YN" = "y" ]]     then   LOOP=0   fi     done     if [ -r $NAGIOSCONTACTSCFG ]     then     perl -pi -e "s/nagiosadmin/$NAME/g" $NAGIOSCONTACTSCFG   EMAIL=$(echo $EMAIL | sed s/\@/\\\\@/g)     perl -pi -e "s/nagios\@localhost/$EMAIL/g" $NAGIOSCONTACTSCFG     else     echo "$NAGIOSCONTACTSCFG does not exist"     exit 1     fi     echo "setting ${NAME}s password to be cluster in Nagios"     echo " you can change this later by running: "     echo " htpasswd -c $NAGIOSPASSWD $Name)"     htpasswd -bc $NAGIOSPASSWD $NAME cluster     if [ "$OS" = "rh" ]     then     service httpd restart     fi     }     function preNagios {     if [ "$OS" = "rh" ]     then     echo "making sure prereqs are installed"     yum -y install httpd gcc glibc glibc-common gd gd-devel perl-TimeDate     /usr/sbin/useradd -m nagios     echo $PASSWD | passwd --stdin nagios     /usr/sbin/groupadd nagcmd     /usr/sbin/usermod -a -G nagcmd nagios     /usr/sbin/usermod -a -G nagcmd apache     fi     }     function postNagios {     if [ "$OS" = "rh" ]     then     chkconfig --add nagios     chkconfig nagios on     # touch this file so that if it doesnt exist we wont get errors     touch /var/www/html/index.html     service nagios start     fi     echo "You may now be able to access Nagios at the URL below:"     echo "http://localhost/nagios"     }     if [ -e /etc/redhat-release ]     then     echo "installing monitoring on Red Hat system"   OS=rh   fi     # make sure youre root:   ID=$(id -u)     if [ "$ID" != "0" ]     then     echo "Must run this as root!"     exit   1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71.72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89.90.91.92.93.94.95.96.97.98.99.100.101.102.103.104.105.106.107.108.109.110.111.112.113.114.115.116.117.118.119.120.121.122.123.124.125.126.127.128.129.130.131.132.133.134.135.136.137.138.139.140.141.142.143.144.145.146.147.148.149.150.151.152.153.154.155.156.157.158.159.160.161.162.163.164.165.166.167.168.169.170.171.172.173.174.175.176.177.178.179.180.181.182.183.184.185.186.187.188.189.190.191.192.193.194.195.196.197.198.199.200.201.202.203.204.205.206.207.208.209.210.211.212.213.214.215.216.217.218.219.220.221.222.223.224.225.226.227.228.229.230.231.232.233.234.235.236.237.238.239.240.241.242.243.244.245.246.247.248.249.250.251.252.253.254.255.256.257.258.259.260.261.262.263.264.265.266.267.268.269.270.271.272.273.274.275.276.277.278.279.280.281.282.283.284.285.286.287.288.289.290.291.292.293.294.295.296.

分享到:

温馨提示:以上内容和图片整理于网络,仅供参考,希望对您有帮助!如有侵权行为请联系删除!

友情链接: