update to bw4
This commit is contained in:
parent
d7862918a6
commit
5e2fea8497
22 changed files with 223 additions and 501 deletions
|
@ -1,52 +1,33 @@
|
|||
from bundlewrap.metadata import atomic
|
||||
|
||||
|
||||
@metadata_processor
|
||||
def backups(metadata):
|
||||
if metadata.get('bind', {}).get('zones_primary_dynamic', {}):
|
||||
metadata.setdefault('backups', {}).setdefault('paths', set()).add(
|
||||
'/var/lib/bind/primary.dynamic',
|
||||
)
|
||||
return metadata, RUN_ME_AGAIN
|
||||
|
||||
|
||||
@metadata_processor
|
||||
def monitoring(metadata):
|
||||
icinga2_api = metadata.setdefault('icinga2_api', {})
|
||||
node_metadata = icinga2_api.setdefault('bind', {})
|
||||
|
||||
services = node_metadata.setdefault('services', {})
|
||||
services.setdefault('BIND PROCESS', {}).update({
|
||||
'check_command': 'nrpe',
|
||||
'vars.nrpe_command': 'check_bind_procs',
|
||||
})
|
||||
for interface in metadata.get('bind', {}).get('listen', []):
|
||||
services.setdefault('BIND PORT {}'.format(interface), {}).update({
|
||||
'check_command': 'tcp',
|
||||
'vars.tcp_address': metadata['interfaces'][interface]['ip_addresses'][0],
|
||||
'vars.tcp_port': 53,
|
||||
})
|
||||
|
||||
nrpe_checks = metadata.setdefault('nrpe', {}).setdefault('custom_nrpe_checks', {})
|
||||
nrpe_checks['check_bind_procs'] = '/usr/lib/nagios/plugins/check_procs -C named -c 1:1'
|
||||
|
||||
return metadata, DONE
|
||||
|
||||
|
||||
@metadata_processor
|
||||
def sperrfix(metadata):
|
||||
per_bundle = metadata.get('bind', {}).get('sperrfix', {})
|
||||
|
||||
if per_bundle.get('ignore'):
|
||||
return metadata, DONE
|
||||
|
||||
sources = per_bundle.get('sources', {'*'})
|
||||
|
||||
return {
|
||||
'sperrfix': {
|
||||
'bundle_rules': {
|
||||
'53': atomic({'sources': sources}),
|
||||
'53/udp': atomic({'sources': sources}),
|
||||
defaults = {
|
||||
'icinga2_api': {
|
||||
'bind': {
|
||||
'services': {
|
||||
'BIND PROCESS': {
|
||||
'command_on_monitored_host': '/usr/lib/nagios/plugins/check_procs -C named -c 1:1',
|
||||
},
|
||||
},
|
||||
},
|
||||
}, OVERWRITE, RUN_ME_AGAIN
|
||||
},
|
||||
}
|
||||
|
||||
@metadata_reactor
|
||||
def port_checks(metadata):
|
||||
services = {}
|
||||
|
||||
for interface in metadata.get('bind/listen', set()):
|
||||
services[f'BIND PORT {interface}'] = {
|
||||
'check_command': 'tcp',
|
||||
'vars.tcp_address': metadata.get(f'interfaces/{interface}/ip_addresses')[0],
|
||||
'vars.tcp_port': 53,
|
||||
}
|
||||
|
||||
return {
|
||||
'icinga2_api': {
|
||||
'bind': {
|
||||
'services': services,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue