This role installs and configures guacamole_exporter to collect usage metrics from a Guacamole clientless remote desktop gateway, and can be scraped by a Prometheus instance.
- Ansible >= 2.10 (Earlier versions may work, but I haven't tested)
The user is required to define the following variables.
Name | Description |
---|---|
guacamole_exporter_endpoint |
The address of the Guacamole instance |
guacamole_exporter_username |
A user with sufficient privileges to access the REST API |
guacamole_exporter_password |
The corresponding password |
guacamole_exporter_datasource |
The datasource to use in the REST API calls. This may differ from the authentication datasource, and will typically be an SQL implementation |
All variables in default/main.yml can be overridden
Name | Default Value | Description |
---|---|---|
guacamole_exporter_version |
0.1.1 | the version to install, latest is also accepted |
guacamole_exporter_binary_local_dir |
"" | To allow to use local packages from controller machine instead of github packages |
guacamole_exporter_web_listen_address |
"0.0.0.0:9623" | guacamole_exporter listen addrress |
guacamole_exporter_web_telemetry_path |
"/metrics" | path that will be used to export the metrics |
Nil
ansible-galaxy install tschoonj.ansible_role_guacamole_exporter
To add as submodule to your project instead of pulling from galaxy
git submodule add -b main https://github.com/tschoonj/ansible-role-guacamole-exporter.git roles/guacamole-exporter
To get role updates
git submodule update --remote
- hosts: all
roles:
- role: tschoonj.ansible_role_guacamole_exporter
vars:
guacamole_endpoint: guacamole.example.com
guacamole_username: admin
guacamole_password: admin
guacamole_datasource: mysql
- Fork the project on GitHub
- Clone the project
- Add changes (and tests)
- Commit and push
- Create a pull request
This role is inspired by ansible-node-exporter and ansible-prometheus-msteams.