View Source

h6. Contents

This page provides an overview of service and host profiles and how to create profiles.
{toc:minLevel=4|maxLevel=4|printable=false}

h4. About Profiles

Profiles aid in the design and management of hosts and services. Host profiles contain everything you need to configure a device other than a host name, alias, and an IP address. Host profiles can incorporate service profiles, and service profiles are made up of multiple service definitions.

h5. Service Profile Definition

!profiles_1.gif|align=right,border=10,bordercolor=#FFFFFF! A service is a monitor, of a particular parameter or status, associated with a host. This can  be an actual service that runs on the host (POP, SMTP, HTTP, etc.) or some other  type of metric associated with the host (response to a ping, number of logged in  users, etc.). A service profile definition (e.g. _snmp-network_) stores *Service* definitions such as _snmp_if_1_, _snmp_ifbandwidth_1_, _snmp_ifoperstatus_1_, and _udp_snmp_. _GroundWork Monitor_ contains several commands and services for checking these and many other parameters on Linux hosts. These services are grouped into service profiles, which you can use as is or modify to fit your needs. One or more *hosts* and/or *host groups* can be added to and then managed by a service profile. Additionally, you can add *host profiles* to which this service profile is assigned. When these combined definitions are applied to a number of hosts, for example to 50 specific web servers and you change one of the parameters - it would be applied to all of the specified hosts. You can make a change to either the host profile, the service profile, or in the service, which will then be applied to all associated hosts.

h5. Host Profile Definition

!profiles_2.gif|align=right,border=10,bordercolor=#FFFFFF! A host is a physical entity: a physical server, workstation, device, etc., that resides on your network. Services are the logical entities that hosts provide. By default, host profiles are not associated with a specific host. A host profile contains everything you need to configure a device other than a host name, IP address, and an alias. This concept will allow you to generically define the different roles of the different devices you are monitoring. Host profiles store a required *host template* and other host detail. One or more *parent hosts* and/or *host groups* can be added for hosts using this host profile. *Host* and *service escalation trees* can be added for a host assigned this host profile and all services on hosts using this profile. Additionally, you can add *service profiles* for hosts using the profile. You can then assign *hosts* and *host groups* to be managed by this host profile. When these combined definitions are assigned to a number of hosts and/or host groups, for example to 50 specific web servers, and you change one of the parameters, it would be applied to all of the specified hosts. You can make a change to either the host profile, the service profile, or in the service, which will then be applied to all associated hosts.

h4. Creating Service Profiles

h5. Service Profile: Services

# Select *Configuration* > *Profiles*.
# Select *Service Profiles* and then *New*.
# Enter a *Name* and *Description* for the new profile and select *Add*, the *Service Profile* screen will be displayed.
# In this screen select and add the services from the right side list to be included in this profile. You can select multiple service names by using the _CTRL_ key while selecting, or select a range by selecting the first item and using the _SHIFT_ key to select the last item.
# Select *Save*.
{Note}When making changes you must select *Save* for each tab. If you do not select _Save_ and go to another tab you will lose your changes. Additionally, for the saved changes to take place you must select the *Apply* tab to push the changes made to hosts, host groups, etc. Read the _Apply_ screen carefully as caution should be taken before taking this action.{Note}
{Note}When service dependencies have been assigned to service names, be careful to include the parent service names as defined in the dependency templates.{Note}
Figure: Services as part of service profile
!profiles_3.jpg|border=1!

h5. Service Profile: Assign Hosts

The *Assign Hosts* tab enables you to add or remove hosts to be managed by this profile. Removing a host means the host is no longer managed by this profile. The host will retain its properties until the host is assigned and applied to another profile, or modified individually.

# Select the *Assign Hosts* tab in the service profile screen.
# In this screen select the hosts from the right side list to be included in this profile, and *Save*.
# Select the *Apply* tab and check the appropriate options to instantiate changes to the host.
\\
\\
Figure: Assign Hosts to be managed by this profile
!profiles_4.jpg|border=1!

h5. Service Profile: Assign Host Groups

The *Assign Host Groups* tab enables you to add or remove host groups to be managed by this profile. Removing a host group means the host group is no longer managed by this profile. The member hosts will retain their properties until the host group is assigned and applied to another service profile, or the member hosts are modified individually.

# Select the *Assign Host Groups* tab in the service profile screen.
# In this screen select the hosts groups from the right side list to be included in this profile and *Save*.
# Select the *Apply* tab and check the appropriate options to instantiate changes to the member hosts.
\\
\\
Figure: Assign Host Groups to be managed by this profile
!profiles_5.jpg|border=1!

h5. Service Profile: Host Profiles

The *Host Profiles* tab enables you to add or remove host profiles to which this service profile is assigned. Adding or removing a host profile here has no effect the host profile's member hosts until the *Apply* tab is used on the host profile, or the profile is applied on the individual hosts.

# Select the *Host Profiles* tab in the service profile screen.
# In this screen select the hosts profiles from the right side list to be included in this profile and *Save*.
# Select the *Apply* tab and check the appropriate options to instantiate changes.
\\
\\
Figure: Host Profiles to which this profile is assigned
!profiles_6.jpg|border=1!

h5. Service Profile: Apply Tab

As mentioned above, for the saved changes to take place you must select the *Apply* tab to push the changes made to hosts, host groups, etc.
{Note}Read the Apply screen carefully as caution should be taken before taking this action.{Note}
Applying a service profile at this point will modify the current service configuration across probably multiple hosts. Before taking this action, be sure to double-check:
* your service profile changes
* your chosen set of target hosts that reference this service profile
* how you want to modify the existing services
\\
\\
Figure: Apply changes
!profiles_7.jpg|border=1!

h4. Creating Host Profiles

We'll start by naming the new host profile and attaching a host template. Then you can configure just about everything that the _Nagios_ engine can know about the host with this form. The good part is that you can change this data at any time, and the hosts that use this profile will be updated with the new settings. This is similar to using templates in _Nagios_, but the difference is that _Nagios_ templates do not support adding services. Profiles can be applied using the _New Host Wizard_ option in the _Configuration_ application, or later using tabs accessible in the host configuration screen or in the *Configuration* > *Profiles* section.
{Note}When making changes you must select *Save* for each tab. If you do not select _Save_ before you go to another tab, you will lose your changes. Additionally, for the saved changes to take place you must select the *Apply* tab to push the changes made to hosts, host groups, etc. Read the *Apply* screen carefully as caution should be taken before taking this action.{Note}

h5. Host Profile: Host Detail

This tab displays the name and description for the new host profile along with the required host template.
# Select *Configuration* > *Profiles*.
# Select *Host Profiles* and *New*.
# In the *Host Profile* screen enter a *Name* and *Description* for the new profile. Select the host template most suitable for this host profile (e.g. _generic-host_). Select *Add*, and the *Host Profile* screen will be displayed.
# In the *Host Detail* tab, the selected host template properties will be displayed. You can uncheck the left checkbox on the individual directives to override the template values.
# Select *Save*. Once a host profile has been created, you can manage its details using the tabs provided and described below.
\\
\\
Figure: Host Detail
!profiles_8.jpg|border=1!

h5. Host Profile: Parents

*Parent Hosts* are typically routers, switches, firewalls, etc. that lie between the monitoring host and a remote host. The *Parents* tab in the host profile screen lets you add or remove parent hosts for hosts using this profile. Parent child relationships may also be managed directly by going to *Hosts* _>_ *Parent Child*.
# Select the *Parents* tab in the host profile screen.
# In this screen, select the parent hosts from the right side list to be included in this profile, and click *Add*.
# Select *Save*.
# Select the *Apply* tab and check the appropriate options to instantiate changes to the hosts.
\\
\\
Figure: Parents
!profiles_9.jpg|border=1!

h5. Host Profile: Host Groups

When a host goes down, becomes unreachable, or recovers, _Nagios_ will find which host group(s) the host is a member of, get the contact group for each of those host groups, and notify all contacts associated with those contact groups. The host groups tab is used to add or remove host groups for hosts using this profile. Host groups may also be managed directly by going to *Hosts* _>_ *Host Groups*.
# Select the *Host Groups* tab in the host profile screen.
# In this screen, select the host groups from the right side list to be included in this profile, and click *Add*.
# Select *Save*.
# Select the *Apply* tab and check the appropriate options to instantiate changes to the hosts.
\\
\\
Figure: Hostgroups for hosts using this profile
!profiles_10.jpg|border=1!

h5. Host Profile: Escalation Trees

The *Escalation Trees* option is used to define host and service escalation trees. Escalations trees are used to escalate contact notifications for a particular service, host, or host group. An escalation tree is a grouping of multiple escalations which is then assigned to a host, host profile, host group, or a service to escalate notifications. Escalations and escalation trees are themselves defined and configured under *Configuration* > *Escalations*. The escalation trees tab enables you to optionally select host and service escalations appropriate for a host using this profile. Assigning a service escalation tree sets the escalation for all services on hosts using this profile.

# Select the *Escalation Trees* tab in the host profile screen.
# Select the host and or service escalation tree from the drop-down boxes and *Save*.
# Select the *Apply* tab to apply escalations to hosts.
\\
\\
Figure: Escalation Trees for hosts using this profile
!profiles_11.jpg|border=1!

h5. Host Profile: Service Profiles

The *Service Profiles* tab enables you to add or remove service profiles for hosts using this profile.
# Select the *Service Profiles* tab in the host profile screen.
# In this screen, select the service profiles from the right side list to be included in this profile, and click *Add*.
# Select *Save*.
# Select the *Apply* tab to push changes to the hosts.
\\
\\
Figure: Service Profiles
!profiles_12.jpg|border=1!

h5. Host Profile: Assign Hosts

The *Assign Hosts* tab within the host profile screen enables you to add or remove hosts to be individually managed by this profile. Removing a host means the host is no longer managed by this profile unless it is a member of a host group which is managed by this profile (see below). The host will retain its properties until the host is assigned and applied to another profile, or modified individually.
# Select the *Assign Hosts* tab in the host profile screen.
# In this screen, select the hosts from the right side list to be included in this profile, and click *Add*.
# Select *Save*.
# Select the *Apply* tab to instantiate changes to the host.
\\
\\
Figure: Assign Hosts
!profiles_13.jpg|border=1!

h5. Host Profile: Assign Host Groups

The *Assign Host Groups* tab enables you to add or remove host groups to be managed by this profile. Having a host group be managed by a host profile allows you to apply changes to the host profile to all the host members of the host group, without having to individually assign the host profile directly to each of the hosts. Removing a host group means the host group is no longer managed by this profile. The member hosts will retain their properties until the host group is assigned and applied to another profile, or the member hosts are modified individually.
# Select the *Assign Host Groups* tab in the host profile screen.
# In this screen select the host groups from the right side list to be included in this profile, and select *Save*.
# Select the *Apply* tab to instantiate changes to the member hosts.
\\
\\
Figure: Assign host groups to be managed by this profile
!profiles_14.jpg|border=1!

h5. Host Profile: Apply Tab

As mentioned above, for the saved changes to take place you must select the *Apply* tab to push the changes made to hosts, host groups, etc.
{Note}Read the Apply screen carefully as caution should be taken before taking this action.{Note}
Applying a host profile at this point will modify the current service configuration across probably multiple hosts. Before taking this action, be sure to double-check:
* your host profile changes
* your chosen set of target hosts that reference this host profile
* which host properties you wish to apply from the profile to the hosts
* how you want to modify the existing services
\\
\\
Figure: Apply changes
!profiles_15.jpg|border=1!