Monitoring server Ubuntu

Discussion in 'Installation/Configuration' started by wiss, Nov 18, 2010.

  1. wiss

    wiss Member

    Hy.

    Im installed Perfect Ubuntu server 10.04 with ispconfig 3.03, and works fine.

    I would like to monitor all services and logs and receive emails when anithyng works bad.

    Im too have a postgresql server running in this machine and clustering with bucardo.


    What recommend me?

    thank you in advance.
     
  2. itsnedkeren

    itsnedkeren New Member

  3. wiss

    wiss Member

    Thx itsnedkeren.

    But this is only monitoring, not sen mail when anything fails... no?

    Y read for nagios, what do you think?

    Thx in advance.
     
  4. itsnedkeren

    itsnedkeren New Member

    Monit will send mails if the configured service fails. I'm using it my self, and it's very effective.

    NagiOS is enterprise scale monitoring, which you would require a standalone server to run.
     
  5. wiss

    wiss Member

    Txh.

    Monit works with postgre?

    Thx.
     
  6. itsnedkeren

    itsnedkeren New Member

  7. wiss

    wiss Member

    Thx so much.

    I've try it now.
     
  8. wiss

    wiss Member

    Hy!!!!

    I follow the tutorial and it works very well.

    Here is my monitrc.

    Machine: OpenVZ ubuntu server 10.04 PERFECT SERVER ISPCONFIG 3.

    Code:
    
    set daemon  60
    set logfile syslog facility log_daemon
    set mailserver smtp.gmail.com port 587 username "[email protected]" password "xxxx" using tlsv1 with timeout 30 seconds
    set mail-format {
       from: [email protected]
       subject: $SERVICE el $DATE
       message:
     
                Monit: $ACTION $SERVICE
    	    Fecha: $DATE
    	    Descripción: $DESCRIPTION.
    
               	SERVIDOR $HOST
               Powered by: monit
    }
    set alert [email protected] only on { action
                          checksum
                          content
                          data
                          exec
                          gid
                          icmp
                          invalid
                          fsflags
                          nonexist
                          permission
                          size
                          timeout
                          timestamp }
    
    
    
    check process sshd with pidfile /var/run/sshd.pid
       start program  "/etc/init.d/ssh start"
       stop program  "/etc/init.d/ssh stop"
       if failed port 22 protocol ssh then restart
       if 5 restarts within 5 cycles then timeout
    
    check process postfix with pidfile /var/spool/postfix/pid/master.pid
       group mail
       start program = "/etc/init.d/postfix start"
       stop  program = "/etc/init.d/postfix stop"
       if failed port 25 protocol smtp then restart
       if 5 restarts within 5 cycles then timeout
    
    
    # amavis
    check process amavisd with pidfile /var/run/amavis/amavisd.pid
       group mail
       start program = "/etc/init.d/amavis start"
       stop  program = "/etc/init.d/amavis stop"
       if failed port 10024 protocol smtp then restart
       if 5 restarts within 5 cycles then timeout
       depends on amavisd_bin
       depends on amavisd_rc
    
    check file amavisd_bin with path  /usr/sbin/amavisd-new
       group mail
       if failed checksum then unmonitor
       if failed permission 755 then unmonitor
       if failed uid root then unmonitor
       if failed gid root then unmonitor
    
    check file amavisd_rc with path /etc/init.d/amavis
       group mail
       if failed checksum then unmonitor
       if failed permission 755 then unmonitor
       if failed uid root then unmonitor
       if failed gid root then unmonitor
    
    # Apache2
    check process apache with pidfile /var/run/apache2.pid
       group www
       start program = "/etc/init.d/apache2 start"
       stop program  = "/etc/init.d/apache2 stop"
       if failed port 80 protocol http then restart
       if cpu is greater than 60% for 2 cycles then alert
       if cpu > 80% for 5 cycles then restart
       if totalmem > 1500 MB for 5 cycles then restart
       if children > 512 then restart
       if loadavg(5min) greater than 10 for 8 cycles then stop
       if 3 restarts within 5 cycles then timeout
    
    # Courier_authdaemon
    check process authdaemon with pidfile /var/run/courier/authdaemon/pid
       group services
       start program = "/etc/init.d/courier-authdaemon start"
       stop  program = "/etc/init.d/courier-authdaemon stop"
       if 5 restarts within 5 cycles then timeout
    
    # Cron
    check process cron with pidfile /var/run/crond.pid
       start program = "/etc/init.d/cron start"
       stop  program = "/etc/init.d/cron stop"
       group system
       depends cron_init, cron_bin
    
    check file cron_init with path /etc/init.d/cron
       group system
    
    check file cron_bin with path /usr/sbin/cron
       group system
    
    # fail2ban
    check process fail2ban with pidfile /var/run/fail2ban/fail2ban.pid
       group services
       start program = "/etc/init.d/fail2ban start"
       stop  program = "/etc/init.d/fail2ban stop"
       if 5 restarts within 5 cycles then timeout
    
    # Courier_imapd
    check process imap with pidfile /var/run/courier/imapd.pid
       group mail
       start program = "/etc/init.d/courier-imap start"
       stop  program = "/etc/init.d/courier-imap stop"
       if failed port 143 then restart
       if 5 restarts within 5 cycles then timeout
    
    # Courier_immapd-ssl
    check process imapd-ssl with pidfile /var/run/courier/imapd-ssl.pid
       group mail
       start program = "/etc/init.d/courier-imap-ssl start"
       stop  program = "/etc/init.d/courier-imap-ssl stop"
       if failed port 143 then restart
       if 5 restarts within 5 cycles then timeout
    
    # Munin-node
    check process munin-node with pidfile /var/run/munin/munin-node.pid
       group services
       start program = "/etc/init.d/munin-node start"
       stop  program = "/etc/init.d/munin-node stop"
       if 5 restarts within 5 cycles then timeout
    
    # Courier_pop3d
    check process pop3 with pidfile /var/run/courier/pop3d.pid
       group mail
       start program = "/etc/init.d/courier-pop start"
       stop  program = "/etc/init.d/courier-pop stop"
       if failed port 110 then restart
       if 5 restarts within 5 cycles then timeout
    
    # Courier_pop3-ssl
    check process pop3-ssl with pidfile /var/run/courier/pop3d-ssl.pid
       group mail
       start program = "/etc/init.d/courier-pop-ssl start"
       stop  program = "/etc/init.d/courier-pop-ssl stop"
       if failed port 995 then restart
       if 5 restarts within 5 cycles then timeout
    
    #PureFTPd
    check process pure-ftpd with pidfile /var/run/pure-ftpd/pure-ftpd.pid
       start program  "/etc/init.d/pure-ftpd-mysql start"
       stop program  "/etc/init.d/pure-ftpd-mysql stop"
       if failed host 127.0.0.1 port 21 then restart
       if 5 restarts within 5 cycles then timeout
    
    # Spamassassin
    check process spamd with pidfile /var/run/spamd.pid
       group mail
       start program = "/etc/init.d/spamassassin start"
       stop  program = "/etc/init.d/spamassassin stop"
       if 5 restarts within 5 cycles then timeout
       if cpu usage > 99% for 5 cycles then alert
       if mem usage > 99% for 5 cycles then alert
    
    check file spamd_bin with path /usr/sbin/spamd
       group mail
       if failed checksum then unmonitor
       if failed permission 755 then unmonitor
       if failed uid root then unmonitor
       if failed gid root then unmonitor
    
     check file spamd_rc with path /etc/init.d/spamassassin
       group mail
       if failed checksum then unmonitor
       if failed permission 755 then unmonitor
       if failed uid root then unmonitor
       if failed gid root then unmonitor
    
    # Syslog-ng
    check process syslogd with pidfile /var/run/syslog-ng.pid
       start program = "/etc/init.d/syslog-ng  start"
       stop program = "/etc/init.d/syslog-ng  stop"
       if 5 restarts within 5 cycles then timeout
       check file syslogd_file with path /var/log/syslog
    
    check process postgresql with pidfile /var/run/postgresql/8.4-main.pid
        group database
        start program = "/etc/init.d/postgresql start"
        stop  program = "/etc/init.d/postgresql stop"
     if failed host localhost port 5432 protocol pgsql then restart
     if failed host localhost port 5432 protocol pgsql then alert
     if 5 restarts within 5 cycles then timeout
    
    
    check process mysql with pidfile /var/lib/mysql/virt318.pid
       group database
       start program = "/etc/init.d/mysql start"
       stop program = "/etc/init.d/mysql stop"
       if failed host 127.0.0.1 port 3306 protocol mysql then restart
       if 5 restarts within 5 cycles then timeout
    
    # Clamd
    check process clamd with pidfile /var/run/clamav/clamd.pid
       group virus
       start program = "/etc/init.d/clamav-daemon start"
       stop  program = "/etc/init.d/clamav-daemon stop"
       if failed unixsocket /var/run/clamav/clamd.ctl then restart
       if 5 restarts within 5 cycles then timeout
       depends on clamavd_bin
       depends on clamavd_rc
    
    check file clamavd_bin with path /usr/sbin/clamd
       group virus
       if failed checksum then unmonitor
       if failed permission 755 then unmonitor
       if failed uid root then unmonitor
       if failed gid root then unmonitor
    
    check file clamavd_rc with path /etc/init.d/clamav-daemon
       group virus
       if failed checksum then unmonitor
       if failed permission 755 then unmonitor
       if failed uid root then unmonitor
       if failed gid root then unmonitor
    
    Thats perfect!!!!
     

Share This Page