network monitoring with icinga
DESCRIPTION
Greg Parmer, Information Technology Specialist Jonas Bowersock, Information Technology Specialist Alabama Cooperative Extension System Auburn UniversityTRANSCRIPT
NETWORK MONITORING WITH ICINGA
Greg Parmer, Information Technology Specialist
Jonas Bowersock, Information Technology Specialist
Alabama Cooperative Extension System
Auburn University
Why Monitor?
Proactive Administration• Better service• Better coordination• Better inventory of
services• To reduce finger pointing• To save lives!• More time for other
things…like walks on the beach
Others vs Nagios vs Icinga
Big Brother• Years of good experiences• Recognized need for Aruba
monitor in 2011• Commercial “professional
edition”?• What next?
(http://en.wikipedia.org/wiki/Comparison_of_network_monitoring_systems)
Others vs Nagios vs Icinga
Nagios• 1996 – started by Ethan Galstad• 1999 - released open source project “NetSaint”• 2002 – trademark issues prompted rename to Nagios (“Nagios Ain't Gonna Insist On
Sainthood”)• 2007 – Ethan founded Nagios Enterpises LLC• Most downloaded monitoring software• Large, active plug-in community
Others vs Nagios vs Icinga
Icinga• 2009 - Nagios fork• Open source community
project• Many contributors from
Nagios project (https://bugzilla.redhat.com/show_bug.cgi?id=1054340)
• Backward compatible – configs, plug-ins, add-ons
• 2014 – Icinga v2 due
Nagios & Icinga
2011 - Installed both Nagios and Icinga
Ran both from same config files for months
2012 – Use Nagios to monitor Icinga
Constant addition of service monitors since
(Right: aNag screenshot on Android phone)
What To Monitor?
Connectivity (check_ping)
Websites (check_http)
Disk usage (check_disk)
CPU usage (check_load)
Memory usage (check_swap)
Uptime (check_uptime)
File size (check_file_size.sh)
File age (check_file_age)
File shares (check_file_size)
Log files (check_log)
Non-standard ports (check_port)
Mail (check_smtp, check_mailq,more)
DNS (check_dns)
Certificate expirations (check_http)
Backup software (check_proc)
AV software (check_proc)
Check on printer (check_snmp)
Search: “Nagios plugins”
Example Definitionsdefine command{
command_name check-host-alive
command_line $USER1$/check_ping -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5
}
define host{
name generic-switch ; The name of this host template
use generic-host ; Inherit default values from the generic-host template
check_period 24x7 ; By default, monitored round the clock
check_interval 5 ; every 5 minutes
retry_interval 2 ; Schedule host check retries at 2 minute intervals
max_check_attempts 6 ; Check each switch 6 times (max)
check_command check-host-alive ; check if routers are "alive“ (ping)
notification_period workhours_sans_au_holidays
notification_interval 160 ; Resend notifications
notification_options d,f,r,u ; d=dwn,u=unreach,r=recov,f=flap,s=sch dwntm,n=none
contact_groups helpdesk-plus
register 0 ; DONT REGISTER THIS - ITS JUST A TEMPLATE
}
Example Definitiondefine host{
use generic-switch ; Inherit default values from a template
host_name 4hcenter ; The name we're giving to this switch
hostgroups t1s ; Host groups this switch is associated with
}
define host{
use generic-switch ; Inherit default values from a template
host_name chiltonrec ; The name we're giving to this switch
hostgroups t1s ; Host groups this switch is associated with
}
Rinse and repeat…
Example Hostgroup Overview
Hostgroups
Notes and Actions Exampledefine host{
host_name AGITC
use generic-arubarap
hostgroups x-aruba
parents Aruba-Concentrator
notes_url https://sites.aces.edu/it/ForITstaff/Lists/Office_Network_ACESDB/DispForm.aspx?ID=2
action_url https://sites.aces.edu/it/ForITstaff/Shared%20Files/extra_county_info/agitc/
}
Example Hostgroup Overview
Note
Action
Notifications
So you say…
Our To Do List
Monitoring all websites
Monitoring all WordPress installs
Monitoring web page load times
Monitoring SQL server response times
Monitoring bandwidth to remote sites (better ideas?)
Monitoring the service which produces the next unexpected phone call
Questions?
Thoughts?
Suggestions?
Greg Parmer – parmega (at) auburn.eduJonas Bowersock – bowerjb (at) auburn.edu