Project

General

Profile

Assign Service to Host » History » Revision 14

Revision 13 (chin-yeh, 09/09/2010 03:22 PM) → Revision 14/15 (chin-yeh, 09/09/2010 03:31 PM)

{{toc}} 

 h1. Assign Service to Host 

 A service should be grouped under a specify service group to ease the configuration tasks. 

 *[Important]* Prepare the following information before begin: 
 * *host name* - the host name of the host to be assigned; the particular host name must exists in the @/usr/local/nagios/etc/ecosway/hosts/hosts.cfg@ and @/usr/local/nagios/etc/jmx4perl/servers.cfg@ 
 * *service group* - the group name of the service to be monitored 


 List of available services: 
 * [[Assign Service to Host#Assign-DB2-service|DB2]] 
 * [[Assign Service to Host#Assign-Third-Party-Service|Third Party Service]] 
 * [[Assign Service to Host#Assign-eCosway-Service|eCosway Application]] 
 * [[Assign Service to Host#Assign-Jboss-Service|Jboss]] 
 * [[Assign Service to Host#Assign-Server-Resources-Service|Server Resources]]  

 h2. Assign DB2 service 

 Assumes that the target DB2 host has a @nagios@ user and the user has the monitor related privileges assigned. 

 The currently available commands for DB2 service are: 
 * *db2_connect_cmd* - check the time taken to establish connection to DB2 

 You may need the following additional information: 
 * *database name* - the name of the database to be monitored 
 * *warning threshold* - the warning threshold of this service in seconds unit, e.g. 3 for seconds 
 * *critical threshold* - the critical threshold of this service in seconds unit, e.g. 5 for seconds 

 h3. Steps 

 # login to the nagios server with @nagios@ user 
 # edit the @/usr/local/nagios/etc/ecosway/services/db2_services.cfg@ 
 <pre> 
 nagios$ vi /usr/local/nagios/etc/ecosway/services/db2_services.cfg 
 </pre> 
 * Template: 
 <pre> 
 define service{ 
         use                       db2-service 
         service_description       describe your service here 
         host_name                 host name 
         check_command             db2_connect_cmd!database name!warning threshold!critical threshold 
         } 
 </pre> 
 * Example: 
 <pre> 
 define service{ 
         use                       db2-service 
         service_description       DB2 Connect - MY_STORE database 
         host_name                 cwydb1 
         check_command             db2_connect_cmd!my_store!3!5 
         } 
 </pre> 


 h2. Assign Third Party Service 

 This service is using *NRPE* addon and *check_http* command. Therefore, you may refer to the [[Documentation#Install-NRPE-optional|NRPE]] for the configuration details. 

 I will assume that you have the following things configured on the remote host and got the @NRPE@ up and running in the background: 
 * Remote Host: @/usr/local/nagios/etc/nrpe.cfg@ 
 <pre> 
 ... skip  

 # UPS 
 command[check_ups_sav]=/usr/local/nagios/libexec/check_http -I onlinetools.ups.com -S -u /webservices/XAV -w 10 -c 12 
 command[check_ups_rate]=/usr/local/nagios/libexec/check_http -I onlinetools.ups.com -S -u /webservices/Rate -w 10 -c 12 

 # Avalara 
 command[check_avatax]=/usr/local/nagios/libexec/check_http -I avatax.avalara.net -S -u / -w 10 -c 12 -e "HTTP/1.1 403 Forbidden" 

 # Authorize.net 
 command[check_authorize]=/usr/local/nagios/libexec/check_http -I secure.authorize.net -S -u /gateway/transact.dll -w 10 -c 12 

 ... skip 
 </pre> 

 h3. Steps 

 # login to the nagios server with @nagios@ user 
 # edit @/usr/local/nagios/etc/ecosway/services/ex_services.cfg@ 
 <pre> 
 nagios$ vi /usr/local/nagios/etc/ecosway/services/ex_services.cfg 
 </pre> 
 * assume that you'd like to monitor @Avatax@; the @check_avatax@ remote command would be used for this example. 
 * Template: 
 <pre> 
 define service{ 
         use                               ex-service 
         host_name                         host name 
         service_description               put your description here 
         check_command                     check_nrpe!put the remote check command here 
         } 
 </pre> 
 * Example: 
 <pre> 
 define service{ 
         use                               ex-service 
         host_name                         cwyapp1 
         service_description               Avalara - Avatax 
         check_command                     check_nrpe!check_avatax 
         } 
 </pre> 

 h2. Assign eCosway Service 

 This services are configured to run on remote host. However, this services could configure to run on nagios server instead.  

 To monitor this, the @NRPE@ addon and @check_http@ commnd will be used. You could refer to the [[Documentation#Install-NRPE-optional|NRPE]] for the configuration details. Besides that, the following configuration must exist on the remote host: 
 * @/usr/local/nagios/etc/nrpe.cfg@ 
 <pre> 
 ... skip 

 command[check_dotcom]=/usr/local/nagios/libexec/check_http -H 192.168.2.66 -I 127.0.0.1 -u /ecosway/mall_main.jsp -w 5 -c 7 

 ... skip 
 </pre> 

 h3. Steps 

 # login to the nagios server with @nagios@ user 
 # edit @/usr/local/nagios/etc/ecosway/services/ecos_services.cfg@ 
 <pre> 
 nagios$ vi /usr/local/nagios/etc/ecosway/services/ecos_services.cfg 
 </pre> 
 * Template: 
 <pre> 
 define service{ 
         use                               ecos-service 
         host_name                         host name 
         service_description               put the description here 
         check_command                     check_nrpe!the remote check command 
         } 
 </pre> 
 * Example: 
 <pre> 
 define service{ 
         use                               ecos-service 
         host_name                         cwyapp1 
         service_description               Dot Com Mall 
         check_command                     check_nrpe!check_dotcom 
         } 
 </pre> 


 h2. Assign Jboss Service 

 This service uses the @Jmx4Perl@ addon. Below is the list of configured check commands (_ask the administrator to add more command when necessary_): 
 * [[Assign_Service_to_Host#Steps-j4p_memory_heap|j4p_memory_heap]] - the utilized memory heap in Jboss instance 
 * [[Assign_Service_to_Host#Steps-j4p_perm_gen|j4p_perm_gen]] - the utilized perm gen in Jboss instance 
 * [[Assign_Service_to_Host#Steps-j4p_cpool_used|j4p_cpool_used]] - the number of utilized connections in Jboss's connection pool 

 h3. Steps - j4p_memory_heap 

 # login to nagios server with @nagios@ user 
 # edit @/usr/local/nagios/etc/ecosway/services/jboss_services.cfg@ 
 <pre> 
 nagios$ vi /usr/local/nagios/etc/ecosway/services/jboss_services.cfg 
 </pre> 
 * Template: 
 <pre> 
 define service{ 
         use                       jboss-service 
         service_description       put the description here 
         host_name                 add or append the host name here, separate by commas 
         check_command             j4p_cmd!j4p_memory_heap 
         } 
 </pre> 
 * Example: 
 <pre> 
 define service{ 
         use                       jboss-service 
         service_description       Jboss Heap Memory 
         host_name                 cwyrnd3-server,cwydb1,cwyapp1 
         check_command             j4p_cmd!j4p_memory_heap 
         } 
 </pre> 

 h3. Steps - j4p_perm_gen 

 # login to nagios server with @nagios@ user 
 # edit @/usr/local/nagios/etc/ecosway/services/jboss_services.cfg@ 
 <pre> 
 nagios$ vi /usr/local/nagios/etc/ecosway/services/jboss_services.cfg 
 </pre> 
 * Template: 
 <pre> 
 define service{ 
         use                       jboss-service 
         service_description       put the description here 
         host_name                 add or append host name here, separate by commas 
         check_command             j4p_cmd!j4p_perm_gen 
         } 
 </pre> 
 * Example: 
 <pre> 
 define service{ 
         use                       jboss-service 
         service_description       Jboss Perm Gen 
         host_name                 cwyrnd3-server,cwydb1,cwyapp1 
         check_command             j4p_cmd!j4p_perm_gen 
         } 
 </pre> 

 h3. Steps - j4p_cpool_used 

 *SHOULD NOT* reuse the existing service definition as the data source name could be unique across different hosts. 

 Prepare the following information before continue: 
 * *data source name* - the name of the database connection pool 

 # login to nagios server with @nagios@ user 
 # edit @/usr/local/nagios/etc/ecosway/services/jboss_services.cfg@ 
 <pre> 
 nagios$ vi /usr/local/nagios/etc/ecosway/services/jboss_services.cfg 
 </pre> 
 * Template: 
 <pre> 
 define service{ 
         use                       jboss-service 
         service_description       put the description here 
         host_name                 host name 
         check_command             j4p_cmd!j4p_cpool_used!data source name 
         } 
 </pre> 
 * Example: 
 <pre> 
 define service{ 
         use                       jboss-service 
         service_description       Connection Pool - DB2DS 
         host_name                 cwyapp1 
         check_command             j4p_cmd!j4p_cpool_used!DB2DS 
         } 
 </pre> 

 h2. Assign Server Resources Service 

 This service is using @NRPE@ addon to monitor remote hosts' services, e.g. average load, swap files, and etc. 

 List of available remote services: 
 * Average Load - check the system current load 
 * Swap File Used - check the swap space used 
 * Disk Space Used - check the amount of disk space used