Compare commits
11 Commits
37587a0853
...
f0af1328ea
Author | SHA1 | Date |
---|---|---|
Jeremy Gardais | f0af1328ea | |
Jeremy Gardais | 9f84ed3c6d | |
Jeremy Gardais | 61d7aa4e3a | |
Jeremy Gardais | d5bffb2252 | |
Jeremy Gardais | 79f3831acd | |
Jeremy Gardais | 6401a1e836 | |
Jeremy Gardais | 1c0157dd68 | |
Jeremy Gardais | 052d5a3b3a | |
Jeremy Gardais | 7966645f99 | |
Jeremy Gardais | 726300ae1e | |
Jeremy Gardais | dacdd47d9f |
19
CHANGELOG.md
19
CHANGELOG.md
|
@ -1,3 +1,21 @@
|
|||
## v2.X.Y
|
||||
|
||||
### Enhancements
|
||||
* All vars now starts with "xymon_cli__" for more readability.
|
||||
No backward compatibility with old variable naming! Update your configuration!
|
||||
* Add megaraid probe management.
|
||||
* Add net probe management.
|
||||
* Add configuration file for `net` script (/etc/xymon/net.yaml) and
|
||||
possibility to set your own template. Check [net documentation](net plugin doc).
|
||||
* Remove unecessary netstats dependencies (due to a previous misunderstanding)
|
||||
between `net` and `netstats` probes. `netstats` only
|
||||
reads /proc/net/{netstat,snmp} files.
|
||||
* Combine packages vars of all enabled plugins to install them in _one_ task.
|
||||
* Combine clientlaunch files for plugins to manage them in _one_ dedicated task.
|
||||
* Split base package list in order to allow installation of `xymon-client` without
|
||||
"hobbit-plugins".
|
||||
* Add extra var for Nvidia support with temp plugin.
|
||||
|
||||
## v1.5.1
|
||||
|
||||
### Enhancements
|
||||
|
@ -85,3 +103,4 @@
|
|||
* Allow to set Xymon servers list for `xymon-client` config.
|
||||
|
||||
[20180711 hobbit-plugins debian changelog]: https://salsa.debian.org/debian/hobbit-plugins/blob/debian-20180711/debian/changelog
|
||||
[net plugin doc]: https://salsa.debian.org/debian/hobbit-plugins#net-check-network-interface-states
|
||||
|
|
126
README.md
126
README.md
|
@ -2,7 +2,7 @@
|
|||
|
||||
1. [Overview](#overview)
|
||||
2. [Role Variables](#role-variables)
|
||||
* [Plugins Specific Variables](#plugins-specific-variables)
|
||||
* [Plugins Specific Variables](#plugins-variables)
|
||||
* [OS Specific Variables](#os-specific-variables)
|
||||
3. [Example Playbook](#example-playbook)
|
||||
4. [Configuration](#configuration)
|
||||
|
@ -17,34 +17,37 @@ Manage Xymon (client) installation and configuration.
|
|||
|
||||
## Role Variables
|
||||
|
||||
* **xymon_cli_manage** : If `xymon-client` should be managed with this role [default : `true`].
|
||||
* **xymon_cli_pkg_state** : State of new `xymon-client` package(s) [default : `present`].
|
||||
* **xymon_cli_default_conf_path** : Configuration file for `xymon-client` [default : `/etc/default/xymon-client`].
|
||||
* **xymon_cli_default_conf_tpl** : Template used to generate the previous config file [default : `etc/default/xymon-client.j2`].
|
||||
* **xymon_cli_hostname** : Allow to override default value of CLIENTHOSTNAME var [default : `{{ ansible_fqdn }}`].
|
||||
* **xymon_user_groups** : List of 'xymon' user's groups [default : `xymon`].
|
||||
* **xymon_cli_service_manage** : If `xymon-client` service should be managed with this role [default : `true`].
|
||||
* **xymon_cli_service_name** : `xymon-client` service name [default : `xymon-client`].
|
||||
* **xymon_cli_service_enabled** : Set `xymon-client` service available at startup [default : `true`].
|
||||
* **xymon_srv_list** : The list of Xymon servers (you must give an hostname, IP,… reachable from any clients) [defaults : `monitoring.{{ ansible_domain }}`].
|
||||
* **xymon_plug_manage** : If this role should manage plugins configuration [default : `true`].
|
||||
* **xymon_cli__manage** : If `xymon-client` should be managed with this role [default : `true`].
|
||||
* **xymon_cli__pkg_state** : State of new `xymon-client` package(s) [default : `present`].
|
||||
* **xymon_cli__default_conf_path** : Configuration file for `xymon-client` [default : `/etc/default/xymon-client`].
|
||||
* **xymon_cli__default_conf_tpl** : Template used to generate the previous config file [default : `etc/default/xymon-client.j2`].
|
||||
* **xymon_cli__hostname** : Allow to override default value of CLIENTHOSTNAME var [default : `{{ ansible_fqdn }}`].
|
||||
* **xymon_cli__user_groups** : List of 'xymon' user's groups [default : `xymon`].
|
||||
* **xymon_cli__service_manage** : If `xymon-client` service should be managed with this role [default : `true`].
|
||||
* **xymon_cli__service_name** : `xymon-client` service name [default : `xymon-client`].
|
||||
* **xymon_cli__service_enabled** : Set `xymon-client` service available at startup [default : `true`].
|
||||
* **xymon_cli__srv_list** : The list of Xymon servers (you must give an hostname, IP,… reachable from any clients) [defaults : `monitoring.{{ ansible_domain }}`].
|
||||
* **xymon_cli__plug_manage** : If this role should manage plugins configuration [default : `true`].
|
||||
|
||||
### Plugins Variables
|
||||
|
||||
* **xymon_cli__plug_combined_packages** : Combine all packages vars related to plugins (only enabled plugins).
|
||||
* **xymon_cli__plug_combined_clientlaunch** : Combine clientlaunch files for all plugins.
|
||||
|
||||
#### APT
|
||||
|
||||
Variables for the APT plugin from hobbit-plugins. The plugin check for
|
||||
outstanding updates.
|
||||
|
||||
* **xymon_plug_apt_state** : The state of plugin `apt` [default : `true`].
|
||||
* **xymon_plug_apt_package** : The packages to install to provide `apt` plugin [default : `[ 'libtimedate-perl' ]`].
|
||||
* **xymon_plug_apt_path** : Configuration file for the `apt` plugin [default : `/etc/xymon/clientlaunch.d/apt.cfg`].
|
||||
* **xymon_plug_apt_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/apt.cfg.j2`].
|
||||
* **xymon_plug_apt_interval** : Time between each run of the `apt` plugin [default : `5m`].
|
||||
* **xymon_plug_apt_default_whitelist** : Default list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_plug_apt_whitelist** : All hosts list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_plug_apt_group_whitelist** : Group list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_plug_apt_host_whitelist** : Host list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_cli__plug_apt_state** : The state of plugin `apt` [default : `true`].
|
||||
* **xymon_cli__plug_apt_package** : The packages to install to provide `apt` plugin [default : `[ 'libtimedate-perl' ]`].
|
||||
* **xymon_cli__plug_apt_path** : Configuration file for the `apt` plugin [default : `/etc/xymon/clientlaunch.d/apt.cfg`].
|
||||
* **xymon_cli__plug_apt_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/apt.cfg.j2`].
|
||||
* **xymon_cli__plug_apt_interval** : Time between each run of the `apt` plugin [default : `5m`].
|
||||
* **xymon_cli__plug_apt_default_whitelist** : Default list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_cli__plug_apt_whitelist** : All hosts list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_cli__plug_apt_group_whitelist** : Group list of allowed packages not installed from repositories [default : `[]`].
|
||||
* **xymon_cli__plug_apt_host_whitelist** : Host list of allowed packages not installed from repositories [default : `[]`].
|
||||
|
||||
#### IPMI
|
||||
|
||||
|
@ -62,26 +65,62 @@ sensors and event log.
|
|||
Variables for the Libs plugin from hobbit-plugins. The plugin check for running
|
||||
processes with upgraded libraries.
|
||||
|
||||
* **xymon_plug_libs_state** : The state of plugin `libs` [default : `true`].
|
||||
* **xymon_plug_libs_package** : The packages to install to provide `libs` plugin [default : `[ 'binutils', 'lsof', 'libyaml-tiny-perl', 'libfile-slurp-perl', 'libsort-naturally-perl' ]`].
|
||||
* **xymon_plug_libs_path** : Configuration file for the `libs` plugin [default : `/etc/xymon/clientlaunch.d/libs.cfg`].
|
||||
* **xymon_plug_libs_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/libs.cfg.j2`].
|
||||
* **xymon_plug_libs_interval** : Time between each run of the `libs` plugin [default : `5m`].
|
||||
* **xymon_plug_libs_default_whitelist** : Default whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_plug_libs_whitelist** : All hosts whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_plug_libs_group_whitelist** : Group whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_plug_libs_host_whitelist** : Host whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_cli__plug_libs_state** : The state of plugin `libs` [default : `true`].
|
||||
* **xymon_cli__plug_libs_package** : The packages to install to provide `libs` plugin [default : `[ 'binutils', 'lsof', 'libyaml-tiny-perl', 'libfile-slurp-perl', 'libsort-naturally-perl' ]`].
|
||||
* **xymon_cli__plug_libs_path** : Configuration file for the `libs` plugin [default : `/etc/xymon/clientlaunch.d/libs.cfg`].
|
||||
* **xymon_cli__plug_libs_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/libs.cfg.j2`].
|
||||
* **xymon_cli__plug_libs_interval** : Time between each run of the `libs` plugin [default : `5m`].
|
||||
* **xymon_cli__plug_libs_default_whitelist** : Default whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_cli__plug_libs_whitelist** : All hosts whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_cli__plug_libs_group_whitelist** : Group whitelist of processes that should not be monitored with `libs` plugin.
|
||||
* **xymon_cli__plug_libs_host_whitelist** : Host whitelist of processes that should not be monitored with `libs` plugin.
|
||||
|
||||
#### Net
|
||||
|
||||
Require hobbit-plugins > 20200525.
|
||||
|
||||
Variables for the Megaraid plugin from hobbit-plugins. The plugin check
|
||||
hardware raid status with Megacli tools [from hwraid.le-vert](url hwraid).
|
||||
You will need to install `megaclisas-status` by your own to get this plugin
|
||||
running correctly. Please take a look to the [Readme](megaraid plugin doc) of
|
||||
the project for more informations.
|
||||
|
||||
* **xymon_cli__plug_megaraid_state** : The state of plugin `megaraid` [default : `false`].
|
||||
* **xymon_cli__plug_megaraid_package** : The packages to install to provide `megaraid` plugin [default : `[ 'libipc-run-perl' ]`].
|
||||
* **xymon_cli__plug_megaraid_path** : Configuration file for the `megaraid` plugin [default : `/etc/xymon/clientlaunch.d/megaraid.cfg`].
|
||||
* **xymon_cli__plug_megaraid_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/megaraid.cfg.j2`].
|
||||
* **xymon_cli__plug_megaraid_interval** : Time between each run of the `megaraid` plugin [default : `5m`].
|
||||
|
||||
#### Mq
|
||||
|
||||
Variables for the Mq plugin from hobbit-plugins. The plugin check Postfix's
|
||||
mail queue.
|
||||
|
||||
* **xymon_plug_mq_state** : The state of plugin `mq` [default : `true`].
|
||||
* **xymon_plug_mq_package** : The packages to install to provide `mq` plugin [default : `[ 'libtimedate-perl' ]`].
|
||||
* **xymon_plug_mq_path** : Configuration file for the `mq` plugin [default : `/etc/xymon/clientlaunch.d/mq.cfg`].
|
||||
* **xymon_plug_mq_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/mq.cfg.j2`].
|
||||
* **xymon_plug_mq_interval** : Time between each run of the `mq` plugin [default : `5m`].
|
||||
* **xymon_cli__plug_mq_state** : The state of plugin `mq` [default : `true`].
|
||||
* **xymon_cli__plug_mq_package** : The packages to install to provide `mq` plugin [default : `[ 'libtimedate-perl' ]`].
|
||||
* **xymon_cli__plug_mq_path** : Configuration file for the `mq` plugin [default : `/etc/xymon/clientlaunch.d/mq.cfg`].
|
||||
* **xymon_cli__plug_mq_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/mq.cfg.j2`].
|
||||
* **xymon_cli__plug_mq_interval** : Time between each run of the `mq` plugin [default : `5m`].
|
||||
|
||||
#### Net
|
||||
|
||||
Require hobbit-plugins > 20190129.
|
||||
|
||||
Variables for the Net plugin from hobbit-plugins. The plugin check network
|
||||
interface states. Check the [Readme](net plugin doc) of the project for more
|
||||
informations.
|
||||
|
||||
* **xymon_cli__plug_net_state** : The state of plugin `net` [default : `false`].
|
||||
* **xymon_cli__plug_net_package** : The packages to install to provide `net` plugin [default : `[ 'ethtool', 'iproute2', 'libfile-slurp-perl', 'libfile-which-perl', 'libipc-run-perl', 'libyaml-tiny-perl' ]`].
|
||||
* **xymon_cli__plug_net_path** : Configuration file for the `net` plugin [default : `/etc/xymon/clientlaunch.d/net.cfg`].
|
||||
* **xymon_cli__plug_net_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/net.cfg.j2`].
|
||||
* **xymon_cli__plug_net_interval** : Time between each run of the `net` plugin [default : `5m`].
|
||||
* **xymon_cli__plug_net_conf_path**: Configuration file for the `net` script (probe silently exit if not present) [default : `/etc/xymon/net.yaml`].
|
||||
* **xymon_cli__plug_net_conf_tpl**: Template used to generate the previous config file [default : `etc/xymon/net.yaml.j2`].
|
||||
|
||||
You really should consider writing your own template for `net` script,
|
||||
specific to your host(s) network configuration and override
|
||||
**xymon_cli__plug_net_conf_tpl** variable.
|
||||
|
||||
#### Netstats
|
||||
|
||||
|
@ -89,7 +128,6 @@ Variables for the Net/Netstats plugin from hobbit-plugins. The plugin check
|
|||
network interface states.
|
||||
|
||||
* **xymon_cli__plug_netstats_state** : The state of plugin `netstats` [default : `false`].
|
||||
* **xymon_cli__plug_netstats_package** : The packages to install to provide `netstats` plugin [default : `[ 'libfile-which-perl', 'libfile-slurp-perl', 'libipc-run-perl', 'libyaml-tiny-perl', 'iproute2', 'ethtool' ]`].
|
||||
* **xymon_cli__plug_netstats_path** : Configuration file for the `netstats` plugin [default : `/etc/xymon/clientlaunch.d/netstats.cfg`].
|
||||
* **xymon_cli__plug_netstats_tpl** : Template used to generate the previous config file [default : `etc/xymon/clientlaunch.d/netstats.cfg.j2`].
|
||||
* **xymon_cli__plug_netstats_interval** : Time between each run of the `netstats` plugin [default : `5m`].
|
||||
|
@ -142,7 +180,7 @@ one's recommended by the vendor and check a recent (<24h) test was done.
|
|||
|
||||
#### Temp
|
||||
|
||||
Variables for the Mq plugin from hobbit-plugins. Simple temperature monitor.
|
||||
Variables for the temp plugin from hobbit-plugins. Simple temperature monitor.
|
||||
|
||||
* **xymon_cli__plug_temp_state** : The state of plugin `temp` [default : `False`].
|
||||
* **xymon_cli__plug_temp_package** : The packages to install to provide `temp` plugin [default : `[ 'libfile-which-perl', 'libyaml-tiny-perl', 'hddtemp', 'smartmontools', 'libxml-twig-perl' ]`].
|
||||
|
@ -152,12 +190,12 @@ Variables for the Mq plugin from hobbit-plugins. Simple temperature monitor.
|
|||
|
||||
##### Nvidia support
|
||||
|
||||
The temp can also checks NVidia GPU temperature. In order to get those
|
||||
informations, you need to install `nvidia-smi` package by your own or override
|
||||
**xymon_cli__plug_temp_package** var :
|
||||
The temp plugin can also checks NVidia GPU temperature. In order to get those
|
||||
informations, you need to install `nvidia-smi` package by your own or define
|
||||
**xymon_cli__plug_temp_extra_package** var :
|
||||
|
||||
``` yml
|
||||
xymon_cli__plug_temp_package: [ 'libfile-which-perl', 'libyaml-tiny-perl', 'hddtemp', 'smartmontools', 'libxml-twig-perl', 'nvidia-smi' ]
|
||||
xymon_cli__plug_temp_extra_package: [ 'nvidia-smi' ]
|
||||
```
|
||||
|
||||
#### ZFS
|
||||
|
@ -188,7 +226,8 @@ xymon_cli__plug_temp_state: '{{ True
|
|||
|
||||
Please see default value by Operating System file in [vars][vars directory] directory.
|
||||
|
||||
* **xymon_cli_pkg_list** : The list of packages to install to provide `xymon-client`.
|
||||
* **xymon_cli__pkg_list** : The list of packages to install to provide `xymon-client`.
|
||||
* **xymon_cli__plug_pkg_list** : The list of packages to install to provide extra plugins to Xymon client.
|
||||
|
||||
## Example Playbook
|
||||
|
||||
|
@ -240,6 +279,9 @@ Jérémy Gardais
|
|||
[wtfpl website]: http://www.wtfpl.net/about/
|
||||
[ipr website]: https://ipr.univ-rennes1.fr/
|
||||
|
||||
[url hwraid]: https://hwraid.le-vert.net/wiki/DebianPackages
|
||||
[megaraid plugin doc]: https://salsa.debian.org/debian/hobbit-plugins#megaraid-check-state-of-lsi-megaraid-sas-controllers
|
||||
[net plugin doc]: https://salsa.debian.org/debian/hobbit-plugins#net-check-network-interface-states
|
||||
[sge plugin source]: https://git.ipr.univ-rennes1.fr/cellinfo/scripts/src/master/xymon/plugins/client/ext/sge.sh
|
||||
[smartoverall plugin source]: https://git.ipr.univ-rennes1.fr/cellinfo/scripts/src/master/xymon/plugins/client/ext/smartoverall
|
||||
[smart plugin source]: https://github.com/skazi0/xymon-plugins
|
||||
|
|
|
@ -7,12 +7,12 @@
|
|||
# Packages and installation [[[
|
||||
# -----------------------------
|
||||
|
||||
# .. envvar:: xymon_cli_manage [[[
|
||||
# .. envvar:: xymon_cli__manage [[[
|
||||
#
|
||||
# If this role should manage the installation of Xymon client
|
||||
xymon_cli_manage: true
|
||||
xymon_cli__manage: true
|
||||
# ]]]
|
||||
# .. envvar:: xymon_cli_pkg_state [[[
|
||||
# .. envvar:: xymon_cli__pkg_state [[[
|
||||
#
|
||||
# What is the desired state which this role's packages should be?
|
||||
# Possible options:
|
||||
|
@ -23,45 +23,45 @@ xymon_cli_manage: true
|
|||
# ``absent``
|
||||
# Ensure to remove the packages.
|
||||
#
|
||||
xymon_cli_pkg_state: 'present'
|
||||
xymon_cli__pkg_state: 'present'
|
||||
# ]]]
|
||||
# ]]]
|
||||
# Server configuration and service [[[
|
||||
# ------------------------------------
|
||||
|
||||
## conf
|
||||
xymon_cli_default_conf_path: '/etc/default/xymon-client'
|
||||
xymon_cli_default_conf_tpl: 'etc/default/xymon-client.j2'
|
||||
xymon_cli_hostname: "{{ ansible_fqdn }}"
|
||||
xymon_user_groups: 'xymon'
|
||||
xymon_cli__default_conf_path: '/etc/default/xymon-client'
|
||||
xymon_cli__default_conf_tpl: 'etc/default/xymon-client.j2'
|
||||
xymon_cli__hostname: "{{ ansible_fqdn }}"
|
||||
xymon_cli__user_groups: 'xymon'
|
||||
|
||||
## service
|
||||
xymon_cli_service_manage: true
|
||||
xymon_cli_service_name: 'xymon-client'
|
||||
xymon_cli_service_enabled: true
|
||||
xymon_cli__service_manage: true
|
||||
xymon_cli__service_name: 'xymon-client'
|
||||
xymon_cli__service_enabled: true
|
||||
|
||||
# server
|
||||
xymon_srv_list: "monitoring.{{ ansible_domain }}"
|
||||
xymon_cli__srv_list: "monitoring.{{ ansible_domain }}"
|
||||
# ]]]
|
||||
# Plugins management [[[
|
||||
# ----------------------
|
||||
|
||||
xymon_plug_manage: true
|
||||
xymon_cli__plug_manage: true
|
||||
|
||||
## Plugin apt [[[
|
||||
xymon_plug_apt_state: true
|
||||
xymon_plug_apt_package: [ 'aptitude', 'dctrl-tools' ]
|
||||
xymon_plug_apt_path: '/etc/xymon/clientlaunch.d/apt.cfg'
|
||||
xymon_plug_apt_tpl: 'etc/xymon/clientlaunch.d/apt.cfg.j2'
|
||||
xymon_plug_apt_interval: '5m'
|
||||
xymon_plug_apt_default_whitelist: []
|
||||
xymon_plug_apt_whitelist: []
|
||||
xymon_plug_apt_group_whitelist: []
|
||||
xymon_plug_apt_host_whitelist: []
|
||||
xymon_plug_apt_combined_whitelist: '{{ xymon_plug_apt_default_whitelist
|
||||
+ xymon_plug_apt_whitelist
|
||||
+ xymon_plug_apt_group_whitelist
|
||||
+ xymon_plug_apt_host_whitelist }}'
|
||||
xymon_cli__plug_apt_state: true
|
||||
xymon_cli__plug_apt_package: [ 'aptitude', 'dctrl-tools' ]
|
||||
xymon_cli__plug_apt_path: '/etc/xymon/clientlaunch.d/apt.cfg'
|
||||
xymon_cli__plug_apt_tpl: 'etc/xymon/clientlaunch.d/apt.cfg.j2'
|
||||
xymon_cli__plug_apt_interval: '5m'
|
||||
xymon_cli__plug_apt_default_whitelist: []
|
||||
xymon_cli__plug_apt_whitelist: []
|
||||
xymon_cli__plug_apt_group_whitelist: []
|
||||
xymon_cli__plug_apt_host_whitelist: []
|
||||
xymon_cli__plug_apt_combined_whitelist: '{{ xymon_cli__plug_apt_default_whitelist
|
||||
+ xymon_cli__plug_apt_whitelist
|
||||
+ xymon_cli__plug_apt_group_whitelist
|
||||
+ xymon_cli__plug_apt_host_whitelist }}'
|
||||
|
||||
## ]]]
|
||||
## Plugin ipmi [[[
|
||||
|
@ -70,15 +70,16 @@ xymon_cli__plug_ipmi_package: ['ipmitool']
|
|||
xymon_cli__plug_ipmi_path: '/etc/xymon/clientlaunch.d/ipmi.cfg'
|
||||
xymon_cli__plug_ipmi_tpl: 'etc/xymon/clientlaunch.d/ipmi.cfg.j2'
|
||||
xymon_cli__plug_ipmi_interval: '5m'
|
||||
|
||||
## ]]]
|
||||
## Plugin libs [[[
|
||||
xymon_plug_libs_state: true
|
||||
xymon_plug_libs_package: [ 'binutils', 'lsof', 'libyaml-tiny-perl', 'libfile-slurp-perl', 'libsort-naturally-perl' ]
|
||||
xymon_plug_libs_path: '/etc/xymon/clientlaunch.d/libs.cfg'
|
||||
xymon_plug_libs_tpl: 'etc/xymon/clientlaunch.d/libs.cfg.j2'
|
||||
xymon_plug_libs_interval: '5m'
|
||||
xymon_cli__plug_libs_state: true
|
||||
xymon_cli__plug_libs_package: [ 'binutils', 'lsof', 'libyaml-tiny-perl', 'libfile-slurp-perl', 'libsort-naturally-perl' ]
|
||||
xymon_cli__plug_libs_path: '/etc/xymon/clientlaunch.d/libs.cfg'
|
||||
xymon_cli__plug_libs_tpl: 'etc/xymon/clientlaunch.d/libs.cfg.j2'
|
||||
xymon_cli__plug_libs_interval: '5m'
|
||||
|
||||
xymon_plug_libs_default_whitelist:
|
||||
xymon_cli__plug_libs_default_whitelist:
|
||||
/lib/systemd/systemd:
|
||||
- '.*'
|
||||
/usr/lib/x86_64-linux-gnu/sssd/sssd_be:
|
||||
|
@ -93,24 +94,43 @@ xymon_plug_libs_default_whitelist:
|
|||
- '.*'
|
||||
/sbin/multipathd:
|
||||
- '.*'
|
||||
xymon_plug_libs_whitelist: {}
|
||||
xymon_plug_libs_group_whitelist: {}
|
||||
xymon_plug_libs_host_whitelist: {}
|
||||
xymon_cli__plug_libs_whitelist: {}
|
||||
xymon_cli__plug_libs_group_whitelist: {}
|
||||
xymon_cli__plug_libs_host_whitelist: {}
|
||||
|
||||
# ]]]
|
||||
## Plugin Megaraid [[[
|
||||
xymon_cli__plug_megaraid_state: false
|
||||
xymon_cli__plug_megaraid_package: [ 'libipc-run-perl' ]
|
||||
xymon_cli__plug_megaraid_path: '/etc/xymon/clientlaunch.d/megaraid.cfg'
|
||||
xymon_cli__plug_megaraid_tpl: 'etc/xymon/clientlaunch.d/megaraid.cfg.j2'
|
||||
xymon_cli__plug_megaraid_interval: '5m'
|
||||
|
||||
## ]]]
|
||||
## Plugin mq [[[
|
||||
xymon_plug_mq_state: true
|
||||
xymon_plug_mq_package: ['libtimedate-perl']
|
||||
xymon_plug_mq_path: '/etc/xymon/clientlaunch.d/mq.cfg'
|
||||
xymon_plug_mq_tpl: 'etc/xymon/clientlaunch.d/mq.cfg.j2'
|
||||
xymon_plug_mq_interval: '5m'
|
||||
xymon_cli__plug_mq_state: true
|
||||
xymon_cli__plug_mq_package: ['libtimedate-perl']
|
||||
xymon_cli__plug_mq_path: '/etc/xymon/clientlaunch.d/mq.cfg'
|
||||
xymon_cli__plug_mq_tpl: 'etc/xymon/clientlaunch.d/mq.cfg.j2'
|
||||
xymon_cli__plug_mq_interval: '5m'
|
||||
|
||||
## ]]]
|
||||
## Plugin net [[[
|
||||
xymon_cli__plug_net_state: false
|
||||
xymon_cli__plug_net_package: [ 'ethtool', 'iproute2', 'libfile-slurp-perl', 'libfile-which-perl', 'libipc-run-perl', 'libyaml-tiny-perl' ]
|
||||
xymon_cli__plug_net_path: '/etc/xymon/clientlaunch.d/net.cfg'
|
||||
xymon_cli__plug_net_tpl: 'etc/xymon/clientlaunch.d/net.cfg.j2'
|
||||
xymon_cli__plug_net_interval: '5m'
|
||||
xymon_cli__plug_net_conf_path: '/etc/xymon/net.yaml'
|
||||
xymon_cli__plug_net_conf_tpl: 'etc/xymon/net.yaml.j2'
|
||||
|
||||
## ]]]
|
||||
## Plugin netstats [[[
|
||||
xymon_cli__plug_netstats_state: false
|
||||
xymon_cli__plug_netstats_package: [ 'libfile-which-perl', 'libfile-slurp-perl', 'libipc-run-perl', 'libyaml-tiny-perl', 'iproute2', 'ethtool' ]
|
||||
xymon_cli__plug_netstats_path: '/etc/xymon/clientlaunch.d/netstats.cfg'
|
||||
xymon_cli__plug_netstats_tpl: 'etc/xymon/clientlaunch.d/netstats.cfg.j2'
|
||||
xymon_cli__plug_netstats_interval: '5m'
|
||||
|
||||
## ]]]
|
||||
## Plugin SGE [[[
|
||||
### From https://git.ipr.univ-rennes1.fr/cellinfo/scripts/src/master/xymon/plugins/client/ext/sge.sh
|
||||
|
@ -153,6 +173,9 @@ xymon_cli__plug_smart_interval: '10m'
|
|||
### Enable by default on hardware host
|
||||
xymon_cli__plug_temp_state: False
|
||||
xymon_cli__plug_temp_package: [ 'libfile-which-perl', 'libyaml-tiny-perl', 'hddtemp', 'smartmontools', 'libxml-twig-perl' ]
|
||||
# Define xymon_cli__plug_temp_extra_package in your own inventory.
|
||||
# See Nvidia support in README for more informations
|
||||
#xymon_cli__plug_temp_extra_package: [ 'nvidia-smi' ]
|
||||
xymon_cli__plug_temp_path: '/etc/xymon/clientlaunch.d/temp.cfg'
|
||||
xymon_cli__plug_temp_tpl: 'etc/xymon/clientlaunch.d/temp.cfg.j2'
|
||||
xymon_cli__plug_temp_interval: '5m'
|
||||
|
@ -168,5 +191,66 @@ xymon_cli__plug_zfs_interval: '5m'
|
|||
|
||||
# ]]]
|
||||
|
||||
# .. envvar:: xymon_cli__plug_combined_packages [[[
|
||||
#
|
||||
# Combine all packages vars related to plugins (only enabled plugins).
|
||||
#
|
||||
xymon_cli__plug_combined_packages: '{{ ((xymon_cli__plug_pkg_list|d([]) if xymon_cli__plug_manage|bool else [])
|
||||
+ (xymon_cli__plug_apt_package if xymon_cli__plug_apt_state|bool else [])
|
||||
+ (xymon_cli__plug_ipmi_package if xymon_cli__plug_ipmi_state|bool else [])
|
||||
+ (xymon_cli__plug_libs_package if xymon_cli__plug_libs_state|bool else [])
|
||||
+ (xymon_cli__plug_megaraid_package if xymon_cli__plug_megaraid_state|bool else [])
|
||||
+ (xymon_cli__plug_mq_package if xymon_cli__plug_mq_state|bool else [])
|
||||
+ (xymon_cli__plug_net_package if xymon_cli__plug_net_state|bool else [])
|
||||
+ (xymon_cli__plug_smartoverall_package if xymon_cli__plug_smartoverall_state|bool else [])
|
||||
+ (xymon_cli__plug_smart_package if xymon_cli__plug_smart_state|bool else [])
|
||||
+ (xymon_cli__plug_temp_package if xymon_cli__plug_temp_state|bool else [])
|
||||
+ (xymon_cli__plug_temp_extra_package|d([]) if xymon_cli__plug_temp_state|bool else []))
|
||||
| sort | unique }}'
|
||||
# ]]]
|
||||
# .. envvar:: xymon_cli__plug_combined_clientlaunch [[[
|
||||
#
|
||||
# Combine clientlaunch files for all plugins
|
||||
#
|
||||
xymon_cli__plug_combined_clientlaunch:
|
||||
- name: apt
|
||||
path: '{{ xymon_cli__plug_apt_path }}'
|
||||
template: '{{ xymon_cli__plug_apt_tpl }}'
|
||||
- name: ipmi
|
||||
path: '{{ xymon_cli__plug_ipmi_path }}'
|
||||
template: '{{ xymon_cli__plug_ipmi_tpl }}'
|
||||
- name: libs
|
||||
path: '{{ xymon_cli__plug_libs_path }}'
|
||||
template: '{{ xymon_cli__plug_libs_tpl }}'
|
||||
- name: megaraid
|
||||
path: '{{ xymon_cli__plug_megaraid_path }}'
|
||||
template: '{{ xymon_cli__plug_megaraid_tpl }}'
|
||||
- name: mq
|
||||
path: '{{ xymon_cli__plug_mq_path }}'
|
||||
template: '{{ xymon_cli__plug_mq_tpl }}'
|
||||
- name: net
|
||||
path: '{{ xymon_cli__plug_net_path }}'
|
||||
template: '{{ xymon_cli__plug_net_tpl }}'
|
||||
- name: netstats
|
||||
path: '{{ xymon_cli__plug_netstats_path }}'
|
||||
template: '{{ xymon_cli__plug_netstats_tpl }}'
|
||||
- name: sge
|
||||
path: '{{ xymon_cli__plug_sge_path }}'
|
||||
template: '{{ xymon_cli__plug_sge_tpl }}'
|
||||
- name: smartoverall
|
||||
path: '{{ xymon_cli__plug_smartoverall_path }}'
|
||||
template: '{{ xymon_cli__plug_smartoverall_tpl }}'
|
||||
- name: smart
|
||||
path: '{{ xymon_cli__plug_smart_path }}'
|
||||
template: '{{ xymon_cli__plug_smart_tpl }}'
|
||||
- name: temp
|
||||
path: '{{ xymon_cli__plug_temp_path }}'
|
||||
template: '{{ xymon_cli__plug_temp_tpl }}'
|
||||
- name: zfs
|
||||
path: '{{ xymon_cli__plug_zfs_path }}'
|
||||
template: '{{ xymon_cli__plug_temp_tpl }}'
|
||||
|
||||
# ]]]
|
||||
|
||||
# ]]]
|
||||
# ]]]
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
# handlers file for ipr.ansible.xymon
|
||||
- name: restart xymon-client service
|
||||
service: name={{ xymon_cli_service_name }} state=restarted
|
||||
when: xymon_cli_service_manage
|
||||
service: name={{ xymon_cli__service_name }} state=restarted
|
||||
when: xymon_cli__service_manage
|
||||
|
|
|
@ -8,10 +8,11 @@ galaxy_info:
|
|||
license: WTFPL
|
||||
company: IPR
|
||||
issue_tracker_url: https://git.ipr.univ-rennes1.fr/cellinfo/ansible.xymon/issues
|
||||
min_ansible_version: 2.2
|
||||
min_ansible_version: 2.7
|
||||
platforms:
|
||||
- name: Debian
|
||||
versions:
|
||||
- buster
|
||||
- stretch
|
||||
galaxy_tags:
|
||||
- system
|
||||
|
|
285
tasks/main.yml
285
tasks/main.yml
|
@ -14,67 +14,70 @@
|
|||
- name: client package
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: '{{ xymon_cli_pkg_state }}'
|
||||
state: '{{ xymon_cli__pkg_state }}'
|
||||
with_items:
|
||||
- '{{ xymon_cli_pkg_list | to_nice_json }}'
|
||||
- '{{ xymon_cli__pkg_list | to_nice_json }}'
|
||||
register: cli_result
|
||||
until: cli_result is success
|
||||
when: xymon_cli_manage|bool
|
||||
when: xymon_cli__manage|bool
|
||||
|
||||
# Manage client configuration [[[1
|
||||
- name: CONFIG xymon-client service
|
||||
template:
|
||||
src: '{{ xymon_cli_default_conf_tpl }}'
|
||||
dest: '{{ xymon_cli_default_conf_path }}'
|
||||
src: '{{ xymon_cli__default_conf_tpl }}'
|
||||
dest: '{{ xymon_cli__default_conf_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
backup: true
|
||||
when: xymon_cli_manage|bool
|
||||
when: xymon_cli__manage|bool
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: CONFIG xymon user's groups
|
||||
user:
|
||||
name: xymon
|
||||
groups: '{{ xymon_user_groups }}'
|
||||
groups: '{{ xymon_cli__user_groups }}'
|
||||
append: true
|
||||
when: xymon_cli_manage|bool
|
||||
when: xymon_cli__manage|bool
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage service [[[1
|
||||
- name: SERVICE manage '{{ xymon_cli_service_name }}'
|
||||
- name: SERVICE manage '{{ xymon_cli__service_name }}'
|
||||
service:
|
||||
name: '{{ xymon_cli_service_name }}'
|
||||
name: '{{ xymon_cli__service_name }}'
|
||||
state: started
|
||||
enabled: '{{ xymon_cli_service_enabled }}'
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_cli_service_manage|bool)
|
||||
enabled: '{{ xymon_cli__service_enabled }}'
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__service_manage|bool)
|
||||
|
||||
# Manage apt plugin [[[1
|
||||
- name: PLUGIN apt packages
|
||||
# Manage all plugins's packages [[[1
|
||||
- name: PLUGINS package and dependencies
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_plug_apt_package | to_nice_json }}'
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_plug_apt_state|bool)
|
||||
register: apt_plug_result
|
||||
until: apt_plug_result is success
|
||||
- '{{ xymon_cli__plug_combined_packages | to_nice_json }}'
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool)
|
||||
register: combined_packages_plug_result
|
||||
until: combined_packages_plug_result is success
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN apt
|
||||
# Manage plugins clientlaunch files [[[1
|
||||
- name: PLUGINS clientlaunch files
|
||||
template:
|
||||
src: '{{ xymon_plug_apt_tpl }}'
|
||||
dest: '{{ xymon_plug_apt_path }}'
|
||||
src: '{{ item.template }}'
|
||||
dest: '{{ item.path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
with_items:
|
||||
- '{{ xymon_cli__plug_combined_clientlaunch }}'
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage apt plugin [[[1
|
||||
- name: PLUGIN apt no_repo_accept whitelist
|
||||
template:
|
||||
src: 'etc/xymon/apt_no_repo_accept.j2'
|
||||
|
@ -82,60 +85,11 @@
|
|||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage ipmi plugin [[[1
|
||||
- name: PLUGIN ipmi packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_cli__plug_ipmi_package | to_nice_json }}'
|
||||
register: ipmi_plug_result
|
||||
until: ipmi_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_cli__plug_ipmi_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN ipmi
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_ipmi_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_ipmi_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage libs plugin [[[1
|
||||
- name: PLUGIN libs packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_plug_libs_package | to_nice_json }}'
|
||||
register: libs_plug_result
|
||||
until: libs_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_plug_libs_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN libs
|
||||
template:
|
||||
src: '{{ xymon_plug_libs_tpl }}'
|
||||
dest: '{{ xymon_plug_libs_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN libs whitelist
|
||||
template:
|
||||
src: 'etc/xymon/libs.local.yaml.j2'
|
||||
|
@ -143,72 +97,23 @@
|
|||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage mq plugin [[[1
|
||||
- name: PLUGIN mq packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_plug_mq_package | to_nice_json }}'
|
||||
register: mq_plug_result
|
||||
until: mq_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_plug_mq_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN mq
|
||||
# Manage net plugin [[[1
|
||||
- name: PLUGIN net config template
|
||||
template:
|
||||
src: '{{ xymon_plug_mq_tpl }}'
|
||||
dest: '{{ xymon_plug_mq_path }}'
|
||||
src: '{{ xymon_cli__plug_net_conf_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_net_conf_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage netstats plugin [[[1
|
||||
- name: PLUGIN netstats packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_cli__plug_netstats_package | to_nice_json }}'
|
||||
register: netstats_plug_result
|
||||
until: netstats_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_cli__plug_netstats_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN netstats config
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_netstats_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_netstats_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage sge plugin [[[1
|
||||
- name: PLUGIN sge config
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_sge_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_sge_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN sge script file from template
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_sge_script_tpl }}'
|
||||
|
@ -216,8 +121,8 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool and
|
||||
xymon_cli__plug_sge_script_url|length == 0 )
|
||||
notify: restart xymon-client service
|
||||
|
||||
|
@ -228,36 +133,12 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool and
|
||||
xymon_cli__plug_sge_script_url|length > 0 )
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage smartoverall plugin [[[1
|
||||
- name: PLUGIN smartoverall packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_cli__plug_smartoverall_package | to_nice_json }}'
|
||||
register: smartoverall_plug_result
|
||||
until: smartoverall_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_cli__plug_smartoverall_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN smartoverall config
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_smartoverall_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_smartoverall_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN smartoverall script file from template
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_smartoverall_script_tpl }}'
|
||||
|
@ -265,8 +146,8 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool and
|
||||
xymon_cli__plug_smartoverall_script_url|length == 0 )
|
||||
notify: restart xymon-client service
|
||||
|
||||
|
@ -277,36 +158,12 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool and
|
||||
xymon_cli__plug_smartoverall_script_url|length > 0 )
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage smart plugin [[[1
|
||||
- name: PLUGIN smart packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_cli__plug_smart_package | to_nice_json }}'
|
||||
register: smart_plug_result
|
||||
until: smart_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_cli__plug_smart_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN smart config
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_smart_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_smart_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN smart script file from template
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_smart_script_tpl }}'
|
||||
|
@ -314,8 +171,8 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool and
|
||||
xymon_cli__plug_smart_script_url|length == 0 )
|
||||
notify: restart xymon-client service
|
||||
|
||||
|
@ -326,48 +183,12 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool and
|
||||
xymon_cli__plug_smart_script_url|length > 0 )
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage temp plugin [[[1
|
||||
- name: PLUGIN temp packages
|
||||
package:
|
||||
name: '{{ item }}'
|
||||
state: 'present'
|
||||
with_items:
|
||||
- '{{ xymon_cli__plug_temp_package | to_nice_json }}'
|
||||
register: temp_plug_result
|
||||
until: temp_plug_result is success
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool and
|
||||
xymon_cli__plug_temp_state|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN temp
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_temp_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_temp_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
# Manage zfs plugin [[[1
|
||||
- name: PLUGIN zfs config file
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_zfs_tpl }}'
|
||||
dest: '{{ xymon_cli__plug_zfs_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
||||
- name: PLUGIN zfs script file
|
||||
template:
|
||||
src: '{{ xymon_cli__plug_zfs_script_tpl }}'
|
||||
|
@ -375,6 +196,6 @@
|
|||
owner: root
|
||||
group: xymon
|
||||
mode: 0755
|
||||
when: (xymon_cli_manage|bool and
|
||||
xymon_plug_manage|bool)
|
||||
when: (xymon_cli__manage|bool and
|
||||
xymon_cli__plug_manage|bool)
|
||||
notify: restart xymon-client service
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
# or (multiple servers)
|
||||
# XYMONSERVERS="10.0.0.1 192.168.1.1"
|
||||
|
||||
XYMONSERVERS="{{ xymon_srv_list }}"
|
||||
XYMONSERVERS="{{ xymon_cli__srv_list }}"
|
||||
|
||||
# The defaults usually suffice for the rest of this file,
|
||||
# but you can tweak the hostname that the client reports
|
||||
|
@ -23,7 +23,7 @@ XYMONSERVERS="{{ xymon_srv_list }}"
|
|||
# CLIENTHOSTNAME=""
|
||||
# CLIENTOS="rhel3"
|
||||
|
||||
CLIENTHOSTNAME="{{ xymon_cli_hostname }}"
|
||||
CLIENTHOSTNAME="{{ xymon_cli__hostname }}"
|
||||
|
||||
# Optionally mount a tmpfs on /var/lib/xymon/tmp. On client systems this has
|
||||
# the advantage that client reports will continue to work even if the /var
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{% for package in xymon_plug_apt_combined_whitelist %}
|
||||
{% for package in xymon_cli__plug_apt_combined_whitelist %}
|
||||
{{ package }}
|
||||
{% endfor %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[apt]
|
||||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{{ '#DISABLED' if xymon_plug_apt_state else 'DISABLED' }}
|
||||
{{ '#DISABLED' if xymon_cli__plug_apt_state else 'DISABLED' }}
|
||||
ENVFILE /etc/xymon/xymonclient.cfg
|
||||
CMD $XYMONCLIENTHOME/ext/apt
|
||||
LOGFILE /var/log/xymon/xymonclient.log
|
||||
INTERVAL {{ xymon_plug_apt_interval }}
|
||||
INTERVAL {{ xymon_cli__plug_apt_interval }}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
[libs]
|
||||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{{ '#DISABLED' if xymon_plug_libs_state else 'DISABLED' }}
|
||||
{{ '#DISABLED' if xymon_cli__plug_libs_state else 'DISABLED' }}
|
||||
ENVFILE /etc/xymon/xymonclient.cfg
|
||||
CMD $XYMONCLIENTHOME/ext/libs
|
||||
LOGFILE /var/log/xymon/xymonclient.log
|
||||
INTERVAL {{ xymon_plug_libs_interval }}
|
||||
INTERVAL {{ xymon_cli__plug_libs_interval }}
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
# Requires megaclisas-status package from https://hwraid.le-vert.net/wiki/DebianPackages
|
||||
[megaraid]
|
||||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{{ '#DISABLED' if xymon_cli__plug_megaraid_state else 'DISABLED' }}
|
||||
ENVFILE /etc/xymon/xymonclient.cfg
|
||||
CMD /usr/bin/xynagios --test=megaraid -- sudo megaclisas-status --nagios
|
||||
LOGFILE /var/log/xymon/xymonclient.log
|
||||
INTERVAL 5m
|
|
@ -1,8 +1,8 @@
|
|||
[mq]
|
||||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{{ '#DISABLED' if xymon_plug_mq_state else 'DISABLED' }}
|
||||
{{ '#DISABLED' if xymon_cli__plug_mq_state else 'DISABLED' }}
|
||||
ENVFILE /etc/xymon/xymonclient.cfg
|
||||
CMD $XYMONCLIENTHOME/ext/mq
|
||||
LOGFILE /var/log/xymon/xymonclient.log
|
||||
INTERVAL {{ xymon_plug_mq_interval }}
|
||||
INTERVAL {{ xymon_cli__plug_mq_interval }}
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
[net]
|
||||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{{ '#DISABLED' if xymon_cli__plug_net_state else 'DISABLED' }}
|
||||
ENVFILE /etc/xymon/xymonclient.cfg
|
||||
CMD $XYMONCLIENTHOME/ext/net
|
||||
LOGFILE /var/log/xymon/xymonclient.log
|
||||
INTERVAL {{ xymon_cli__plug_net_interval }}
|
|
@ -1,9 +1,9 @@
|
|||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{% set inputmerged = xymon_plug_libs_default_whitelist.copy() %}
|
||||
{% set _ = inputmerged.update(xymon_plug_libs_whitelist) %}
|
||||
{% set _ = inputmerged.update(xymon_plug_libs_group_whitelist) %}
|
||||
{% set _ = inputmerged.update(xymon_plug_libs_host_whitelist) %}
|
||||
{% set inputmerged = xymon_cli__plug_libs_default_whitelist.copy() %}
|
||||
{% set _ = inputmerged.update(xymon_cli__plug_libs_whitelist) %}
|
||||
{% set _ = inputmerged.update(xymon_cli__plug_libs_group_whitelist) %}
|
||||
{% set _ = inputmerged.update(xymon_cli__plug_libs_host_whitelist) %}
|
||||
---
|
||||
whitelist:
|
||||
{% for group, rules in inputmerged|dictsort %}
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
# {{ ansible_managed }}
|
||||
## From ipr-cnrs.xymon role
|
||||
{{ ansible_hostname }}:
|
||||
- {{ ansible_default_ipv4.interface }}
|
||||
|
||||
## This file is just here to allow the net probe, you juste enable,
|
||||
## to send something.
|
||||
|
||||
## Check the README of hobbit-plugins project :
|
||||
## https://salsa.debian.org/debian/hobbit-plugins#net-check-network-interface-states
|
||||
## To get an overview of what can be done with this probe and how to get
|
||||
## a working and more complete configuration file (check speed, mtu,…).
|
||||
|
||||
## You really should consider writing your own template and override
|
||||
## `xymon_cli__plug_net_conf_tpl` variable.
|
||||
## As the probe search for the hostname to get it's configuration, you can
|
||||
## write one single configuration file with several hosts definition.
|
||||
## And if you don't like template, you can simply put static informations ;)
|
||||
|
||||
## Example for "host1"
|
||||
#host1:
|
||||
# ### Ensure eno1 is up with a "Direct Attach Copper" (see ethtool) and
|
||||
# ### with a speed of 10000Mb/s
|
||||
# eno1:
|
||||
# UP: red
|
||||
# "Port: Direct Attach Copper": red
|
||||
# "Speed: 10000Mb/s": red
|
||||
# ### Ensure bond0 and vmbr0 are up
|
||||
# bond0:
|
||||
# UP: red
|
||||
# vmbr0:
|
||||
# UP: red
|
||||
# ### Ensure vlan2 as MTU 9000
|
||||
# vlan2:
|
||||
# "mtu 9000": red
|
||||
# ### Ensure eno3 is up with a speed of 1000Mb/s
|
||||
# eno3:
|
||||
# UP: red
|
||||
# "1000Mb/s": red
|
|
@ -122,6 +122,6 @@ then
|
|||
fi
|
||||
# What: Sent out the final bb message to hobbit server.
|
||||
$XYMON $XYMONSRV $XYMONSERVERS "status $MACHINE.$TEST $DISPCOLOR `date` $FIRST_LINE $STRING"
|
||||
echo "$XYMON $XYMONSRV $XYMONSERVERS --debug status $MACHINE.$TEST $DISPCOLOR `date` $FIRST_LINE $STRING" > /tmp/xymon_zfs
|
||||
echo "$XYMON $XYMONSRV $XYMONSERVERS --debug status $MACHINE.$TEST $DISPCOLOR `date` $FIRST_LINE $STRING" > /tmp/xymon_cli__zfs
|
||||
$XYMON $XYMONSRV $XYMONSERVERS "data $MACHINE.$TEST $DISPCOLOR $(echo; echo "$DATA" ;echo;echo)"
|
||||
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
---
|
||||
# vars file for Debian-based distros
|
||||
xymon_cli_pkg_list:
|
||||
xymon_cli__pkg_list:
|
||||
- xymon-client
|
||||
|
||||
xymon_cli__plug_pkg_list:
|
||||
- hobbit-plugins
|
||||
|
|
Loading…
Reference in New Issue