community.zabbix.zabbix_proxy module – Create/delete/get/update Zabbix proxies
Note
This module is part of the community.zabbix collection (version 3.2.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.zabbix
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.zabbix.zabbix_proxy
.
Synopsis
This module allows you to create, modify, get and delete Zabbix proxy entries.
Requirements
The below requirements are needed on the host that executes this module.
python >= 3.9
Parameters
Parameter |
Comments |
---|---|
Parameter introduced in Zabbix 7.0. IP address or DNS name to connect to. Required if the Zabbix proxy operating mode is passive |
|
Parameter introduced in Zabbix 7.0. Comma-delimited IP addresses or DNS names of active Zabbix proxy. |
|
Certificate issuer. |
|
Parameter introduced in Zabbix 7.0. Whether to override global item timeouts on the proxy level. 0 - use global settings; 1 - override timeouts. Choices:
|
|
Description of the proxy. |
|
Basic Auth password |
|
Basic Auth login |
|
Deprecated for Zabbix version >= 7.0. Dictionary with params for the interface when proxy is in passive mode. For more information, review proxy interface documentation at https://www.zabbix.com/documentation/current/en/manual/api/reference/proxy/object#proxy-interface. Default: |
|
DNS name of the proxy interface. Required if useip=0. Default: |
|
IP address used by proxy interface. Required if useip=1. Default: |
|
Port used by proxy interface. Default: |
|
Connect to proxy interface with IP address instead of DNS name. 0 (don’t use ip), 1 (use ip). Choices:
|
|
Parameter introduced in Zabbix 7.0. Address for active agents. IP address or DNS name to connect to. Required if proxy_groupid is not 0 |
|
Parameter introduced in Zabbix 7.0. Local proxy port number to connect to. Supported if proxy_groupid is not 0 Default: |
|
Parameter introduced in Zabbix 7.0. Type of proxy. Choices:
|
|
Parameter introduced in Zabbix 7.0. Port number to connect to. supported if the Zabbix proxy operating mode is passive. Default: |
|
Deprecated for Zabbix version >= 7.0. Comma-delimited list of IP/CIDR addresses or DNS names to accept active proxy requests from. Requires status=active. |
|
Parameter introduced in Zabbix 7.0. Proxy group name. |
|
Name of the proxy in Zabbix. |
|
State of the proxy. On On Choices:
|
|
Deprecated for Zabbix version >= 7.0. Type of proxy. (4 - active, 5 - passive) Choices:
|
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on browser type checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on DB checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on external checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on HTTPagent checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on script type checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on simple checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on SNMP agent checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on SSH checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on Telnet checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Required if if |
|
Parameter introduced in Zabbix 7.0. Spend no more than this number of seconds on Zabbix agent checks processing. Accepts seconds or time unit with suffix (e.g., 30s, 1m). Possible values range: 1-600s. Rired if if |
|
Connections from proxy. Choices:
|
|
Connections to proxy. Choices:
|
|
The preshared key, at least 32 hex digits. Required if either tls_connect or tls_accept has PSK enabled. |
|
PSK identity. Required if either tls_connect or tls_accept has PSK enabled. |
|
Certificate subject. |
Examples
# If you want to use Username and Password to be authenticated by Zabbix Server
- name: Set credentials to access Zabbix Server API
ansible.builtin.set_fact:
ansible_user: Admin
ansible_httpapi_pass: zabbix
# If you want to use API token to be authenticated by Zabbix Server
# https://www.zabbix.com/documentation/current/en/manual/web_interface/frontend_sections/administration/general#api-tokens
- name: Set API token
ansible.builtin.set_fact:
ansible_zabbix_auth_key: 8ec0d52432c15c91fcafe9888500cf9a607f44091ab554dbee860f6b44fac895
- name: Create or update a proxy with proxy type active (Zabbix version < 7.0)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_proxy:
proxy_name: ExampleProxy
description: ExampleProxy
status: active
state: present
proxy_address: ExampleProxy.local
- name: Create a new passive proxy using only its IP (Zabbix version < 7.0)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_proxy:
proxy_name: ExampleProxy
description: ExampleProxy
status: passive
state: present
interface:
useip: 1
ip: 10.1.1.2
port: 10051
- name: Create a new passive proxy using only its DNS (Zabbix version < 7.0)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_proxy:
proxy_name: ExampleProxy
description: ExampleProxy
status: passive
state: present
interface:
dns: proxy.example.com
port: 10051
- name: Create or update a proxy with proxy type active (Zabbix version >= 7.0)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_proxy:
proxy_name: ExampleProxy
description: ExampleProxy
operating_mode: operating_mode
state: present
allowed_addresses: ExampleProxy.local
- name: Create a new passive proxy using only its IP (Zabbix version >= 7.0)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_proxy:
proxy_name: ExampleProxy
description: ExampleProxy
operating_mode: passive
state: present
address: 10.1.1.2
port: 10051
- name: Create a new passive proxy using only its DNS (Zabbix version >= 7.0)
# set task level variables as we change ansible_connection plugin here
vars:
ansible_network_os: community.zabbix.zabbix
ansible_connection: httpapi
ansible_httpapi_port: 443
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_zabbix_url_path: "zabbixeu" # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
ansible_host: zabbix-example-fqdn.org
community.zabbix.zabbix_proxy:
proxy_name: ExampleProxy
description: ExampleProxy
operating_mode: passive
state: present
address: proxy.example.com
port: 10051