zabbix_maintenance – Create Zabbix maintenance windows

From Get docs
Ansible/docs/2.9/modules/zabbix maintenance module


zabbix_maintenance – Create Zabbix maintenance windows

Synopsis

  • This module will let you create Zabbix maintenance windows.

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6
  • zabbix-api >= 0.5.4

Parameters

Parameter Choices/Defaults Comments

collect_data

boolean

  • no
  • yes

Type of maintenance. With data collection, or without.

desc

string

Default:

"Created by Ansible"

Short description of maintenance window.

host_groups

list / elements=string

Host groups to manage maintenance window for.

Required option when state=present and host_names is not used.


aliases: host_group

host_names

list / elements=string

Hosts to manage maintenance window for.

Required option when state=present and host_groups is not used.


aliases: host_name

http_login_password

string

Basic Auth password

http_login_user

string / required

Basic Auth login

login_password

string / required

Zabbix user password.

login_user

string / required

Zabbix user name.

minutes

integer

Default:

10

Length of maintenance window in minutes.

name

string / required

Unique name of maintenance window.

server_url

string / required

URL of Zabbix server, with protocol (http or https). url is an alias for server_url.


aliases: url

state

string

  • present

  • absent

Create or remove a maintenance window. Maintenance window to remove is identified by name.

timeout

integer

Default:

10

The timeout of API request (seconds).

validate_certs

boolean

added in 2.5

  • no
  • yes

If set to False, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.



Notes

Note

  • Useful for setting hosts in maintenance mode before big update, and removing maintenance window after update.
  • Module creates maintenance window from now() to now() + minutes, so if Zabbix server’s time and host’s time are not synchronized, you will get strange results.
  • Install required module with ‘pip install zabbix-api’ command.
  • If you use login_password=zabbix, the word “zabbix” is replaced by “****” in all module output, because login_password uses no_log. See this FAQ for more information.


Examples

- name: Create a named maintenance window for host www1 for 90 minutes
  zabbix_maintenance:
    name: Update of www1
    host_name: www1.example.com
    state: present
    minutes: 90
    server_url: https://monitoring.example.com
    login_user: ansible
    login_password: pAsSwOrD

- name: Create a named maintenance window for host www1 and host groups Office and Dev
  zabbix_maintenance:
    name: Update of www1
    host_name: www1.example.com
    host_groups:
      - Office
      - Dev
    state: present
    server_url: https://monitoring.example.com
    login_user: ansible
    login_password: pAsSwOrD

- name: Create a named maintenance window for hosts www1 and db1, without data collection.
  zabbix_maintenance:
    name: update
    host_names:
      - www1.example.com
      - db1.example.com
    state: present
    collect_data: False
    server_url: https://monitoring.example.com
    login_user: ansible
    login_password: pAsSwOrD

- name: Remove maintenance window by name
  zabbix_maintenance:
    name: Test1
    state: absent
    server_url: https://monitoring.example.com
    login_user: ansible
    login_password: pAsSwOrD

Status

Authors

  • Alexander Bulimov (@abulimov)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/zabbix_maintenance_module.html