community / community.general / 0.2.1 / module / nagios Perform common tasks in Nagios related to downtime and notifications. Authors: Tim Bielawa (@tbielawa)community.general.nagios (0.2.1) — module
Install with ansible-galaxy collection install community.general:==0.2.1
collections: - name: community.general version: 0.2.1
The C(nagios) module has two basic functions: scheduling downtime and toggling alerts for services or hosts.
All actions require the I(host) parameter to be given explicitly. In playbooks you can use the C({{inventory_hostname}}) variable to refer to the host the playbook is currently running on.
You can specify multiple services at once by separating them with commas, .e.g., C(services=httpd,nfs,puppet).
When specifying what service to handle there is a special service value, I(host), which will handle alerts/downtime for the I(host itself), e.g., C(service=host). This keyword may not be given with other services at the same time. I(Setting alerts/downtime for a host does not affect alerts/downtime for any of the services running on it.) To schedule downtime for all services on particular host use keyword "all", e.g., C(service=all).
When using the C(nagios) module you will need to specify your Nagios server using the C(delegate_to) parameter.
- name: Set 30 minutes of apache downtime nagios: action: downtime minutes: 30 service: httpd host: '{{ inventory_hostname }}'
- name: Schedule an hour of HOST downtime nagios: action: downtime minutes: 60 service: host host: '{{ inventory_hostname }}'
- name: Schedule an hour of HOST downtime starting at 2019-04-23T02:00:00+00:00 nagios: action: downtime start: 1555984800 minutes: 60 service: host host: '{{ inventory_hostname }}'
- name: Schedule an hour of HOST downtime, with a comment describing the reason nagios: action: downtime minutes: 60 service: host host: '{{ inventory_hostname }}' comment: Rebuilding machine
- name: Schedule downtime for ALL services on HOST nagios: action: downtime minutes: 45 service: all host: '{{ inventory_hostname }}'
- name: Schedule downtime for a few services nagios: action: downtime services: frob,foobar,qeuz host: '{{ inventory_hostname }}'
- name: Set 30 minutes downtime for all services in servicegroup foo nagios: action: servicegroup_service_downtime minutes: 30 servicegroup: foo host: '{{ inventory_hostname }}'
- name: Set 30 minutes downtime for all host in servicegroup foo nagios: action: servicegroup_host_downtime minutes: 30 servicegroup: foo host: '{{ inventory_hostname }}'
- name: Delete all downtime for a given host nagios: action: delete_downtime host: '{{ inventory_hostname }}' service: all
- name: Delete all downtime for HOST with a particular comment nagios: action: delete_downtime host: '{{ inventory_hostname }}' service: host comment: Planned maintenance
- name: Enable SMART disk alerts nagios: action: enable_alerts service: smart host: '{{ inventory_hostname }}'
- name: Disable httpd and nfs alerts nagios: action: disable_alerts service: httpd,nfs host: '{{ inventory_hostname }}'
- name: Disable HOST alerts nagios: action: disable_alerts service: host host: '{{ inventory_hostname }}'
- name: Silence ALL alerts nagios: action: silence host: '{{ inventory_hostname }}'
- name: Unsilence all alerts nagios: action: unsilence host: '{{ inventory_hostname }}'
- name: Shut up nagios nagios: action: silence_nagios
- name: Annoy me negios nagios: action: unsilence_nagios
- name: Command something nagios: action: command command: DISABLE_FAILURE_PREDICTION
host: description: - Host to operate on in Nagios. start: description: - When downtime should start, in time_t format (epoch seconds). version_added: 0.2.0 version_added_collection: community.general action: choices: - downtime - delete_downtime - enable_alerts - disable_alerts - silence - unsilence - silence_nagios - unsilence_nagios - command - servicegroup_service_downtime - servicegroup_host_downtime description: - Action to take. - servicegroup options were added in 2.0. - delete_downtime options were added in 2.2. required: true author: default: Ansible description: - Author to leave downtime comments as. Only usable with the C(downtime) action. cmdfile: default: auto-detected description: - Path to the nagios I(command file) (FIFO pipe). Only required if auto-detection fails. command: description: - The raw command to send to nagios, which should not include the submitted time header or the line-feed B(Required) option when using the C(command) action. required: true comment: default: Scheduling downtime description: - Comment for C(downtime) action. minutes: default: 30 description: - Minutes to schedule downtime for. - Only usable with the C(downtime) action. type: int services: aliases: - service description: - What to manage downtime/alerts for. Separate multiple services with commas. C(service) is an alias for C(services). B(Required) option when using the C(downtime), C(enable_alerts), and C(disable_alerts) actions. required: true servicegroup: description: - The Servicegroup we want to set downtimes/alerts for. B(Required) option when using the C(servicegroup_service_downtime) amd C(servicegroup_host_downtime).