Skip to content

Commit

Permalink
add all files
Browse files Browse the repository at this point in the history
  • Loading branch information
a.walker committed Jul 19, 2016
1 parent ddcaf24 commit 94548fa
Show file tree
Hide file tree
Showing 7 changed files with 2,057 additions and 2 deletions.
141 changes: 139 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,139 @@
# agen
Tool to create configuration of icinga2 for passive windows checks (written in AutoIt)
# Agen
## Description
Tool to create configuration of icinga2 for passive windows checks(for using with nsclient++)

## Steps

### config.xml

<?xml version="1.0" encoding="UTF-16"?>
<CONFIG>
<monserver>
<interval>2</interval>
<adresse>monitoring.server.local</adresse>
<password>NSCAPASS</password>
</monserver>
<konfiguration>
<htemplate>passive-host</htemplate>
<stemplate>passive-service</stemplate>
<hgruppe>HOSTGROUP</hgruppe>
<sgruppe>SERVICEGROUP</sgruppe>
</konfiguration>
</CONFIG>

interval - specifying how many times the data should be sent (min)
address - url/ip of monitoring server
password - password of nsca service on monitoring server
htemplate - name of passive host template on icinga2
stemplate - name of passvie service template on icinga2
hgruppe - host group name on icinga2 server
sgruppe - service group name on icinga2 server

#### Example passive host template

template Host "passive-host" {
max_check_attempts = 2
check_interval = 300s
retry_interval = 200s
enable_active_checks = true
enable_passive_checks = true
check_command = "passive"
vars.notification["mail"] = {
groups = [ "icingaadmins" ]
}
}

#### Example passvie service template

template Service "passive-service" {
max_check_attempts = 2
check_interval = 3m
retry_interval = 0
enable_active_checks = true
check_command = "passive"
vars.notification["mail"] = {
groups = [ "icingaadmins" ]
}
}

#### Generated example of an configuration file for icinga2

object Host "4demo" {
import "passive-host"
display_name = "4demo Server Host"
vars.group = "test"
}

object Service "CPU" {
import "passive-service"
host_name ="4demo"
vars.group ="test"
}

object Service "Festplatten" {
import "passive-service"
host_name ="4demo"
vars.group ="test"
}

object Service "Arbeitsspeicher" {
import "passive-service"
host_name ="4demo"
vars.group ="test"
}

### source.txt
This file contains all ressources, which you can select to monitor
#### Segment
Here will be descript, which services contain this file

win - Windows service
eve - Eventlog

#### Module
Module to activated in nsclient++

#### Interval
Time to resend state of a service

#### Example - DHCP Server
1. Add winDHCP in Segment
2. Add Service

##winDHCP
;DHCP Service
DHCPServer:Windows_Dienst_DHCP_Server

##winDHCP - define (win) that it is a windows service
;DHCP Service - description of service, this will be write in nsclient.ini as comment
DHCPServer - Name of service in Windows
Windows_Dienst_DHCP_Server - Name of service in icinga (Display Name)
3. Add Eventlog

##EveIDDHCP
;EveIDDHCP
10020:system:1:10:20:DHCP_Dyn._IP
##EveIDDHCP - Name of Segment - eve define that it is a eventlog
;EveIDDHCP - comment in nslcient.ini
10020 - Eventlog id
system - type of eventlog (application, system, security)
1 - warn
10 - critical
20 - show last 20min.
DHCP_Dyn._IP - Name of service in icinga (Display Name). You can use a name with space


## Steps

1. Edit config.xml (show below)
2. Start tool
3. Select folder with config.xml and source.txt
4. Write host name and display host name
5. Select service to monitoring
6. Check checkbox if you will generate icinga2 configuration file
7. Copy nsclient.ini in nsclient++ folder and restart nsclient++
8. Copy servername.conf file in icinga2 server and reload/restart icinga2 configuration.


# It would be good if you send me the updates of source.txt file
Loading

0 comments on commit 94548fa

Please sign in to comment.