5 # Provides: monitor-nagios
6 # Required-Start: mysqld sendmail
8 # Default-Stop: 0 1 2 6
9 # Description: Setup requirements for monitor to work with nagios
11 # Stephen Soltesz <soltesz@cs.princeton.edu>
12 # Copyright (C) 2010 The Trustees of Princeton University
17 . /etc/plc.d/functions
18 . /etc/plc.d/monitor.functions
19 . /etc/planetlab/plc_config
21 # NOTE: expect that mysqld is already started.
25 if ! $( mysqladmin ping 2> /dev/null ) ; then
26 echo "mysqld is not running; cannot continue; exit..."
30 # if it's a fresh install, there is no root passwd.
31 if $( mysqladmin -u root create nagios ) ; then
32 cat <<EOF > /tmp/nagios.priv
33 GRANT ALL PRIVILEGES ON nagios.* TO ndouser@localhost IDENTIFIED BY 'ndopassword';
35 cat /tmp/nagios.priv | mysql -u root
37 cd /usr/share/doc/ndoutils-mysql-*/db
38 perl ./installdb -u ndouser -p ndopassword -d nagios
41 if ! $( grep -q /usr/lib/nagios/brokers/ndomod.so /etc/nagios/nagios.cfg ) ; then
42 echo "broker_module=/usr/lib/nagios/brokers/ndomod.so config_file=/etc/nagios/ndomod.cfg" >> /etc/nagios/nagios.cfg
46 /sbin/chkconfig ndo2db on
47 #/sbin/service ndo2db start
48 #/sbin/service nagios restart
50 ## set passwd for /etc/nagios/passwd
51 htpasswd -b -c /etc/nagios/passwd nagiosadmin nagiospassword
53 # disable /etc/httpd/conf.d/nagios.conf restriction to only 127.0.0.1
54 if $( grep -q -E "^ deny from all" /etc/httpd/conf.d/nagios.conf ) ; then
55 sed -i -e 's/ deny from all/ allow from all/g' /etc/httpd/conf.d/nagios.conf
56 sed -i -e 's/ order deny,allow/ order allow,deny/g' /etc/httpd/conf.d/nagios.conf
57 sed -i -e 's/ allow from 127.0.0.1/ /g' /etc/httpd/conf.d/nagios.conf
60 touch /etc/nagios/objects/plc.cfg
61 touch /etc/nagios/objects/plcusers.cfg
62 echo "cfg_file=/etc/nagios/objects/plc.cfg" >> /etc/nagios/nagios.cfg
63 echo "cfg_file=/etc/nagios/objects/plcusers.cfg" >> /etc/nagios/nagios.cfg
65 /sbin/chkconfig sendmail on
66 /sbin/service sendmail start
68 # change /etc/nagios/objects/contacts.cfg to some real email addr
69 # change /etc/nagios/nagios.cfg admin_email to some real email addr
74 # See how we were called.
80 echo "not implemented"
83 echo "not implemented"
86 echo "not implemented"
89 echo $"Usage: $0 {start|stop|status|condrestart|restart}"