Ansible Role linuxfabrik.lfops.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_ldapandhttpd_setrlimitSELinux 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_varin 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.
Tags¶
librenms
- Installs and configures LibreNMS.
- Triggers: none.
librenms:configure
- Configures LibreNMS.
- Triggers: none.
Mandatory Role Variables¶
librenms__database_login
- The user account for accessing the MySQL database.
- Type: Dictionary.
librenms__fqdn
- The fully qualified domain name under which LibreNMS is accessible.
- Type: String.
Example:
# mandatory
librenms__database_login:
username: 'librenms'
password: 'linuxfabrik'
librenms__fqdn: 'librenms.example.com'
Optional Role Variables¶
librenms__config_auth_mechanism
- 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:
active_directory,http-auth,ldap,ldap-authorization,mysql,sso. - Type: String.
- Default:
'mysql'
librenms__config_rrd_purge
- Number in days of how long to keep old rrd files.
0disables this feature. - Type: Number.
- Default:
0
librenms__config_update_channel
- Which update channel LibreNMS should use during automatic updates. Possible options:
master,release. - Type: String.
- Default:
'release'
librenms__database_host
- The host on which the MySQL database is reachable.
- Type: String.
- Default:
'localhost'
librenms__database_name
- The name of the SQL database.
- Type: String.
- Default:
'librenms'
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'