Support for Zabbix
optdepends: |
|
---|---|
configuration: |
This module is not usable until the zabbix user and zabbix password are specified either in a pillar or in the minion's config file. Zabbix url should be also specified. zabbix.user: Admin zabbix.password: mypassword zabbix.url: http://127.0.0.1/zabbix/api_jsonrpc.php Connection arguments from the minion config file can be overridden on the CLI by using arguments with zabbix.apiinfo_version _connection_user=Admin _connection_password=zabbix _connection_url=http://host/zabbix/ |
codeauthor: |
Jiri Kotlin <jiri.kotlin@ultimum.io> |
Retrieve the version of the Zabbix API.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
On success string with Zabbix API version, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.apiinfo_version
New in version 2017.7.
Compares Zabbix object definition against existing Zabbix object.
Parameters: |
|
---|---|
Returns: |
Params that are different from existing object. Result extended by object ID can be passed directly to Zabbix API update method. |
New in version 2017.7.
Imports Zabbix configuration specified in file to Zabbix server.
Parameters: |
|
---|
CLI Example:
salt '*' zabbix.configuration_import salt://zabbix/config/zabbix_templates.xml "{'screens': {'createMissing': True, 'updateExisting': True}}"
New in version 2017.7.
Get ID of single Zabbix object specified by its name.
Parameters: |
|
---|---|
Returns: |
object ID |
New in version 2017.7.
Make ZABBIX_ID_MAPPER constant available to state modules.
Returns: | ZABBIX_ID_MAPPER |
---|
New in version 2016.3.0.
Create new host
Note
This function accepts all standard host properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|
return: ID of the created host.
CLI Example:
salt '*' zabbix.host_create technicalname 4 interfaces='{type: 1, main: 1, useip: 1, ip: "192.168.3.1", dns: "", port: 10050}' visible_name='Host Visible Name' inventory_mode=0 inventory='{"alias": "something"}'
Delete hosts.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
IDs of the deleted hosts. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_delete 10106
Checks if at least one host that matches the given filter criteria exists.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
IDs of the deleted hosts, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_exists 'Zabbix server'
New in version 2016.3.0.
Retrieve hosts according to the given parameters
Note
This function accepts all optional host.get parameters: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
Array with convenient hosts details, False if no host found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_get 'Zabbix server'
Retrieve host inventory according to the given parameters. See: https://www.zabbix.com/documentation/2.4/manual/api/reference/host/object#host_inventory
New in version 2019.2.0.
Parameters: |
|
---|---|
Returns: |
Array with host interfaces details, False if no convenient host interfaces found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_inventory_get 101054
Update host inventory items NOTE: This function accepts all standard host: keyword argument names for inventory see: https://www.zabbix.com/documentation/2.4/manual/api/reference/host/object#host_inventory
New in version 2019.2.0.
Parameters: |
|
---|---|
Returns: |
ID of the updated host, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_inventory_set 101054 asset_tag=jml3322 type=vm clear_old=True
Retrieve all hosts.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
Array with details about hosts, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_list
New in version 2016.3.0.
Update existing hosts
Note
This function accepts all standard host and host.update properties: keyword argument names differ depending on your zabbix version, see the documentation for host objects and the documentation for updating hosts.
Parameters: |
|
---|---|
Returns: |
ID of the updated host. |
CLI Example: .. code-block:: bash
salt '*' zabbix.host_update 10084 name='Zabbix server2'
New in version 2016.3.0.
Create a host group
Note
This function accepts all standard host group properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
ID of the created host group. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostgroup_create MyNewGroup
Delete the host group.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
ID of the deleted host groups, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostgroup_delete 23
Checks if at least one host group that matches the given filter criteria exists.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
True if at least one host group exists, False if not or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostgroup_exists MyNewGroup
New in version 2016.3.0.
Retrieve host groups according to the given parameters
Note
This function accepts all standard hostgroup.get properities: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
Array with host groups details, False if no convenient host group found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostgroup_get MyNewGroup
Retrieve all host groups.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
Array with details about host groups, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostgroup_list
New in version 2016.3.0.
Update existing hosts group
Note
This function accepts all standard host group properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
IDs of updated host groups. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostgroup_update 24 name='Renamed Name'
New in version 2016.3.0.
Create new host interface
Note
This function accepts all standard host group interface: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
ID of the created host interface, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostinterface_create 10105 192.193.194.197
Delete host interface
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
ID of deleted host interfaces, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostinterface_delete 50
New in version 2016.3.0.
Retrieve host groups according to the given parameters
Note
This function accepts all standard hostinterface.get properities: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
Array with host interfaces details, False if no convenient host interfaces found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostinterface_get 101054
New in version 2016.3.0.
Update host interface
Note
This function accepts all standard hostinterface: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
ID of the updated host interface, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.hostinterface_update 6 ip_=0.0.0.2
Create new mediatype
Note
This function accepts all standard mediatype properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|
return: ID of the created mediatype.
CLI Example:
salt '*' zabbix.mediatype_create 'Email' 0 smtp_email='[email protected]' smtp_server='mailserver.example.com' smtp_helo='zabbix.example.com'
Delete mediatype
Parameters: |
|
---|---|
Returns: |
ID of deleted mediatype, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.mediatype_delete 3
Retrieve mediatypes according to the given parameters.
Parameters: |
|
---|---|
Returns: |
Array with mediatype details, False if no mediatype found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.mediatype_get name='Email' salt '*' zabbix.mediatype_get mediatypeids="['1', '2', '3']"
Update existing mediatype
Note
This function accepts all standard mediatype properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
IDs of the updated mediatypes, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_update 8 name="Email update"
Send Zabbix API call
Parameters: |
|
---|---|
Returns: |
Response from Zabbix API |
CLI Example: .. code-block:: bash
salt '*' zabbix.run_query proxy.create '{"host": "zabbixproxy.domain.com", "status": "5"}'
New in version 2017.7.
Go through Zabbix object params specification and if needed get given object ID from Zabbix API and put it back as a value. Definition of the object is done via dict with keys "query_object" and "query_name".
Parameters: |
|
---|---|
Returns: |
Params structure with values converted to string for further comparison purposes |
Retrieve templates according to the given parameters.
Parameters: |
|
---|---|
Returns: |
Array with convenient template details, False if no template found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.template_get name='Template OS Linux' salt '*' zabbix.template_get templateids="['10050', '10001']"
Add new media to multiple users.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
IDs of the created media. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_addmedia 4 active=0 mediatypeid=1 period='1-7,00:00-24:00' sendto='support2@example.com' severity=63
New in version 2016.3.0.
Create new zabbix user
Note
This function accepts all standard user properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
On success string with id of the created user. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_create james password007 '[7, 12]' firstname='James Bond'
Delete zabbix users.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
On success array with userids of deleted users. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_delete 15
Delete media by id.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
IDs of the deleted media, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_deletemedia 27
Checks if user with given alias exists.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
True if user exists, else False. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_exists james
Retrieve users according to the given parameters.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
Array with details of convenient users, False on failure of if no user found. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_get james
New in version 2016.3.0.
Retrieve media according to the given parameters
Note
This function accepts all standard usermedia.get properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
List of retrieved media, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_getmedia
Retrieve all of the configured users.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
Array with user details. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_list
New in version 2016.3.0.
Update existing users
Note
This function accepts all standard user properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
Id of the updated user on success. |
CLI Example: .. code-block:: bash
salt '*' zabbix.user_update 16 visible_name='James Brown'
New in version 2016.3.0.
Create new user group
Note
This function accepts all standard user group properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
IDs of the created user groups. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_create GroupName
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
IDs of the deleted user groups. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_delete 28
Checks if at least one user group that matches the given filter criteria exists
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
True if at least one user group that matches the given filter criteria exists, else False. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_exists Guests
New in version 2016.3.0.
Retrieve user groups according to the given parameters
Note
This function accepts all usergroup_get properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
Array with convenient user groups details, False if no user group found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_get Guests
Retrieve all enabled user groups.
New in version 2016.3.0.
Parameters: |
|
---|---|
Returns: |
Array with enabled user groups details, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_list
New in version 2016.3.0.
Update existing user group
Note
This function accepts all standard user group properties: keyword argument names differ depending on your zabbix version, see here.
Parameters: |
|
---|---|
Returns: |
IDs of the updated user group, False on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usergroup_update 8 name=guestsRenamed
Create new host usermacro.
Parameters: |
|
---|
return: ID of the created host usermacro.
CLI Example:
salt '*' zabbix.usermacro_create '{$SNMP_COMMUNITY}' 'public' 1
Create new global usermacro.
Parameters: |
|
---|
return: ID of the created global usermacro.
CLI Example:
salt '*' zabbix.usermacro_createglobal '{$SNMP_COMMUNITY}' 'public'
Delete host usermacros.
Parameters: |
|
---|
return: IDs of the deleted host usermacro.
CLI Example:
salt '*' zabbix.usermacro_delete 21
Delete global usermacros.
Parameters: |
|
---|
return: IDs of the deleted global usermacro.
CLI Example:
salt '*' zabbix.usermacro_deleteglobal 21
Retrieve user macros according to the given parameters.
Parameters: |
|
---|---|
Returns: |
Array with usermacro details, False if no usermacro found or on failure. |
CLI Example: .. code-block:: bash
salt '*' zabbix.usermacro_get macro='{$SNMP_COMMUNITY}'
Update existing host usermacro.
Parameters: |
|
---|
return: ID of the update host usermacro.
CLI Example:
salt '*' zabbix.usermacro_update 1 'public'
Update existing global usermacro.
Parameters: |
|
---|
return: ID of the update global usermacro.
CLI Example:
salt '*' zabbix.usermacro_updateglobal 1 'public'
© 2019 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.zabbix.html