To move our project forward, we are introducing Laravel into our code base and with it come some new requirements. Below are detailed instructions on how to handle these. Only some may be done before the merge.
New php extension requirement mbstring. You can install this at any time to prevent issues when LibreNMS updates. Make sure you install the same version as the PHP version you are using. Example package names
php-mbstring. Ubuntu users, don’t forget to enable the extension
MySQL max connections. We will be slowly migrating to a new MySQL connection library to improve our support. This will require roughly double the amount of MySQL connections until the migration is complete. Not having enough connections may cause devices to fail polling. To be safe, double your
max_connectionsvalue in your my.cnf.
New folders with write access, several new folders will be created under /opt/librenms and some require write access. LibreNMS tries to apply the correct permissions, but it may not have permission to. You cannot run these commands before the update, because the folders don’t exist yet.
chown -R librenms:librenms /opt/librenms setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/ setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
Some plugins may cause issues. If you have plugin issues, check in with plugin author or try on Discord.
Database credentials are now stored in
/opt/librenms/.envThey will be automatically copied from config.php once.
Possible benefits of this change
- Translatable Web UI
- Alternative database server support such as Postgres or SQLite.
- Safer database migrations.
- Easier to make and maintain the Web UI
- Take advantage of the Open Source ecosystem around Laravel
- The ability to move the Web UI forward and use new technologies like WebSockets
Where to get help
Search on the community site! Most problems have been solved by users of daily updates (some info may be out-dated as several fixes were merged after the main merge).
Come chat on Discord, there are plenty of helpful people hanging around there.