Skip to content

Commit

Permalink
Drop Reference from README
Browse files Browse the repository at this point in the history
Signed-off-by: Christos Papageorgiou <[email protected]>
  • Loading branch information
root-expert committed Aug 5, 2021
1 parent b21fabc commit ffd463a
Showing 1 changed file with 2 additions and 121 deletions.
123 changes: 2 additions & 121 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,6 @@
* [zabbix-userparameters](#usage-zabbix-userparameters)
* [zabbix-template](#usage-zabbix-template)
6. [Reference - An under-the-hood peek at what the module is doing and how](#reference)
* [zabbix-server](#reference-zabbix-server)
* [zabbix-agent](#reference-zabbix-agent)
* [zabbix-proxy](#reference-zabbix-proxy)
* [zabbix-javagateway](#reference-zabbix-javagateway)
* [zabbix-userparameters](#reference-zabbix-userparameters)
* [zabbix-template](#reference-zabbix-template)
7. [Limitations - OS compatibility, etc.](#limitations)
8. [Development - Contributors](#contributors)
9. [Notes](#note)
Expand Down Expand Up @@ -407,125 +401,12 @@ class{'zabbix::agent':
zabbix_package_state => 'latest',
}
```

## Reference
There are some overall parameters which exists on all of the classes:
* `zabbix_version`: You can specify which zabbix release needs to be installed. Default is '3.0'.
* `manage_firewall`: Wheter you want to manage the firewall. If true, iptables will be configured to allow communications to zabbix ports. (Default: False)
* `manage_repo`: If zabbix needs to be installed from the zabbix repositories (Default is true). When you have your own repositories, you'll set this to false. But you'll have to make sure that your repository is installed on the host.

The following is only availabe for the following classes: zabbix::web, zabbix::proxy & zabbix::agent
* `manage_resources`: As of release 0.4.0, when this parameter is set to true (Default is false) it make use of exported resources. You'll have an puppetdb configured before you can use this option. Information from the zabbix::agent, zabbix::proxy and zabbix::userparameters are able to export resources, which will be loaded on the zabbix::server.
* `database_type`: Which database is used for zabbix. Default is postgresql.
* `manage_database`: When the parameter 'manage_database' is set to true (Which is default), it will create the database and loads the sql files. Default the postgresql will be used as backend, mentioned in the params.pp file. You'll have to include the postgresql (or mysql) module yourself, as this module will require it.

### Reference zabbix (init.pp)
This is the class for installing everything on a single host and thus all parameters described earlier and those below can be used with this class.

### Reference zabbix-web
* `zabbix_url`: This is the url on which Zabbix should be available. Please make sure that the entry exists in the DNS configuration.
* `zabbix_timezone`: On which timezone the machine is placed. This information is needed for the apache virtual host.
* `manage_vhost`: Will create an apache virtual host. Default is true.
* `apache_use_ssl`: Will create an ssl vhost. Also nonssl vhost will be created for redirect nonssl to ssl vhost.
* `apache_ssl_cert`: The location of the ssl certificate file. You'll need to make sure this file is present on the system, this module will not install this file.
* `apache_ssl_key`: The location of the ssl key file. You'll need to make sure this file is present on the system, this module will not install this file.
* `apache_ssl_cipher`: The ssl cipher used. Cipher is used from: https://wiki.mozilla.org/Security/Server_Side_TLS.
* `apache_ssl_chain`: The ssl_chain file. You'll need to make sure this file is present on the system, this module will not install this file.
* `apache_php_max_execution_time`: Max execution time for php.
* `apache_php_memory_limit`: PHP memory size limit.
* `apache_php_upload_max_filesize`: HP maximum upload filesize.
* `apache_php_max_input_time`: Max input time for php.
* `apache_php_always_populate_raw_post_data`: Default: -1
* `zabbix_api_user`: Username of user in Zabbix which is able to create hosts and edit hosts via the zabbix-api. Default: Admin
* `zabbix_api_pass`: Password for the user in Zabbix for zabbix-api usage. Default: zabbix
* `zabbix_template_dir`: The directory where all templates are stored before uploading via API
* `web_config_owner`: Which user should own the web interface configuration file.
* `web_config_group`: Which group should own the web interface configuration file.
* `ldap_cacert`: The location of the CA Cert to be used for Zabbix LDAP authentication. The module will not install this file so it must be present on the system.
* `ldap_clientcrt`: The location of the Client Cert to be used for Zabbix LDAP authentication. The module will not install this file so it must be present on the system.
* `ldap_clientkey`: The location of the Client Key to be used for Zabbix LDAP authentication. The module will not install this file so it must be present on the system.
* `saml_sp_key`: The location of the SAML Service Provider Key file. The module will not install this file so it must be present on the system.
* `saml_sp_cert`: The location of the SAML Service Provider Certificate. The module will not install this file so it must be present on the system.
* `saml_idp_cert`: The location of the SAML Identity Provider Certificate. The module will not install this file so it must be present on the system.
* `saml_settings`: A hash (ruby style) of additional SAML SSO settings as described in the [Zabbix Documentation](https://www.zabbix.com/documentation/current/manual/web_interface/frontend_sections/administration/authentication#advanced_settings)

There are some more zabbix specific parameters, please check them by opening the manifest file.

### Reference zabbix-server
* `database_path`: When database binaries are not in $PATH, you can use this parameter to append `database_path` to $PATH
* `tlscafile`: Full pathname of a file containing the top-level CA(s) certificates for peer certificate verification.
* `tlscertfile`: Full pathname of a file containing the server certificate or certificate chain.
* `tlscrlfile`: Full pathname of a file containing revoked certificates.
* `tlskeyfile`: Full pathname of a file containing the server private key.

There are some more zabbix specific parameters, please check them by opening the manifest file.

### Reference zabbix-agent
* `server`: This is the ipaddress of the zabbix-server or zabbix-proxy.
* `allowkey`: Allows execution of item keys matching pattern.
* `denykey`: Deny execution of items keys matching pattern.
* `tlsaccept`: What incoming connections to accept from Zabbix server. Used for a passive proxy, ignored on an active proxy.
* `tlscafile`: Full pathname of a file containing the top-level CA(s) certificates for peer certificate verification.
* `tlscertfile`: Full pathname of a file containing the proxy certificate or certificate chain.
* `tlsconnect`: How the proxy should connect to Zabbix server. Used for an active proxy, ignored on a passive proxy.
* `tlscrlfile`: Full pathname of a file containing revoked certificates.
* `tlskeyfile`: Full pathname of a file containing the proxy private key.
* `tlspskfile`: Full pathname of a file containing the pre-shared key.
* `tlspskidentity`: Unique, case sensitive string used to identify the pre-shared key.
* `tlsservercertissuer`: Allowed server certificate issuer.
* `tlsservercertsubject`: Allowed server certificate subject.

The following parameters is only needed when `manage_resources` is set to true:
* `monitored_by_proxy`: When an agent is monitored via an proxy, enter the name of the proxy. The name is found in the webinterface via: Administration -> DM. If it isn't monitored by an proxy or `manage_resources` is false, this parameter can be empty.
* `agent_use_ip`: Default is set to true. Zabbix server (or proxy) will connect to this host via ip instead of fqdn. When set to false, it will connect via fqdn.
* `zbx_groups`: An array of hostgroups where this host needs to be added. Default (Array): 'Linux servers'
* `zbx_group_create`: Default is set to true. Creates the Host Groups in Zabbix when they do not exist yet. When set to false you have to make sure the Host Group exists in Zabbix
* `zbx_templates`: Name of the templates which will be assigned when agent is installed. Default (Array): 'Template OS Linux', 'Template App SSH Service'

There are some more zabbix specific parameters, please check them by opening the manifest file.

### Reference zabbix-proxy
* `zabbix_server_host`: The ipaddress or fqdn of the zabbix server.
* `database_path`: When database binaries are not in $PATH, you can use this parameter to append `database_path` to $PATH
* `tlsaccept`: What incoming connections to accept from Zabbix server. Used for a passive proxy, ignored on an active proxy.
* `tlscafile`: Full pathname of a file containing the top-level CA(s) certificates for peer certificate verification.
* `tlscertfile`: Full pathname of a file containing the proxy certificate or certificate chain.
* `tlsconnect`: How the proxy should connect to Zabbix server. Used for an active proxy, ignored on a passive proxy.
* `tlscrlfile`: Full pathname of a file containing revoked certificates.
* `tlskeyfile`: Full pathname of a file containing the proxy private key.
* `tlspskfile`: Full pathname of a file containing the pre-shared key.
* `tlspskidentity`: Unique, case sensitive string used to identify the pre-shared key.
* `tlsservercertissuer`: Allowed server certificate issuer.
* `tlsservercertsubject`: Allowed server certificate subject.

The following parameters is only needed when `manage_resources` is set to true:
* `use_ip`: Default is set to true.
* `zbx_templates`: List of templates which are needed for the zabbix-proxy. Default: 'Template App Zabbix Proxy'
* `mode`: Which kind of proxy it is. 0 -> active, 1 -> passive

There are some more zabbix specific parameters, please check them by opening the manifest file.

### Reference zabbix-javagateway
There are some zabbix specific parameters, please check them by opening the manifest file.

### Reference zabbix-userparameters

* `source`: File which holds several userparameter entries.
* `content`: When you have 1 userparameter entry which you want to install.
* `script`: Low level discovery (LLD) script.
* `script_ext`: The script extention. Should be started with the dot. Like: .sh .bat .py
* `template`: When you use exported resources (when manage_resources on other components is set to true) you'll can add the name of the template which correspondents with the 'content' or 'source' which you add. The template will be added to the host.
* `script_dir`: When `script` is used, this parameter can provide the directly where this script needs to be placed. Default: '/usr/bin'

### Reference zabbix-template

* `templ_name`: The name of the template. This name will be found in the Web interface.
* `templ_source`: The location of the XML file wich needs to be imported.
* `zabbix_version`: The Zabbix version on which the template will be installed on.
Take a look at the [REFERENCE.md](https://github.com/voxpupuli/puppet-zabbix/blob/master/REFERENCE.md).

## Limitations

This module supports Zabbix 4.0, 5.0 and 5.2. The upstream supported versions are documented [here](https://www.zabbix.com/de/life_cycle_and_release_policy)
This module supports Zabbix 4.0, 5.0, 5.2 and 5.4. The upstream supported versions are documented [here](https://www.zabbix.com/de/life_cycle_and_release_policy)
Please have a look into the metadata.json for all supported operating systems.

This module is supported on both the community and the Enterprise version of Puppet.
Expand Down

0 comments on commit ffd463a

Please sign in to comment.