New in version 2.8.
zbx_host
contains name of the host in Zabbix. Use this if desired type of map element is host
. zbx_group
contains name of the host group in Zabbix. Use this if desired type of map element is host group
. zbx_map
contains name of the map in Zabbix. Use this if desired type of map element is map
. zbx_label
contains label of map element. zbx_image
contains name of the image used to display the element in default state. zbx_image_disabled
contains name of the image used to display disabled map element. zbx_image_maintenance
contains name of the image used to display map element in maintenance. zbx_image_problem
contains name of the image used to display map element with problems. zbx_url
contains map element URL in name:url
format. More than one URL could be specified by adding a postfix (e.g., zbx_url1
, zbx_url2
).zbx_draw_style
contains link line draw style. Possible values: line
, bold
, dotted
, dashed
. zbx_trigger
contains name of the trigger used as a link indicator in host_name:trigger_name
format. More than one trigger could be specified by adding a postfix (e.g., zbx_trigger1
, zbx_trigger2
). zbx_trigger_color
contains indicator color specified either as CSS3 name or as a hexadecimal code starting with #
. zbx_trigger_draw_style
contains indicator draw style. Possible values are the same as for zbx_draw_style
.The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
data string | Graph written in DOT language. aliases: dot_data | |
default_image string | Name of the Zabbix image used to display the element if this element doesn't have the zbx_image attribute defined.aliases: image | |
expand_problem boolean |
| Whether the problem trigger will be displayed for elements with a single problem. |
height integer | Default: 600 | Height of the map. |
highlight boolean |
| Whether icon highlighting is enabled. |
http_login_password string | Basic Auth password | |
http_login_user string / required | Basic Auth login | |
label_type string |
| Map element label type. |
login_password string / required | Zabbix user password. | |
login_user string / required | Zabbix user name. | |
margin integer | Default: 40 | Size of white space between map's borders and its elements. |
name string / required | Name of the map. aliases: map_name | |
server_url string / required | URL of Zabbix server, with protocol (http or https). url is an alias for server_url .aliases: url | |
state string |
| State of the map. On present , it will create if map does not exist or update the map if the associated data is different.On absent will remove the map if it exists. |
timeout integer | Default: 10 | The timeout of API request (seconds). |
validate_certs boolean added in 2.5 |
| If set to False, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates. |
width integer | Default: 800 | Width of the map. |
Note
no_log
. See this FAQ for more information.### ### Example inventory: # [web] # web[01:03].example.com ansible_host=127.0.0.1 # [db] # db.example.com ansible_host=127.0.0.1 # [backup] # backup.example.com ansible_host=127.0.0.1 ### ### Each inventory host is present in Zabbix with a matching name. ### ### Contents of 'map.j2': # digraph G { # graph [layout=dot splines=false overlap=scale] # INTERNET [zbx_url="Google:https://google.com" zbx_image="Cloud_(96)"] # {% for web_host in groups.web %} # {% set web_loop = loop %} # web{{ '%03d' % web_loop.index }} [zbx_host="{{ web_host }}"] # INTERNET -> web{{ '%03d' % web_loop.index }} [zbx_trigger="{{ web_host }}:Zabbix agent on {HOST.NAME} is unreachable for 5 minutes"] # {% for db_host in groups.db %} # {% set db_loop = loop %} # web{{ '%03d' % web_loop.index }} -> db{{ '%03d' % db_loop.index }} # {% endfor %} # {% endfor %} # { rank=same # {% for db_host in groups.db %} # {% set db_loop = loop %} # db{{ '%03d' % db_loop.index }} [zbx_host="{{ db_host }}"] # {% for backup_host in groups.backup %} # {% set backup_loop = loop %} # db{{ '%03d' % db_loop.index }} -> backup{{ '%03d' % backup_loop.index }} [color="blue"] # {% endfor %} # {% endfor %} # {% for backup_host in groups.backup %} # {% set backup_loop = loop %} # backup{{ '%03d' % backup_loop.index }} [zbx_host="{{ backup_host }}"] # {% endfor %} # } # } ### ### Create Zabbix map "Demo Map" made of template 'map.j2' - name: Create Zabbix map zabbix_map: server_url: http://zabbix.example.com login_user: username login_password: password name: Demo map state: present data: "{{ lookup('template', 'map.j2') }}" default_image: Server_(64) expand_problem: no highlight: no label_type: label delegate_to: localhost run_once: yes
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_map_module.html