Zabbix collection for Ansible
Plugins:
Roles:
Table of Contents
Introduction
This repo hosts the community.zabbix
Ansible Collection.
The collection includes a variety of Ansible content to help automate the management of resources in Zabbix.
Included content
Click on the name of a plugin or module to view that content's documentation:
- Inventory Sources:
- zabbix - Zabbix Inventory Script
- zabbix_inventory - Zabbix Ansible Inventory Plguin
- Modules:
- zabbix_action
- zabbix_group_info
- zabbix_discovery_rule
- zabbix_globalmacro
- zabbix_group
- zabbix_host_events_info
- zabbix_host_info
- zabbix_hostmacro
- zabbix_host
- zabbix_maintenance
- zabbix_map
- zabbix_mediatype
- zabbix_proxy
- zabbix_screen
- zabbix_service
- zabbix_template_info
- zabbix_template
- zabbix_user_info
- zabbix_user
- zabbix_usergroup
- zabbix_valuemap
- Roles:
Installation
Requirements
Each component in this collection requires additional dependencies. Review components you are interested in by visiting links present in the Included content section.
This is especially important for some of the Zabbix roles that require you to install additional standalone roles from Ansible Galaxy.
For the majority of modules, however, you can get away with just:
pip install zabbix-api
Installing the Collection from Ansible Galaxy
Before using the Zabbix collection, you need to install it with the Ansible Galaxy CLI:
ansible-galaxy collection install community.zabbix
You can also include it in a requirements.yml
file and install it via ansible-galaxy collection install -r requirements.yml
, using the format:
---
collections:
- name: community.zabbix
version: 1.3.0
Upgrading collection
Make sure to read UPGRADE document before installing newer version of this collection.
Usage
Please note that these are not working examples. For documentation on how to use content included in this collection, refer to the links in the Included content section.
To use a module or role from this collection, reference them with their Fully Qualified Collection Namespace (FQCN) like so:
---
- name: Using Zabbix collection
hosts: localhost
roles:
- role: community.zabbix.zabbix_agent
zabbix_agent_server: zabbix.example.com
...
tasks:
- name: Ensure host is monitored by Zabbix
community.zabbix.zabbix_host:
server_url: https://zabbix.example.com
...
Or you include collection name community.zabbix
in the playbook's collections
element, like this:
---
- name: Using Zabbix collection
hosts: localhost
collections:
- community.zabbix
roles:
- role: zabbix_agent
zabbix_agent_server: zabbix.example.com
...
tasks:
- name: Ensure host is monitored by Zabbix
zabbix_host:
server_url: https://zabbix.example.com
...
Supported Zabbix versions
Main priority is to support Zabbix releases which have official full support from Zabbix LLC. Please checkout the versions at Zabbix Life Cycle & Release Policy page.
Support for Zabbix versions will be dropped with Major releases of the collection and mostly affect modules. Each role is following its unique support matrix. You should always consult documentation of roles in docs/ directory.
If you find any inconsistencies with the version of Zabbix you are using, feel free to open a pull request or an issue and we will try to address it as soon as possible. In case of pull requests, please make sure that your changes will not break any existing functionality for currently supported Zabbix releases.
Collection life cycle and support
See RELEASE document for more information regarding life cycle and support for the collection.
Contributing
See CONTRIBUTING for more information about how to contribute to this repository.
Please also feel free to stop by our Gitter community.
License
GNU General Public License v3.0 or later
See LICENSE to see the full text.