OP#436 update Readme
This commit is contained in:
138
README.md
138
README.md
@@ -102,7 +102,7 @@ Use that value to override the default password in ENC or Hiera, if you use it.
|
||||
|
||||
### Additional UI users
|
||||
|
||||
The main user is automatically created. If you want to add more users, this should be done via the define confdroid_nagios::server::access. In your control repo, site.pp etc. address the access define like this:
|
||||
The main user is automatically created. If you want to add more users, this should be done via the define `confdroid_nagios::server::access`. In your control repo, site.pp etc. address the access define like this:
|
||||
|
||||
```puppet
|
||||
confdroid_nagios::server::access { 'example':
|
||||
@@ -126,6 +126,25 @@ In order to add contacts for the notifications, address the define `confdroid_na
|
||||
|
||||
This requires the contact groups to be in place as well.
|
||||
|
||||
Alternatively you also can create a custom class within this module and use the export command like this:
|
||||
|
||||
```puppet
|
||||
@@nagios_contact { 'ops':
|
||||
ensure => present,
|
||||
alias => 'Operations',
|
||||
contact_name => 'ops',
|
||||
contactgroups => 'operations',
|
||||
email => 'ops@example.net',
|
||||
can_submit_commands => '1',
|
||||
register => '1',
|
||||
use => 'generic-contact',
|
||||
target => $ng_target_base_contact,
|
||||
owner => $ng_user,
|
||||
group => $ng_user,
|
||||
mode => '0640',
|
||||
}
|
||||
```
|
||||
|
||||
### Adding contact groups
|
||||
|
||||
In order to add contact groups for the notifications, address the define `confdroid_nagios::nagios::objects::add_contactgroups` in your config repo, site.pp etc. like this:
|
||||
@@ -138,6 +157,21 @@ In order to add contact groups for the notifications, address the define `confdr
|
||||
}
|
||||
```
|
||||
|
||||
Alternatively you also can create a custom class within this module and use the export command like this:
|
||||
|
||||
```puppet
|
||||
@@nagios_contactgroup { 'operations':
|
||||
ensure => present,
|
||||
alias => 'Operations Team',
|
||||
contactgroup_name => 'operations',
|
||||
owner => $ng_user,
|
||||
group => $ng_user,
|
||||
mode => '0640',
|
||||
register => '1',
|
||||
target => $ng_tgt_contactgroup_base,
|
||||
}
|
||||
```
|
||||
|
||||
### Adding host groups
|
||||
|
||||
In order to add host groups, address the define `confdroid_nagios::nagios::objects::add_hostgroups` in your config repo, site.pp etc. like this:
|
||||
@@ -149,22 +183,116 @@ In order to add host groups, address the define `confdroid_nagios::nagios::objec
|
||||
}
|
||||
```
|
||||
|
||||
Hosts will be populated through the target.pp dynamically.
|
||||
Alternatively you also can create a custom class within this module and use the export command like this:
|
||||
|
||||
```puppet
|
||||
@@nagios_hostgroup { 'rhel-servers':
|
||||
ensure => present,
|
||||
hostgroup_name => 'rhel-servers',
|
||||
alias => 'RHEL Servers',
|
||||
owner => $ng_user,
|
||||
group => $ng_user,
|
||||
mode => '0640',
|
||||
register => '1',
|
||||
target => $ng_target_hostgroup_base,
|
||||
}
|
||||
```
|
||||
|
||||
Hosts themselves will be populated through the target.pp dynamically.
|
||||
|
||||
### Adding service groups
|
||||
|
||||
ToDo
|
||||
In order to add service groups, address the define `confdroid_nagios::nagios::objects::add_servicegroups` in your config repo, site.pp etc. like this:
|
||||
|
||||
```puppet
|
||||
confdroid_nagios::nagios::objects::add_servicegroups { 'example_servicegroup':
|
||||
ng_servicegroup_name => 'example_servicegroup',
|
||||
ng_servicegroup_alias => 'Example servicegroup',
|
||||
}
|
||||
```
|
||||
|
||||
Alternatively you also can create a custom class within this module and use the export command like this:
|
||||
|
||||
```puppet
|
||||
@@nagios_servicegroup { 'network-services':
|
||||
ensure => present,
|
||||
servicegroup_name => 'network-services',
|
||||
alias => 'Network Services',
|
||||
owner => $ng_user,
|
||||
group => $ng_user,
|
||||
mode => '0640',
|
||||
register => '1',
|
||||
target => $ng_target_svcgrp_base,
|
||||
}
|
||||
```
|
||||
|
||||
### Adding time periods
|
||||
|
||||
ToDo
|
||||
In order to add time periods, address the define `confdroid_nagios::nagios::objects::add_timeperiods` in your config repo, site.pp etc. like this:
|
||||
|
||||
```puppet
|
||||
confdroid_nagios::nagios::objects::add_timeperiods { 'example_timeperiod':
|
||||
ng_timep_name => 'example_timeperiod',
|
||||
ng_timep_alias => 'Example timeperiod',
|
||||
ng_timep_monday => '00:00-00:00',
|
||||
ng_timep_tuesday => '00:00-00:00',
|
||||
ng_timep_wednesday => '00:00-00:00',
|
||||
ng_timep_thursday => '00:00-00:00',
|
||||
ng_timep_friday => '00:00-00:00',
|
||||
ng_timep_saturday => '00:00-00:00',
|
||||
ng_timep_sunday => '00:00-00:00',
|
||||
}
|
||||
```
|
||||
|
||||
Alternatively you also can create a custom class within this module and use the export command like this:
|
||||
|
||||
```puppet
|
||||
@@nagios_timeperiod { 'office_hours':
|
||||
ensure => present,
|
||||
timeperiod_name => 'office_hours',
|
||||
alias => 'Office hours only, 5 Days A Week 09-05',
|
||||
monday => '09:00-17:00',
|
||||
tuesday => '09:00-17:00',
|
||||
wednesday => '09:00-17:00',
|
||||
thursday => '09:00-17:00',
|
||||
friday => '09:00-17:00',
|
||||
saturday => '00:00-00:00',
|
||||
sunday => '00:00-00:00',
|
||||
owner => $ng_user,
|
||||
group => $ng_user,
|
||||
mode => '0640',
|
||||
register => '1',
|
||||
target => $ng_tgt_timeperiods_base,
|
||||
}
|
||||
```
|
||||
|
||||
### Adding custom commands
|
||||
|
||||
ToDo
|
||||
Commands are defined in `confdroid_nagios::nagios::objects::commands` and deployed /etc/nagios/conf.d/nagios_commands_base.cfg through PuppetDB exports like this:
|
||||
|
||||
```puppet
|
||||
@@nagios_command { 'check_disk':
|
||||
ensure => present,
|
||||
command_name => 'check_disk',
|
||||
command_line => '$USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$',
|
||||
owner => $ng_user,
|
||||
group => $ng_user,
|
||||
mode => '0640',
|
||||
target => $ng_target_command,
|
||||
}
|
||||
```
|
||||
|
||||
### Adding templates
|
||||
|
||||
In order to add time periods, address the define `confdroid_nagios::nagios::objects::add_templates` in your config repo, site.pp etc. like this:
|
||||
|
||||
```puppet
|
||||
confdroid_nagios::nagios::objects::templates { 'generic contact':
|
||||
ng_template_object => 'contact',
|
||||
ng_template_object_name => 'generic-contact',
|
||||
}
|
||||
```
|
||||
|
||||
## PuppetDB
|
||||
|
||||
A working instance of PuppetDB connected to the Puppet master is required for this to work. Installation and configuration of PuppetDB is out of scope for this module, however [cd_puppetdb](https://gitlab.confdroid.com/puppet/cd_puppetdb) is available to automate this task for you as well within a few minutes.
|
||||
|
||||
Reference in New Issue
Block a user