Ansible Role librenms
This role installs and configures LibreNMS.
Mandatory Requirements
Install Python 3, and the python3-policycoreutils module (required for the SELinux Ansible tasks). This can be done using the linuxfabrik.lfops.policycoreutils role.
Install MariaDB, and create a database and a user for said database. This can be done using the linuxfabrik.lfops.mariadb-server role.
Install a web server (for example Apache httpd), and configure a virtual host for LibreNMS. This can be done using the linuxfabrik.lfops.apache_httpd role.
Install PHP version >= 7.3. This can be done using the linuxfabrik.lfops.php role.
On RHEL-compatible systems, enable the
httpd_can_connect_ldap
andhttpd_setrlimit
SELinux booleans. This can be done using the linuxfabrik.lfops.selinux role.On RHEL-compatible systems, set the appropriate SELinux file contexts (have a look at
librenms__selinux__fcontexts__dependent_var
in thedefaults/main.yml
). This can be done using the linuxfabrik.lfops.selinux role.
If you use the „Setup LibreNMS“ Playbook, this is automatically done for you.
Mandatory Role Variables
Variable |
Description |
---|---|
|
The user account for accessing the MySQL database. |
|
The fully qualified domain name under which LibreNMS is accessible. |
Example:
# mandatory
librenms__database_login:
username: 'librenms'
password: 'linuxfabrik'
librenms__fqdn: 'librenms.example.com'
Optional Role Variables
Variable |
Description |
Default Value |
---|---|---|
|
Which authentication mechanism LibreNMS should use. Have a look at https://docs.librenms.org/Extensions/Authentication/. Note that only one mechanism can be active at the same time. Possible options: * |
|
|
Number in days of how long to keep old rrd files. |
|
|
Which update channel LibreNMS should use during automatic updates. Possible options: |
|
|
The host on which the MySQL database is reachable. |
|
|
The name of the SQL database. |
|
Example:
# optional
librenms__config_auth_mechanism: 'mysql'
librenms__config_rrd_purge: 730
librenms__config_update_channel: 'release'
librenms__database_host: 'localhost'
librenms__database_name: 'librenms'