Getting Started with GroundWork Monitor GroundWork Monitor Enterprise Edition 6.2 © 2009 GroundWork Open Source, Inc. PROPRIETARY INFORMATION: Information contained herein is not for use or disclosure outside of GroundWork Open Source, Inc. © 2007 GroundWork Open Source, Inc. Page 1 Getting Started with GroundWork Monitor Course Objectives for this Module Configuration • Nagios Configuration Schema • Configuration Tool Overview • Setting Up Hosts © 2009 GroundWork Open Source, Inc. Page 2 GroundWork Monitor Enterprise Edition 6.2 Module 3 : Configuration © 2009 GroundWork Open Source, Inc. Page 3 Configuration Nagios Configuration Objects • Nagios is configured from a set of configuration files • The main configuration file (nagios.cfg) contains the global settings for the Nagios application • Ancillary files called the object files contain the configuration objects which describe the monitoring configuration • These object files are comprised of data structures called configuration objects: define host { host_name alias address use check_command max_check_attempts notification_interval } localhost Linux Server #1 127.0.0.1 generic-host check-host-alive 10 480 © 2009 GroundWork Open Source, Inc. define host { name process_perf_data retain_status_information flap_detection_enabled retain_nonstatus_information active_checks_enabled passive_checks_enabled check_period obsess_over_host check_freshness check_command max_check_attempts check_interval event_handler_enabled notifications_enabled notification_interval notification_period notification_options contact_groups register } generic-host 1 1 1 1 1 1 24x7 0 0 check-host-alive 3 0 1 1 60 24x7 d,u,r nagiosadmin 0 Page 4 Configuration Nagios Configuration Objects • Nagios is an extremely flexible framework that is controlled through its configuration objects • Nagios configuration objects can be in one file or spread across multiple files • They are comprised of directives (label=value pairs) • They are structured objects and can inherit directives from other Nagios objects (i.e. templates) • They are relational (i.e. hosts incorporate services and services incorporate commands) • They can describe devices (hosts) • They can define relationships (dependencies or groups) • They can control procedures (escalations or event handlers) • They can be used to control UI behavior (extended info) • They define how devices will be checked (services, commands) © 2009 GroundWork Open Source, Inc. Page 5 Configuration Nagios Configuration Object Relationships Templates Host Dependencies Host Extended Info Hosts Any Nagios Object Host Groups Host Escalations Contact Groups Contacts Service Escalations Service Extended Info Service Dependencies © 2009 GroundWork Open Source, Inc. Services Commands Service Groups Timeperiods Hosts Services Contacts Host Escalations Service Escalations Page 6 Configuring Hosts and Services Rationale Behind the Monarch Design Host Deletion Example • When a host is retired from the network it will cause Host Alarms in Nagios, so it must be removed from Nagios • One could start by deleting the host object for that host in the hosts.cfg file • Then the preflight check would fail because services.cfg contains service objects referencing the missing host • If the service objects are then located and deleted, there will still broken service dependency objects • So one would need to delete all service dependencies referencing services deleted because the host went away • Then there would still be references to the host in hostgroups which would cause preflight failures • There could also be residual extended_host_info objects referencing the host • And extended_service_info objects referencing each of the deleted services • What is needed is a tool that understands not only the configuration data and object syntax but the relationships © 2009 GroundWork Open Source, Inc. Page 7 Configuration Tool Overview Architectural View of Monarch Monarch DB Nagios configuration objects Configuration UI Database Tables | Relationships hosts Hosts, Services, Contacts, Escalations Etc. hosts services services contacts contacts escalations escalations Nagios Configuration files © 2009 GroundWork Open Source, Inc. Page 8 Configuration Tool Overview Architectural View of Monarch Configuration UI Monarch Operation Services, Profiles, Hosts, Contacts, Escalations, Commands, Time Periods, Groups, Control, Tools • Edit the data using the GUI • Test configuration using Preflight Test • Backup the data • Create new config files using Commit Nagios configuration files nagios/etc Pre Flight Test Monarch DB Load © 2009 GroundWork Open Source, Inc. Workspace directory M Hosts, Services, Contacts… Commit Backup directory Page 9 Configuration Tool Overview Nagios Host and Service Objects Host and Service Templates Service Definition Host Definition Service Definition Host Definition Host Template © 2009 GroundWork Open Source, Inc. Host Definition Service Template Service Definition Page 10 Configuration Tool Overview Nagios Host and Service Objects Fully Implemented Host Host Template Host Definition generic-host domain_controller Service Definition Service Template Host Alive generic-service Service Definition Service Template DNS_Server generic-service Host Service Implemented Host © 2009 GroundWork Open Source, Inc. Page 11 Configuration Tool Overview Monarch Services and Service Profiles Service Profiles Inside the Monarch database we can take liberties with how we store the configuration data. Inside the database preconfigured services are stored in the services table. The entries In this table, unlike the services objects in the Nagios configuration files, are NOT associated with hosts. That association happens in another table. Service CPU Service memory Service Service Profile disk web monitoring This allows us to ship a library of pre-configured, pre-tested services in the GroundWork product. These “unassigned” services can also be grouped Into logical groups called Service Profiles. Each Service Profile contains a collection of Services that would be appropriate for monitoring a particular device architecture Service httpd Service URL get © 2009 GroundWork Open Source, Inc. Page 12 Configuration Tool Overview Monarch Host Profiles Host Profiles In the Monarch database Service Profiles can also be associated with host templates to make Host Profiles. A host profile contains everything you need to configure a device other than a hostname, IP Address and an alias. Host Template generic-host Host Profile Service Profile web monitoring © 2009 GroundWork Open Source, Inc. Page 13 Configuration Tool Overview Monarch Configuration Objects Comparison of Nagios and Monarch Configuration Objects Object Name Nagios GroundWork Commands X X Services X X Pre-configured Services X Host/Service Profiles X Host/Service dependencies X X Host/Service Escalations X X Host/Service Escalation Trees X Configuration Groups X Contacts/Contactgroups X X Hosts/Hostgroups X X Services/Servicegroups X X Host/Service Dependencies X X Templates X X Timeperiods X X © 2009 GroundWork Open Source, Inc. Page 14 Thank you GroundWork Open Source, Inc. 139 Townsend Street, Suite 500 San Francisco, CA 94107 Phone: 415.992.4500 Website: www.gwos.com Email: info@gwos.com GroundWork Subscription Support: support.gwos.com © 2009 GroundWork Open Source, Inc. Confidential - Do not distribute Page 15